From c73ea1b54c68ac86ef46d1aa44490c5d778b0966 Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 26 Sep 2023 16:51:59 +0700 Subject: [PATCH] update metronic 8.2 --- app/Actions/GetThemeType.php | 24 + app/Core/KTBootstrap.php | 45 + app/DataTables/PermissionsDataTable.php | 85 + app/DataTables/UsersAssignedRoleDataTable.php | 88 + app/DataTables/UsersDataTable.php | 91 + .../Apps/PermissionManagementController.php | 66 + .../Apps/RoleManagementController.php | 68 + .../Apps/UserManagementController.php | 67 + .../Auth/AuthenticatedSessionController.php | 64 + .../Auth/ConfirmablePasswordController.php | 44 + ...mailVerificationNotificationController.php | 27 + .../EmailVerificationPromptController.php | 23 + .../Auth/NewPasswordController.php | 67 + .../Auth/PasswordResetLinkController.php | 49 + .../Auth/RegisteredUserController.php | 59 + .../Controllers/Auth/SocialiteController.php | 54 + .../Auth/VerifyEmailController.php | 30 + .../Livewire/Permission/PermissionModal.php | 80 + app/Http/Livewire/Permission/RoleList.php | 32 + app/Http/Livewire/Permission/RoleModal.php | 110 + app/Http/Livewire/User/AddUserModal.php | 137 + app/Http/Requests/Auth/LoginRequest.php | 93 + app/Models/User.php | 60 + config/breadcrumbs.php | 75 + config/livewire.php | 158 + database/factories/UserFactory.php | 40 + .../2014_10_12_000000_create_users_table.php | 37 + ...12_100000_create_password_resets_table.php | 32 + ..._08_19_000000_create_failed_jobs_table.php | 36 + ...01_create_personal_access_tokens_table.php | 37 + ...090500_add_login_fields_to_users_table.php | 29 + ..._06_11_075700_create_permission_tables.php | 141 + ...ofile_photo_path_column_to_users_table.php | 27 + database/seeders/RolesPermissionsSeeder.php | 72 + database/seeders/UsersSeeder.php | 33 + package-lock.json | 17151 ++++++++++++++++ public/vendor/livewire/livewire.js | 14 + public/vendor/livewire/livewire.js.map | 1 + public/vendor/livewire/manifest.json | 1 + resources/_keenthemes/src/.DS_Store | Bin 0 -> 6148 bytes .../pages/testimonials/testimonials-1.js | 137 + .../src/media/demo/1600x1200/1.png | Bin 0 -> 183997 bytes .../src/media/demo/1600x1200/2.jpg | Bin 0 -> 57984 bytes .../src/media/demo/1600x1200/3.png | Bin 0 -> 188943 bytes .../src/media/demo/2600x1200/1.jpg | Bin 0 -> 236969 bytes .../src/media/features-logos/react-query.png | Bin 0 -> 10239 bytes .../src/media/features-logos/vue-pania.png | Bin 0 -> 8603 bytes resources/_keenthemes/src/media/misc/1.png | Bin 0 -> 2433 bytes .../src/media/misc/layout/aside-calendar.png | Bin 0 -> 4730 bytes .../misc/layout/aside-courier-activity.png | Bin 0 -> 4351 bytes .../src/media/misc/layout/aside-filters.png | Bin 0 -> 3223 bytes .../src/media/misc/layout/aside-segments.png | Bin 0 -> 3832 bytes .../misc/layout/aside-shipment-history.png | Bin 0 -> 4334 bytes .../src/media/stock/ecommerce/1.png | Bin 0 -> 55062 bytes .../src/media/stock/ecommerce/10.png | Bin 0 -> 48091 bytes .../src/media/stock/ecommerce/100.png | Bin 0 -> 78943 bytes .../src/media/stock/ecommerce/101.png | Bin 0 -> 41703 bytes .../src/media/stock/ecommerce/102.png | Bin 0 -> 74573 bytes .../src/media/stock/ecommerce/103.png | Bin 0 -> 99532 bytes .../src/media/stock/ecommerce/104.png | Bin 0 -> 51852 bytes .../src/media/stock/ecommerce/105.png | Bin 0 -> 64062 bytes .../src/media/stock/ecommerce/106.png | Bin 0 -> 47921 bytes .../src/media/stock/ecommerce/107.png | Bin 0 -> 47619 bytes .../src/media/stock/ecommerce/108.png | Bin 0 -> 56230 bytes .../src/media/stock/ecommerce/109.png | Bin 0 -> 76781 bytes .../src/media/stock/ecommerce/11.png | Bin 0 -> 44262 bytes .../src/media/stock/ecommerce/110.png | Bin 0 -> 63774 bytes .../src/media/stock/ecommerce/111.png | Bin 0 -> 54681 bytes .../src/media/stock/ecommerce/112.png | Bin 0 -> 48157 bytes .../src/media/stock/ecommerce/113.png | Bin 0 -> 40684 bytes .../src/media/stock/ecommerce/114.png | Bin 0 -> 40954 bytes .../src/media/stock/ecommerce/115.png | Bin 0 -> 76140 bytes .../src/media/stock/ecommerce/116.png | Bin 0 -> 64381 bytes .../src/media/stock/ecommerce/117.png | Bin 0 -> 57688 bytes .../src/media/stock/ecommerce/118.png | Bin 0 -> 50440 bytes .../src/media/stock/ecommerce/119.png | Bin 0 -> 66335 bytes .../src/media/stock/ecommerce/12.png | Bin 0 -> 41392 bytes .../src/media/stock/ecommerce/120.png | Bin 0 -> 70508 bytes .../src/media/stock/ecommerce/121.png | Bin 0 -> 64901 bytes .../src/media/stock/ecommerce/122.png | Bin 0 -> 76377 bytes .../src/media/stock/ecommerce/123.png | Bin 0 -> 91752 bytes .../src/media/stock/ecommerce/124.png | Bin 0 -> 52179 bytes .../src/media/stock/ecommerce/125.png | Bin 0 -> 66541 bytes .../src/media/stock/ecommerce/126.png | Bin 0 -> 52699 bytes .../src/media/stock/ecommerce/127.png | Bin 0 -> 60842 bytes .../src/media/stock/ecommerce/128.png | Bin 0 -> 107309 bytes .../src/media/stock/ecommerce/129.png | Bin 0 -> 85408 bytes .../src/media/stock/ecommerce/13.png | Bin 0 -> 41485 bytes .../src/media/stock/ecommerce/130.png | Bin 0 -> 72518 bytes .../src/media/stock/ecommerce/131.png | Bin 0 -> 65920 bytes .../src/media/stock/ecommerce/132.png | Bin 0 -> 95506 bytes .../src/media/stock/ecommerce/133.png | Bin 0 -> 98992 bytes .../src/media/stock/ecommerce/134.png | Bin 0 -> 103434 bytes .../src/media/stock/ecommerce/135.png | Bin 0 -> 60262 bytes .../src/media/stock/ecommerce/136.png | Bin 0 -> 43287 bytes .../src/media/stock/ecommerce/137.png | Bin 0 -> 40397 bytes .../src/media/stock/ecommerce/138.png | Bin 0 -> 71492 bytes .../src/media/stock/ecommerce/139.png | Bin 0 -> 38355 bytes .../src/media/stock/ecommerce/14.png | Bin 0 -> 52508 bytes .../src/media/stock/ecommerce/140.png | Bin 0 -> 37709 bytes .../src/media/stock/ecommerce/141.png | Bin 0 -> 69649 bytes .../src/media/stock/ecommerce/142.png | Bin 0 -> 38134 bytes .../src/media/stock/ecommerce/143.png | Bin 0 -> 42495 bytes .../src/media/stock/ecommerce/145.png | Bin 0 -> 53257 bytes .../src/media/stock/ecommerce/146.png | Bin 0 -> 57618 bytes .../src/media/stock/ecommerce/147.png | Bin 0 -> 64865 bytes .../src/media/stock/ecommerce/148.png | Bin 0 -> 31971 bytes .../src/media/stock/ecommerce/149.png | Bin 0 -> 92180 bytes .../src/media/stock/ecommerce/15.png | Bin 0 -> 32590 bytes .../src/media/stock/ecommerce/150.png | Bin 0 -> 42806 bytes .../src/media/stock/ecommerce/151.png | Bin 0 -> 94741 bytes .../src/media/stock/ecommerce/152.png | Bin 0 -> 89685 bytes .../src/media/stock/ecommerce/153.png | Bin 0 -> 30874 bytes .../src/media/stock/ecommerce/154.png | Bin 0 -> 87924 bytes .../src/media/stock/ecommerce/155.png | Bin 0 -> 100765 bytes .../src/media/stock/ecommerce/156.png | Bin 0 -> 70287 bytes .../src/media/stock/ecommerce/157.png | Bin 0 -> 60739 bytes .../src/media/stock/ecommerce/158.png | Bin 0 -> 82357 bytes .../src/media/stock/ecommerce/159.png | Bin 0 -> 96543 bytes .../src/media/stock/ecommerce/16.png | Bin 0 -> 36584 bytes .../src/media/stock/ecommerce/160.png | Bin 0 -> 77376 bytes .../src/media/stock/ecommerce/161.png | Bin 0 -> 81159 bytes .../src/media/stock/ecommerce/162.png | Bin 0 -> 72181 bytes .../src/media/stock/ecommerce/163.png | Bin 0 -> 53453 bytes .../src/media/stock/ecommerce/164.png | Bin 0 -> 83386 bytes .../src/media/stock/ecommerce/168.png | Bin 0 -> 68709 bytes .../src/media/stock/ecommerce/169.png | Bin 0 -> 79983 bytes .../src/media/stock/ecommerce/17.png | Bin 0 -> 23365 bytes .../src/media/stock/ecommerce/170.png | Bin 0 -> 106622 bytes .../src/media/stock/ecommerce/171.png | Bin 0 -> 24873 bytes .../src/media/stock/ecommerce/172.png | Bin 0 -> 24406 bytes .../src/media/stock/ecommerce/173.png | Bin 0 -> 18839 bytes .../src/media/stock/ecommerce/175.png | Bin 0 -> 20743 bytes .../src/media/stock/ecommerce/176.png | Bin 0 -> 23584 bytes .../src/media/stock/ecommerce/177.png | Bin 0 -> 23675 bytes .../src/media/stock/ecommerce/178.png | Bin 0 -> 44599 bytes .../src/media/stock/ecommerce/179.png | Bin 0 -> 59303 bytes .../src/media/stock/ecommerce/18.png | Bin 0 -> 14216 bytes .../src/media/stock/ecommerce/180.png | Bin 0 -> 69994 bytes .../src/media/stock/ecommerce/181.png | Bin 0 -> 108011 bytes .../src/media/stock/ecommerce/182.png | Bin 0 -> 70251 bytes .../src/media/stock/ecommerce/183.png | Bin 0 -> 13563 bytes .../src/media/stock/ecommerce/184.png | Bin 0 -> 40433 bytes .../src/media/stock/ecommerce/185.png | Bin 0 -> 85116 bytes .../src/media/stock/ecommerce/186.png | Bin 0 -> 73076 bytes .../src/media/stock/ecommerce/189.png | Bin 0 -> 84844 bytes .../src/media/stock/ecommerce/19.png | Bin 0 -> 28354 bytes .../src/media/stock/ecommerce/190.png | Bin 0 -> 64736 bytes .../src/media/stock/ecommerce/191.png | Bin 0 -> 26094 bytes .../src/media/stock/ecommerce/192.png | Bin 0 -> 41516 bytes .../src/media/stock/ecommerce/193.png | Bin 0 -> 44038 bytes .../src/media/stock/ecommerce/194.png | Bin 0 -> 54636 bytes .../src/media/stock/ecommerce/195.png | Bin 0 -> 64275 bytes .../src/media/stock/ecommerce/196.png | Bin 0 -> 46786 bytes .../src/media/stock/ecommerce/197.png | Bin 0 -> 74405 bytes .../src/media/stock/ecommerce/198.png | Bin 0 -> 24467 bytes .../src/media/stock/ecommerce/199.png | Bin 0 -> 23903 bytes .../src/media/stock/ecommerce/2.png | Bin 0 -> 21109 bytes .../src/media/stock/ecommerce/20.png | Bin 0 -> 32164 bytes .../src/media/stock/ecommerce/200.png | Bin 0 -> 26027 bytes .../src/media/stock/ecommerce/201.png | Bin 0 -> 26391 bytes .../src/media/stock/ecommerce/202.png | Bin 0 -> 25444 bytes .../src/media/stock/ecommerce/203.png | Bin 0 -> 36213 bytes .../src/media/stock/ecommerce/204.png | Bin 0 -> 51039 bytes .../src/media/stock/ecommerce/205.png | Bin 0 -> 30645 bytes .../src/media/stock/ecommerce/206.png | Bin 0 -> 23001 bytes .../src/media/stock/ecommerce/207.png | Bin 0 -> 19713 bytes .../src/media/stock/ecommerce/208.png | Bin 0 -> 21760 bytes .../src/media/stock/ecommerce/209.png | Bin 0 -> 34237 bytes .../src/media/stock/ecommerce/21.png | Bin 0 -> 18992 bytes .../src/media/stock/ecommerce/210.png | Bin 0 -> 82641 bytes .../src/media/stock/ecommerce/211.png | Bin 0 -> 40343 bytes .../src/media/stock/ecommerce/212.png | Bin 0 -> 25325 bytes .../src/media/stock/ecommerce/213.png | Bin 0 -> 33051 bytes .../src/media/stock/ecommerce/214.png | Bin 0 -> 42275 bytes .../src/media/stock/ecommerce/215.png | Bin 0 -> 37309 bytes .../src/media/stock/ecommerce/216.png | Bin 0 -> 34695 bytes .../src/media/stock/ecommerce/217.png | Bin 0 -> 26803 bytes .../src/media/stock/ecommerce/218.png | Bin 0 -> 40226 bytes .../src/media/stock/ecommerce/219.png | Bin 0 -> 46747 bytes .../src/media/stock/ecommerce/22.png | Bin 0 -> 46912 bytes .../src/media/stock/ecommerce/23.png | Bin 0 -> 45273 bytes .../src/media/stock/ecommerce/24.png | Bin 0 -> 26981 bytes .../src/media/stock/ecommerce/25.png | Bin 0 -> 60175 bytes .../src/media/stock/ecommerce/26.png | Bin 0 -> 66722 bytes .../src/media/stock/ecommerce/27.png | Bin 0 -> 40566 bytes .../src/media/stock/ecommerce/28.png | Bin 0 -> 33117 bytes .../src/media/stock/ecommerce/29.png | Bin 0 -> 29092 bytes .../src/media/stock/ecommerce/3.png | Bin 0 -> 34184 bytes .../src/media/stock/ecommerce/30.png | Bin 0 -> 47054 bytes .../src/media/stock/ecommerce/31.png | Bin 0 -> 26817 bytes .../src/media/stock/ecommerce/32.png | Bin 0 -> 37033 bytes .../src/media/stock/ecommerce/33.png | Bin 0 -> 26731 bytes .../src/media/stock/ecommerce/34.png | Bin 0 -> 41464 bytes .../src/media/stock/ecommerce/35.png | Bin 0 -> 40823 bytes .../src/media/stock/ecommerce/36.png | Bin 0 -> 30876 bytes .../src/media/stock/ecommerce/37.png | Bin 0 -> 53896 bytes .../src/media/stock/ecommerce/38.png | Bin 0 -> 52172 bytes .../src/media/stock/ecommerce/39.png | Bin 0 -> 75260 bytes .../src/media/stock/ecommerce/4.png | Bin 0 -> 21513 bytes .../src/media/stock/ecommerce/40.png | Bin 0 -> 31499 bytes .../src/media/stock/ecommerce/41.png | Bin 0 -> 43638 bytes .../src/media/stock/ecommerce/42.png | Bin 0 -> 38016 bytes .../src/media/stock/ecommerce/43.png | Bin 0 -> 53467 bytes .../src/media/stock/ecommerce/44.png | Bin 0 -> 20695 bytes .../src/media/stock/ecommerce/45.png | Bin 0 -> 58639 bytes .../src/media/stock/ecommerce/46.png | Bin 0 -> 34774 bytes .../src/media/stock/ecommerce/47.png | Bin 0 -> 25777 bytes .../src/media/stock/ecommerce/48.png | Bin 0 -> 40150 bytes .../src/media/stock/ecommerce/49.png | Bin 0 -> 70949 bytes .../src/media/stock/ecommerce/5.png | Bin 0 -> 23329 bytes .../src/media/stock/ecommerce/50.png | Bin 0 -> 21712 bytes .../src/media/stock/ecommerce/51.png | Bin 0 -> 19413 bytes .../src/media/stock/ecommerce/52.png | Bin 0 -> 73950 bytes .../src/media/stock/ecommerce/53.png | Bin 0 -> 42891 bytes .../src/media/stock/ecommerce/54.png | Bin 0 -> 25337 bytes .../src/media/stock/ecommerce/55.png | Bin 0 -> 20992 bytes .../src/media/stock/ecommerce/56.png | Bin 0 -> 43319 bytes .../src/media/stock/ecommerce/57.png | Bin 0 -> 48894 bytes .../src/media/stock/ecommerce/58.png | Bin 0 -> 51292 bytes .../src/media/stock/ecommerce/59.png | Bin 0 -> 44883 bytes .../src/media/stock/ecommerce/6.png | Bin 0 -> 18615 bytes .../src/media/stock/ecommerce/60.png | Bin 0 -> 22660 bytes .../src/media/stock/ecommerce/61.png | Bin 0 -> 22269 bytes .../src/media/stock/ecommerce/62.png | Bin 0 -> 18434 bytes .../src/media/stock/ecommerce/63.png | Bin 0 -> 52786 bytes .../src/media/stock/ecommerce/64.png | Bin 0 -> 42171 bytes .../src/media/stock/ecommerce/65.png | Bin 0 -> 98574 bytes .../src/media/stock/ecommerce/66.png | Bin 0 -> 85740 bytes .../src/media/stock/ecommerce/67.png | Bin 0 -> 36869 bytes .../src/media/stock/ecommerce/68.png | Bin 0 -> 25696 bytes .../src/media/stock/ecommerce/69.png | Bin 0 -> 44894 bytes .../src/media/stock/ecommerce/7.png | Bin 0 -> 60992 bytes .../src/media/stock/ecommerce/70.png | Bin 0 -> 38310 bytes .../src/media/stock/ecommerce/71.png | Bin 0 -> 25470 bytes .../src/media/stock/ecommerce/72.png | Bin 0 -> 52083 bytes .../src/media/stock/ecommerce/74.png | Bin 0 -> 26153 bytes .../src/media/stock/ecommerce/75.png | Bin 0 -> 75578 bytes .../src/media/stock/ecommerce/76.png | Bin 0 -> 41260 bytes .../src/media/stock/ecommerce/77.png | Bin 0 -> 34115 bytes .../src/media/stock/ecommerce/78.png | Bin 0 -> 66551 bytes .../src/media/stock/ecommerce/79.png | Bin 0 -> 36275 bytes .../src/media/stock/ecommerce/8.png | Bin 0 -> 78918 bytes .../src/media/stock/ecommerce/80.png | Bin 0 -> 42134 bytes .../src/media/stock/ecommerce/81.png | Bin 0 -> 86550 bytes .../src/media/stock/ecommerce/82.png | Bin 0 -> 95608 bytes .../src/media/stock/ecommerce/83.png | Bin 0 -> 39639 bytes .../src/media/stock/ecommerce/84.png | Bin 0 -> 46139 bytes .../src/media/stock/ecommerce/85.png | Bin 0 -> 44533 bytes .../src/media/stock/ecommerce/86.png | Bin 0 -> 37300 bytes .../src/media/stock/ecommerce/87.png | Bin 0 -> 43949 bytes .../src/media/stock/ecommerce/88.png | Bin 0 -> 71932 bytes .../src/media/stock/ecommerce/89.png | Bin 0 -> 59836 bytes .../src/media/stock/ecommerce/9.png | Bin 0 -> 69607 bytes .../src/media/stock/ecommerce/90.png | Bin 0 -> 35495 bytes .../src/media/stock/ecommerce/91.png | Bin 0 -> 62870 bytes .../src/media/stock/ecommerce/92.png | Bin 0 -> 61588 bytes .../src/media/stock/ecommerce/93.png | Bin 0 -> 69245 bytes .../src/media/stock/ecommerce/94.png | Bin 0 -> 77951 bytes .../src/media/stock/ecommerce/95.png | Bin 0 -> 52339 bytes .../src/media/stock/ecommerce/96.png | Bin 0 -> 55428 bytes .../src/media/stock/ecommerce/97.png | Bin 0 -> 67939 bytes .../src/media/stock/ecommerce/98.png | Bin 0 -> 60300 bytes .../src/media/stock/ecommerce/99.png | Bin 0 -> 33168 bytes .../src/media/svg/brand-logos/amara.svg | 17 + .../src/media/svg/brand-logos/asgardia.svg | 42 + .../src/media/svg/brand-logos/aven-1.svg | 30 + .../src/media/svg/brand-logos/earth-2.0.svg | 48 + .../src/media/svg/brand-logos/goldline.svg | 18 + .../src/media/svg/brand-logos/hex-lab.svg | 22 + .../src/media/svg/brand-logos/ideaa.svg | 50 + .../src/media/svg/brand-logos/lighting.svg | 19 + .../src/media/svg/brand-logos/liva.svg | 33 + .../src/media/svg/brand-logos/nirastate.svg | 20 + .../src/media/svg/brand-logos/solaytic.svg | 19 + .../src/media/svg/brand-logos/treva-1.svg | 27 + .../src/media/svg/brand-logos/velocity-9.svg | 23 + .../@form-validation/amd/bundle/full.js | 13175 ++++++++++++ .../@form-validation/amd/bundle/full.min.js | 20 + .../@form-validation/amd/bundle/popular.js | 6028 ++++++ .../amd/bundle/popular.min.js | 20 + .../@form-validation/amd/core/index.js | 1353 ++ .../@form-validation/amd/core/index.min.js | 11 + .../@form-validation/amd/locales/ar_MA.js | 384 + .../@form-validation/amd/locales/ar_MA.min.js | 1 + .../@form-validation/amd/locales/bg_BG.js | 384 + .../@form-validation/amd/locales/bg_BG.min.js | 1 + .../@form-validation/amd/locales/ca_ES.js | 384 + .../@form-validation/amd/locales/ca_ES.min.js | 1 + .../@form-validation/amd/locales/cs_CZ.js | 384 + .../@form-validation/amd/locales/cs_CZ.min.js | 1 + .../@form-validation/amd/locales/da_DK.js | 384 + .../@form-validation/amd/locales/da_DK.min.js | 1 + .../@form-validation/amd/locales/de_DE.js | 384 + .../@form-validation/amd/locales/de_DE.min.js | 1 + .../@form-validation/amd/locales/el_GR.js | 384 + .../@form-validation/amd/locales/el_GR.min.js | 1 + .../@form-validation/amd/locales/en_US.js | 384 + .../@form-validation/amd/locales/en_US.min.js | 1 + .../@form-validation/amd/locales/es_CL.js | 384 + .../@form-validation/amd/locales/es_CL.min.js | 1 + .../@form-validation/amd/locales/es_ES.js | 384 + .../@form-validation/amd/locales/es_ES.min.js | 1 + .../@form-validation/amd/locales/eu_ES.js | 384 + .../@form-validation/amd/locales/eu_ES.min.js | 1 + .../@form-validation/amd/locales/fa_IR.js | 384 + .../@form-validation/amd/locales/fa_IR.min.js | 1 + .../@form-validation/amd/locales/fi_FI.js | 384 + .../@form-validation/amd/locales/fi_FI.min.js | 1 + .../@form-validation/amd/locales/fr_BE.js | 384 + .../@form-validation/amd/locales/fr_BE.min.js | 1 + .../@form-validation/amd/locales/fr_FR.js | 384 + .../@form-validation/amd/locales/fr_FR.min.js | 1 + .../@form-validation/amd/locales/he_IL.js | 384 + .../@form-validation/amd/locales/he_IL.min.js | 1 + .../@form-validation/amd/locales/hi_IN.js | 384 + .../@form-validation/amd/locales/hi_IN.min.js | 1 + .../@form-validation/amd/locales/hu_HU.js | 384 + .../@form-validation/amd/locales/hu_HU.min.js | 1 + .../@form-validation/amd/locales/id_ID.js | 384 + .../@form-validation/amd/locales/id_ID.min.js | 1 + .../@form-validation/amd/locales/it_IT.js | 384 + .../@form-validation/amd/locales/it_IT.min.js | 1 + .../@form-validation/amd/locales/ja_JP.js | 384 + .../@form-validation/amd/locales/ja_JP.min.js | 1 + .../@form-validation/amd/locales/nl_BE.js | 384 + .../@form-validation/amd/locales/nl_BE.min.js | 1 + .../@form-validation/amd/locales/nl_NL.js | 384 + .../@form-validation/amd/locales/nl_NL.min.js | 1 + .../@form-validation/amd/locales/no_NO.js | 384 + .../@form-validation/amd/locales/no_NO.min.js | 1 + .../@form-validation/amd/locales/pl_PL.js | 384 + .../@form-validation/amd/locales/pl_PL.min.js | 1 + .../@form-validation/amd/locales/pt_BR.js | 384 + .../@form-validation/amd/locales/pt_BR.min.js | 1 + .../@form-validation/amd/locales/pt_PT.js | 384 + .../@form-validation/amd/locales/pt_PT.min.js | 1 + .../@form-validation/amd/locales/ro_RO.js | 384 + .../@form-validation/amd/locales/ro_RO.min.js | 1 + .../@form-validation/amd/locales/ru_RU.js | 384 + .../@form-validation/amd/locales/ru_RU.min.js | 1 + .../@form-validation/amd/locales/sk_SK.js | 384 + .../@form-validation/amd/locales/sk_SK.min.js | 1 + .../@form-validation/amd/locales/sq_AL.js | 384 + .../@form-validation/amd/locales/sq_AL.min.js | 1 + .../@form-validation/amd/locales/sr_RS.js | 384 + .../@form-validation/amd/locales/sr_RS.min.js | 1 + .../@form-validation/amd/locales/sv_SE.js | 384 + .../@form-validation/amd/locales/sv_SE.min.js | 1 + .../@form-validation/amd/locales/th_TH.js | 384 + .../@form-validation/amd/locales/th_TH.min.js | 1 + .../@form-validation/amd/locales/tr_TR.js | 384 + .../@form-validation/amd/locales/tr_TR.min.js | 1 + .../@form-validation/amd/locales/ua_UA.js | 384 + .../@form-validation/amd/locales/ua_UA.min.js | 1 + .../@form-validation/amd/locales/vi_VN.js | 384 + .../@form-validation/amd/locales/vi_VN.min.js | 1 + .../@form-validation/amd/locales/zh_CN.js | 384 + .../@form-validation/amd/locales/zh_CN.min.js | 1 + .../@form-validation/amd/locales/zh_TW.js | 384 + .../@form-validation/amd/locales/zh_TW.min.js | 1 + .../amd/plugin-alias/index.js | 84 + .../amd/plugin-alias/index.min.js | 11 + .../@form-validation/amd/plugin-aria/index.js | 109 + .../amd/plugin-aria/index.min.js | 11 + .../amd/plugin-auto-focus/index.js | 92 + .../amd/plugin-auto-focus/index.min.js | 11 + .../amd/plugin-bootstrap/index.js | 84 + .../amd/plugin-bootstrap/index.min.js | 11 + .../amd/plugin-bootstrap3/index.js | 79 + .../amd/plugin-bootstrap3/index.min.js | 11 + .../amd/plugin-bootstrap5/index.js | 152 + .../amd/plugin-bootstrap5/index.min.js | 11 + .../amd/plugin-bulma/index.js | 84 + .../amd/plugin-bulma/index.min.js | 11 + .../amd/plugin-declarative/index.js | 286 + .../amd/plugin-declarative/index.min.js | 11 + .../amd/plugin-default-submit/index.js | 70 + .../amd/plugin-default-submit/index.min.js | 11 + .../amd/plugin-dependency/index.js | 71 + .../amd/plugin-dependency/index.min.js | 11 + .../amd/plugin-excluded/index.js | 70 + .../amd/plugin-excluded/index.min.js | 11 + .../amd/plugin-field-status/index.js | 122 + .../amd/plugin-field-status/index.min.js | 11 + .../amd/plugin-foundation/index.js | 75 + .../amd/plugin-foundation/index.min.js | 11 + .../amd/plugin-framework/index.js | 271 + .../amd/plugin-framework/index.min.js | 11 + .../@form-validation/amd/plugin-icon/index.js | 225 + .../amd/plugin-icon/index.min.js | 11 + .../index.js | 183 + .../index.min.js | 11 + .../@form-validation/amd/plugin-j/index.js | 23 + .../amd/plugin-j/index.min.js | 11 + .../@form-validation/amd/plugin-l10n/index.js | 76 + .../amd/plugin-l10n/index.min.js | 11 + .../amd/plugin-mailgun/index.js | 104 + .../amd/plugin-mailgun/index.min.js | 11 + .../amd/plugin-mandatory-icon/index.js | 175 + .../amd/plugin-mandatory-icon/index.min.js | 11 + .../amd/plugin-materialize/index.js | 71 + .../amd/plugin-materialize/index.min.js | 11 + .../amd/plugin-message/index.js | 284 + .../amd/plugin-message/index.min.js | 11 + .../amd/plugin-milligram/index.js | 69 + .../amd/plugin-milligram/index.min.js | 11 + .../@form-validation/amd/plugin-mini/index.js | 69 + .../amd/plugin-mini/index.min.js | 11 + .../@form-validation/amd/plugin-mui/index.js | 69 + .../amd/plugin-mui/index.min.js | 11 + .../amd/plugin-password-strength/index.js | 126 + .../amd/plugin-password-strength/index.min.js | 11 + .../@form-validation/amd/plugin-pure/index.js | 69 + .../amd/plugin-pure/index.min.js | 11 + .../amd/plugin-recaptcha/index.js | 258 + .../amd/plugin-recaptcha/index.min.js | 11 + .../amd/plugin-recaptcha3-token/index.js | 112 + .../amd/plugin-recaptcha3-token/index.min.js | 11 + .../amd/plugin-recaptcha3/index.js | 146 + .../amd/plugin-recaptcha3/index.min.js | 11 + .../amd/plugin-semantic/index.js | 93 + .../amd/plugin-semantic/index.min.js | 11 + .../amd/plugin-sequence/index.js | 142 + .../amd/plugin-sequence/index.min.js | 11 + .../amd/plugin-shoelace/index.js | 72 + .../amd/plugin-shoelace/index.min.js | 11 + .../amd/plugin-spectre/index.js | 71 + .../amd/plugin-spectre/index.min.js | 11 + .../amd/plugin-start-end-date/index.js | 130 + .../amd/plugin-start-end-date/index.min.js | 11 + .../amd/plugin-submit-button/index.js | 139 + .../amd/plugin-submit-button/index.min.js | 11 + .../amd/plugin-tachyons/index.js | 68 + .../amd/plugin-tachyons/index.min.js | 11 + .../amd/plugin-tooltip/index.js | 194 + .../amd/plugin-tooltip/index.min.js | 11 + .../amd/plugin-transformer/index.js | 65 + .../amd/plugin-transformer/index.min.js | 11 + .../amd/plugin-trigger/index.js | 195 + .../amd/plugin-trigger/index.min.js | 11 + .../amd/plugin-turnstile/index.js | 242 + .../amd/plugin-turnstile/index.min.js | 11 + .../amd/plugin-turret/index.js | 70 + .../amd/plugin-turret/index.min.js | 11 + .../amd/plugin-typing-animation/index.js | 102 + .../amd/plugin-typing-animation/index.min.js | 11 + .../amd/plugin-ui-kit/index.js | 69 + .../amd/plugin-ui-kit/index.min.js | 11 + .../amd/plugin-wizard/index.js | 240 + .../amd/plugin-wizard/index.min.js | 11 + .../@form-validation/amd/styles/index.css | 582 + .../@form-validation/amd/styles/index.min.css | 1 + .../amd/validator-base64/index.js | 21 + .../amd/validator-base64/index.min.js | 11 + .../amd/validator-between/index.js | 43 + .../amd/validator-between/index.min.js | 11 + .../amd/validator-bic/index.js | 26 + .../amd/validator-bic/index.min.js | 11 + .../amd/validator-blank/index.js | 22 + .../amd/validator-blank/index.min.js | 11 + .../amd/validator-callback/index.js | 22 + .../amd/validator-callback/index.min.js | 11 + .../amd/validator-choice/index.js | 40 + .../amd/validator-choice/index.min.js | 11 + .../amd/validator-color/index.js | 249 + .../amd/validator-color/index.min.js | 11 + .../amd/validator-credit-card/index.js | 211 + .../amd/validator-credit-card/index.min.js | 11 + .../amd/validator-cusip/index.js | 56 + .../amd/validator-cusip/index.min.js | 11 + .../amd/validator-date/index.js | 265 + .../amd/validator-date/index.min.js | 11 + .../amd/validator-different/index.js | 23 + .../amd/validator-different/index.min.js | 11 + .../amd/validator-digits/index.js | 21 + .../amd/validator-digits/index.min.js | 11 + .../amd/validator-ean/index.js | 35 + .../amd/validator-ean/index.min.js | 11 + .../amd/validator-ein/index.js | 123 + .../amd/validator-ein/index.min.js | 11 + .../amd/validator-email-address/index.js | 79 + .../amd/validator-email-address/index.min.js | 11 + .../amd/validator-file/index.js | 156 + .../amd/validator-file/index.min.js | 11 + .../amd/validator-greater-than/index.js | 32 + .../amd/validator-greater-than/index.min.js | 11 + .../amd/validator-grid/index.js | 34 + .../amd/validator-grid/index.min.js | 11 + .../amd/validator-hex/index.js | 23 + .../amd/validator-hex/index.min.js | 11 + .../amd/validator-iban/index.js | 198 + .../amd/validator-iban/index.min.js | 11 + .../amd/validator-id/index.js | 2737 +++ .../amd/validator-id/index.min.js | 11 + .../amd/validator-identical/index.js | 23 + .../amd/validator-identical/index.min.js | 11 + .../amd/validator-imei/index.js | 38 + .../amd/validator-imei/index.min.js | 11 + .../amd/validator-imo/index.js | 34 + .../amd/validator-imo/index.min.js | 11 + .../amd/validator-integer/index.js | 43 + .../amd/validator-integer/index.min.js | 11 + .../amd/validator-ip/index.js | 48 + .../amd/validator-ip/index.min.js | 11 + .../amd/validator-isbn/index.js | 92 + .../amd/validator-isbn/index.min.js | 11 + .../amd/validator-isin/index.js | 59 + .../amd/validator-isin/index.min.js | 11 + .../amd/validator-ismn/index.js | 65 + .../amd/validator-ismn/index.min.js | 11 + .../amd/validator-issn/index.js | 39 + .../amd/validator-issn/index.min.js | 11 + .../amd/validator-less-than/index.js | 32 + .../amd/validator-less-than/index.min.js | 11 + .../amd/validator-mac/index.js | 25 + .../amd/validator-mac/index.min.js | 11 + .../amd/validator-meid/index.js | 60 + .../amd/validator-meid/index.min.js | 11 + .../amd/validator-not-empty/index.js | 22 + .../amd/validator-not-empty/index.min.js | 11 + .../amd/validator-numeric/index.js | 50 + .../amd/validator-numeric/index.min.js | 11 + .../amd/validator-phone/index.js | 184 + .../amd/validator-phone/index.min.js | 11 + .../amd/validator-promise/index.js | 47 + .../amd/validator-promise/index.min.js | 11 + .../amd/validator-regexp/index.js | 32 + .../amd/validator-regexp/index.min.js | 11 + .../amd/validator-remote/index.js | 63 + .../amd/validator-remote/index.min.js | 11 + .../amd/validator-rtn/index.js | 35 + .../amd/validator-rtn/index.min.js | 11 + .../amd/validator-sedol/index.js | 36 + .../amd/validator-sedol/index.min.js | 11 + .../amd/validator-siren/index.js | 24 + .../amd/validator-siren/index.min.js | 11 + .../amd/validator-siret/index.js | 37 + .../amd/validator-siret/index.min.js | 11 + .../amd/validator-step/index.js | 62 + .../amd/validator-step/index.min.js | 11 + .../amd/validator-string-case/index.js | 37 + .../amd/validator-string-case/index.min.js | 11 + .../amd/validator-string-length/index.js | 74 + .../amd/validator-string-length/index.min.js | 11 + .../amd/validator-uri/index.js | 106 + .../amd/validator-uri/index.min.js | 11 + .../amd/validator-uuid/index.js | 42 + .../amd/validator-uuid/index.min.js | 11 + .../amd/validator-vat/index.js | 1904 ++ .../amd/validator-vat/index.min.js | 11 + .../amd/validator-vin/index.js | 74 + .../amd/validator-vin/index.min.js | 11 + .../amd/validator-zip-code/index.js | 196 + .../amd/validator-zip-code/index.min.js | 11 + .../@form-validation/cjs/bundle/full.js | 14691 +++++++++++++ .../@form-validation/cjs/bundle/full.min.js | 20 + .../@form-validation/cjs/bundle/popular.js | 6900 +++++++ .../cjs/bundle/popular.min.js | 20 + .../@form-validation/cjs/core/index.js | 1351 ++ .../@form-validation/cjs/core/index.min.js | 11 + .../@form-validation/cjs/locales/ar_MA.js | 382 + .../@form-validation/cjs/locales/ar_MA.min.js | 1 + .../@form-validation/cjs/locales/bg_BG.js | 382 + .../@form-validation/cjs/locales/bg_BG.min.js | 1 + .../@form-validation/cjs/locales/ca_ES.js | 382 + .../@form-validation/cjs/locales/ca_ES.min.js | 1 + .../@form-validation/cjs/locales/cs_CZ.js | 382 + .../@form-validation/cjs/locales/cs_CZ.min.js | 1 + .../@form-validation/cjs/locales/da_DK.js | 382 + .../@form-validation/cjs/locales/da_DK.min.js | 1 + .../@form-validation/cjs/locales/de_DE.js | 382 + .../@form-validation/cjs/locales/de_DE.min.js | 1 + .../@form-validation/cjs/locales/el_GR.js | 382 + .../@form-validation/cjs/locales/el_GR.min.js | 1 + .../@form-validation/cjs/locales/en_US.js | 382 + .../@form-validation/cjs/locales/en_US.min.js | 1 + .../@form-validation/cjs/locales/es_CL.js | 382 + .../@form-validation/cjs/locales/es_CL.min.js | 1 + .../@form-validation/cjs/locales/es_ES.js | 382 + .../@form-validation/cjs/locales/es_ES.min.js | 1 + .../@form-validation/cjs/locales/eu_ES.js | 382 + .../@form-validation/cjs/locales/eu_ES.min.js | 1 + .../@form-validation/cjs/locales/fa_IR.js | 382 + .../@form-validation/cjs/locales/fa_IR.min.js | 1 + .../@form-validation/cjs/locales/fi_FI.js | 382 + .../@form-validation/cjs/locales/fi_FI.min.js | 1 + .../@form-validation/cjs/locales/fr_BE.js | 382 + .../@form-validation/cjs/locales/fr_BE.min.js | 1 + .../@form-validation/cjs/locales/fr_FR.js | 382 + .../@form-validation/cjs/locales/fr_FR.min.js | 1 + .../@form-validation/cjs/locales/he_IL.js | 382 + .../@form-validation/cjs/locales/he_IL.min.js | 1 + .../@form-validation/cjs/locales/hi_IN.js | 382 + .../@form-validation/cjs/locales/hi_IN.min.js | 1 + .../@form-validation/cjs/locales/hu_HU.js | 382 + .../@form-validation/cjs/locales/hu_HU.min.js | 1 + .../@form-validation/cjs/locales/id_ID.js | 382 + .../@form-validation/cjs/locales/id_ID.min.js | 1 + .../@form-validation/cjs/locales/it_IT.js | 382 + .../@form-validation/cjs/locales/it_IT.min.js | 1 + .../@form-validation/cjs/locales/ja_JP.js | 382 + .../@form-validation/cjs/locales/ja_JP.min.js | 1 + .../@form-validation/cjs/locales/nl_BE.js | 382 + .../@form-validation/cjs/locales/nl_BE.min.js | 1 + .../@form-validation/cjs/locales/nl_NL.js | 382 + .../@form-validation/cjs/locales/nl_NL.min.js | 1 + .../@form-validation/cjs/locales/no_NO.js | 382 + .../@form-validation/cjs/locales/no_NO.min.js | 1 + .../@form-validation/cjs/locales/pl_PL.js | 382 + .../@form-validation/cjs/locales/pl_PL.min.js | 1 + .../@form-validation/cjs/locales/pt_BR.js | 382 + .../@form-validation/cjs/locales/pt_BR.min.js | 1 + .../@form-validation/cjs/locales/pt_PT.js | 382 + .../@form-validation/cjs/locales/pt_PT.min.js | 1 + .../@form-validation/cjs/locales/ro_RO.js | 382 + .../@form-validation/cjs/locales/ro_RO.min.js | 1 + .../@form-validation/cjs/locales/ru_RU.js | 382 + .../@form-validation/cjs/locales/ru_RU.min.js | 1 + .../@form-validation/cjs/locales/sk_SK.js | 382 + .../@form-validation/cjs/locales/sk_SK.min.js | 1 + .../@form-validation/cjs/locales/sq_AL.js | 382 + .../@form-validation/cjs/locales/sq_AL.min.js | 1 + .../@form-validation/cjs/locales/sr_RS.js | 382 + .../@form-validation/cjs/locales/sr_RS.min.js | 1 + .../@form-validation/cjs/locales/sv_SE.js | 382 + .../@form-validation/cjs/locales/sv_SE.min.js | 1 + .../@form-validation/cjs/locales/th_TH.js | 382 + .../@form-validation/cjs/locales/th_TH.min.js | 1 + .../@form-validation/cjs/locales/tr_TR.js | 382 + .../@form-validation/cjs/locales/tr_TR.min.js | 1 + .../@form-validation/cjs/locales/ua_UA.js | 382 + .../@form-validation/cjs/locales/ua_UA.min.js | 1 + .../@form-validation/cjs/locales/vi_VN.js | 382 + .../@form-validation/cjs/locales/vi_VN.min.js | 1 + .../@form-validation/cjs/locales/zh_CN.js | 382 + .../@form-validation/cjs/locales/zh_CN.min.js | 1 + .../@form-validation/cjs/locales/zh_TW.js | 382 + .../@form-validation/cjs/locales/zh_TW.min.js | 1 + .../cjs/plugin-alias/index.js | 84 + .../cjs/plugin-alias/index.min.js | 11 + .../@form-validation/cjs/plugin-aria/index.js | 109 + .../cjs/plugin-aria/index.min.js | 11 + .../cjs/plugin-auto-focus/index.js | 93 + .../cjs/plugin-auto-focus/index.min.js | 11 + .../cjs/plugin-bootstrap/index.js | 85 + .../cjs/plugin-bootstrap/index.min.js | 11 + .../cjs/plugin-bootstrap3/index.js | 80 + .../cjs/plugin-bootstrap3/index.min.js | 11 + .../cjs/plugin-bootstrap5/index.js | 153 + .../cjs/plugin-bootstrap5/index.min.js | 11 + .../cjs/plugin-bulma/index.js | 85 + .../cjs/plugin-bulma/index.min.js | 11 + .../cjs/plugin-declarative/index.js | 286 + .../cjs/plugin-declarative/index.min.js | 11 + .../cjs/plugin-default-submit/index.js | 70 + .../cjs/plugin-default-submit/index.min.js | 11 + .../cjs/plugin-dependency/index.js | 71 + .../cjs/plugin-dependency/index.min.js | 11 + .../cjs/plugin-excluded/index.js | 70 + .../cjs/plugin-excluded/index.min.js | 11 + .../cjs/plugin-field-status/index.js | 122 + .../cjs/plugin-field-status/index.min.js | 11 + .../cjs/plugin-foundation/index.js | 75 + .../cjs/plugin-foundation/index.min.js | 11 + .../cjs/plugin-framework/index.js | 272 + .../cjs/plugin-framework/index.min.js | 11 + .../@form-validation/cjs/plugin-icon/index.js | 225 + .../cjs/plugin-icon/index.min.js | 11 + .../index.js | 183 + .../index.min.js | 11 + .../@form-validation/cjs/plugin-j/index.js | 24 + .../cjs/plugin-j/index.min.js | 11 + .../@form-validation/cjs/plugin-l10n/index.js | 76 + .../cjs/plugin-l10n/index.min.js | 11 + .../cjs/plugin-mailgun/index.js | 105 + .../cjs/plugin-mailgun/index.min.js | 11 + .../cjs/plugin-mandatory-icon/index.js | 175 + .../cjs/plugin-mandatory-icon/index.min.js | 11 + .../cjs/plugin-materialize/index.js | 72 + .../cjs/plugin-materialize/index.min.js | 11 + .../cjs/plugin-message/index.js | 284 + .../cjs/plugin-message/index.min.js | 11 + .../cjs/plugin-milligram/index.js | 70 + .../cjs/plugin-milligram/index.min.js | 11 + .../@form-validation/cjs/plugin-mini/index.js | 70 + .../cjs/plugin-mini/index.min.js | 11 + .../@form-validation/cjs/plugin-mui/index.js | 70 + .../cjs/plugin-mui/index.min.js | 11 + .../cjs/plugin-password-strength/index.js | 126 + .../cjs/plugin-password-strength/index.min.js | 11 + .../@form-validation/cjs/plugin-pure/index.js | 70 + .../cjs/plugin-pure/index.min.js | 11 + .../cjs/plugin-recaptcha/index.js | 258 + .../cjs/plugin-recaptcha/index.min.js | 11 + .../cjs/plugin-recaptcha3-token/index.js | 112 + .../cjs/plugin-recaptcha3-token/index.min.js | 11 + .../cjs/plugin-recaptcha3/index.js | 146 + .../cjs/plugin-recaptcha3/index.min.js | 11 + .../cjs/plugin-semantic/index.js | 94 + .../cjs/plugin-semantic/index.min.js | 11 + .../cjs/plugin-sequence/index.js | 142 + .../cjs/plugin-sequence/index.min.js | 11 + .../cjs/plugin-shoelace/index.js | 73 + .../cjs/plugin-shoelace/index.min.js | 11 + .../cjs/plugin-spectre/index.js | 72 + .../cjs/plugin-spectre/index.min.js | 11 + .../cjs/plugin-start-end-date/index.js | 130 + .../cjs/plugin-start-end-date/index.min.js | 11 + .../cjs/plugin-submit-button/index.js | 139 + .../cjs/plugin-submit-button/index.min.js | 11 + .../cjs/plugin-tachyons/index.js | 69 + .../cjs/plugin-tachyons/index.min.js | 11 + .../cjs/plugin-tooltip/index.js | 194 + .../cjs/plugin-tooltip/index.min.js | 11 + .../cjs/plugin-transformer/index.js | 65 + .../cjs/plugin-transformer/index.min.js | 11 + .../cjs/plugin-trigger/index.js | 195 + .../cjs/plugin-trigger/index.min.js | 11 + .../cjs/plugin-turnstile/index.js | 242 + .../cjs/plugin-turnstile/index.min.js | 11 + .../cjs/plugin-turret/index.js | 71 + .../cjs/plugin-turret/index.min.js | 11 + .../cjs/plugin-typing-animation/index.js | 102 + .../cjs/plugin-typing-animation/index.min.js | 11 + .../cjs/plugin-ui-kit/index.js | 70 + .../cjs/plugin-ui-kit/index.min.js | 11 + .../cjs/plugin-wizard/index.js | 241 + .../cjs/plugin-wizard/index.min.js | 11 + .../@form-validation/cjs/styles/index.css | 582 + .../@form-validation/cjs/styles/index.min.css | 1 + .../cjs/validator-base64/index.js | 19 + .../cjs/validator-base64/index.min.js | 11 + .../cjs/validator-between/index.js | 43 + .../cjs/validator-between/index.min.js | 11 + .../cjs/validator-bic/index.js | 24 + .../cjs/validator-bic/index.min.js | 11 + .../cjs/validator-blank/index.js | 20 + .../cjs/validator-blank/index.min.js | 11 + .../cjs/validator-callback/index.js | 22 + .../cjs/validator-callback/index.min.js | 11 + .../cjs/validator-choice/index.js | 40 + .../cjs/validator-choice/index.min.js | 11 + .../cjs/validator-color/index.js | 247 + .../cjs/validator-color/index.min.js | 11 + .../cjs/validator-credit-card/index.js | 211 + .../cjs/validator-credit-card/index.min.js | 11 + .../cjs/validator-cusip/index.js | 54 + .../cjs/validator-cusip/index.min.js | 11 + .../cjs/validator-date/index.js | 265 + .../cjs/validator-date/index.min.js | 11 + .../cjs/validator-different/index.js | 21 + .../cjs/validator-different/index.min.js | 11 + .../cjs/validator-digits/index.js | 19 + .../cjs/validator-digits/index.min.js | 11 + .../cjs/validator-ean/index.js | 33 + .../cjs/validator-ean/index.min.js | 11 + .../cjs/validator-ein/index.js | 121 + .../cjs/validator-ein/index.min.js | 11 + .../cjs/validator-email-address/index.js | 79 + .../cjs/validator-email-address/index.min.js | 11 + .../cjs/validator-file/index.js | 154 + .../cjs/validator-file/index.min.js | 11 + .../cjs/validator-greater-than/index.js | 32 + .../cjs/validator-greater-than/index.min.js | 11 + .../cjs/validator-grid/index.js | 34 + .../cjs/validator-grid/index.min.js | 11 + .../cjs/validator-hex/index.js | 21 + .../cjs/validator-hex/index.min.js | 11 + .../cjs/validator-iban/index.js | 198 + .../cjs/validator-iban/index.min.js | 11 + .../cjs/validator-id/index.js | 2737 +++ .../cjs/validator-id/index.min.js | 11 + .../cjs/validator-identical/index.js | 21 + .../cjs/validator-identical/index.min.js | 11 + .../cjs/validator-imei/index.js | 38 + .../cjs/validator-imei/index.min.js | 11 + .../cjs/validator-imo/index.js | 32 + .../cjs/validator-imo/index.min.js | 11 + .../cjs/validator-integer/index.js | 43 + .../cjs/validator-integer/index.min.js | 11 + .../cjs/validator-ip/index.js | 48 + .../cjs/validator-ip/index.min.js | 11 + .../cjs/validator-isbn/index.js | 90 + .../cjs/validator-isbn/index.min.js | 11 + .../cjs/validator-isin/index.js | 57 + .../cjs/validator-isin/index.min.js | 11 + .../cjs/validator-ismn/index.js | 63 + .../cjs/validator-ismn/index.min.js | 11 + .../cjs/validator-issn/index.js | 37 + .../cjs/validator-issn/index.min.js | 11 + .../cjs/validator-less-than/index.js | 32 + .../cjs/validator-less-than/index.min.js | 11 + .../cjs/validator-mac/index.js | 23 + .../cjs/validator-mac/index.min.js | 11 + .../cjs/validator-meid/index.js | 60 + .../cjs/validator-meid/index.min.js | 11 + .../cjs/validator-not-empty/index.js | 20 + .../cjs/validator-not-empty/index.min.js | 11 + .../cjs/validator-numeric/index.js | 50 + .../cjs/validator-numeric/index.min.js | 11 + .../cjs/validator-phone/index.js | 184 + .../cjs/validator-phone/index.min.js | 11 + .../cjs/validator-promise/index.js | 47 + .../cjs/validator-promise/index.min.js | 11 + .../cjs/validator-regexp/index.js | 30 + .../cjs/validator-regexp/index.min.js | 11 + .../cjs/validator-remote/index.js | 63 + .../cjs/validator-remote/index.min.js | 11 + .../cjs/validator-rtn/index.js | 33 + .../cjs/validator-rtn/index.min.js | 11 + .../cjs/validator-sedol/index.js | 34 + .../cjs/validator-sedol/index.min.js | 11 + .../cjs/validator-siren/index.js | 24 + .../cjs/validator-siren/index.min.js | 11 + .../cjs/validator-siret/index.js | 35 + .../cjs/validator-siret/index.min.js | 11 + .../cjs/validator-step/index.js | 62 + .../cjs/validator-step/index.min.js | 11 + .../cjs/validator-string-case/index.js | 37 + .../cjs/validator-string-case/index.min.js | 11 + .../cjs/validator-string-length/index.js | 74 + .../cjs/validator-string-length/index.min.js | 11 + .../cjs/validator-uri/index.js | 106 + .../cjs/validator-uri/index.min.js | 11 + .../cjs/validator-uuid/index.js | 42 + .../cjs/validator-uuid/index.min.js | 11 + .../cjs/validator-vat/index.js | 1904 ++ .../cjs/validator-vat/index.min.js | 11 + .../cjs/validator-vin/index.js | 72 + .../cjs/validator-vin/index.min.js | 11 + .../cjs/validator-zip-code/index.js | 196 + .../cjs/validator-zip-code/index.min.js | 11 + .../@form-validation/esm/bundle/full.js | 13169 ++++++++++++ .../@form-validation/esm/bundle/full.min.js | 20 + .../@form-validation/esm/bundle/popular.js | 6022 ++++++ .../esm/bundle/popular.min.js | 20 + .../@form-validation/esm/core/index.js | 1346 ++ .../@form-validation/esm/core/index.min.js | 11 + .../@form-validation/esm/locales/ar_MA.js | 380 + .../@form-validation/esm/locales/ar_MA.min.js | 1 + .../@form-validation/esm/locales/bg_BG.js | 380 + .../@form-validation/esm/locales/bg_BG.min.js | 1 + .../@form-validation/esm/locales/ca_ES.js | 380 + .../@form-validation/esm/locales/ca_ES.min.js | 1 + .../@form-validation/esm/locales/cs_CZ.js | 380 + .../@form-validation/esm/locales/cs_CZ.min.js | 1 + .../@form-validation/esm/locales/da_DK.js | 380 + .../@form-validation/esm/locales/da_DK.min.js | 1 + .../@form-validation/esm/locales/de_DE.js | 380 + .../@form-validation/esm/locales/de_DE.min.js | 1 + .../@form-validation/esm/locales/el_GR.js | 380 + .../@form-validation/esm/locales/el_GR.min.js | 1 + .../@form-validation/esm/locales/en_US.js | 380 + .../@form-validation/esm/locales/en_US.min.js | 1 + .../@form-validation/esm/locales/es_CL.js | 380 + .../@form-validation/esm/locales/es_CL.min.js | 1 + .../@form-validation/esm/locales/es_ES.js | 380 + .../@form-validation/esm/locales/es_ES.min.js | 1 + .../@form-validation/esm/locales/eu_ES.js | 380 + .../@form-validation/esm/locales/eu_ES.min.js | 1 + .../@form-validation/esm/locales/fa_IR.js | 380 + .../@form-validation/esm/locales/fa_IR.min.js | 1 + .../@form-validation/esm/locales/fi_FI.js | 380 + .../@form-validation/esm/locales/fi_FI.min.js | 1 + .../@form-validation/esm/locales/fr_BE.js | 380 + .../@form-validation/esm/locales/fr_BE.min.js | 1 + .../@form-validation/esm/locales/fr_FR.js | 380 + .../@form-validation/esm/locales/fr_FR.min.js | 1 + .../@form-validation/esm/locales/he_IL.js | 380 + .../@form-validation/esm/locales/he_IL.min.js | 1 + .../@form-validation/esm/locales/hi_IN.js | 380 + .../@form-validation/esm/locales/hi_IN.min.js | 1 + .../@form-validation/esm/locales/hu_HU.js | 380 + .../@form-validation/esm/locales/hu_HU.min.js | 1 + .../@form-validation/esm/locales/id_ID.js | 380 + .../@form-validation/esm/locales/id_ID.min.js | 1 + .../@form-validation/esm/locales/it_IT.js | 380 + .../@form-validation/esm/locales/it_IT.min.js | 1 + .../@form-validation/esm/locales/ja_JP.js | 380 + .../@form-validation/esm/locales/ja_JP.min.js | 1 + .../@form-validation/esm/locales/nl_BE.js | 380 + .../@form-validation/esm/locales/nl_BE.min.js | 1 + .../@form-validation/esm/locales/nl_NL.js | 380 + .../@form-validation/esm/locales/nl_NL.min.js | 1 + .../@form-validation/esm/locales/no_NO.js | 380 + .../@form-validation/esm/locales/no_NO.min.js | 1 + .../@form-validation/esm/locales/pl_PL.js | 380 + .../@form-validation/esm/locales/pl_PL.min.js | 1 + .../@form-validation/esm/locales/pt_BR.js | 380 + .../@form-validation/esm/locales/pt_BR.min.js | 1 + .../@form-validation/esm/locales/pt_PT.js | 380 + .../@form-validation/esm/locales/pt_PT.min.js | 1 + .../@form-validation/esm/locales/ro_RO.js | 380 + .../@form-validation/esm/locales/ro_RO.min.js | 1 + .../@form-validation/esm/locales/ru_RU.js | 380 + .../@form-validation/esm/locales/ru_RU.min.js | 1 + .../@form-validation/esm/locales/sk_SK.js | 380 + .../@form-validation/esm/locales/sk_SK.min.js | 1 + .../@form-validation/esm/locales/sq_AL.js | 380 + .../@form-validation/esm/locales/sq_AL.min.js | 1 + .../@form-validation/esm/locales/sr_RS.js | 380 + .../@form-validation/esm/locales/sr_RS.min.js | 1 + .../@form-validation/esm/locales/sv_SE.js | 380 + .../@form-validation/esm/locales/sv_SE.min.js | 1 + .../@form-validation/esm/locales/th_TH.js | 380 + .../@form-validation/esm/locales/th_TH.min.js | 1 + .../@form-validation/esm/locales/tr_TR.js | 380 + .../@form-validation/esm/locales/tr_TR.min.js | 1 + .../@form-validation/esm/locales/ua_UA.js | 380 + .../@form-validation/esm/locales/ua_UA.min.js | 1 + .../@form-validation/esm/locales/vi_VN.js | 380 + .../@form-validation/esm/locales/vi_VN.min.js | 1 + .../@form-validation/esm/locales/zh_CN.js | 380 + .../@form-validation/esm/locales/zh_CN.min.js | 1 + .../@form-validation/esm/locales/zh_TW.js | 380 + .../@form-validation/esm/locales/zh_TW.min.js | 1 + .../esm/plugin-alias/index.js | 82 + .../esm/plugin-alias/index.min.js | 11 + .../@form-validation/esm/plugin-aria/index.js | 107 + .../esm/plugin-aria/index.min.js | 11 + .../esm/plugin-auto-focus/index.js | 91 + .../esm/plugin-auto-focus/index.min.js | 11 + .../esm/plugin-bootstrap/index.js | 83 + .../esm/plugin-bootstrap/index.min.js | 11 + .../esm/plugin-bootstrap3/index.js | 78 + .../esm/plugin-bootstrap3/index.min.js | 11 + .../esm/plugin-bootstrap5/index.js | 151 + .../esm/plugin-bootstrap5/index.min.js | 11 + .../esm/plugin-bulma/index.js | 83 + .../esm/plugin-bulma/index.min.js | 11 + .../esm/plugin-declarative/index.js | 284 + .../esm/plugin-declarative/index.min.js | 11 + .../esm/plugin-default-submit/index.js | 68 + .../esm/plugin-default-submit/index.min.js | 11 + .../esm/plugin-dependency/index.js | 69 + .../esm/plugin-dependency/index.min.js | 11 + .../esm/plugin-excluded/index.js | 68 + .../esm/plugin-excluded/index.min.js | 11 + .../esm/plugin-field-status/index.js | 120 + .../esm/plugin-field-status/index.min.js | 11 + .../esm/plugin-foundation/index.js | 73 + .../esm/plugin-foundation/index.min.js | 11 + .../esm/plugin-framework/index.js | 270 + .../esm/plugin-framework/index.min.js | 11 + .../@form-validation/esm/plugin-icon/index.js | 223 + .../esm/plugin-icon/index.min.js | 11 + .../index.js | 181 + .../index.min.js | 11 + .../@form-validation/esm/plugin-j/index.js | 22 + .../esm/plugin-j/index.min.js | 11 + .../@form-validation/esm/plugin-l10n/index.js | 74 + .../esm/plugin-l10n/index.min.js | 11 + .../esm/plugin-mailgun/index.js | 103 + .../esm/plugin-mailgun/index.min.js | 11 + .../esm/plugin-mandatory-icon/index.js | 173 + .../esm/plugin-mandatory-icon/index.min.js | 11 + .../esm/plugin-materialize/index.js | 70 + .../esm/plugin-materialize/index.min.js | 11 + .../esm/plugin-message/index.js | 282 + .../esm/plugin-message/index.min.js | 11 + .../esm/plugin-milligram/index.js | 68 + .../esm/plugin-milligram/index.min.js | 11 + .../@form-validation/esm/plugin-mini/index.js | 68 + .../esm/plugin-mini/index.min.js | 11 + .../@form-validation/esm/plugin-mui/index.js | 68 + .../esm/plugin-mui/index.min.js | 11 + .../esm/plugin-password-strength/index.js | 124 + .../esm/plugin-password-strength/index.min.js | 11 + .../@form-validation/esm/plugin-pure/index.js | 68 + .../esm/plugin-pure/index.min.js | 11 + .../esm/plugin-recaptcha/index.js | 256 + .../esm/plugin-recaptcha/index.min.js | 11 + .../esm/plugin-recaptcha3-token/index.js | 110 + .../esm/plugin-recaptcha3-token/index.min.js | 11 + .../esm/plugin-recaptcha3/index.js | 144 + .../esm/plugin-recaptcha3/index.min.js | 11 + .../esm/plugin-semantic/index.js | 92 + .../esm/plugin-semantic/index.min.js | 11 + .../esm/plugin-sequence/index.js | 140 + .../esm/plugin-sequence/index.min.js | 11 + .../esm/plugin-shoelace/index.js | 71 + .../esm/plugin-shoelace/index.min.js | 11 + .../esm/plugin-spectre/index.js | 70 + .../esm/plugin-spectre/index.min.js | 11 + .../esm/plugin-start-end-date/index.js | 128 + .../esm/plugin-start-end-date/index.min.js | 11 + .../esm/plugin-submit-button/index.js | 137 + .../esm/plugin-submit-button/index.min.js | 11 + .../esm/plugin-tachyons/index.js | 67 + .../esm/plugin-tachyons/index.min.js | 11 + .../esm/plugin-tooltip/index.js | 192 + .../esm/plugin-tooltip/index.min.js | 11 + .../esm/plugin-transformer/index.js | 63 + .../esm/plugin-transformer/index.min.js | 11 + .../esm/plugin-trigger/index.js | 193 + .../esm/plugin-trigger/index.min.js | 11 + .../esm/plugin-turnstile/index.js | 240 + .../esm/plugin-turnstile/index.min.js | 11 + .../esm/plugin-turret/index.js | 69 + .../esm/plugin-turret/index.min.js | 11 + .../esm/plugin-typing-animation/index.js | 100 + .../esm/plugin-typing-animation/index.min.js | 11 + .../esm/plugin-ui-kit/index.js | 68 + .../esm/plugin-ui-kit/index.min.js | 11 + .../esm/plugin-wizard/index.js | 239 + .../esm/plugin-wizard/index.min.js | 11 + .../@form-validation/esm/styles/index.css | 582 + .../@form-validation/esm/styles/index.min.css | 1 + .../esm/validator-base64/index.js | 17 + .../esm/validator-base64/index.min.js | 11 + .../esm/validator-between/index.js | 41 + .../esm/validator-between/index.min.js | 11 + .../esm/validator-bic/index.js | 22 + .../esm/validator-bic/index.min.js | 11 + .../esm/validator-blank/index.js | 18 + .../esm/validator-blank/index.min.js | 11 + .../esm/validator-callback/index.js | 20 + .../esm/validator-callback/index.min.js | 11 + .../esm/validator-choice/index.js | 38 + .../esm/validator-choice/index.min.js | 11 + .../esm/validator-color/index.js | 245 + .../esm/validator-color/index.min.js | 11 + .../esm/validator-credit-card/index.js | 208 + .../esm/validator-credit-card/index.min.js | 11 + .../esm/validator-cusip/index.js | 52 + .../esm/validator-cusip/index.min.js | 11 + .../esm/validator-date/index.js | 263 + .../esm/validator-date/index.min.js | 11 + .../esm/validator-different/index.js | 19 + .../esm/validator-different/index.min.js | 11 + .../esm/validator-digits/index.js | 17 + .../esm/validator-digits/index.min.js | 11 + .../esm/validator-ean/index.js | 31 + .../esm/validator-ean/index.min.js | 11 + .../esm/validator-ein/index.js | 119 + .../esm/validator-ein/index.min.js | 11 + .../esm/validator-email-address/index.js | 77 + .../esm/validator-email-address/index.min.js | 11 + .../esm/validator-file/index.js | 152 + .../esm/validator-file/index.min.js | 11 + .../esm/validator-greater-than/index.js | 30 + .../esm/validator-greater-than/index.min.js | 11 + .../esm/validator-grid/index.js | 32 + .../esm/validator-grid/index.min.js | 11 + .../esm/validator-hex/index.js | 19 + .../esm/validator-hex/index.min.js | 11 + .../esm/validator-iban/index.js | 196 + .../esm/validator-iban/index.min.js | 11 + .../esm/validator-id/index.js | 2735 +++ .../esm/validator-id/index.min.js | 11 + .../esm/validator-identical/index.js | 19 + .../esm/validator-identical/index.min.js | 11 + .../esm/validator-imei/index.js | 36 + .../esm/validator-imei/index.min.js | 11 + .../esm/validator-imo/index.js | 30 + .../esm/validator-imo/index.min.js | 11 + .../esm/validator-integer/index.js | 41 + .../esm/validator-integer/index.min.js | 11 + .../esm/validator-ip/index.js | 46 + .../esm/validator-ip/index.min.js | 11 + .../esm/validator-isbn/index.js | 88 + .../esm/validator-isbn/index.min.js | 11 + .../esm/validator-isin/index.js | 55 + .../esm/validator-isin/index.min.js | 11 + .../esm/validator-ismn/index.js | 61 + .../esm/validator-ismn/index.min.js | 11 + .../esm/validator-issn/index.js | 35 + .../esm/validator-issn/index.min.js | 11 + .../esm/validator-less-than/index.js | 30 + .../esm/validator-less-than/index.min.js | 11 + .../esm/validator-mac/index.js | 21 + .../esm/validator-mac/index.min.js | 11 + .../esm/validator-meid/index.js | 58 + .../esm/validator-meid/index.min.js | 11 + .../esm/validator-not-empty/index.js | 18 + .../esm/validator-not-empty/index.min.js | 11 + .../esm/validator-numeric/index.js | 48 + .../esm/validator-numeric/index.min.js | 11 + .../esm/validator-phone/index.js | 182 + .../esm/validator-phone/index.min.js | 11 + .../esm/validator-promise/index.js | 45 + .../esm/validator-promise/index.min.js | 11 + .../esm/validator-regexp/index.js | 28 + .../esm/validator-regexp/index.min.js | 11 + .../esm/validator-remote/index.js | 61 + .../esm/validator-remote/index.min.js | 11 + .../esm/validator-rtn/index.js | 31 + .../esm/validator-rtn/index.min.js | 11 + .../esm/validator-sedol/index.js | 32 + .../esm/validator-sedol/index.min.js | 11 + .../esm/validator-siren/index.js | 22 + .../esm/validator-siren/index.min.js | 11 + .../esm/validator-siret/index.js | 33 + .../esm/validator-siret/index.min.js | 11 + .../esm/validator-step/index.js | 60 + .../esm/validator-step/index.min.js | 11 + .../esm/validator-string-case/index.js | 35 + .../esm/validator-string-case/index.min.js | 11 + .../esm/validator-string-length/index.js | 72 + .../esm/validator-string-length/index.min.js | 11 + .../esm/validator-uri/index.js | 104 + .../esm/validator-uri/index.min.js | 11 + .../esm/validator-uuid/index.js | 40 + .../esm/validator-uuid/index.min.js | 11 + .../esm/validator-vat/index.js | 1902 ++ .../esm/validator-vat/index.min.js | 11 + .../esm/validator-vin/index.js | 70 + .../esm/validator-vin/index.min.js | 11 + .../esm/validator-zip-code/index.js | 194 + .../esm/validator-zip-code/index.min.js | 11 + .../@form-validation/umd/bundle/full.js | 13179 ++++++++++++ .../@form-validation/umd/bundle/full.min.js | 20 + .../@form-validation/umd/bundle/popular.js | 6032 ++++++ .../umd/bundle/popular.min.js | 20 + .../@form-validation/umd/core/index.js | 1405 ++ .../@form-validation/umd/core/index.min.js | 11 + .../@form-validation/umd/locales/ar_MA.js | 388 + .../@form-validation/umd/locales/ar_MA.min.js | 1 + .../@form-validation/umd/locales/bg_BG.js | 388 + .../@form-validation/umd/locales/bg_BG.min.js | 1 + .../@form-validation/umd/locales/ca_ES.js | 388 + .../@form-validation/umd/locales/ca_ES.min.js | 1 + .../@form-validation/umd/locales/cs_CZ.js | 388 + .../@form-validation/umd/locales/cs_CZ.min.js | 1 + .../@form-validation/umd/locales/da_DK.js | 388 + .../@form-validation/umd/locales/da_DK.min.js | 1 + .../@form-validation/umd/locales/de_DE.js | 388 + .../@form-validation/umd/locales/de_DE.min.js | 1 + .../@form-validation/umd/locales/el_GR.js | 388 + .../@form-validation/umd/locales/el_GR.min.js | 1 + .../@form-validation/umd/locales/en_US.js | 388 + .../@form-validation/umd/locales/en_US.min.js | 1 + .../@form-validation/umd/locales/es_CL.js | 388 + .../@form-validation/umd/locales/es_CL.min.js | 1 + .../@form-validation/umd/locales/es_ES.js | 388 + .../@form-validation/umd/locales/es_ES.min.js | 1 + .../@form-validation/umd/locales/eu_ES.js | 388 + .../@form-validation/umd/locales/eu_ES.min.js | 1 + .../@form-validation/umd/locales/fa_IR.js | 388 + .../@form-validation/umd/locales/fa_IR.min.js | 1 + .../@form-validation/umd/locales/fi_FI.js | 388 + .../@form-validation/umd/locales/fi_FI.min.js | 1 + .../@form-validation/umd/locales/fr_BE.js | 388 + .../@form-validation/umd/locales/fr_BE.min.js | 1 + .../@form-validation/umd/locales/fr_FR.js | 388 + .../@form-validation/umd/locales/fr_FR.min.js | 1 + .../@form-validation/umd/locales/he_IL.js | 388 + .../@form-validation/umd/locales/he_IL.min.js | 1 + .../@form-validation/umd/locales/hi_IN.js | 388 + .../@form-validation/umd/locales/hi_IN.min.js | 1 + .../@form-validation/umd/locales/hu_HU.js | 388 + .../@form-validation/umd/locales/hu_HU.min.js | 1 + .../@form-validation/umd/locales/id_ID.js | 388 + .../@form-validation/umd/locales/id_ID.min.js | 1 + .../@form-validation/umd/locales/it_IT.js | 388 + .../@form-validation/umd/locales/it_IT.min.js | 1 + .../@form-validation/umd/locales/ja_JP.js | 388 + .../@form-validation/umd/locales/ja_JP.min.js | 1 + .../@form-validation/umd/locales/nl_BE.js | 388 + .../@form-validation/umd/locales/nl_BE.min.js | 1 + .../@form-validation/umd/locales/nl_NL.js | 388 + .../@form-validation/umd/locales/nl_NL.min.js | 1 + .../@form-validation/umd/locales/no_NO.js | 388 + .../@form-validation/umd/locales/no_NO.min.js | 1 + .../@form-validation/umd/locales/pl_PL.js | 388 + .../@form-validation/umd/locales/pl_PL.min.js | 1 + .../@form-validation/umd/locales/pt_BR.js | 388 + .../@form-validation/umd/locales/pt_BR.min.js | 1 + .../@form-validation/umd/locales/pt_PT.js | 388 + .../@form-validation/umd/locales/pt_PT.min.js | 1 + .../@form-validation/umd/locales/ro_RO.js | 388 + .../@form-validation/umd/locales/ro_RO.min.js | 1 + .../@form-validation/umd/locales/ru_RU.js | 388 + .../@form-validation/umd/locales/ru_RU.min.js | 1 + .../@form-validation/umd/locales/sk_SK.js | 388 + .../@form-validation/umd/locales/sk_SK.min.js | 1 + .../@form-validation/umd/locales/sq_AL.js | 388 + .../@form-validation/umd/locales/sq_AL.min.js | 1 + .../@form-validation/umd/locales/sr_RS.js | 388 + .../@form-validation/umd/locales/sr_RS.min.js | 1 + .../@form-validation/umd/locales/sv_SE.js | 388 + .../@form-validation/umd/locales/sv_SE.min.js | 1 + .../@form-validation/umd/locales/th_TH.js | 388 + .../@form-validation/umd/locales/th_TH.min.js | 1 + .../@form-validation/umd/locales/tr_TR.js | 388 + .../@form-validation/umd/locales/tr_TR.min.js | 1 + .../@form-validation/umd/locales/ua_UA.js | 388 + .../@form-validation/umd/locales/ua_UA.min.js | 1 + .../@form-validation/umd/locales/vi_VN.js | 388 + .../@form-validation/umd/locales/vi_VN.min.js | 1 + .../@form-validation/umd/locales/zh_CN.js | 388 + .../@form-validation/umd/locales/zh_CN.min.js | 1 + .../@form-validation/umd/locales/zh_TW.js | 388 + .../@form-validation/umd/locales/zh_TW.min.js | 1 + .../umd/plugin-alias/index.js | 88 + .../umd/plugin-alias/index.min.js | 11 + .../@form-validation/umd/plugin-aria/index.js | 113 + .../umd/plugin-aria/index.min.js | 11 + .../umd/plugin-auto-focus/index.js | 96 + .../umd/plugin-auto-focus/index.min.js | 11 + .../umd/plugin-bootstrap/index.js | 88 + .../umd/plugin-bootstrap/index.min.js | 11 + .../umd/plugin-bootstrap3/index.js | 83 + .../umd/plugin-bootstrap3/index.min.js | 11 + .../umd/plugin-bootstrap5/index.js | 156 + .../umd/plugin-bootstrap5/index.min.js | 11 + .../umd/plugin-bulma/index.js | 88 + .../umd/plugin-bulma/index.min.js | 11 + .../umd/plugin-declarative/index.js | 290 + .../umd/plugin-declarative/index.min.js | 11 + .../umd/plugin-default-submit/index.js | 74 + .../umd/plugin-default-submit/index.min.js | 11 + .../umd/plugin-dependency/index.js | 75 + .../umd/plugin-dependency/index.min.js | 11 + .../umd/plugin-excluded/index.js | 74 + .../umd/plugin-excluded/index.min.js | 11 + .../umd/plugin-field-status/index.js | 126 + .../umd/plugin-field-status/index.min.js | 11 + .../umd/plugin-foundation/index.js | 79 + .../umd/plugin-foundation/index.min.js | 11 + .../umd/plugin-framework/index.js | 275 + .../umd/plugin-framework/index.min.js | 11 + .../@form-validation/umd/plugin-icon/index.js | 229 + .../umd/plugin-icon/index.min.js | 11 + .../index.js | 187 + .../index.min.js | 11 + .../@form-validation/umd/plugin-j/index.js | 27 + .../umd/plugin-j/index.min.js | 11 + .../@form-validation/umd/plugin-l10n/index.js | 80 + .../umd/plugin-l10n/index.min.js | 11 + .../umd/plugin-mailgun/index.js | 108 + .../umd/plugin-mailgun/index.min.js | 11 + .../umd/plugin-mandatory-icon/index.js | 179 + .../umd/plugin-mandatory-icon/index.min.js | 11 + .../umd/plugin-materialize/index.js | 75 + .../umd/plugin-materialize/index.min.js | 11 + .../umd/plugin-message/index.js | 288 + .../umd/plugin-message/index.min.js | 11 + .../umd/plugin-milligram/index.js | 73 + .../umd/plugin-milligram/index.min.js | 11 + .../@form-validation/umd/plugin-mini/index.js | 73 + .../umd/plugin-mini/index.min.js | 11 + .../@form-validation/umd/plugin-mui/index.js | 73 + .../umd/plugin-mui/index.min.js | 11 + .../umd/plugin-password-strength/index.js | 130 + .../umd/plugin-password-strength/index.min.js | 11 + .../@form-validation/umd/plugin-pure/index.js | 73 + .../umd/plugin-pure/index.min.js | 11 + .../umd/plugin-recaptcha/index.js | 262 + .../umd/plugin-recaptcha/index.min.js | 11 + .../umd/plugin-recaptcha3-token/index.js | 116 + .../umd/plugin-recaptcha3-token/index.min.js | 11 + .../umd/plugin-recaptcha3/index.js | 150 + .../umd/plugin-recaptcha3/index.min.js | 11 + .../umd/plugin-semantic/index.js | 97 + .../umd/plugin-semantic/index.min.js | 11 + .../umd/plugin-sequence/index.js | 146 + .../umd/plugin-sequence/index.min.js | 11 + .../umd/plugin-shoelace/index.js | 76 + .../umd/plugin-shoelace/index.min.js | 11 + .../umd/plugin-spectre/index.js | 75 + .../umd/plugin-spectre/index.min.js | 11 + .../umd/plugin-start-end-date/index.js | 134 + .../umd/plugin-start-end-date/index.min.js | 11 + .../umd/plugin-submit-button/index.js | 143 + .../umd/plugin-submit-button/index.min.js | 11 + .../umd/plugin-tachyons/index.js | 72 + .../umd/plugin-tachyons/index.min.js | 11 + .../umd/plugin-tooltip/index.js | 198 + .../umd/plugin-tooltip/index.min.js | 11 + .../umd/plugin-transformer/index.js | 69 + .../umd/plugin-transformer/index.min.js | 11 + .../umd/plugin-trigger/index.js | 199 + .../umd/plugin-trigger/index.min.js | 11 + .../umd/plugin-turnstile/index.js | 246 + .../umd/plugin-turnstile/index.min.js | 11 + .../umd/plugin-turret/index.js | 74 + .../umd/plugin-turret/index.min.js | 11 + .../umd/plugin-typing-animation/index.js | 106 + .../umd/plugin-typing-animation/index.min.js | 11 + .../umd/plugin-ui-kit/index.js | 73 + .../umd/plugin-ui-kit/index.min.js | 11 + .../umd/plugin-wizard/index.js | 244 + .../umd/plugin-wizard/index.min.js | 11 + .../@form-validation/umd/styles/index.css | 582 + .../@form-validation/umd/styles/index.min.css | 1 + .../umd/validator-base64/index.js | 25 + .../umd/validator-base64/index.min.js | 11 + .../umd/validator-between/index.js | 47 + .../umd/validator-between/index.min.js | 11 + .../umd/validator-bic/index.js | 30 + .../umd/validator-bic/index.min.js | 11 + .../umd/validator-blank/index.js | 26 + .../umd/validator-blank/index.min.js | 11 + .../umd/validator-callback/index.js | 26 + .../umd/validator-callback/index.min.js | 11 + .../umd/validator-choice/index.js | 44 + .../umd/validator-choice/index.min.js | 11 + .../umd/validator-color/index.js | 253 + .../umd/validator-color/index.min.js | 11 + .../umd/validator-credit-card/index.js | 214 + .../umd/validator-credit-card/index.min.js | 11 + .../umd/validator-cusip/index.js | 60 + .../umd/validator-cusip/index.min.js | 11 + .../umd/validator-date/index.js | 269 + .../umd/validator-date/index.min.js | 11 + .../umd/validator-different/index.js | 27 + .../umd/validator-different/index.min.js | 11 + .../umd/validator-digits/index.js | 25 + .../umd/validator-digits/index.min.js | 11 + .../umd/validator-ean/index.js | 39 + .../umd/validator-ean/index.min.js | 11 + .../umd/validator-ein/index.js | 127 + .../umd/validator-ein/index.min.js | 11 + .../umd/validator-email-address/index.js | 83 + .../umd/validator-email-address/index.min.js | 11 + .../umd/validator-file/index.js | 160 + .../umd/validator-file/index.min.js | 11 + .../umd/validator-greater-than/index.js | 36 + .../umd/validator-greater-than/index.min.js | 11 + .../umd/validator-grid/index.js | 38 + .../umd/validator-grid/index.min.js | 11 + .../umd/validator-hex/index.js | 27 + .../umd/validator-hex/index.min.js | 11 + .../umd/validator-iban/index.js | 202 + .../umd/validator-iban/index.min.js | 11 + .../umd/validator-id/index.js | 2741 +++ .../umd/validator-id/index.min.js | 11 + .../umd/validator-identical/index.js | 27 + .../umd/validator-identical/index.min.js | 11 + .../umd/validator-imei/index.js | 42 + .../umd/validator-imei/index.min.js | 11 + .../umd/validator-imo/index.js | 38 + .../umd/validator-imo/index.min.js | 11 + .../umd/validator-integer/index.js | 47 + .../umd/validator-integer/index.min.js | 11 + .../umd/validator-ip/index.js | 52 + .../umd/validator-ip/index.min.js | 11 + .../umd/validator-isbn/index.js | 96 + .../umd/validator-isbn/index.min.js | 11 + .../umd/validator-isin/index.js | 63 + .../umd/validator-isin/index.min.js | 11 + .../umd/validator-ismn/index.js | 69 + .../umd/validator-ismn/index.min.js | 11 + .../umd/validator-issn/index.js | 43 + .../umd/validator-issn/index.min.js | 11 + .../umd/validator-less-than/index.js | 36 + .../umd/validator-less-than/index.min.js | 11 + .../umd/validator-mac/index.js | 29 + .../umd/validator-mac/index.min.js | 11 + .../umd/validator-meid/index.js | 64 + .../umd/validator-meid/index.min.js | 11 + .../umd/validator-not-empty/index.js | 26 + .../umd/validator-not-empty/index.min.js | 11 + .../umd/validator-numeric/index.js | 54 + .../umd/validator-numeric/index.min.js | 11 + .../umd/validator-phone/index.js | 188 + .../umd/validator-phone/index.min.js | 11 + .../umd/validator-promise/index.js | 51 + .../umd/validator-promise/index.min.js | 11 + .../umd/validator-regexp/index.js | 36 + .../umd/validator-regexp/index.min.js | 11 + .../umd/validator-remote/index.js | 67 + .../umd/validator-remote/index.min.js | 11 + .../umd/validator-rtn/index.js | 39 + .../umd/validator-rtn/index.min.js | 11 + .../umd/validator-sedol/index.js | 40 + .../umd/validator-sedol/index.min.js | 11 + .../umd/validator-siren/index.js | 28 + .../umd/validator-siren/index.min.js | 11 + .../umd/validator-siret/index.js | 41 + .../umd/validator-siret/index.min.js | 11 + .../umd/validator-step/index.js | 66 + .../umd/validator-step/index.min.js | 11 + .../umd/validator-string-case/index.js | 41 + .../umd/validator-string-case/index.min.js | 11 + .../umd/validator-string-length/index.js | 78 + .../umd/validator-string-length/index.min.js | 11 + .../umd/validator-uri/index.js | 110 + .../umd/validator-uri/index.min.js | 11 + .../umd/validator-uuid/index.js | 46 + .../umd/validator-uuid/index.min.js | 11 + .../umd/validator-vat/index.js | 1908 ++ .../umd/validator-vat/index.min.js | 11 + .../umd/validator-vin/index.js | 78 + .../umd/validator-vin/index.min.js | 11 + .../umd/validator-zip-code/index.js | 200 + .../umd/validator-zip-code/index.min.js | 11 + .../src/sass/components/_btn-secondary.scss | 36 + .../sass/components/_testimonials-slider.scss | 65 + .../_keenthemes/src/sass/layout/_aside.scss | 22 + .../_keenthemes/src/sass/layout/_main.scss | 21 + resources/mix/common/button-ajax.js | 26 + .../permission/permission-modal.blade.php | 89 + .../livewire/permission/role-list.blade.php | 77 + .../livewire/permission/role-modal.blade.php | 133 + .../livewire/user/add-user-modal.blade.php | 160 + .../permissions/columns/_actions.blade.php | 6 + .../permissions/columns/_assign-to.blade.php | 5 + .../permissions/columns/_draw-scripts.js | 21 + .../permissions/list.blade.php | 85 + .../roles/columns/_actions.blade.php | 23 + .../roles/columns/_draw-scripts.js | 24 + .../roles/columns/_user.blade.php | 23 + .../apps/user-management/roles/list.blade.php | 21 + .../apps/user-management/roles/show.blade.php | 108 + .../users/columns/_actions.blade.php | 31 + .../users/columns/_draw-scripts.js | 37 + .../users/columns/_user.blade.php | 23 + .../apps/user-management/users/list.blade.php | 72 + .../users/modals/_add-auth-app.blade.php | 58 + .../modals/_add-one-time-password.blade.php | 92 + .../users/modals/_add-schedule.blade.php | 93 + .../users/modals/_add-task.blade.php | 83 + .../users/modals/_update-details.blade.php | 539 + .../users/modals/_update-email.blade.php | 78 + .../users/modals/_update-password.blade.php | 96 + .../users/modals/_update-role.blade.php | 164 + .../apps/user-management/users/show.blade.php | 2761 +++ .../pages/auth/confirm-password.blade.php | 34 + .../pages/auth/forgot-password.blade.php | 41 + resources/views/pages/auth/login.blade.php | 102 + resources/views/pages/auth/register.blade.php | 145 + .../views/pages/auth/reset-password.blade.php | 95 + .../views/pages/auth/verify-email.blade.php | 39 + .../vendor/breadcrumbs/bootstrap5.blade.php | 26 + routes/auth.php | 56 + routes/breadcrumbs.php | 53 + 1429 files changed, 231438 insertions(+) create mode 100644 app/Actions/GetThemeType.php create mode 100644 app/Core/KTBootstrap.php create mode 100644 app/DataTables/PermissionsDataTable.php create mode 100644 app/DataTables/UsersAssignedRoleDataTable.php create mode 100644 app/DataTables/UsersDataTable.php create mode 100644 app/Http/Controllers/Apps/PermissionManagementController.php create mode 100644 app/Http/Controllers/Apps/RoleManagementController.php create mode 100644 app/Http/Controllers/Apps/UserManagementController.php create mode 100644 app/Http/Controllers/Auth/AuthenticatedSessionController.php create mode 100644 app/Http/Controllers/Auth/ConfirmablePasswordController.php create mode 100644 app/Http/Controllers/Auth/EmailVerificationNotificationController.php create mode 100644 app/Http/Controllers/Auth/EmailVerificationPromptController.php create mode 100644 app/Http/Controllers/Auth/NewPasswordController.php create mode 100644 app/Http/Controllers/Auth/PasswordResetLinkController.php create mode 100644 app/Http/Controllers/Auth/RegisteredUserController.php create mode 100644 app/Http/Controllers/Auth/SocialiteController.php create mode 100644 app/Http/Controllers/Auth/VerifyEmailController.php create mode 100644 app/Http/Livewire/Permission/PermissionModal.php create mode 100644 app/Http/Livewire/Permission/RoleList.php create mode 100644 app/Http/Livewire/Permission/RoleModal.php create mode 100644 app/Http/Livewire/User/AddUserModal.php create mode 100644 app/Http/Requests/Auth/LoginRequest.php create mode 100644 app/Models/User.php create mode 100644 config/breadcrumbs.php create mode 100644 config/livewire.php create mode 100644 database/factories/UserFactory.php create mode 100644 database/migrations/2014_10_12_000000_create_users_table.php create mode 100644 database/migrations/2014_10_12_100000_create_password_resets_table.php create mode 100644 database/migrations/2019_08_19_000000_create_failed_jobs_table.php create mode 100644 database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php create mode 100644 database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php create mode 100644 database/migrations/2023_06_11_075700_create_permission_tables.php create mode 100644 database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php create mode 100644 database/seeders/RolesPermissionsSeeder.php create mode 100644 database/seeders/UsersSeeder.php create mode 100644 package-lock.json create mode 100644 public/vendor/livewire/livewire.js create mode 100644 public/vendor/livewire/livewire.js.map create mode 100644 public/vendor/livewire/manifest.json create mode 100644 resources/_keenthemes/src/.DS_Store create mode 100644 resources/_keenthemes/src/js/custom/pages/testimonials/testimonials-1.js create mode 100644 resources/_keenthemes/src/media/demo/1600x1200/1.png create mode 100644 resources/_keenthemes/src/media/demo/1600x1200/2.jpg create mode 100644 resources/_keenthemes/src/media/demo/1600x1200/3.png create mode 100644 resources/_keenthemes/src/media/demo/2600x1200/1.jpg create mode 100644 resources/_keenthemes/src/media/features-logos/react-query.png create mode 100644 resources/_keenthemes/src/media/features-logos/vue-pania.png create mode 100644 resources/_keenthemes/src/media/misc/1.png create mode 100644 resources/_keenthemes/src/media/misc/layout/aside-calendar.png create mode 100644 resources/_keenthemes/src/media/misc/layout/aside-courier-activity.png create mode 100644 resources/_keenthemes/src/media/misc/layout/aside-filters.png create mode 100644 resources/_keenthemes/src/media/misc/layout/aside-segments.png create mode 100644 resources/_keenthemes/src/media/misc/layout/aside-shipment-history.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/1.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/10.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/100.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/101.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/102.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/103.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/104.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/105.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/106.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/107.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/108.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/109.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/11.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/110.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/111.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/112.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/113.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/114.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/115.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/116.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/117.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/118.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/119.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/12.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/120.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/121.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/122.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/123.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/124.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/125.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/126.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/127.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/128.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/129.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/13.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/130.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/131.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/132.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/133.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/134.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/135.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/136.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/137.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/138.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/139.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/14.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/140.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/141.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/142.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/143.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/145.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/146.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/147.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/148.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/149.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/15.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/150.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/151.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/152.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/153.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/154.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/155.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/156.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/157.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/158.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/159.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/16.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/160.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/161.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/162.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/163.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/164.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/168.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/169.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/17.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/170.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/171.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/172.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/173.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/175.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/176.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/177.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/178.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/179.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/18.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/180.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/181.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/182.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/183.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/184.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/185.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/186.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/189.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/19.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/190.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/191.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/192.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/193.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/194.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/195.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/196.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/197.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/198.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/199.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/2.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/20.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/200.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/201.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/202.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/203.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/204.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/205.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/206.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/207.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/208.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/209.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/21.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/210.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/211.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/212.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/213.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/214.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/215.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/216.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/217.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/218.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/219.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/22.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/23.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/24.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/25.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/26.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/27.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/28.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/29.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/3.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/30.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/31.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/32.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/33.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/34.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/35.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/36.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/37.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/38.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/39.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/4.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/40.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/41.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/42.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/43.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/44.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/45.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/46.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/47.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/48.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/49.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/5.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/50.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/51.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/52.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/53.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/54.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/55.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/56.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/57.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/58.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/59.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/6.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/60.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/61.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/62.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/63.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/64.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/65.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/66.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/67.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/68.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/69.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/7.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/70.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/71.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/72.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/74.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/75.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/76.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/77.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/78.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/79.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/8.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/80.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/81.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/82.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/83.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/84.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/85.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/86.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/87.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/88.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/89.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/9.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/90.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/91.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/92.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/93.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/94.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/95.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/96.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/97.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/98.png create mode 100644 resources/_keenthemes/src/media/stock/ecommerce/99.png create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/amara.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/asgardia.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/aven-1.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/earth-2.0.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/goldline.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/hex-lab.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/ideaa.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/lighting.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/liva.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/nirastate.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/solaytic.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/treva-1.svg create mode 100644 resources/_keenthemes/src/media/svg/brand-logos/velocity-9.svg create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/bundle/full.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/bundle/full.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/bundle/popular.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/bundle/popular.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/core/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/core/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ar_MA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ar_MA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/bg_BG.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/bg_BG.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ca_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ca_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/cs_CZ.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/cs_CZ.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/da_DK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/da_DK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/de_DE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/de_DE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/el_GR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/el_GR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/en_US.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/en_US.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/es_CL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/es_CL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/es_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/es_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/eu_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/eu_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fa_IR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fa_IR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fi_FI.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fi_FI.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fr_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fr_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fr_FR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/fr_FR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/he_IL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/he_IL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/hi_IN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/hi_IN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/hu_HU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/hu_HU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/id_ID.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/id_ID.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/it_IT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/it_IT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ja_JP.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ja_JP.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/nl_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/nl_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/nl_NL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/nl_NL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/no_NO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/no_NO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/pl_PL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/pl_PL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/pt_BR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/pt_BR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/pt_PT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/pt_PT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ro_RO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ro_RO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ru_RU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ru_RU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sk_SK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sk_SK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sq_AL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sq_AL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sr_RS.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sr_RS.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sv_SE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/sv_SE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/th_TH.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/th_TH.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/tr_TR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/tr_TR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ua_UA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/ua_UA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/vi_VN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/vi_VN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/zh_CN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/zh_CN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/zh_TW.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/locales/zh_TW.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-alias/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-alias/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-aria/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-aria/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-auto-focus/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-auto-focus/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bootstrap/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bootstrap/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bootstrap3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bootstrap3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bootstrap5/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bootstrap5/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bulma/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-bulma/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-declarative/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-declarative/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-default-submit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-default-submit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-dependency/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-dependency/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-excluded/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-excluded/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-field-status/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-field-status/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-foundation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-foundation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-framework/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-framework/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-international-telephone-input/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-international-telephone-input/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-j/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-j/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-l10n/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-l10n/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mailgun/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mailgun/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mandatory-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mandatory-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-materialize/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-materialize/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-message/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-message/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-milligram/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-milligram/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mini/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mini/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mui/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-mui/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-password-strength/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-password-strength/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-pure/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-pure/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-recaptcha/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-recaptcha/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-recaptcha3-token/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-recaptcha3-token/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-recaptcha3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-recaptcha3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-semantic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-semantic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-sequence/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-sequence/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-shoelace/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-shoelace/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-spectre/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-spectre/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-start-end-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-start-end-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-submit-button/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-submit-button/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-tachyons/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-tachyons/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-tooltip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-tooltip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-transformer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-transformer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-trigger/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-trigger/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-turnstile/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-turnstile/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-turret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-turret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-typing-animation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-typing-animation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-ui-kit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-ui-kit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-wizard/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/plugin-wizard/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/styles/index.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/styles/index.min.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-base64/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-base64/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-between/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-between/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-bic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-bic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-blank/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-blank/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-callback/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-callback/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-choice/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-choice/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-color/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-color/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-credit-card/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-credit-card/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-cusip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-cusip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-different/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-different/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-digits/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-digits/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ean/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ean/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ein/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ein/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-email-address/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-email-address/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-file/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-file/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-greater-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-greater-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-grid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-grid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-hex/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-hex/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-iban/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-iban/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-id/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-id/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-identical/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-identical/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-imei/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-imei/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-imo/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-imo/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-integer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-integer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-isbn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-isbn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-isin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-isin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ismn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-ismn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-issn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-issn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-less-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-less-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-mac/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-mac/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-meid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-meid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-not-empty/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-not-empty/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-numeric/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-numeric/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-phone/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-phone/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-promise/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-promise/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-regexp/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-regexp/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-remote/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-remote/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-rtn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-rtn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-sedol/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-sedol/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-siren/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-siren/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-siret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-siret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-step/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-step/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-string-case/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-string-case/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-string-length/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-string-length/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-uri/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-uri/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-uuid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-uuid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-vat/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-vat/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-vin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-vin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-zip-code/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/amd/validator-zip-code/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/bundle/full.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/bundle/full.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/bundle/popular.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/bundle/popular.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/core/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/core/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ar_MA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ar_MA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/bg_BG.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/bg_BG.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ca_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ca_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/cs_CZ.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/cs_CZ.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/da_DK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/da_DK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/de_DE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/de_DE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/el_GR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/el_GR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/en_US.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/en_US.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/es_CL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/es_CL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/es_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/es_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/eu_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/eu_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fa_IR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fa_IR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fi_FI.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fi_FI.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fr_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fr_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fr_FR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/fr_FR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/he_IL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/he_IL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/hi_IN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/hi_IN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/hu_HU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/hu_HU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/id_ID.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/id_ID.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/it_IT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/it_IT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ja_JP.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ja_JP.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/nl_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/nl_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/nl_NL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/nl_NL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/no_NO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/no_NO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/pl_PL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/pl_PL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/pt_BR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/pt_BR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/pt_PT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/pt_PT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ro_RO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ro_RO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ru_RU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ru_RU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sk_SK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sk_SK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sq_AL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sq_AL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sr_RS.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sr_RS.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sv_SE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/sv_SE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/th_TH.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/th_TH.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/tr_TR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/tr_TR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ua_UA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/ua_UA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/vi_VN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/vi_VN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/zh_CN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/zh_CN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/zh_TW.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/locales/zh_TW.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-alias/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-alias/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-aria/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-aria/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-auto-focus/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-auto-focus/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bootstrap/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bootstrap/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bootstrap3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bootstrap3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bootstrap5/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bootstrap5/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bulma/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-bulma/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-declarative/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-declarative/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-default-submit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-default-submit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-dependency/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-dependency/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-excluded/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-excluded/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-field-status/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-field-status/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-foundation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-foundation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-framework/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-framework/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-international-telephone-input/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-international-telephone-input/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-j/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-j/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-l10n/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-l10n/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mailgun/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mailgun/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mandatory-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mandatory-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-materialize/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-materialize/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-message/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-message/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-milligram/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-milligram/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mini/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mini/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mui/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-mui/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-password-strength/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-password-strength/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-pure/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-pure/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-recaptcha/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-recaptcha/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-recaptcha3-token/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-recaptcha3-token/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-recaptcha3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-recaptcha3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-semantic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-semantic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-sequence/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-sequence/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-shoelace/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-shoelace/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-spectre/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-spectre/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-start-end-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-start-end-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-submit-button/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-submit-button/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-tachyons/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-tachyons/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-tooltip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-tooltip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-transformer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-transformer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-trigger/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-trigger/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-turnstile/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-turnstile/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-turret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-turret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-typing-animation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-typing-animation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-ui-kit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-ui-kit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-wizard/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/plugin-wizard/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/styles/index.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/styles/index.min.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-base64/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-base64/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-between/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-between/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-bic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-bic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-blank/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-blank/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-callback/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-callback/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-choice/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-choice/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-color/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-color/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-credit-card/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-credit-card/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-cusip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-cusip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-different/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-different/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-digits/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-digits/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ean/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ean/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ein/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ein/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-email-address/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-email-address/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-file/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-file/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-greater-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-greater-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-grid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-grid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-hex/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-hex/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-iban/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-iban/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-id/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-id/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-identical/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-identical/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-imei/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-imei/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-imo/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-imo/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-integer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-integer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-isbn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-isbn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-isin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-isin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ismn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-ismn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-issn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-issn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-less-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-less-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-mac/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-mac/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-meid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-meid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-not-empty/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-not-empty/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-numeric/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-numeric/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-phone/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-phone/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-promise/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-promise/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-regexp/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-regexp/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-remote/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-remote/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-rtn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-rtn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-sedol/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-sedol/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-siren/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-siren/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-siret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-siret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-step/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-step/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-string-case/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-string-case/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-string-length/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-string-length/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-uri/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-uri/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-uuid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-uuid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-vat/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-vat/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-vin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-vin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-zip-code/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/cjs/validator-zip-code/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/bundle/full.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/bundle/full.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/bundle/popular.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/bundle/popular.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/core/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/core/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ar_MA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ar_MA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/bg_BG.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/bg_BG.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ca_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ca_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/cs_CZ.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/cs_CZ.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/da_DK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/da_DK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/de_DE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/de_DE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/el_GR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/el_GR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/en_US.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/en_US.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/es_CL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/es_CL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/es_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/es_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/eu_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/eu_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fa_IR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fa_IR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fi_FI.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fi_FI.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fr_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fr_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fr_FR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/fr_FR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/he_IL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/he_IL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/hi_IN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/hi_IN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/hu_HU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/hu_HU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/id_ID.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/id_ID.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/it_IT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/it_IT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ja_JP.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ja_JP.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/nl_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/nl_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/nl_NL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/nl_NL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/no_NO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/no_NO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/pl_PL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/pl_PL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/pt_BR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/pt_BR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/pt_PT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/pt_PT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ro_RO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ro_RO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ru_RU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ru_RU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sk_SK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sk_SK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sq_AL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sq_AL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sr_RS.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sr_RS.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sv_SE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/sv_SE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/th_TH.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/th_TH.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/tr_TR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/tr_TR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ua_UA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/ua_UA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/vi_VN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/vi_VN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/zh_CN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/zh_CN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/zh_TW.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/locales/zh_TW.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-alias/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-alias/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-aria/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-aria/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-auto-focus/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-auto-focus/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bootstrap/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bootstrap/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bootstrap3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bootstrap3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bootstrap5/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bootstrap5/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bulma/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-bulma/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-declarative/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-declarative/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-default-submit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-default-submit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-dependency/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-dependency/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-excluded/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-excluded/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-field-status/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-field-status/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-foundation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-foundation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-framework/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-framework/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-international-telephone-input/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-international-telephone-input/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-j/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-j/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-l10n/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-l10n/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mailgun/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mailgun/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mandatory-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mandatory-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-materialize/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-materialize/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-message/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-message/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-milligram/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-milligram/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mini/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mini/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mui/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-mui/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-password-strength/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-password-strength/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-pure/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-pure/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-recaptcha/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-recaptcha/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-recaptcha3-token/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-recaptcha3-token/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-recaptcha3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-recaptcha3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-semantic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-semantic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-sequence/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-sequence/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-shoelace/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-shoelace/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-spectre/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-spectre/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-start-end-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-start-end-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-submit-button/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-submit-button/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-tachyons/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-tachyons/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-tooltip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-tooltip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-transformer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-transformer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-trigger/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-trigger/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-turnstile/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-turnstile/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-turret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-turret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-typing-animation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-typing-animation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-ui-kit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-ui-kit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-wizard/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/plugin-wizard/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/styles/index.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/styles/index.min.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-base64/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-base64/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-between/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-between/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-bic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-bic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-blank/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-blank/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-callback/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-callback/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-choice/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-choice/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-color/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-color/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-credit-card/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-credit-card/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-cusip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-cusip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-different/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-different/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-digits/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-digits/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ean/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ean/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ein/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ein/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-email-address/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-email-address/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-file/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-file/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-greater-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-greater-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-grid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-grid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-hex/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-hex/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-iban/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-iban/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-id/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-id/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-identical/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-identical/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-imei/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-imei/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-imo/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-imo/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-integer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-integer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-isbn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-isbn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-isin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-isin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ismn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-ismn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-issn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-issn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-less-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-less-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-mac/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-mac/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-meid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-meid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-not-empty/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-not-empty/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-numeric/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-numeric/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-phone/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-phone/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-promise/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-promise/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-regexp/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-regexp/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-remote/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-remote/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-rtn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-rtn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-sedol/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-sedol/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-siren/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-siren/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-siret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-siret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-step/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-step/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-string-case/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-string-case/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-string-length/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-string-length/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-uri/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-uri/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-uuid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-uuid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-vat/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-vat/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-vin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-vin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-zip-code/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/esm/validator-zip-code/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/bundle/full.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/bundle/full.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/bundle/popular.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/bundle/popular.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/core/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ar_MA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ar_MA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/bg_BG.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/bg_BG.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ca_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ca_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/cs_CZ.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/cs_CZ.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/da_DK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/da_DK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/de_DE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/de_DE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/el_GR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/el_GR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/en_US.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/en_US.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/es_CL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/es_CL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/es_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/es_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/eu_ES.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/eu_ES.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fa_IR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fa_IR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fi_FI.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fi_FI.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fr_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fr_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fr_FR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/fr_FR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/he_IL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/he_IL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/hi_IN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/hi_IN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/hu_HU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/hu_HU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/id_ID.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/id_ID.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/it_IT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/it_IT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ja_JP.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ja_JP.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/nl_BE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/nl_BE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/nl_NL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/nl_NL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/no_NO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/no_NO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/pl_PL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/pl_PL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/pt_BR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/pt_BR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/pt_PT.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/pt_PT.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ro_RO.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ro_RO.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ru_RU.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ru_RU.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sk_SK.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sk_SK.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sq_AL.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sq_AL.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sr_RS.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sr_RS.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sv_SE.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/sv_SE.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/th_TH.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/th_TH.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/tr_TR.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/tr_TR.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ua_UA.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/ua_UA.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/vi_VN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/vi_VN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/zh_CN.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/zh_CN.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/zh_TW.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/locales/zh_TW.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.js create mode 100644 resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js create mode 100644 resources/_keenthemes/src/sass/components/_btn-secondary.scss create mode 100644 resources/_keenthemes/src/sass/components/_testimonials-slider.scss create mode 100644 resources/_keenthemes/src/sass/layout/_aside.scss create mode 100644 resources/_keenthemes/src/sass/layout/_main.scss create mode 100644 resources/mix/common/button-ajax.js create mode 100644 resources/views/livewire/permission/permission-modal.blade.php create mode 100644 resources/views/livewire/permission/role-list.blade.php create mode 100644 resources/views/livewire/permission/role-modal.blade.php create mode 100644 resources/views/livewire/user/add-user-modal.blade.php create mode 100644 resources/views/pages/apps/user-management/permissions/columns/_actions.blade.php create mode 100644 resources/views/pages/apps/user-management/permissions/columns/_assign-to.blade.php create mode 100644 resources/views/pages/apps/user-management/permissions/columns/_draw-scripts.js create mode 100644 resources/views/pages/apps/user-management/permissions/list.blade.php create mode 100644 resources/views/pages/apps/user-management/roles/columns/_actions.blade.php create mode 100644 resources/views/pages/apps/user-management/roles/columns/_draw-scripts.js create mode 100644 resources/views/pages/apps/user-management/roles/columns/_user.blade.php create mode 100644 resources/views/pages/apps/user-management/roles/list.blade.php create mode 100644 resources/views/pages/apps/user-management/roles/show.blade.php create mode 100644 resources/views/pages/apps/user-management/users/columns/_actions.blade.php create mode 100644 resources/views/pages/apps/user-management/users/columns/_draw-scripts.js create mode 100644 resources/views/pages/apps/user-management/users/columns/_user.blade.php create mode 100644 resources/views/pages/apps/user-management/users/list.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_add-auth-app.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_add-one-time-password.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_add-schedule.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_add-task.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_update-details.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_update-email.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_update-password.blade.php create mode 100644 resources/views/pages/apps/user-management/users/modals/_update-role.blade.php create mode 100644 resources/views/pages/apps/user-management/users/show.blade.php create mode 100644 resources/views/pages/auth/confirm-password.blade.php create mode 100644 resources/views/pages/auth/forgot-password.blade.php create mode 100644 resources/views/pages/auth/login.blade.php create mode 100644 resources/views/pages/auth/register.blade.php create mode 100644 resources/views/pages/auth/reset-password.blade.php create mode 100644 resources/views/pages/auth/verify-email.blade.php create mode 100644 resources/views/vendor/breadcrumbs/bootstrap5.blade.php create mode 100644 routes/auth.php create mode 100644 routes/breadcrumbs.php diff --git a/app/Actions/GetThemeType.php b/app/Actions/GetThemeType.php new file mode 100644 index 0000000..4247f7d --- /dev/null +++ b/app/Actions/GetThemeType.php @@ -0,0 +1,24 @@ +seed = crc32($seed); + + return str_replace('?', $this->randomType(), $format); + } + + public function randomType() + { + srand($this->seed); + + return $this->types[rand(0, count($this->types) - 1)] ?? ''; + } +} diff --git a/app/Core/KTBootstrap.php b/app/Core/KTBootstrap.php new file mode 100644 index 0000000..dcfd95a --- /dev/null +++ b/app/Core/KTBootstrap.php @@ -0,0 +1,45 @@ +editColumn('name', function (Permission $permission) { + return ucwords($permission->name); + }) + ->addColumn('assigned_to', function (Permission $permission) { + $roles = $permission->roles; + return view('pages.apps.user-management.permissions.columns._assign-to', compact('roles')); + }) + ->editColumn('created_at', function (Permission $permission) { + return $permission->created_at->format('d M Y, h:i a'); + }) + ->addColumn('actions', function (Permission $permission) { + return view('pages.apps.user-management.permissions.columns._actions', compact('permission')); + }) + ->setRowId('id'); + } + + /** + * Get the query source of dataTable. + */ + public function query(Permission $model): QueryBuilder + { + return $model->newQuery(); + } + + /** + * Optional method if you want to use the html builder. + */ + public function html(): HtmlBuilder + { + return $this->builder() + ->setTableId('permissions-table') + ->columns($this->getColumns()) + ->minifiedAjax() + ->dom('rt' . "<'row'<'col-sm-12 col-md-5'l><'col-sm-12 col-md-7'p>>",) + ->addTableClass('table align-middle table-row-dashed fs-6 gy-5 dataTable no-footer text-gray-600 fw-semibold') + ->setTableHeadClass('text-start text-muted fw-bold fs-7 text-uppercase gs-0') + ->orderBy(0) + ->drawCallback("function() {" . file_get_contents(resource_path('views/pages//apps/user-management/permissions/columns/_draw-scripts.js')) . "}"); + } + + /** + * Get the dataTable columns definition. + */ + public function getColumns(): array + { + return [ + Column::make('name'), + Column::make('assigned_to'), + Column::make('created_at')->addClass('text-nowrap'), + Column::computed('actions') + ->addClass('text-end text-nowrap') + ->exportable(false) + ->printable(false), + ]; + } + + /** + * Get the filename for export. + */ + protected function filename(): string + { + return 'Permissions_' . date('YmdHis'); + } +} diff --git a/app/DataTables/UsersAssignedRoleDataTable.php b/app/DataTables/UsersAssignedRoleDataTable.php new file mode 100644 index 0000000..fc1d859 --- /dev/null +++ b/app/DataTables/UsersAssignedRoleDataTable.php @@ -0,0 +1,88 @@ +rawColumns(['user']) + ->editColumn('user', function (User $user) { + return view('pages.apps.user-management.roles.columns._user', compact('user')); + }) + ->editColumn('created_at', function (User $user) { + return $user->created_at->format('d M Y, h:i a'); + }) + ->addColumn('action', function (User $user) { + return view('pages.apps.user-management.roles.columns._actions', compact('user')); + }) + ->setRowId('id'); + } + + /** + * Get the query source of dataTable. + */ + public function query(User $model): QueryBuilder + { + return $model->newQuery()->whereHas('roles', function (Builder $query) { + $query->where('role_id', $this->role->getKey()); + }); + } + + /** + * Optional method if you want to use the html builder. + */ + public function html(): HtmlBuilder + { + return $this->builder() + ->setTableId('usersassingedrole-table') + ->columns($this->getColumns()) + ->minifiedAjax() + ->dom('rt' . "<'row'<'col-sm-12 col-md-5'l><'col-sm-12 col-md-7'p>>",) + ->addTableClass('table align-middle table-row-dashed fs-6 gy-5 dataTable no-footer text-gray-600 fw-semibold') + ->setTableHeadClass('text-start text-muted fw-bold fs-7 text-uppercase gs-0') + ->orderBy(1) + ->drawCallback("function() {" . file_get_contents(resource_path('views/pages//apps/user-management/users/columns/_draw-scripts.js')) . "}"); + } + + /** + * Get the dataTable columns definition. + */ + public function getColumns(): array + { + return [ + Column::make('id'), + Column::make('user')->addClass('d-flex align-items-center')->name('name'), + Column::make('name'), + Column::make('created_at')->title('Joined Date')->addClass('text-nowrap'), + Column::computed('action') + ->addClass('text-end text-nowrap') + ->exportable(false) + ->printable(false) + ->width(60), + ]; + } + + /** + * Get the filename for export. + */ + protected function filename(): string + { + return 'UsersAssingedRole_' . date('YmdHis'); + } +} diff --git a/app/DataTables/UsersDataTable.php b/app/DataTables/UsersDataTable.php new file mode 100644 index 0000000..0f10ede --- /dev/null +++ b/app/DataTables/UsersDataTable.php @@ -0,0 +1,91 @@ +rawColumns(['user', 'last_login_at']) + ->editColumn('user', function (User $user) { + return view('pages.apps.user-management.users.columns._user', compact('user')); + }) + ->editColumn('role', function (User $user) { + return ucwords($user->roles->first()?->name); + }) + ->editColumn('last_login_at', function (User $user) { + return sprintf('
%s
', $user->last_login_at ? $user->last_login_at->diffForHumans() : $user->updated_at->diffForHumans()); + }) + ->editColumn('created_at', function (User $user) { + return $user->created_at->format('d M Y, h:i a'); + }) + ->addColumn('action', function (User $user) { + return view('pages.apps.user-management.users.columns._actions', compact('user')); + }) + ->setRowId('id'); + } + + + /** + * Get the query source of dataTable. + */ + public function query(User $model): QueryBuilder + { + return $model->newQuery(); + } + + /** + * Optional method if you want to use the html builder. + */ + public function html(): HtmlBuilder + { + return $this->builder() + ->setTableId('users-table') + ->columns($this->getColumns()) + ->minifiedAjax() + ->dom('rt' . "<'row'<'col-sm-12 col-md-5'l><'col-sm-12 col-md-7'p>>",) + ->addTableClass('table align-middle table-row-dashed fs-6 gy-5 dataTable no-footer text-gray-600 fw-semibold') + ->setTableHeadClass('text-start text-muted fw-bold fs-7 text-uppercase gs-0') + ->orderBy(2) + ->drawCallback("function() {" . file_get_contents(resource_path('views/pages//apps/user-management/users/columns/_draw-scripts.js')) . "}"); + } + + /** + * Get the dataTable columns definition. + */ + public function getColumns(): array + { + return [ + Column::make('user')->addClass('d-flex align-items-center')->name('name'), + Column::make('role')->searchable(false), + Column::make('last_login_at')->title('Last Login'), + Column::make('created_at')->title('Joined Date')->addClass('text-nowrap'), + Column::computed('action') + ->addClass('text-end text-nowrap') + ->exportable(false) + ->printable(false) + ->width(60) + ]; + } + + /** + * Get the filename for export. + */ + protected function filename(): string + { + return 'Users_' . date('YmdHis'); + } +} diff --git a/app/Http/Controllers/Apps/PermissionManagementController.php b/app/Http/Controllers/Apps/PermissionManagementController.php new file mode 100644 index 0000000..a6eba11 --- /dev/null +++ b/app/Http/Controllers/Apps/PermissionManagementController.php @@ -0,0 +1,66 @@ +render('pages.apps.user-management.permissions.list'); + } + + /** + * Show the form for creating a new resource. + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + */ + public function show(string $id) + { + // + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(string $id) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, string $id) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(string $id) + { + // + } +} diff --git a/app/Http/Controllers/Apps/RoleManagementController.php b/app/Http/Controllers/Apps/RoleManagementController.php new file mode 100644 index 0000000..07351d6 --- /dev/null +++ b/app/Http/Controllers/Apps/RoleManagementController.php @@ -0,0 +1,68 @@ +with('role', $role) + ->render('pages.apps.user-management.roles.show', compact('role')); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(Role $role) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, Role $role) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(Role $role) + { + // + } +} diff --git a/app/Http/Controllers/Apps/UserManagementController.php b/app/Http/Controllers/Apps/UserManagementController.php new file mode 100644 index 0000000..8c5ae18 --- /dev/null +++ b/app/Http/Controllers/Apps/UserManagementController.php @@ -0,0 +1,67 @@ +render('pages.apps.user-management.users.list'); + } + + /** + * Show the form for creating a new resource. + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + */ + public function show(User $user) + { + return view('pages.apps.user-management.users.show', compact('user')); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(User $user) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, User $user) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(User $user) + { + // + } +} diff --git a/app/Http/Controllers/Auth/AuthenticatedSessionController.php b/app/Http/Controllers/Auth/AuthenticatedSessionController.php new file mode 100644 index 0000000..2d46878 --- /dev/null +++ b/app/Http/Controllers/Auth/AuthenticatedSessionController.php @@ -0,0 +1,64 @@ +authenticate(); + + $request->session()->regenerate(); + + $request->user()->update([ + 'last_login_at' => Carbon::now()->toDateTimeString(), + 'last_login_ip' => $request->getClientIp() + ]); + + return redirect()->intended(RouteServiceProvider::HOME); + } + + /** + * Destroy an authenticated session. + * + * @param \Illuminate\Http\Request $request + * + * @return \Illuminate\Http\RedirectResponse + */ + public function destroy(Request $request) + { + Auth::guard('web')->logout(); + + $request->session()->invalidate(); + + $request->session()->regenerateToken(); + + return redirect('/'); + } +} diff --git a/app/Http/Controllers/Auth/ConfirmablePasswordController.php b/app/Http/Controllers/Auth/ConfirmablePasswordController.php new file mode 100644 index 0000000..525bea3 --- /dev/null +++ b/app/Http/Controllers/Auth/ConfirmablePasswordController.php @@ -0,0 +1,44 @@ +validate([ + 'email' => $request->user()->email, + 'password' => $request->password, + ])) { + throw ValidationException::withMessages([ + 'password' => __('auth.password'), + ]); + } + + $request->session()->put('auth.password_confirmed_at', time()); + + return redirect()->intended(RouteServiceProvider::HOME); + } +} diff --git a/app/Http/Controllers/Auth/EmailVerificationNotificationController.php b/app/Http/Controllers/Auth/EmailVerificationNotificationController.php new file mode 100644 index 0000000..3362dca --- /dev/null +++ b/app/Http/Controllers/Auth/EmailVerificationNotificationController.php @@ -0,0 +1,27 @@ +user()->hasVerifiedEmail()) { + return redirect()->intended(RouteServiceProvider::HOME); + } + + $request->user()->sendEmailVerificationNotification(); + + return back()->with('status', 'verification-link-sent'); + } +} diff --git a/app/Http/Controllers/Auth/EmailVerificationPromptController.php b/app/Http/Controllers/Auth/EmailVerificationPromptController.php new file mode 100644 index 0000000..1f2efa3 --- /dev/null +++ b/app/Http/Controllers/Auth/EmailVerificationPromptController.php @@ -0,0 +1,23 @@ +user()->hasVerifiedEmail() + ? redirect()->intended(RouteServiceProvider::HOME) + : view('pages.auth.verify-email'); + } +} diff --git a/app/Http/Controllers/Auth/NewPasswordController.php b/app/Http/Controllers/Auth/NewPasswordController.php new file mode 100644 index 0000000..d12d28c --- /dev/null +++ b/app/Http/Controllers/Auth/NewPasswordController.php @@ -0,0 +1,67 @@ + $request]); + } + + /** + * Handle an incoming new password request. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\RedirectResponse + * + * @throws \Illuminate\Validation\ValidationException + */ + public function store(Request $request) + { + $request->validate([ + 'token' => ['required'], + 'email' => ['required', 'email'], + 'password' => ['required', 'confirmed', Rules\Password::defaults()], + ]); + + // Here we will attempt to reset the user's password. If it is successful we + // will update the password on an actual user model and persist it to the + // database. Otherwise we will parse the error and return the response. + $status = Password::reset( + $request->only('email', 'password', 'password_confirmation', 'token'), + function ($user) use ($request) { + $user->forceFill([ + 'password' => Hash::make($request->password), + 'remember_token' => Str::random(60), + ])->save(); + + event(new PasswordReset($user)); + } + ); + + // If the password was successfully reset, we will redirect the user back to + // the application's home authenticated view. If there is an error we can + // redirect them back to where they came from with their error message. + return $status == Password::PASSWORD_RESET + ? redirect()->route('login')->with('status', __($status)) + : back()->withInput($request->only('email')) + ->withErrors(['email' => __($status)]); + } +} diff --git a/app/Http/Controllers/Auth/PasswordResetLinkController.php b/app/Http/Controllers/Auth/PasswordResetLinkController.php new file mode 100644 index 0000000..a4ab0ce --- /dev/null +++ b/app/Http/Controllers/Auth/PasswordResetLinkController.php @@ -0,0 +1,49 @@ +validate([ + 'email' => ['required', 'email'], + ]); + + // We will send the password reset link to this user. Once we have attempted + // to send the link, we will examine the response then see the message we + // need to show to the user. Finally, we'll send out a proper response. + $status = Password::sendResetLink( + $request->only('email') + ); + + return $status == Password::RESET_LINK_SENT + ? back()->with('status', __($status)) + : back()->withInput($request->only('email')) + ->withErrors(['email' => __($status)]); + } +} diff --git a/app/Http/Controllers/Auth/RegisteredUserController.php b/app/Http/Controllers/Auth/RegisteredUserController.php new file mode 100644 index 0000000..f4607c9 --- /dev/null +++ b/app/Http/Controllers/Auth/RegisteredUserController.php @@ -0,0 +1,59 @@ +validate([ + 'name' => ['required', 'string', 'max:255'], + 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], + 'password' => ['required', 'confirmed', Rules\Password::defaults()], + ]); + + $user = User::create([ + 'name' => $request->name, + 'email' => $request->email, + 'password' => Hash::make($request->password), + 'last_login_at' => \Illuminate\Support\Carbon::now()->toDateTimeString(), + 'last_login_ip' => $request->getClientIp() + ]); + + event(new Registered($user)); + + Auth::login($user); + + return redirect(RouteServiceProvider::HOME); + } +} diff --git a/app/Http/Controllers/Auth/SocialiteController.php b/app/Http/Controllers/Auth/SocialiteController.php new file mode 100644 index 0000000..baf9ff4 --- /dev/null +++ b/app/Http/Controllers/Auth/SocialiteController.php @@ -0,0 +1,54 @@ +input('state')) { + // already logged in + // get user info from social site + $user = Socialite::driver($provider)->stateless()->user(); + + // check for existing user + $existingUser = User::where('email', $user->getEmail())->first(); + + if ($existingUser) { + auth()->login($existingUser, true); + + return redirect()->to('/'); + } + + $newUser = $this->createUser($user); + auth()->login($newUser, true); + } + + // request login from social site + return Socialite::driver($provider)->redirect(); + } + + + function createUser($user) + { + $user = User::updateOrCreate([ + 'email' => $user->getEmail(), + ], [ + 'name' => $user->getName(), + 'password' => '', + 'avatar' => $user->getAvatar(), + ]); + + if ($user->markEmailAsVerified()) { + event(new Verified($user)); + } + + return $user; + } +} diff --git a/app/Http/Controllers/Auth/VerifyEmailController.php b/app/Http/Controllers/Auth/VerifyEmailController.php new file mode 100644 index 0000000..6baa9aa --- /dev/null +++ b/app/Http/Controllers/Auth/VerifyEmailController.php @@ -0,0 +1,30 @@ +user()->hasVerifiedEmail()) { + return redirect()->intended(RouteServiceProvider::HOME.'?verified=1'); + } + + if ($request->user()->markEmailAsVerified()) { + event(new Verified($request->user())); + } + + return redirect()->intended(RouteServiceProvider::HOME.'?verified=1'); + } +} diff --git a/app/Http/Livewire/Permission/PermissionModal.php b/app/Http/Livewire/Permission/PermissionModal.php new file mode 100644 index 0000000..324397c --- /dev/null +++ b/app/Http/Livewire/Permission/PermissionModal.php @@ -0,0 +1,80 @@ + 'required|string', + ]; + + // This is the list of listeners that this component listens to. + protected $listeners = [ + 'modal.show.permission_name' => 'mountPermission', + 'delete_permission' => 'delete' + ]; + + public function render() + { + return view('livewire.permission.permission-modal'); + } + + public function mountPermission($permission_name = '') + { + if (empty($permission_name)) { + // Create new + $this->permission = new Permission; + $this->name = ''; + return; + } + + // Get the role by name. + $permission = Permission::where('name', $permission_name)->first(); + if (is_null($permission)) { + $this->emit('error', 'The selected permission [' . $permission_name . '] is not found'); + return; + } + + $this->permission = $permission; + + // Set the name and checked permissions properties to the role's values. + $this->name = $this->permission->name; + } + + public function submit() + { + $this->validate(); + + $this->permission->name = strtolower($this->name); + if ($this->permission->isDirty()) { + $this->permission->save(); + } + + // Emit a success event with a message indicating that the permissions have been updated. + $this->emit('success', 'Permission updated'); + } + + public function delete($name) + { + $permission = Permission::where('name', $name)->first(); + + if (!is_null($permission)) { + $permission->delete(); + } + + $this->emit('success', 'Permission deleted'); + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Livewire/Permission/RoleList.php b/app/Http/Livewire/Permission/RoleList.php new file mode 100644 index 0000000..a4b6b97 --- /dev/null +++ b/app/Http/Livewire/Permission/RoleList.php @@ -0,0 +1,32 @@ + 'updateRoleList']; + + public function render() + { + $this->roles = Role::with('permissions')->get(); + + return view('livewire.permission.role-list'); + } + + public function updateRoleList() + { + $this->roles = Role::with('permissions')->get(); + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Livewire/Permission/RoleModal.php b/app/Http/Livewire/Permission/RoleModal.php new file mode 100644 index 0000000..a1460d4 --- /dev/null +++ b/app/Http/Livewire/Permission/RoleModal.php @@ -0,0 +1,110 @@ + 'required|string', + ]; + + // This is the list of listeners that this component listens to. + protected $listeners = ['modal.show.role_name' => 'mountRole']; + + // This function is called when the component receives the `modal.show.role_name` event. + public function mountRole($role_name = '') + { + if (empty($role_name)) { + // Create new + $this->role = new Role; + $this->name = ''; + return; + } + + // Get the role by name. + $role = Role::where('name', $role_name)->first(); + if (is_null($role)) { + $this->emit('error', 'The selected role [' . $role_name . '] is not found'); + return; + } + + $this->role = $role; + + // Set the name and checked permissions properties to the role's values. + $this->name = $this->role->name; + $this->checked_permissions = $this->role->permissions->pluck('name'); + } + + // This function is called when the component is mounted. + public function mount() + { + // Get all permissions. + $this->permissions = Permission::all(); + + // Set the checked permissions property to an empty array. + $this->checked_permissions = []; + } + + // This function renders the component's view. + public function render() + { + // Create an array of permissions grouped by ability. + $permissions_by_group = []; + foreach ($this->permissions ?? [] as $permission) { + $ability = Str::after($permission->name, ' '); + + $permissions_by_group[$ability][] = $permission; + } + + // Return the view with the permissions_by_group variable passed in. + return view('livewire.permission.role-modal', compact('permissions_by_group')); + } + + // This function submits the form and updates the role's permissions. + public function submit() + { + $this->validate(); + + $this->role->name = $this->name; + if ($this->role->isDirty()) { + $this->role->save(); + } + + // Sync the role's permissions with the checked permissions property. + $this->role->syncPermissions($this->checked_permissions); + + // Emit a success event with a message indicating that the permissions have been updated. + $this->emit('success', 'Permissions for ' . ucwords($this->role->name) . ' role updated'); + } + + // This function checks all of the permissions. + public function checkAll() + { + // If the check_all property is true, set the checked permissions property to all of the permissions. + if ($this->check_all) { + $this->checked_permissions = $this->permissions->pluck('name'); + } else { + // Otherwise, set the checked permissions property to an empty array. + $this->checked_permissions = []; + } + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Livewire/User/AddUserModal.php b/app/Http/Livewire/User/AddUserModal.php new file mode 100644 index 0000000..202da84 --- /dev/null +++ b/app/Http/Livewire/User/AddUserModal.php @@ -0,0 +1,137 @@ + 'required|string', + 'email' => 'required|email', + 'role' => 'required|string', + 'avatar' => 'nullable|sometimes|image|max:1024', + ]; + + protected $listeners = [ + 'delete_user' => 'deleteUser', + 'update_user' => 'updateUser', + ]; + + public function render() + { + $roles = Role::all(); + + $roles_description = [ + 'administrator' => 'Best for business owners and company administrators', + 'developer' => 'Best for developers or people primarily using the API', + 'analyst' => 'Best for people who need full access to analytics data, but don\'t need to update business settings', + 'support' => 'Best for employees who regularly refund payments and respond to disputes', + 'trial' => 'Best for people who need to preview content data, but don\'t need to make any updates', + ]; + + foreach ($roles as $i => $role) { + $roles[$i]->description = $roles_description[$role->name] ?? ''; + } + + return view('livewire.user.add-user-modal', compact('roles')); + } + + public function submit() + { + // Validate the form input data + $this->validate(); + + DB::transaction(function () { + // Prepare the data for creating a new user + $data = [ + 'name' => $this->name, + ]; + + if ($this->avatar) { + $data['profile_photo_path'] = $this->avatar->store('avatars', 'public'); + } else { + $data['profile_photo_path'] = null; + } + + if (!$this->edit_mode) { + $data['password'] = Hash::make($this->email); + } + + // Create a new user record in the database + $user = User::updateOrCreate([ + 'email' => $this->email, + ], $data); + + if ($this->edit_mode) { + // Assign selected role for user + $user->syncRoles($this->role); + + // Emit a success event with a message + $this->emit('success', __('User updated')); + } else { + // Assign selected role for user + $user->assignRole($this->role); + + // Send a password reset link to the user's email + Password::sendResetLink($user->only('email')); + + // Emit a success event with a message + $this->emit('success', __('New user created')); + } + }); + + // Reset the form fields after successful submission + $this->reset(); + } + + public function deleteUser($id) + { + // Prevent deletion of current user + if ($id == Auth::id()) { + $this->emit('error', 'User cannot be deleted'); + return; + } + + // Delete the user record with the specified ID + User::destroy($id); + + // Emit a success event with a message + $this->emit('success', 'User successfully deleted'); + } + + public function updateUser($id) + { + $this->edit_mode = true; + + $user = User::find($id); + + $this->saved_avatar = $user->profile_photo_url; + $this->name = $user->name; + $this->email = $user->email; + $this->role = $user->roles?->first()->name ?? ''; + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Requests/Auth/LoginRequest.php b/app/Http/Requests/Auth/LoginRequest.php new file mode 100644 index 0000000..e0c6f14 --- /dev/null +++ b/app/Http/Requests/Auth/LoginRequest.php @@ -0,0 +1,93 @@ + ['required', 'string', 'email'], + 'password' => ['required', 'string'], + ]; + } + + /** + * Attempt to authenticate the request's credentials. + * + * @return void + * + * @throws \Illuminate\Validation\ValidationException + */ + public function authenticate() + { + $this->ensureIsNotRateLimited(); + + if (! Auth::attempt($this->only('email', 'password'), $this->boolean('remember'))) { + RateLimiter::hit($this->throttleKey()); + + throw ValidationException::withMessages([ + 'email' => trans('auth.failed'), + ]); + } + + RateLimiter::clear($this->throttleKey()); + } + + /** + * Ensure the login request is not rate limited. + * + * @return void + * + * @throws \Illuminate\Validation\ValidationException + */ + public function ensureIsNotRateLimited() + { + if (! RateLimiter::tooManyAttempts($this->throttleKey(), 5)) { + return; + } + + event(new Lockout($this)); + + $seconds = RateLimiter::availableIn($this->throttleKey()); + + throw ValidationException::withMessages([ + 'email' => trans('auth.throttle', [ + 'seconds' => $seconds, + 'minutes' => ceil($seconds / 60), + ]), + ]); + } + + /** + * Get the rate limiting throttle key for the request. + * + * @return string + */ + public function throttleKey() + { + return Str::transliterate(Str::lower($this->input('email')).'|'.$this->ip()); + } +} diff --git a/app/Models/User.php b/app/Models/User.php new file mode 100644 index 0000000..4b0112d --- /dev/null +++ b/app/Models/User.php @@ -0,0 +1,60 @@ + + */ + protected $fillable = [ + 'name', + 'email', + 'password', + 'last_login_at', + 'last_login_ip', + 'profile_photo_path', + ]; + + /** + * The attributes that should be hidden for serialization. + * + * @var array + */ + protected $hidden = [ + 'password', + 'remember_token', + ]; + + /** + * The attributes that should be cast. + * + * @var array + */ + protected $casts = [ + 'email_verified_at' => 'datetime', + 'last_login_at' => 'datetime', + ]; + + public function getProfilePhotoUrlAttribute() + { + if ($this->profile_photo_path) { + return asset('storage/' . $this->profile_photo_path); + } + + return $this->profile_photo_path; + } +} diff --git a/config/breadcrumbs.php b/config/breadcrumbs.php new file mode 100644 index 0000000..9a268fa --- /dev/null +++ b/config/breadcrumbs.php @@ -0,0 +1,75 @@ + 'breadcrumbs::bootstrap5', + + /* + |-------------------------------------------------------------------------- + | Breadcrumbs File(s) + |-------------------------------------------------------------------------- + | + | The file(s) where breadcrumbs are defined. e.g. + | + | - base_path('routes/breadcrumbs.php') + | - glob(base_path('breadcrumbs/*.php')) + | + */ + + 'files' => base_path('routes/breadcrumbs.php'), + + /* + |-------------------------------------------------------------------------- + | Exceptions + |-------------------------------------------------------------------------- + | + | Determine when to throw an exception. + | + */ + + // When route-bound breadcrumbs are used but the current route doesn't have a name (UnnamedRouteException) + 'unnamed-route-exception' => true, + + // When route-bound breadcrumbs are used and the matching breadcrumb doesn't exist (InvalidBreadcrumbException) + 'missing-route-bound-breadcrumb-exception' => true, + + // When a named breadcrumb is used but doesn't exist (InvalidBreadcrumbException) + 'invalid-named-breadcrumb-exception' => true, + + /* + |-------------------------------------------------------------------------- + | Classes + |-------------------------------------------------------------------------- + | + | Subclass the default classes for more advanced customisations. + | + */ + + // Manager + 'manager-class' => Diglactic\Breadcrumbs\Manager::class, + + // Generator + 'generator-class' => Diglactic\Breadcrumbs\Generator::class, + +]; diff --git a/config/livewire.php b/config/livewire.php new file mode 100644 index 0000000..6d0731d --- /dev/null +++ b/config/livewire.php @@ -0,0 +1,158 @@ + 'App\\Http\\Livewire', + + /* + |-------------------------------------------------------------------------- + | View Path + |-------------------------------------------------------------------------- + | + | This value sets the path for Livewire component views. This affects + | file manipulation helper commands like `artisan make:livewire`. + | + */ + + 'view_path' => resource_path('views/livewire'), + + /* + |-------------------------------------------------------------------------- + | Layout + |-------------------------------------------------------------------------- + | The default layout view that will be used when rendering a component via + | Route::get('/some-endpoint', SomeComponent::class);. In this case the + | the view returned by SomeComponent will be wrapped in "layouts.app" + | + */ + + 'layout' => 'layouts.app', + + /* + |-------------------------------------------------------------------------- + | Livewire Assets URL + |-------------------------------------------------------------------------- + | + | This value sets the path to Livewire JavaScript assets, for cases where + | your app's domain root is not the correct path. By default, Livewire + | will load its JavaScript assets from the app's "relative root". + | + | Examples: "/assets", "myurl.com/app". + | + */ + + 'asset_url' => env('LIVEWIRE_ASSET_URL', null), + + /* + |-------------------------------------------------------------------------- + | Livewire App URL + |-------------------------------------------------------------------------- + | + | This value should be used if livewire assets are served from CDN. + | Livewire will communicate with an app through this url. + | + | Examples: "https://my-app.com", "myurl.com/app". + | + */ + + 'app_url' => null, + + /* + |-------------------------------------------------------------------------- + | Livewire Endpoint Middleware Group + |-------------------------------------------------------------------------- + | + | This value sets the middleware group that will be applied to the main + | Livewire "message" endpoint (the endpoint that gets hit everytime + | a Livewire component updates). It is set to "web" by default. + | + */ + + 'middleware_group' => 'web', + + /* + |-------------------------------------------------------------------------- + | Livewire Temporary File Uploads Endpoint Configuration + |-------------------------------------------------------------------------- + | + | Livewire handles file uploads by storing uploads in a temporary directory + | before the file is validated and stored permanently. All file uploads + | are directed to a global endpoint for temporary storage. The config + | items below are used for customizing the way the endpoint works. + | + */ + + 'temporary_file_upload' => [ + 'disk' => null, // Example: 'local', 's3' Default: 'default' + 'rules' => null, // Example: ['file', 'mimes:png,jpg'] Default: ['required', 'file', 'max:12288'] (12MB) + 'directory' => null, // Example: 'tmp' Default 'livewire-tmp' + 'middleware' => null, // Example: 'throttle:5,1' Default: 'throttle:60,1' + 'preview_mimes' => [ // Supported file types for temporary pre-signed file URLs. + 'png', 'gif', 'bmp', 'svg', 'wav', 'mp4', + 'mov', 'avi', 'wmv', 'mp3', 'm4a', + 'jpg', 'jpeg', 'mpga', 'webp', 'wma', + ], + 'max_upload_time' => 5, // Max duration (in minutes) before an upload gets invalidated. + ], + + /* + |-------------------------------------------------------------------------- + | Manifest File Path + |-------------------------------------------------------------------------- + | + | This value sets the path to the Livewire manifest file. + | The default should work for most cases (which is + | "/bootstrap/cache/livewire-components.php"), but for specific + | cases like when hosting on Laravel Vapor, it could be set to a different value. + | + | Example: for Laravel Vapor, it would be "/tmp/storage/bootstrap/cache/livewire-components.php". + | + */ + + 'manifest_path' => null, + + /* + |-------------------------------------------------------------------------- + | Back Button Cache + |-------------------------------------------------------------------------- + | + | This value determines whether the back button cache will be used on pages + | that contain Livewire. By disabling back button cache, it ensures that + | the back button shows the correct state of components, instead of + | potentially stale, cached data. + | + | Setting it to "false" (default) will disable back button cache. + | + */ + + 'back_button_cache' => false, + + /* + |-------------------------------------------------------------------------- + | Render On Redirect + |-------------------------------------------------------------------------- + | + | This value determines whether Livewire will render before it's redirected + | or not. Setting it to "false" (default) will mean the render method is + | skipped when redirecting. And "true" will mean the render method is + | run before redirecting. Browsers bfcache can store a potentially + | stale view if render is skipped on redirect. + | + */ + + 'render_on_redirect' => false, + +]; diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php new file mode 100644 index 0000000..41f8ae8 --- /dev/null +++ b/database/factories/UserFactory.php @@ -0,0 +1,40 @@ + + */ +class UserFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition() + { + return [ + 'name' => fake()->name(), + 'email' => fake()->unique()->safeEmail(), + 'email_verified_at' => now(), + 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password + 'remember_token' => Str::random(10), + ]; + } + + /** + * Indicate that the model's email address should be unverified. + * + * @return static + */ + public function unverified() + { + return $this->state(fn (array $attributes) => [ + 'email_verified_at' => null, + ]); + } +} diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php new file mode 100644 index 0000000..bea3abc --- /dev/null +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -0,0 +1,37 @@ +id(); + $table->string('name'); + $table->string('email')->unique(); + $table->timestamp('email_verified_at')->nullable(); + $table->string('password'); + $table->string('avatar')->nullable(); + $table->rememberToken(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('users'); + } +}; diff --git a/database/migrations/2014_10_12_100000_create_password_resets_table.php b/database/migrations/2014_10_12_100000_create_password_resets_table.php new file mode 100644 index 0000000..fcacb80 --- /dev/null +++ b/database/migrations/2014_10_12_100000_create_password_resets_table.php @@ -0,0 +1,32 @@ +string('email')->index(); + $table->string('token'); + $table->timestamp('created_at')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('password_resets'); + } +}; diff --git a/database/migrations/2019_08_19_000000_create_failed_jobs_table.php b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php new file mode 100644 index 0000000..1719198 --- /dev/null +++ b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php @@ -0,0 +1,36 @@ +id(); + $table->string('uuid')->unique(); + $table->text('connection'); + $table->text('queue'); + $table->longText('payload'); + $table->longText('exception'); + $table->timestamp('failed_at')->useCurrent(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('failed_jobs'); + } +}; diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php new file mode 100644 index 0000000..6c81fd2 --- /dev/null +++ b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php @@ -0,0 +1,37 @@ +id(); + $table->morphs('tokenable'); + $table->string('name'); + $table->string('token', 64)->unique(); + $table->text('abilities')->nullable(); + $table->timestamp('last_used_at')->nullable(); + $table->timestamp('expires_at')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('personal_access_tokens'); + } +}; diff --git a/database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php b/database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php new file mode 100644 index 0000000..d7e3656 --- /dev/null +++ b/database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php @@ -0,0 +1,29 @@ +datetime('last_login_at')->nullable(); + $table->string('last_login_ip')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('users', function (Blueprint $table) { + $table->removeColumn('last_login_at'); + $table->removeColumn('last_login_ip'); + }); + } +}; diff --git a/database/migrations/2023_06_11_075700_create_permission_tables.php b/database/migrations/2023_06_11_075700_create_permission_tables.php new file mode 100644 index 0000000..04c3278 --- /dev/null +++ b/database/migrations/2023_06_11_075700_create_permission_tables.php @@ -0,0 +1,141 @@ +bigIncrements('id'); // permission id + $table->string('name'); // For MySQL 8.0 use string('name', 125); + $table->string('guard_name'); // For MySQL 8.0 use string('guard_name', 125); + $table->timestamps(); + + $table->unique(['name', 'guard_name']); + }); + + Schema::create($tableNames['roles'], function (Blueprint $table) use ($teams, $columnNames) { + $table->bigIncrements('id'); // role id + if ($teams || config('permission.testing')) { // permission.testing is a fix for sqlite testing + $table->unsignedBigInteger($columnNames['team_foreign_key'])->nullable(); + $table->index($columnNames['team_foreign_key'], 'roles_team_foreign_key_index'); + } + $table->string('name'); // For MySQL 8.0 use string('name', 125); + $table->string('guard_name'); // For MySQL 8.0 use string('guard_name', 125); + $table->timestamps(); + if ($teams || config('permission.testing')) { + $table->unique([$columnNames['team_foreign_key'], 'name', 'guard_name']); + } else { + $table->unique(['name', 'guard_name']); + } + }); + + Schema::create($tableNames['model_has_permissions'], function (Blueprint $table) use ($tableNames, $columnNames, $teams) { + $table->unsignedBigInteger(PermissionRegistrar::$pivotPermission); + + $table->string('model_type'); + $table->unsignedBigInteger($columnNames['model_morph_key']); + $table->index([$columnNames['model_morph_key'], 'model_type'], 'model_has_permissions_model_id_model_type_index'); + + $table->foreign(PermissionRegistrar::$pivotPermission) + ->references('id') // permission id + ->on($tableNames['permissions']) + ->onDelete('cascade'); + if ($teams) { + $table->unsignedBigInteger($columnNames['team_foreign_key']); + $table->index($columnNames['team_foreign_key'], 'model_has_permissions_team_foreign_key_index'); + + $table->primary([$columnNames['team_foreign_key'], PermissionRegistrar::$pivotPermission, $columnNames['model_morph_key'], 'model_type'], + 'model_has_permissions_permission_model_type_primary'); + } else { + $table->primary([PermissionRegistrar::$pivotPermission, $columnNames['model_morph_key'], 'model_type'], + 'model_has_permissions_permission_model_type_primary'); + } + + }); + + Schema::create($tableNames['model_has_roles'], function (Blueprint $table) use ($tableNames, $columnNames, $teams) { + $table->unsignedBigInteger(PermissionRegistrar::$pivotRole); + + $table->string('model_type'); + $table->unsignedBigInteger($columnNames['model_morph_key']); + $table->index([$columnNames['model_morph_key'], 'model_type'], 'model_has_roles_model_id_model_type_index'); + + $table->foreign(PermissionRegistrar::$pivotRole) + ->references('id') // role id + ->on($tableNames['roles']) + ->onDelete('cascade'); + if ($teams) { + $table->unsignedBigInteger($columnNames['team_foreign_key']); + $table->index($columnNames['team_foreign_key'], 'model_has_roles_team_foreign_key_index'); + + $table->primary([$columnNames['team_foreign_key'], PermissionRegistrar::$pivotRole, $columnNames['model_morph_key'], 'model_type'], + 'model_has_roles_role_model_type_primary'); + } else { + $table->primary([PermissionRegistrar::$pivotRole, $columnNames['model_morph_key'], 'model_type'], + 'model_has_roles_role_model_type_primary'); + } + }); + + Schema::create($tableNames['role_has_permissions'], function (Blueprint $table) use ($tableNames) { + $table->unsignedBigInteger(PermissionRegistrar::$pivotPermission); + $table->unsignedBigInteger(PermissionRegistrar::$pivotRole); + + $table->foreign(PermissionRegistrar::$pivotPermission) + ->references('id') // permission id + ->on($tableNames['permissions']) + ->onDelete('cascade'); + + $table->foreign(PermissionRegistrar::$pivotRole) + ->references('id') // role id + ->on($tableNames['roles']) + ->onDelete('cascade'); + + $table->primary([PermissionRegistrar::$pivotPermission, PermissionRegistrar::$pivotRole], 'role_has_permissions_permission_id_role_id_primary'); + }); + + app('cache') + ->store(config('permission.cache.store') != 'default' ? config('permission.cache.store') : null) + ->forget(config('permission.cache.key')); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $tableNames = config('permission.table_names'); + + if (empty($tableNames)) { + throw new \Exception('Error: config/permission.php not found and defaults could not be merged. Please publish the package configuration before proceeding, or drop the tables manually.'); + } + + Schema::drop($tableNames['role_has_permissions']); + Schema::drop($tableNames['model_has_roles']); + Schema::drop($tableNames['model_has_permissions']); + Schema::drop($tableNames['roles']); + Schema::drop($tableNames['permissions']); + } +} diff --git a/database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php b/database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php new file mode 100644 index 0000000..a84533d --- /dev/null +++ b/database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php @@ -0,0 +1,27 @@ +string('profile_photo_path', 2048)->nullable()->after('email'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('users', function (Blueprint $table) { + $table->dropColumn('profile_photo_path'); + }); + } +}; diff --git a/database/seeders/RolesPermissionsSeeder.php b/database/seeders/RolesPermissionsSeeder.php new file mode 100644 index 0000000..abe0fc6 --- /dev/null +++ b/database/seeders/RolesPermissionsSeeder.php @@ -0,0 +1,72 @@ + [ + 'user management', + 'content management', + 'financial management', + 'reporting', + 'payroll', + 'disputes management', + 'api controls', + 'database management', + 'repository management', + ], + 'developer' => [ + 'api controls', + 'database management', + 'repository management', + ], + 'analyst' => [ + 'content management', + 'financial management', + 'reporting', + 'payroll', + ], + 'support' => [ + 'reporting', + ], + 'trial' => [ + ], + ]; + + foreach ($permissions_by_role['administrator'] as $permission) { + foreach ($abilities as $ability) { + Permission::create(['name' => $ability . ' ' . $permission]); + } + } + + foreach ($permissions_by_role as $role => $permissions) { + $full_permissions_list = []; + foreach ($abilities as $ability) { + foreach ($permissions as $permission) { + $full_permissions_list[] = $ability . ' ' . $permission; + } + } + Role::create(['name' => $role])->syncPermissions($full_permissions_list); + } + + User::find(1)->assignRole('administrator'); + User::find(2)->assignRole('developer'); + } +} diff --git a/database/seeders/UsersSeeder.php b/database/seeders/UsersSeeder.php new file mode 100644 index 0000000..0a32345 --- /dev/null +++ b/database/seeders/UsersSeeder.php @@ -0,0 +1,33 @@ + $faker->name, + 'email' => 'demo@demo.com', + 'password' => Hash::make('demo'), + 'email_verified_at' => now(), + ]); + + $demoUser2 = User::create([ + 'name' => $faker->name, + 'email' => 'admin@demo.com', + 'password' => Hash::make('demo'), + 'email_verified_at' => now(), + ]); + } +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..7b95b96 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,17151 @@ +{ + "name": "core", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@ckeditor/ckeditor5-alignment": "^38.1.0", + "@ckeditor/ckeditor5-build-balloon": "^38.1.0", + "@ckeditor/ckeditor5-build-balloon-block": "^38.1.0", + "@ckeditor/ckeditor5-build-classic": "^38.1.0", + "@ckeditor/ckeditor5-build-decoupled-document": "^38.1.0", + "@ckeditor/ckeditor5-build-inline": "^38.1.0", + "@eonasdan/tempus-dominus": "^6.7.7", + "@fortawesome/fontawesome-free": "^6.4.0", + "@popperjs/core": "2.11.8", + "@shopify/draggable": "^1.0.0-beta.12", + "@yaireo/tagify": "^4.17.8", + "acorn": "^8.9.0", + "apexcharts": "3.41.0", + "autosize": "^6.0.1", + "axios": "^1.4.0", + "bootstrap": "5.3.0", + "bootstrap-cookie-alert": "^1.2.1", + "bootstrap-daterangepicker": "^3.1.0", + "bootstrap-icons": "^1.5.0", + "bootstrap-maxlength": "^1.10.1", + "bootstrap-multiselectsplitter": "^1.0.4", + "chalk": "^4.1.0", + "chart.js": "^3.6.0", + "clipboard": "^2.0.8", + "countup.js": "^2.0.7", + "cropperjs": "^1.5.12", + "datatables.net": "^1.13.4", + "datatables.net-bs5": "^1.13.4", + "datatables.net-buttons": "^2.3.6", + "datatables.net-buttons-bs5": "^2.3.6", + "datatables.net-colreorder": "^1.6.2", + "datatables.net-colreorder-bs5": "^1.6.2", + "datatables.net-datetime": "^1.4.1", + "datatables.net-fixedcolumns": "^4.2.2", + "datatables.net-fixedcolumns-bs5": "^4.2.2", + "datatables.net-fixedheader": "^3.3.2", + "datatables.net-fixedheader-bs5": "^3.3.2", + "datatables.net-plugins": "^1.13.4", + "datatables.net-responsive": "^2.4.1", + "datatables.net-responsive-bs5": "^2.4.1", + "datatables.net-rowgroup": "^1.3.1", + "datatables.net-rowgroup-bs5": "^1.3.1", + "datatables.net-rowreorder": "^1.3.3", + "datatables.net-rowreorder-bs5": "^1.3.3", + "datatables.net-scroller": "^2.1.1", + "datatables.net-scroller-bs5": "^2.1.1", + "datatables.net-select": "^1.6.2", + "datatables.net-select-bs5": "^1.6.2", + "dropzone": "^5.9.2", + "es6-promise": "^4.2.8", + "es6-promise-polyfill": "^1.2.0", + "es6-shim": "^0.35.5", + "esri-leaflet": "^3.0.2", + "esri-leaflet-geocoder": "^3.0.0", + "flatpickr": "^4.6.9", + "flot": "^4.2.2", + "fslightbox": "^3.3.0-2", + "fullcalendar": "^5.8.0", + "handlebars": "^4.7.7", + "inputmask": "^5.0.6", + "jkanban": "^1.3.1", + "jquery": "3.6.0", + "jquery-chained": "^2.0.0-beta.2", + "jquery.repeater": "^1.2.1", + "jstree": "^3.3.11", + "jszip": "^3.6.0", + "leaflet": "^1.7.1", + "line-awesome": "^1.3.0", + "lozad": "^1.16.0", + "moment": "^2.29.1", + "nouislider": "^15.2.0", + "npm": "^7.19.1", + "pdfmake": "^0.2.0", + "prism-themes": "^1.7.0", + "prismjs": "^1.24.1", + "quill": "^1.3.7", + "select2": "^4.1.0-rc.0", + "smooth-scroll": "^16.1.3", + "sweetalert2": "11.4.8", + "tiny-slider": "^2.9.3", + "tinymce": "^5.8.2", + "toastr": "^2.1.4", + "typed.js": "2.0.16", + "vis-timeline": "^7.4.9", + "wnumb": "^1.2.0" + }, + "devDependencies": { + "alpinejs": "^3.7.1", + "autoprefixer": "^10.4.2", + "del": "^6.0.0", + "laravel-datatables-vite": "^0.5.2", + "laravel-mix": "^6.0.39", + "laravel-mix-purgecss": "^6.0.0", + "lodash": "^4.17.19", + "postcss": "^8.4.5", + "postcss-import": "^14.0.2", + "replace-in-file-webpack-plugin": "^1.0.6", + "resolve-url-loader": "^4.0.0", + "rtlcss": "^3.5.0", + "sass": "1.55.0", + "sass-loader": "13.2.0", + "webpack-rtl-plugin": "^2.0.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.3.tgz", + "integrity": "sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.3", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.3", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.3", + "@babel/types": "^7.21.3", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz", + "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.21.3", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz", + "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "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.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", + "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead.", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": 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.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": 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-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": 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.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": 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.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": 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.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": 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.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": 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.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": 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-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": 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-transform-arrow-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", + "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", + "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", + "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dev": true, + "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-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", + "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", + "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", + "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz", + "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dev": true, + "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-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", + "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz", + "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.3", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.3", + "@babel/types": "^7.21.3", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz", + "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ckeditor/ckeditor5-adapter-ckfinder": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-38.1.1.tgz", + "integrity": "sha512-TDv6xOkcXws0RmfkBJ6vfuH4vwj3mbI8S++9czLKrHmwp24jSrxiRwP1ZUlJSImy+/3sTjec4u8I5fq0HA2UOA==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-alignment": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-38.1.1.tgz", + "integrity": "sha512-eq8T9/YLjwFsspxDfEtvZqKuh/D0ckGHN42tzfM+TCcvpYgFDzxJd/GbenewVdQW4iU87JvKpS7aOaKCeJ5ckw==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-autoformat": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-38.1.1.tgz", + "integrity": "sha512-Ppxxp0qprhENktpKv3lkVFchS9iZt0GbCVLPg8ffTb5dCAQgeXyC/TdR1b3zpbdjgSyai07OYgU59oTNUOwtog==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-basic-styles": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-38.1.1.tgz", + "integrity": "sha512-+mky2W983jaSlYpvQ31af0ethMQxXUxuBkd2IzRi2cchvSK9YbQtBSkV0EM595uoJa1S3doyCJn7Y8bOdE+v3A==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-block-quote": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-38.1.1.tgz", + "integrity": "sha512-YPSw+qTE71mvQTo5OA2M9oQp1jpUJrj1d15mbVE5DIyvc2CMWRltqV49GoM15ZpzgQWbaF3VZ8ZT0+vZlfS0lw==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-build-balloon": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon/-/ckeditor5-build-balloon-38.1.1.tgz", + "integrity": "sha512-yVywEYBpI+caSx3CogqFdEgn55Sl42q4InUqZJJqgB3wLjtLhm43+dQa2d2gf1DyDIFjMNl1q0O303bVx2ru9Q==", + "dependencies": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-balloon": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-build-balloon-block": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon-block/-/ckeditor5-build-balloon-block-38.1.1.tgz", + "integrity": "sha512-3ZLrEKB/nQ9b6TamfXFafipzxDFr3CJe+nfoiP3YJgzwfqOmRSvf2jSzgGGNSin2Zvw/5BwnM08GEts0L8o+2g==", + "dependencies": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-balloon": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-build-classic": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-38.1.1.tgz", + "integrity": "sha512-TaVK+kVX2hMZD8imbfsQHKTiMo4seBkmZvu8KgNPn8tNarmJacO27EYmPmzL04KyctP2pv4rt2UTzPfuFZyqvg==", + "dependencies": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-classic": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-build-decoupled-document": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-decoupled-document/-/ckeditor5-build-decoupled-document-38.1.1.tgz", + "integrity": "sha512-WI4zGIZxRhJ74hiXb6s0q1VJoaBSl6ZDC3bv56HMFBvLsDeeb1eE9SdgIs3u4x0RhyRPs3+R2vBhxFMkQdXRtg==", + "dependencies": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-alignment": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-decoupled": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-font": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-build-inline": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-inline/-/ckeditor5-build-inline-38.1.1.tgz", + "integrity": "sha512-sZG7EISh1ZxeHABflLlzv0xEsxnwA7V1T3j4320/+I7D6R0HUrVvjfiM+RPQruyGKjD8bh7RTbEm40lQN82Xyg==", + "dependencies": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-inline": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-ckbox": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-38.1.1.tgz", + "integrity": "sha512-+R3Vz2QL/K2pdWzOZpFtrLwFHefxQfDT99sYQSUZiOQaXA6rSoLT4x6lhIdrQRjsI/ofCIGseQxuTHc8t86urA==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-ckfinder": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-38.1.1.tgz", + "integrity": "sha512-58139l/uKcMD6KZzd5uPzv8IwJYNnDFsT8N6DlecTZuh3ViKmg9t/pbRWu8epOboySwHeJoA3q12m2j05C1+JQ==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-clipboard": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-38.1.1.tgz", + "integrity": "sha512-FN6QxWw0ZcoMsCkm6FuN2do//qjNGofnsFernKWJPbL2E056dvB4WmhYHa4fCvGASCROcJ17yUV7oYI+1ah/og==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "@ckeditor/ckeditor5-widget": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-cloud-services": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-38.1.1.tgz", + "integrity": "sha512-M4MykJmA9JqlZEDCJfcGwEKq6Y1AuDf8Kxbl0LfMZu6BKv74up+c0wSD/WX7isot3eqDdSQckVjHlJvmS31EOA==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-core": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-38.1.1.tgz", + "integrity": "sha512-5yC+oSoCnjfOrvmECbwtu4zBt9S5dJfOYsAzfIGEbmD9DVGIyLBDKEjJ9IbAKAy1HG6CgAkZyv1YyEc5G5g3ew==", + "dependencies": { + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-easy-image": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-38.1.1.tgz", + "integrity": "sha512-kusGv9hBkFNm3/ZSr69fgdJ3V94feL0oXQoRUsCTsv2usda6KOIY3D5XMK8vvBpa7+0gFan98AvX9KM5IvrMkQ==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-editor-balloon": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-38.1.1.tgz", + "integrity": "sha512-gchehCuglncwOme1/7JGSA2obObm88MCWayy38xlNLHQZA/9FCUrbFAsqvkc2Pza+9+u84vw0FS/k2LIcG5nLQ==", + "dependencies": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-editor-classic": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-38.1.1.tgz", + "integrity": "sha512-LSh60tSuR8pGnLswy+Smx7x0NtFjbVX2dGiEkMyh4O0JLok/YgS3IU6UmoEd9FTjGqnOZ3644h3SpkSu84uDYA==", + "dependencies": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-editor-decoupled": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-38.1.1.tgz", + "integrity": "sha512-vFYKLbFNI8wWHQ6IGY43eJaE6hwyGzI0TEGNci0AKJo5K/szUo3heL/JnuEknOqRJf4EL7RGeHw8fLAmV2XiZQ==", + "dependencies": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-editor-inline": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-38.1.1.tgz", + "integrity": "sha512-orp4tRtiIaWxK3UB+612OgvL/NRTRVjDmxObq5QXfmdPE8I4diM0RFx4aLlBJzjK943+6tt9/8aQKVuN5s5TEQ==", + "dependencies": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-engine": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-38.1.1.tgz", + "integrity": "sha512-Z0LYg7B4vN3ZNUf3utmBRXQBn3JNy81Xs+45sQ09Fpf5p6aKer37vxEA315O17PnWYndildeKNRUNdjI942HcQ==", + "dependencies": { + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-enter": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-38.1.1.tgz", + "integrity": "sha512-jzlTvyBwBw4TLr03NXwVeZD87pOSjisx8WCEahWM8Rxrw77k+7rg3blAWmmpw9cHUp2WkpxCztfvQtQouT9Jpw==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-essentials": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-38.1.1.tgz", + "integrity": "sha512-8Upvcjqny39pEZM5JbdyM8MESGjC6IkAJpjvqEFkbZsFcFzXjPolbxPReI3Xbl74XaMGYpwfraTv7ozkCxD7eA==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-font": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-font/-/ckeditor5-font-38.1.1.tgz", + "integrity": "sha512-DHXtwbMbX4BtRzlCFTe/3Z2bISf5c1tOpu9+RozcOEnV3it0B8R8HacrETcbK3s0sH9zG5iZCVj5sRC66/TEvg==", + "dependencies": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-heading": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-38.1.1.tgz", + "integrity": "sha512-uEh62XWpw5uIpaslJfn8YZ+9DfViCRR5auAz5SdiYDY+tdLjwKS308S1um5i5G/CLjp1M3uXlvDieOopit9nYg==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-image": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-image/-/ckeditor5-image-38.1.1.tgz", + "integrity": "sha512-iXUlw38Eoo5zwj3h9eKULenEDPYoohPLT/74UDYw1V7Q3QY3dN4fCovcWwQx7VFPMPFUtd5T1S/ki/3UpLQhSA==", + "dependencies": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-indent": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-38.1.1.tgz", + "integrity": "sha512-Wr0lAiTVGVAD4N/4zqFSGdO40uZEUdVaPFBNzRz2XeohLlMiu5poaWQkEmwtShyl8CFG5MYIayw0JBDw7uHPbA==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-link": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-link/-/ckeditor5-link-38.1.1.tgz", + "integrity": "sha512-CMIPPaUIOvVPW/gIEmcZ00bYbQyy3/YenxPrzmdMkYjDWoPqfhDnn4FTrgEBYyWRXTNXXrS7D08VGeGCDOyYPA==", + "dependencies": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-list": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-list/-/ckeditor5-list-38.1.1.tgz", + "integrity": "sha512-FzBdAZWaBXjUYmtd7fDzIJ4evXM6n1RbNYG7ICzoviarlKL99mv/wLEkEvNDH0japdu/G11JtV36tRtBCzwoDQ==", + "dependencies": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-media-embed": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-38.1.1.tgz", + "integrity": "sha512-jWZUsJNRwVBfeTroSHcssEijCmNLgs2pJwKzJTcltyJr44se2V2kTEieCT3r0qpQvbdyw90n+MfrrlWb+S1bnQ==", + "dependencies": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-paragraph": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-38.1.1.tgz", + "integrity": "sha512-IsiCDTMK5s9T1QWwiLW90VFKsNfsTUlYy8tnr/sH5t2QFP8LOkF2ZL2igb/BqyuROrGVvS8At+BTnlH3hqAW/Q==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-paste-from-office": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-38.1.1.tgz", + "integrity": "sha512-xCAw3HwxfFgsZPINf6jb29MObDN2wDzZFpiMkChdjzmHqaCugd2SAssZQo/flxdy5fkMXju8gCa0bfM2g1HTkQ==", + "dependencies": { + "ckeditor5": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-select-all": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-38.1.1.tgz", + "integrity": "sha512-e/JUdGsBkf902rG0g+6ii/QhDP+LFV2W9bxhrGppLahzPX09NT5BCJh2/bTtUPw0cIRpk49ji7hNBzDjCKqctQ==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-table": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-table/-/ckeditor5-table-38.1.1.tgz", + "integrity": "sha512-QOTc+Re3K5mY6GHC2vmglNb8k5D49cCjVlO2ORvr3Pk/Nepmk6asW3NoSfox8YJZSAfJyloD+t56FagZSokP+g==", + "dependencies": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-typing": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-38.1.1.tgz", + "integrity": "sha512-KU0wF1ueWFwK3BnkGB2v2vpjISgwmC0OxpPM0RLHCDG5iSvIkPbu1tUj9rbxRx45JM6xgpTP1C9kEFSm5w5MoQ==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-ui": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-38.1.1.tgz", + "integrity": "sha512-lTqOaciupH66Zz7BSRGOm5DyjLURJwmFfZyCYCKD6+ZbTsxcP1asdiUm8y3bOx2maRCZTrHMhuAANp3qFWXoLQ==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "color-convert": "2.0.1", + "color-parse": "1.4.2", + "lodash-es": "^4.17.15", + "vanilla-colorful": "0.7.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-undo": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-38.1.1.tgz", + "integrity": "sha512-21XCRb4XKYrK2bAkNTbOUb3Cmbu4FB11cqG3ncIg2rWSHSJJOijMdvZpZBvNpXVEsvJgA2Ol7bCiSXgdVUR/yQ==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-upload": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-38.1.1.tgz", + "integrity": "sha512-c7zau/N4cGJKpNPoRj0QEAQKOiIQzrSK2UCG0JsPtfF9jzTWa5fIJ/6hSHquwjtnhkB7zAL0PKXwcTNpdlyibA==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-utils": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-38.1.1.tgz", + "integrity": "sha512-+dSCchr8sseqWSfCuuOk5uajCo2Tr71IXmn3EGalEHE6Fc1GjWElO90GAA4Pbezrt1zG1tDqhh+bZHULAcK8wQ==", + "dependencies": { + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-watchdog": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-38.1.1.tgz", + "integrity": "sha512-NijdWJsl+vnzdtyhI0u0Ln2TEVaSLa2VEHyB7J1r57cUN9Bq5tqRH4/BhvvqGKGc9lkpbvcSFduH2c6StHm0rw==", + "dependencies": { + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-widget": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-38.1.1.tgz", + "integrity": "sha512-WAQhYBRfpu5jhV7Subc8pVkHYFCgXyJ65bQg5Jn8Em86lySejXQEi/GowjKwkwzlSrceqDrELEJV9jcCaUZlaA==", + "dependencies": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-enter": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@egjs/hammerjs": { + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", + "integrity": "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==", + "peer": true, + "dependencies": { + "@types/hammerjs": "^2.0.36" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@eonasdan/tempus-dominus": { + "version": "6.7.13", + "resolved": "https://registry.npmjs.org/@eonasdan/tempus-dominus/-/tempus-dominus-6.7.13.tgz", + "integrity": "sha512-1saI7S0WM6jVE+799KjwsVwcDgrde4SUwmR9AofWGi+yq6w4j6TfVCF9rss+pMXTjSnApY17Nd70260pdm3LTA==", + "funding": { + "url": "https://ko-fi.com/eonasdan" + }, + "peerDependencies": { + "@popperjs/core": "^2.11.6" + }, + "peerDependenciesMeta": { + "@popperjs/core\"": { + "optional": true + } + } + }, + "node_modules/@foliojs-fork/fontkit": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@foliojs-fork/fontkit/-/fontkit-1.9.1.tgz", + "integrity": "sha512-U589voc2/ROnvx1CyH9aNzOQWJp127JGU1QAylXGQ7LoEAF6hMmahZLQ4eqAcgHUw+uyW4PjtCItq9qudPkK3A==", + "dependencies": { + "@foliojs-fork/restructure": "^2.0.2", + "brfs": "^2.0.0", + "brotli": "^1.2.0", + "browserify-optional": "^1.0.1", + "clone": "^1.0.4", + "deep-equal": "^1.0.0", + "dfa": "^1.2.0", + "tiny-inflate": "^1.0.2", + "unicode-properties": "^1.2.2", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/@foliojs-fork/linebreak": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@foliojs-fork/linebreak/-/linebreak-1.1.1.tgz", + "integrity": "sha512-pgY/+53GqGQI+mvDiyprvPWgkTlVBS8cxqee03ejm6gKAQNsR1tCYCIvN9FHy7otZajzMqCgPOgC4cHdt4JPig==", + "dependencies": { + "base64-js": "1.3.1", + "brfs": "^2.0.2", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/@foliojs-fork/linebreak/node_modules/base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + }, + "node_modules/@foliojs-fork/pdfkit": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@foliojs-fork/pdfkit/-/pdfkit-0.13.0.tgz", + "integrity": "sha512-YXeG1fml9k97YNC9K8e292Pj2JzGt9uOIiBFuQFxHsdQ45BlxW+JU3RQK6JAvXU7kjhjP8rCcYvpk36JLD33sQ==", + "dependencies": { + "@foliojs-fork/fontkit": "^1.9.1", + "@foliojs-fork/linebreak": "^1.1.1", + "crypto-js": "^4.0.0", + "png-js": "^1.0.0" + } + }, + "node_modules/@foliojs-fork/restructure": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@foliojs-fork/restructure/-/restructure-2.0.2.tgz", + "integrity": "sha512-59SgoZ3EXbkfSX7b63tsou/SDGzwUEK6MuB5sKqgVK1/XE0fxmpsOb9DQI8LXW3KfGnAjImCGhhEb7uPPAUVNA==" + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.2.tgz", + "integrity": "sha512-m5cPn3e2+FDCOgi1mz0RexTUvvQibBebOUlUlW0+YrMjDTPkiJ6VTKukA1GRsvRw+12KyJndNjj0O4AgTxm2Pg==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fullhuman/postcss-purgecss": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@fullhuman/postcss-purgecss/-/postcss-purgecss-3.1.3.tgz", + "integrity": "sha512-kwOXw8fZ0Lt1QmeOOrd+o4Ibvp4UTEBFQbzvWldjlKv5n+G9sXfIPn1hh63IQIL8K8vbvv1oYMJiIUbuy9bGaA==", + "dev": true, + "dependencies": { + "purgecss": "^3.1.3" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", + "dev": true + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "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.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@romainberger/css-diff": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@romainberger/css-diff/-/css-diff-1.0.3.tgz", + "integrity": "sha512-zR2EvxtJvQXRxFtTnqazMsJADngyVIulzYQ+wVYWRC1Hw3e4gfEIbigX46wTsPUyjAI+lRXFrBSoCWcgZ6ZSlQ==", + "dev": true, + "dependencies": { + "lodash.merge": "^4.4.0", + "postcss": "^5.0.21" + } + }, + "node_modules/@romainberger/css-diff/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/chalk/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/@romainberger/css-diff/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@romainberger/css-diff/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "dev": true, + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@shopify/draggable": { + "version": "1.0.0-beta.12", + "resolved": "https://registry.npmjs.org/@shopify/draggable/-/draggable-1.0.0-beta.12.tgz", + "integrity": "sha512-Un/Dn61sv2er9yjDXLGWMauCOWBb0BMbm0yzmmrD+oUX2/x50yhNJASTsCRdndUCpWlqYfZH8jEfaOgTPsKc/g==" + }, + "node_modules/@terraformer/arcgis": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@terraformer/arcgis/-/arcgis-2.1.2.tgz", + "integrity": "sha512-IvdfqehcNAUtKU1OFMKwPT8EvdKlVFZ7q7ZKzkIF8XzYZIVsZLuXuOS1UBdRh5u/o+X5Gax7jiZhD8U/4TV+Jw==", + "dependencies": { + "@terraformer/common": "^2.1.2" + } + }, + "node_modules/@terraformer/common": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@terraformer/common/-/common-2.1.2.tgz", + "integrity": "sha512-cwPdTFzIpekZhZRrgDEkqLKNPoqbyCBQHiemaovnGIeUx0Pl336MY/eCxzJ5zXkrQLVo9zPalq/vYW5HnyKevQ==" + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": 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.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/clean-css": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/clean-css/-/clean-css-4.2.6.tgz", + "integrity": "sha512-Ze1tf+LnGPmG6hBFMi0B4TEB0mhF7EiMM5oyjLDNPE9hxrPU0W+5+bHvO+eFPA+bt0iC1zkQMoU/iGdRVjcRbw==", + "dev": true, + "dependencies": { + "@types/node": "*", + "source-map": "^0.6.0" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.3.tgz", + "integrity": "sha512-fa7GkppZVEByMWGbTtE5MbmXWJTVbrjjaS8K6uQj+XtuuUv1fsuPAxhygfqLmsb/Ufb3CV8deFCpiMfAgi00Sw==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "dev": true, + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "node_modules/@types/hammerjs": { + "version": "2.0.41", + "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.41.tgz", + "integrity": "sha512-ewXv/ceBaJprikMcxCmWU1FKyMAQ2X7a9Gtmzw8fcg2kIePI1crERDM818W+XYrxqdBBOdlf2rm137bU+BltCA==", + "peer": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.10", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", + "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/imagemin": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin/-/imagemin-8.0.1.tgz", + "integrity": "sha512-DSpM//dRPzme7doePGkmR1uoquHi0h0ElaA5qFnxHECfFcB8z/jhMI8eqmxWNpHn9ZG18p4PC918sZLhR0cr5A==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/imagemin-gifsicle": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-gifsicle/-/imagemin-gifsicle-7.0.1.tgz", + "integrity": "sha512-kUz6sUh0P95JOS0RGEaaemWUrASuw+dLsWIveK2UZJx74id/B9epgblMkCk/r5MjUWbZ83wFvacG5Rb/f97gyA==", + "dev": true, + "dependencies": { + "@types/imagemin": "*" + } + }, + "node_modules/@types/imagemin-mozjpeg": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-mozjpeg/-/imagemin-mozjpeg-8.0.1.tgz", + "integrity": "sha512-kMQWEoKxxhlnH4POI3qfW9DjXlQfi80ux3l2b3j5R3eudSCoUIzKQLkfMjNJ6eMYnMWBcB+rfQOWqIzdIwFGKw==", + "dev": true, + "dependencies": { + "@types/imagemin": "*" + } + }, + "node_modules/@types/imagemin-optipng": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-optipng/-/imagemin-optipng-5.2.1.tgz", + "integrity": "sha512-XCM/3q+HUL7v4zOqMI+dJ5dTxT+MUukY9KU49DSnYb/4yWtSMHJyADP+WHSMVzTR63J2ZvfUOzSilzBNEQW78g==", + "dev": true, + "dependencies": { + "@types/imagemin": "*" + } + }, + "node_modules/@types/imagemin-svgo": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-svgo/-/imagemin-svgo-8.0.1.tgz", + "integrity": "sha512-YafkdrVAcr38U0Ln1C+L1n4SIZqC47VBHTyxCq7gTUSd1R9MdIvMcrljWlgU1M9O68WZDeQWUrKipKYfEOCOvQ==", + "dev": true, + "dependencies": { + "@types/imagemin": "*", + "@types/svgo": "^1" + } + }, + "node_modules/@types/jquery": { + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.16.tgz", + "integrity": "sha512-bsI7y4ZgeMkmpG9OM710RRzDFp+w4P1RGiIt30C1mSBT+ExCleeh4HObwgArnDFELmRrOpXgSYN9VF1hj+f1lw==", + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true + }, + "node_modules/@types/minimatch": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "18.15.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.3.tgz", + "integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==", + "dev": true + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/q": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", + "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "dev": true, + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==" + }, + "node_modules/@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/svgo": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@types/svgo/-/svgo-1.3.6.tgz", + "integrity": "sha512-AZU7vQcy/4WFEuwnwsNsJnFwupIpbllH1++LXScN6uxT1Z4zPzdrWG97w4/I7eFKFTvfy/bHFStWjdBAg2Vjug==", + "dev": true + }, + "node_modules/@types/ws": { + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", + "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", + "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", + "dev": true, + "dependencies": { + "@vue/shared": "3.1.5" + } + }, + "node_modules/@vue/shared": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", + "dev": true + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", + "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "dev": true, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x", + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", + "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", + "dev": true, + "dependencies": { + "envinfo": "^7.7.3" + }, + "peerDependencies": { + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", + "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "dev": true, + "peerDependencies": { + "webpack-cli": "4.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yaireo/tagify": { + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@yaireo/tagify/-/tagify-4.17.9.tgz", + "integrity": "sha512-x9aZy22hzte7BNmMrFcYNrZH71ombgH5PnzcOVXqPevRV/m/ItSnWIvY5fOHYzpC9Uxy0+h/1P5v62fIvwq2MA==", + "engines": { + "node": ">=14.20.0", + "npm": ">=8.0.0" + }, + "peerDependencies": { + "prop-types": "^15.7.2" + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "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, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/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-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", + "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==", + "dev": true + }, + "node_modules/alpinejs": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.12.0.tgz", + "integrity": "sha512-YENcRBA9dlwR8PsZNFMTHbmdlTNwd1BkCeivPvOzzCKHas6AfwNRsDK9UEFmE5dXTMEZjnnpCTxV8vkdpWiOCw==", + "dev": true, + "dependencies": { + "@vue/reactivity": "~3.1.1" + } + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", + "optional": true, + "engines": { + "node": ">=0.4.2" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/apexcharts": { + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-3.41.0.tgz", + "integrity": "sha512-FJXA7NVjxs1q+ptR3b1I+pN8K/gWuXn+qLZjFz8EHvJOokdgcuwa/HSe5aC465HW/LWnrjWLSTsOQejQbQ42hQ==", + "dependencies": { + "svg.draggable.js": "^2.2.2", + "svg.easing.js": "^2.0.0", + "svg.filter.js": "^2.0.2", + "svg.pathmorphing.js": "^0.1.3", + "svg.resize.js": "^1.4.3", + "svg.select.js": "^3.0.1" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + }, + "node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.1", + "util": "0.10.3" + } + }, + "node_modules/assert/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", + "dev": true + }, + "node_modules/assert/node_modules/util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", + "dev": true, + "dependencies": { + "inherits": "2.0.1" + } + }, + "node_modules/ast-transform": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/ast-transform/-/ast-transform-0.0.0.tgz", + "integrity": "sha512-e/JfLiSoakfmL4wmTGPjv0HpTICVmxwXgYOB8x+mzozHL8v+dSfCbrJ8J8hJ0YBP0XcYu1aLZ6b/3TnxNK3P2A==", + "dependencies": { + "escodegen": "~1.2.0", + "esprima": "~1.0.4", + "through": "~2.3.4" + } + }, + "node_modules/ast-types": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.7.8.tgz", + "integrity": "sha512-RIOpVnVlltB6PcBJ5BMLx+H+6JJ/zjDGU0t7f0L6c2M1dqcK92VQopLBlPQ9R80AVXelfqYgjcPLtHtDbNFg0Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/atoa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/atoa/-/atoa-1.0.0.tgz", + "integrity": "sha512-VVE1H6cc4ai+ZXo/CRWoJiHXrA1qfA31DPnx6D20+kSI547hQN5Greh51LQ1baMRMfxO5K5M4ImMtZbZt2DODQ==" + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/autosize": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-6.0.1.tgz", + "integrity": "sha512-f86EjiUKE6Xvczc4ioP1JBlWG7FKrE13qe/DxBCpe8GCipCq2nFw73aO8QEBKHfSbYGDN5eB9jXWKen7tspDqQ==" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/babel-loader": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "dev": true, + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/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" + } + ] + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "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.11.0", + "raw-body": "2.5.1", + "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/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "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, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.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 + }, + "node_modules/bonjour-service": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "dev": true, + "dependencies": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/bootstrap": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", + "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, + "node_modules/bootstrap-cookie-alert": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bootstrap-cookie-alert/-/bootstrap-cookie-alert-1.2.1.tgz", + "integrity": "sha512-T4nzcJkrCJCfxbw9eRM93EwO3/seSL/wbjsDLLOdLIhhksb07zhj4NOgNJUwtLc7dkI28ef1KZU9yYzHZMUXvQ==" + }, + "node_modules/bootstrap-daterangepicker": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bootstrap-daterangepicker/-/bootstrap-daterangepicker-3.1.0.tgz", + "integrity": "sha512-oaQZx6ZBDo/dZNyXGVi2rx5GmFXThyQLAxdtIqjtLlYVaQUfQALl5JZMJJZzyDIX7blfy4ppZPAJ10g8Ma4d/g==", + "dependencies": { + "jquery": ">=1.10", + "moment": "^2.9.0" + } + }, + "node_modules/bootstrap-icons": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/bootstrap-icons/-/bootstrap-icons-1.10.3.tgz", + "integrity": "sha512-7Qvj0j0idEm/DdX9Q0CpxAnJYqBCFCiUI6qzSPYfERMcokVuV9Mdm/AJiVZI8+Gawe4h/l6zFcOzvV7oXCZArw==" + }, + "node_modules/bootstrap-maxlength": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/bootstrap-maxlength/-/bootstrap-maxlength-1.10.1.tgz", + "integrity": "sha512-VYQosg0ojUNq05PlZcTwETm0E0Aoe/cclRmCC27QrHk/sY0Q75PUvgHYujN0gb2CD3n2olJfPeqx3EGAqpKjww==", + "dependencies": { + "bootstrap": "^4.4.1", + "jquery": "^3.5.1", + "qunit": "^2.10.0" + } + }, + "node_modules/bootstrap-maxlength/node_modules/bootstrap": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz", + "integrity": "sha512-51Bbp/Uxr9aTuy6ca/8FbFloBUJZLHwnhTcnjIeRn2suQWsWzcuJhGjKDB5eppVte/8oCdOL3VuwxvZDUggwGQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "jquery": "1.9.1 - 3", + "popper.js": "^1.16.1" + } + }, + "node_modules/bootstrap-multiselectsplitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bootstrap-multiselectsplitter/-/bootstrap-multiselectsplitter-1.0.4.tgz", + "integrity": "sha512-G1TyuzRUOdcf9iuSoTcYPKVr1waMm6rwoBbDi8/nXM7GX5eF3qZGZXLMeT8tGoaYwuQIsZXGerMtq5VTFQgcHQ==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brfs": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brfs/-/brfs-2.0.2.tgz", + "integrity": "sha512-IrFjVtwu4eTJZyu8w/V2gxU7iLTtcHih67sgEdzrhjLBMHp2uYefUBfdM4k2UvcuWMgV7PQDZHSLeNWnLFKWVQ==", + "dependencies": { + "quote-stream": "^1.0.1", + "resolve": "^1.1.5", + "static-module": "^3.0.2", + "through2": "^2.0.0" + }, + "bin": { + "brfs": "bin/cmd.js" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "node_modules/brotli": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/brotli/-/brotli-1.3.3.tgz", + "integrity": "sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==", + "dependencies": { + "base64-js": "^1.1.2" + } + }, + "node_modules/browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dependencies": { + "resolve": "1.1.7" + } + }, + "node_modules/browser-resolve/node_modules/resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==" + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-optional": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-optional/-/browserify-optional-1.0.1.tgz", + "integrity": "sha512-VrhjbZ+Ba5mDiSYEuPelekQMfTbhcA2DhLk2VQWqdcCROWeFqlTcXZ7yfRkXCIl8E+g4gINJYJiRB7WEtfomAQ==", + "dependencies": { + "ast-transform": "0.0.0", + "ast-types": "^0.7.0", + "browser-resolve": "^1.8.1" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dev": true, + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "node_modules/buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", + "dev": true + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", + "dev": true, + "dependencies": { + "callsites": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-callsite/node_modules/callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", + "dev": true, + "dependencies": { + "caller-callsite": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001468", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001468.tgz", + "integrity": "sha512-zgAo8D5kbOyUcRAgSmgyuvBkjrGk5CGYG5TYgFdpQv+ywcyEpo1LOWoG8YmoflGnh+V+UsNuKYedsoYs0hzV5A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/chart.js": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-3.9.1.tgz", + "integrity": "sha512-Ro2JbLmvg83gXF5F4sniaQ+lTbSv18E+TIf2cOeiH1Iqd2PGFOtem+DUufMZsCJwFE7ywPOpfXFBwRTGq7dh6w==" + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ckeditor5": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/ckeditor5/-/ckeditor5-38.1.1.tgz", + "integrity": "sha512-KE6H2WGLlhlI4F//AZn+fv52DhbwAeVv+ZeSIsa5gC81/3ZCzuYc3+IMur/70IBE9Gze8gKwFP9elh/TIaQ5Hw==", + "dependencies": { + "@ckeditor/ckeditor5-clipboard": "38.1.1", + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-enter": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-select-all": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-undo": "38.1.1", + "@ckeditor/ckeditor5-upload": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "@ckeditor/ckeditor5-watchdog": "38.1.1", + "@ckeditor/ckeditor5-widget": "38.1.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/clipboard": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/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": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dev": true, + "dependencies": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/coa/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/coa/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/coa/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/collect.js": { + "version": "4.34.3", + "resolved": "https://registry.npmjs.org/collect.js/-/collect.js-4.34.3.tgz", + "integrity": "sha512-aFr67xDazPwthsGm729mnClgNuh15JEagU6McKBKqxuHOkWL7vMFzGbhsXDdPZ+H6ia5QKIMGYuGOMENBHnVpg==", + "dev": true + }, + "node_modules/color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-parse": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.2.tgz", + "integrity": "sha512-RI7s49/8yqDj3fECFZjUI1Yi0z/Gq1py43oNJivAIIDSyJiOZLfYCRQEgn8HEVAj++PcRe8AnL2XF0fRJ3BTnA==", + "dependencies": { + "color-name": "^1.0.0" + } + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dev": true, + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "node_modules/colors": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", + "integrity": "sha512-OsSVtHK8Ir8r3+Fxw/b4jS1ZLPXkV6ZxDRJQzeD7qo0SqMXWrHDM71DgYzPMHY8SFJ0Ao+nNU2p1MmwdzKqPrw==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "peer": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/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, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/concat": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/concat/-/concat-1.0.3.tgz", + "integrity": "sha512-f/ZaH1aLe64qHgTILdldbvyfGiGF4uzeo9IuXUloIOLQzFmIPloy9QbZadNsuVv0j5qbKQvQb/H/UYf2UsKTpw==", + "dev": true, + "dependencies": { + "commander": "^2.9.0" + }, + "bin": { + "concat": "bin/concat" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concat/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", + "dev": true + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", + "dev": true + }, + "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, + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/contra": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/contra/-/contra-1.9.4.tgz", + "integrity": "sha512-N9ArHAqwR/lhPq4OdIAwH4e1btn6EIZMAz4TazjnzCiVECcWUPTma+dRAM38ERImEJBh8NiCCpjoQruSZ+agYg==", + "dependencies": { + "atoa": "1.0.0", + "ticky": "1.0.1" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true, + "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 + }, + "node_modules/core-js-compat": { + "version": "3.29.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.1.tgz", + "integrity": "sha512-QmchCua884D8wWskMX8tW5ydINzd8oSJVx38lx/pVkFGqztxt73GYre3pm/hyYq8bPf+MW5In4I/uRShFDsbrA==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/countup.js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/countup.js/-/countup.js-2.6.0.tgz", + "integrity": "sha512-GeORCrCcaFUHP3RNf0/dWK+XQX+fsdtrMO31mNvsbKXNNG+DMTcgZ4dWpIG9BnOS8t5+iJbaRXgaaG9oLs0N4g==" + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cropperjs": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/cropperjs/-/cropperjs-1.5.13.tgz", + "integrity": "sha512-by7jKAo73y5/Do0K6sxdTKHgndY0NMjG2bEdgeJxycbcmHuCiMXqw8sxy5C5Y5WTOTcDGmbT7Sr5CgKOXR06OA==" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crossvent": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/crossvent/-/crossvent-1.5.5.tgz", + "integrity": "sha512-MY4xhBYEnVi+pmTpHCOCsCLYczc0PVtGdPBz6NXNXxikLaUZo4HdAeUb1UqAo3t3yXAloSelTmfxJ+/oUqkW5w==", + "dependencies": { + "custom-event": "^1.0.0" + } + }, + "node_modules/crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" + }, + "node_modules/css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", + "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/css-declaration-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-loader": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.2.7.tgz", + "integrity": "sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.15", + "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", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^3.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.27.0 || ^5.0.0" + } + }, + "node_modules/css-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", + "dev": true + }, + "node_modules/css-select/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "peer": true + }, + "node_modules/cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "dev": true, + "dependencies": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "dev": true, + "dependencies": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-raw-cache/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/cssnano-util-raw-cache/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==" + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dash-ast": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-2.0.1.tgz", + "integrity": "sha512-5TXltWJGc+RdnabUGzhRae1TRq6m4gr+3K2wQX0is5/F2yS6MJXJvLyI3ErAnsAXuJoGqvfVD5icRgim07DrxQ==" + }, + "node_modules/datatables.net": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.13.6.tgz", + "integrity": "sha512-rHNcnW+yEP9me82/KmRcid5eKrqPqW3+I/p1TwqCW3c/7GRYYkDyF6aJQOQ9DNS/pw+nyr4BVpjyJ3yoZXiFPg==", + "dependencies": { + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-bs5": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-1.13.6.tgz", + "integrity": "sha512-lXroZoXhLhDulp8gvU7y7wBherg38SbLMGXcHwbnj+XXh4Hvy+d67zSPYbrVI3YiRwYq+aCx15G5qmMj7KjYQg==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-buttons": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-2.4.2.tgz", + "integrity": "sha512-ps88Wk6yju8hPyqIPhHZ9xhL+pAfgoiI1nZsyPswvqk84kzcqgj1nmulSSLMYNwFG8awsU8C94gF+Pf+JhDh7g==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-buttons-bs5": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-2.4.2.tgz", + "integrity": "sha512-FIapzeW8zBZJ6/yjnbXn22gjk0ONSLykFRfxiU5w1Zjnn2e3fPSi/xN9l9NagRXFvRO80zacC4nYmYOc2cXKfg==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-buttons": ">=2.3.6", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-colreorder": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.7.0.tgz", + "integrity": "sha512-Vyysfxe2kfjeuPJJMGRQ2jHVOfoadyBYKzizbOHzR2bhTVsIYjrbEhUA1H24TISE17SdR77X0RmcUvS/h/Bifw==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-colreorder-bs5": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs5/-/datatables.net-colreorder-bs5-1.7.0.tgz", + "integrity": "sha512-rqTry8MjF4+ImYqn7mqWp54Bf41DfCoqVLV/4RnaM5YZdSfmeQ+Q3Cp3VcL0/CoIDUIcz0MlexzkhSnYU+L9hA==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-colreorder": ">=1.6.2", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-datetime": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-datetime/-/datatables.net-datetime-1.5.0.tgz", + "integrity": "sha512-MyqPiaLVcf51rkAmUww1GFeJeLl9XqVXOOHMWw8NrR/5usaTINO3gORXYuH9QQSf4wWUs7naWWgyHczxKPWu6g==" + }, + "node_modules/datatables.net-fixedcolumns": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns/-/datatables.net-fixedcolumns-4.3.0.tgz", + "integrity": "sha512-H2otCswJDHufI4A8k7HUDj25HCB3a44KFnBlYEwYFWdrJayLcYB3I79kBjS8rSCu4rFEp0I9nVLKvWgKlZZgCQ==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-fixedcolumns-bs5": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns-bs5/-/datatables.net-fixedcolumns-bs5-4.3.0.tgz", + "integrity": "sha512-DvBRTfFlvZAqUErXYgkQLcF70sL5zBSJNsaWLF3in++sYHZDfY3fdVqHu0NQMTE0QuwmYh61AgJUrtWLrp7zwQ==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-fixedcolumns": ">=4.2.2", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-fixedheader": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader/-/datatables.net-fixedheader-3.4.0.tgz", + "integrity": "sha512-qglLTqo/T0IJq0Lp7Ca7wEo50T1iqUO2+YeVG4Ddy6ML5f66B7mLZLzP6yy8zXACFjlRGBDEDxD0ato3g6tviA==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-fixedheader-bs5": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader-bs5/-/datatables.net-fixedheader-bs5-3.4.0.tgz", + "integrity": "sha512-x2dTTrsZnm8ah7DJSF40XAiUGEk3oAdBMtrucfZM8TnbU8ekhe+LJAbSj4epDXBr8BAfnVi3KMlfiZKEsa5lRQ==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-fixedheader": ">=3.3.2", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-plugins": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net-plugins/-/datatables.net-plugins-1.13.6.tgz", + "integrity": "sha512-CPLH+09OiEAP3PKbZH7u2qcLajgHhy4fBHCdLzjGWJwKbIkhaPu7tby4jZHQXqoolUznbm3TEpJj4eMI1eqcGw==", + "dependencies": { + "@types/jquery": "^3.5.16", + "datatables.net": "^1.13.2" + } + }, + "node_modules/datatables.net-responsive": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-responsive/-/datatables.net-responsive-2.5.0.tgz", + "integrity": "sha512-GL7DFiRl5qqrp5ql54Psz92xTGPR0rMcrO3hzNxMfvcfpRGL5zFNTvMpTUh59Erm6u1+KoX+j+Ig1ZD3r0iFsA==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-responsive-bs5": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-responsive-bs5/-/datatables.net-responsive-bs5-2.5.0.tgz", + "integrity": "sha512-GklXpvBKOal11chL9l8RiQsvKYEZwxKA50pgwlkrbxrmRmqMH7+sMvLSE42QQCa5E5fWqtYsYdTY+SNkHfa+qA==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-responsive": ">=2.4.1", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-rowgroup": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-rowgroup/-/datatables.net-rowgroup-1.4.0.tgz", + "integrity": "sha512-IyiEqCBA6B49EMm/SvW2dktZvHJCybD30qvYPehQ4Jd9QfRLgQxZtNXNsv0sFG2SX7j7+QlnJoKUb2/zdt4OQw==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-rowgroup-bs5": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-rowgroup-bs5/-/datatables.net-rowgroup-bs5-1.4.0.tgz", + "integrity": "sha512-vdz2Ini/78Aw2FDOl+ynJsmISACYOJukWokqHwddVsOzj46BNlhB/kD2OD4B1Ai/Q4Vtiogp9doTy6UGz6Ru4g==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-rowgroup": ">=1.3.1", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-rowreorder": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/datatables.net-rowreorder/-/datatables.net-rowreorder-1.4.1.tgz", + "integrity": "sha512-N5iS2Sts7DSfukPP9B/AVCYmn/5Yjw51Sui/HT/cuDl3QHm9aNulUqIrUBDPqmeqfrKQModbTvh8MfljdMzw3A==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-rowreorder-bs5": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/datatables.net-rowreorder-bs5/-/datatables.net-rowreorder-bs5-1.4.1.tgz", + "integrity": "sha512-hRFlON9feppkISldXaX/Rz5UgRI8RVq25aOZ8fo8idbk3o78piQ6lyYBl6twXVLfUiexFKp6PlraoMLPhbpniA==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-rowreorder": ">=1.3.3", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-scroller": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/datatables.net-scroller/-/datatables.net-scroller-2.2.0.tgz", + "integrity": "sha512-+erNWYqb8qTGhtt23Weh/i2XuEPthHGtZobAEEqpTZSg7IXMl6jKDh41LAI0+KfvzSPURK1ttVRBtigyNS/zyA==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-scroller-bs5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/datatables.net-scroller-bs5/-/datatables.net-scroller-bs5-2.2.0.tgz", + "integrity": "sha512-eWTgy41lpPRUoTTAspbZLWBQvsexXCVSFNapBPXX4lx1HopMM0fQ5Hxy+liU8IyuBMCHUqO1RxY/URPyWrCtuQ==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-scroller": ">=2.1.1", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-select": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.7.0.tgz", + "integrity": "sha512-ps8eL8S2gUV7EdzMraw8mfQlHXpfuc8TC2onBxdk0snP8eizPe85VhpI3r4ULvPRTTI7vcViz8E7JV8aayA2lw==", + "dependencies": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "node_modules/datatables.net-select-bs5": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-select-bs5/-/datatables.net-select-bs5-1.7.0.tgz", + "integrity": "sha512-9lDH+V+9ewaVSpKUFMplmpxEBM6eeUl0C+feGD4BRKkrFhMAzVYfuLibm4/gJvG0burQciO9U9eoLI9ywdiWWw==", + "dependencies": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-select": ">=1.6.2", + "jquery": ">=1.7" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/dfa": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", + "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", + "dev": true + }, + "node_modules/dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "dev": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom-serializer/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true, + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", + "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/domutils/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "node_modules/dragula": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/dragula/-/dragula-3.7.3.tgz", + "integrity": "sha512-/rRg4zRhcpf81TyDhaHLtXt6sEywdfpv1cRUMeFFy7DuypH2U0WUL0GTdyAQvXegviT4PJK4KuMmOaIDpICseQ==", + "dependencies": { + "contra": "1.9.4", + "crossvent": "1.5.5" + } + }, + "node_modules/dropzone": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/dropzone/-/dropzone-5.9.3.tgz", + "integrity": "sha512-Azk8kD/2/nJIuVPK+zQ9sjKMRIpRvNyqn9XwbBHNq+iNuSccbJS6hwm1Woy0pMST0erSo0u4j+KJaodndDk4vA==" + }, + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "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 + }, + "node_modules/electron-to-chromium": { + "version": "1.4.333", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.333.tgz", + "integrity": "sha512-YyE8+GKyGtPEP1/kpvqsdhD6rA/TP1DUFDN4uiU/YI52NzDxmwHkEb3qjId8hLBa5siJvG0sfC3O66501jMruQ==", + "dev": true + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/envinfo": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", + "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "dev": true, + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.21.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", + "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.2.0", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.7", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "node_modules/es6-promise-polyfill": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es6-promise-polyfill/-/es6-promise-polyfill-1.2.0.tgz", + "integrity": "sha512-HHb0vydCpoclpd0ySPkRXMmBw80MRt1wM4RBJBlXkux97K7gleabZdsR0gvE1nNPM9mgOZIBTzjjXiPxf4lIqQ==" + }, + "node_modules/es6-set": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.6.tgz", + "integrity": "sha512-TE3LgGLDIBX332jq3ypv6bcOpkLO0AslAQo7p2VqX/1N46YNsvIWgvjojjSEnWEGWMhr1qUbYeTSir5J6mFHOw==", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "es6-iterator": "~2.0.3", + "es6-symbol": "^3.1.3", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/es6-set/node_modules/type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + }, + "node_modules/es6-shim": { + "version": "0.35.7", + "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.7.tgz", + "integrity": "sha512-baZkUfTDSx7X69+NA8imbvGrsPfqH0MX7ADdIDjqwsI8lkTgLIiD2QWrUCSGsUQ0YMnSCA/4pNgSyXdnLHWf3A==" + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "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 + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.2.0.tgz", + "integrity": "sha512-yLy3Cc+zAC0WSmoT2fig3J87TpQ8UaZGx8ahCAs9FL8qNbyV7CVyPKS74DG4bsHiL5ew9sxdYx131OkBQMFnvA==", + "dependencies": { + "esprima": "~1.0.4", + "estraverse": "~1.5.0", + "esutils": "~1.0.0" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=0.4.0" + }, + "optionalDependencies": { + "source-map": "~0.1.30" + } + }, + "node_modules/escodegen/node_modules/esutils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", + "integrity": "sha512-x/iYH53X3quDwfHRz4y8rn4XcEwwCJeWsul9pF1zldMbGtgOtMNBEOuYWwB1EQlK2LRa1fev3YAgym/RElp5Cg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ==", + "optional": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": 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.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha512-rp5dMKN8zEs9dfi9g0X1ClLmV//WRyk/R15mppFNICIFRG5P92VP7Z04p8pk++gABo9W2tY+kHyu6P1mEHgmTA==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esri-leaflet": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/esri-leaflet/-/esri-leaflet-3.0.10.tgz", + "integrity": "sha512-2ma+mMHrJA7oqJFHZDLZrCAMkaXTdFFJRsJqlsh3Z2G+nXKj2SrlzJ2YmN5qgnI9y/X5AkcSfxViBoQTX9rcSw==", + "dependencies": { + "@terraformer/arcgis": "^2.1.0", + "tiny-binary-search": "^1.0.3" + }, + "peerDependencies": { + "leaflet": "^1.0.0" + } + }, + "node_modules/esri-leaflet-geocoder": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/esri-leaflet-geocoder/-/esri-leaflet-geocoder-3.1.4.tgz", + "integrity": "sha512-VMqWgbB7/3X8GuIaUemn/NGlLr3BB51ZpBWBfj/Q71HDXBKIPnGExUuXU9wqblYlj1j3w8uhwVKSGEHPpX+QiA==", + "dependencies": { + "esri-leaflet": "^3.0.2", + "leaflet": "^1.0.0" + } + }, + "node_modules/estraverse": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", + "integrity": "sha512-FpCjJDfmo3vsc/1zKSeqR5k42tcIhxFIlvq+h9j0fO2q/h2uLKyweq7rYJ+0CoVvrGQOxIS5wyBrW/+vF58BUQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/estree-is-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/estree-is-function/-/estree-is-function-1.0.0.tgz", + "integrity": "sha512-nSCWn1jkSq2QAtkaVLJZY2ezwcFO161HVc174zL1KPW3RJ+O6C3eJb8Nx7OXzvhoEv+nLgSR1g71oWUHUDTrJA==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/eventemitter3": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-2.0.3.tgz", + "integrity": "sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "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/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "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.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.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/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 + }, + "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, + "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 + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz", + "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==" + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "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.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/file-type": { + "version": "12.4.2", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.2.tgz", + "integrity": "sha512-UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "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, + "dependencies": { + "ms": "2.0.0" + } + }, + "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 + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findup": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/findup/-/findup-0.1.5.tgz", + "integrity": "sha512-Udxo3C9A6alt2GZ2MNsgnIvX7De0V3VGxeP/x98NSVgSlizcDHdmJza61LI7zJy4OEtSiJyE72s0/+tBl5/ZxA==", + "dev": true, + "dependencies": { + "colors": "~0.6.0-1", + "commander": "~2.1.0" + }, + "bin": { + "findup": "bin/findup.js" + }, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/findup/node_modules/commander": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz", + "integrity": "sha512-J2wnb6TKniXNOtoHS8TSrG9IOQluPrsmyAJ8oCUJOBmv+uLBCyPYAZkD2jFvw2DCzIXNnISIM01NIvr35TkBMQ==", + "dev": true, + "engines": { + "node": ">= 0.6.x" + } + }, + "node_modules/flatpickr": { + "version": "4.6.13", + "resolved": "https://registry.npmjs.org/flatpickr/-/flatpickr-4.6.13.tgz", + "integrity": "sha512-97PMG/aywoYpB4IvbvUJi0RQi8vearvU0oov1WW3k0WZPBMrTQVqekSX5CjSG/M4Q3i6A/0FKXC7RyAoAUUSPw==" + }, + "node_modules/flot": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/flot/-/flot-4.2.3.tgz", + "integrity": "sha512-r1t2gfhILE6dt7cnYDHX/D2VHERyD0YoV0UdFJg5dWbjkcu05MugfhNY7VspfBFTa+hjVNYVZw6/t9ZyYNen+w==" + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/fslightbox": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/fslightbox/-/fslightbox-3.4.1.tgz", + "integrity": "sha512-/YkPP9jCnZMIlPuJPUo10JTCOCntU0vHeIKe0cB5ruR0ss2QCLhzxY5h24grZ2gUsF//0NXik7iGMU05RV/jcg==" + }, + "node_modules/fullcalendar": { + "version": "5.11.4", + "resolved": "https://registry.npmjs.org/fullcalendar/-/fullcalendar-5.11.4.tgz", + "integrity": "sha512-1TH40KkWFVlZBpqJ/eB69E7nPABleA0skoc7pTIXJNNNYyUuKPjiJg+TSMunjJ9faPLzvbvfCdgttGZnynPA3Q==" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-assigned-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", + "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==" + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "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.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globalyzer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", + "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==" + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==" + }, + "node_modules/good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", + "dependencies": { + "delegate": "^3.1.2" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", + "dev": true + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": true + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/hex-color-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", + "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", + "dev": true + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hsl-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", + "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==", + "dev": true + }, + "node_modules/hsla-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", + "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==", + "dev": true + }, + "node_modules/html-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", + "dev": true + }, + "node_modules/html-loader": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-1.3.2.tgz", + "integrity": "sha512-DEkUwSd0sijK5PF3kRWspYi56XP7bTNkyg5YWSzBdjaSDmvCufep5c4Vpb3PBf6lUL0YPtLwBfy9fL0t5hBAGA==", + "dev": true, + "dependencies": { + "html-minifier-terser": "^5.1.1", + "htmlparser2": "^4.1.0", + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/html-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-minifier-terser/node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/html-minifier-terser/node_modules/terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/html-minifier-terser/node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", + "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "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, + "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-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy/node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", + "dev": true + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "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" + } + ] + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==" + }, + "node_modules/imagemin": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/imagemin/-/imagemin-7.0.1.tgz", + "integrity": "sha512-33AmZ+xjZhg2JMCe+vDf6a9mzWukE7l+wAtesjE7KyteqqKjzxv7aVQeWnul1Ve26mWvEQqyPwl0OctNBfSR9w==", + "dev": true, + "dependencies": { + "file-type": "^12.0.0", + "globby": "^10.0.0", + "graceful-fs": "^4.2.2", + "junk": "^3.1.0", + "make-dir": "^3.0.0", + "p-pipe": "^3.0.0", + "replace-ext": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/imagemin/node_modules/globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "dependencies": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/img-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/img-loader/-/img-loader-4.0.0.tgz", + "integrity": "sha512-UwRcPQdwdOyEHyCxe1V9s9YFwInwEWCpoO+kJGfIqDrBDqA8jZUsEZTxQ0JteNPGw/Gupmwesk2OhLTcnw6tnQ==", + "dev": true, + "dependencies": { + "loader-utils": "^1.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "imagemin": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/img-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/img-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + }, + "node_modules/immutable": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", + "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": 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/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/inputmask": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/inputmask/-/inputmask-5.0.8.tgz", + "integrity": "sha512-1WcbyudPTXP1B28ozWWyFa6QRIUG4KiLoyR6LFHlpT4OfTzRqFfWgHFadNvRuMN1S9XNVz9CdNvCGjJi+uAMqQ==" + }, + "node_modules/internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", + "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-color-stop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", + "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==", + "dev": true, + "dependencies": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": 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/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jkanban": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jkanban/-/jkanban-1.3.1.tgz", + "integrity": "sha512-5M2nQuLnYTW8ZWAj0Gzes0BVYKE2BmpvJ+wc4Kv5/WZ4A+NYH/Njw3UJbW8hnClgrRVyHbeVNe3Q4gvZzoNjaw==", + "dependencies": { + "dragula": "^3.7.3", + "npm-watch": "^0.7.0" + } + }, + "node_modules/jquery": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz", + "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==" + }, + "node_modules/jquery-chained": { + "version": "2.0.0-beta.2", + "resolved": "https://registry.npmjs.org/jquery-chained/-/jquery-chained-2.0.0-beta.2.tgz", + "integrity": "sha512-3/M0J5RCz1b6nqt8+JumCA/x5LgcBrKka3Zv+rimjkbhFzzWD6prCKQrGQXHSXqJdW2yfQv+MxVAQFUfyu3Q5w==" + }, + "node_modules/jquery.repeater": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jquery.repeater/-/jquery.repeater-1.2.1.tgz", + "integrity": "sha512-OltR1Z1AwaOsCQFBbfe1h+RnxjAwLrBa9uYkOjuj6DvyEJx0alr0ToCvfbCX1CJqq4vOMfoZUSjjKXBVog0srw==" + }, + "node_modules/js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/js-yaml/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/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.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jstree": { + "version": "3.3.15", + "resolved": "https://registry.npmjs.org/jstree/-/jstree-3.3.15.tgz", + "integrity": "sha512-fNK2EBgGjaJQ3cJuINX/80vDeAufYWtM0csudgYl3eJG+eRAH/1r1IJVUOvAlJIa+uSgg+Fi8uGrt+Xbs92eKg==", + "dependencies": { + "jquery": "^3.5.0" + } + }, + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "node_modules/junk": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", + "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/keycharm": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/keycharm/-/keycharm-0.4.0.tgz", + "integrity": "sha512-TyQTtsabOVv3MeOpR92sIKk/br9wxS+zGj4BG7CR8YbK4jM3tyIBaF0zhzeBUMx36/Q/iQLOKKOT+3jOQtemRQ==", + "peer": true + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/laravel-datatables-vite": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/laravel-datatables-vite/-/laravel-datatables-vite-0.5.2.tgz", + "integrity": "sha512-jWclnbbx21L9ccrMxP5G/1cvF1h/ouDXBhaHoidDpcSuHv2Oy1A7td/coIZHJHxevLjZH8vBHA6CP1F6q4dPiQ==", + "dev": true, + "dependencies": { + "bootstrap": "^5.2.2", + "bootstrap-icons": "^1.9.1", + "datatables.net": "^1.12.1", + "datatables.net-bs5": "^1.12.1", + "datatables.net-buttons-bs5": "^2.2.3", + "datatables.net-select-bs5": "^1.4.0", + "jquery": "^3.6.1" + } + }, + "node_modules/laravel-datatables-vite/node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "dev": true + }, + "node_modules/laravel-mix": { + "version": "6.0.49", + "resolved": "https://registry.npmjs.org/laravel-mix/-/laravel-mix-6.0.49.tgz", + "integrity": "sha512-bBMFpFjp26XfijPvY5y9zGKud7VqlyOE0OWUcPo3vTBY5asw8LTjafAbee1dhfLz6PWNqDziz69CP78ELSpfKw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.15.8", + "@babel/plugin-proposal-object-rest-spread": "^7.15.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.15.8", + "@babel/preset-env": "^7.15.8", + "@babel/runtime": "^7.15.4", + "@types/babel__core": "^7.1.16", + "@types/clean-css": "^4.2.5", + "@types/imagemin-gifsicle": "^7.0.1", + "@types/imagemin-mozjpeg": "^8.0.1", + "@types/imagemin-optipng": "^5.2.1", + "@types/imagemin-svgo": "^8.0.0", + "autoprefixer": "^10.4.0", + "babel-loader": "^8.2.3", + "chalk": "^4.1.2", + "chokidar": "^3.5.2", + "clean-css": "^5.2.4", + "cli-table3": "^0.6.0", + "collect.js": "^4.28.5", + "commander": "^7.2.0", + "concat": "^1.0.3", + "css-loader": "^5.2.6", + "cssnano": "^5.0.8", + "dotenv": "^10.0.0", + "dotenv-expand": "^5.1.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.0.0", + "glob": "^7.2.0", + "html-loader": "^1.3.2", + "imagemin": "^7.0.1", + "img-loader": "^4.0.0", + "lodash": "^4.17.21", + "md5": "^2.3.0", + "mini-css-extract-plugin": "^1.6.2", + "node-libs-browser": "^2.2.1", + "postcss-load-config": "^3.1.0", + "postcss-loader": "^6.2.0", + "semver": "^7.3.5", + "strip-ansi": "^6.0.0", + "style-loader": "^2.0.0", + "terser": "^5.9.0", + "terser-webpack-plugin": "^5.2.4", + "vue-style-loader": "^4.1.3", + "webpack": "^5.60.0", + "webpack-cli": "^4.9.1", + "webpack-dev-server": "^4.7.3", + "webpack-merge": "^5.8.0", + "webpack-notifier": "^1.14.1", + "webpackbar": "^5.0.0-3", + "yargs": "^17.2.1" + }, + "bin": { + "laravel-mix": "bin/cli.js", + "mix": "bin/cli.js" + }, + "engines": { + "node": ">=12.14.0" + }, + "peerDependencies": { + "@babel/core": "^7.15.8", + "@babel/plugin-proposal-object-rest-spread": "^7.15.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.15.8", + "@babel/preset-env": "^7.15.8", + "postcss": "^8.3.11", + "webpack": "^5.60.0", + "webpack-cli": "^4.9.1" + } + }, + "node_modules/laravel-mix-purgecss": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/laravel-mix-purgecss/-/laravel-mix-purgecss-6.0.0.tgz", + "integrity": "sha512-1OVy3xVVqvWrBTI+vQrr9qlrNKKqq3lFlWQpdJxKO2IeK8bMERkNab3fLtldyyOd5ApBuoMd81EqF4ew2N/NdA==", + "dev": true, + "dependencies": { + "postcss-purgecss-laravel": "^2.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "laravel-mix": "^6.0.0" + } + }, + "node_modules/launch-editor": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz", + "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.7.3" + } + }, + "node_modules/leaflet": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.3.tgz", + "integrity": "sha512-iB2cR9vAkDOu5l3HAay2obcUHZ7xwUBBjph8+PGtmW/2lYhbLizWtG7nTeYht36WfOslixQF9D/uSIzhZgGMfQ==" + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/line-awesome": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/line-awesome/-/line-awesome-1.3.0.tgz", + "integrity": "sha512-Y0YHksL37ixDsHz+ihCwOtF5jwJgCDxQ3q+zOVgaSW8VugHGTsZZXMacPYZB1/JULBi6BAuTCTek+4ZY/UIwcw==" + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/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/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "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 + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "peer": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lozad": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/lozad/-/lozad-1.16.0.tgz", + "integrity": "sha512-JBr9WjvEFeKoyim3svo/gsQPTkgG/mOHJmDctZ/+U9H3ymUuvEkqpn8bdQMFsvTMcyRJrdJkLv0bXqGm0sP72w==" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.1.tgz", + "integrity": "sha512-sCuTz6pYom8Rlt4ISPFn6wuFodbKMIHUMv4Qko9P17dpxb7s52KJTmRuZZqHdGmLCK9AOcDare039nRIcfdkEg==", + "dependencies": { + "sourcemap-codec": "^1.4.1" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dev": true, + "dependencies": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "dev": true, + "dependencies": { + "fs-monkey": "^1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "node_modules/merge-source-map": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz", + "integrity": "sha512-PGSmS0kfnTnMJCzJ16BLLCEe6oeYCamKFFdQKshi4BmM6FUwipjVOcBFGxqtQtirtAG4iZvHlqST9CpZKqlRjA==", + "dependencies": { + "source-map": "^0.5.6" + } + }, + "node_modules/merge-source-map/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "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, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.2.tgz", + "integrity": "sha512-WhDvO3SjGm40oV5y26GjMJYjd2UMqrLAGKy5YS2/3QKJy2F7jgynuHTir/tgUUOiNQu5saXHdc8reo7YuhhT4Q==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0", + "webpack-sources": "^1.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.4.0 || ^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "dependencies": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + } + }, + "node_modules/node-notifier": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-9.0.1.tgz", + "integrity": "sha512-fPNFIp2hF/Dq7qLDzSg4vZ0J4e9v60gJR+Qx7RbjbWqzPDdEqeVpEx5CFeDAELIl+A/woaaNn1fQ5nEVerMxJg==", + "dev": true, + "dependencies": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" + } + }, + "node_modules/node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "dev": true + }, + "node_modules/node-watch": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz", + "integrity": "sha512-3l4E8uMPY1HdMMryPRUAl+oIHtXtyiTlIiESNSVSNxcPfzAFzeTbXFQkZfAwBbo0B1qMSG8nUABx+Gd+YrbKrQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/nodemon": { + "version": "2.0.21", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.21.tgz", + "integrity": "sha512-djN/n2549DUtY33S7o1djRCd7dEm0kBnj9c7S9XVXqRUbuggN1MZH/Nqa+5RFQr63Fbefq37nFXAE9VU86yL1A==", + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^5.7.1", + "simple-update-notifier": "^1.0.7", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nodemon/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/nodemon/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/nodemon/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/nodemon/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nouislider": { + "version": "15.7.0", + "resolved": "https://registry.npmjs.org/nouislider/-/nouislider-15.7.0.tgz", + "integrity": "sha512-aJVEULBPOUwq32/s7xnLNyLvo4kuzYJJsNp2PNGW932AQ0uuDAbLShAqswtxRzJc5n/dLJXNlYSLOZ57bcUg1w==" + }, + "node_modules/npm": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/npm/-/npm-7.24.2.tgz", + "integrity": "sha512-120p116CE8VMMZ+hk8IAb1inCPk4Dj3VZw29/n2g6UI77urJKVYb7FZUDW8hY+EBnfsjI/2yrobBgFyzo7YpVQ==", + "bundleDependencies": [ + "@isaacs/string-locale-compare", + "@npmcli/arborist", + "@npmcli/ci-detect", + "@npmcli/config", + "@npmcli/map-workspaces", + "@npmcli/package-json", + "@npmcli/run-script", + "abbrev", + "ansicolors", + "ansistyles", + "archy", + "cacache", + "chalk", + "chownr", + "cli-columns", + "cli-table3", + "columnify", + "fastest-levenshtein", + "glob", + "graceful-fs", + "hosted-git-info", + "ini", + "init-package-json", + "is-cidr", + "json-parse-even-better-errors", + "libnpmaccess", + "libnpmdiff", + "libnpmexec", + "libnpmfund", + "libnpmhook", + "libnpmorg", + "libnpmpack", + "libnpmpublish", + "libnpmsearch", + "libnpmteam", + "libnpmversion", + "make-fetch-happen", + "minipass", + "minipass-pipeline", + "mkdirp", + "mkdirp-infer-owner", + "ms", + "node-gyp", + "nopt", + "npm-audit-report", + "npm-install-checks", + "npm-package-arg", + "npm-pick-manifest", + "npm-profile", + "npm-registry-fetch", + "npm-user-validate", + "npmlog", + "opener", + "pacote", + "parse-conflict-json", + "qrcode-terminal", + "read", + "read-package-json", + "read-package-json-fast", + "readdir-scoped-modules", + "rimraf", + "semver", + "ssri", + "tar", + "text-table", + "tiny-relative-date", + "treeverse", + "validate-npm-package-name", + "which", + "write-file-atomic" + ], + "dependencies": { + "@isaacs/string-locale-compare": "*", + "@npmcli/arborist": "*", + "@npmcli/ci-detect": "*", + "@npmcli/config": "*", + "@npmcli/map-workspaces": "*", + "@npmcli/package-json": "*", + "@npmcli/run-script": "*", + "abbrev": "*", + "ansicolors": "*", + "ansistyles": "*", + "archy": "*", + "cacache": "*", + "chalk": "*", + "chownr": "*", + "cli-columns": "*", + "cli-table3": "*", + "columnify": "*", + "fastest-levenshtein": "*", + "glob": "*", + "graceful-fs": "*", + "hosted-git-info": "*", + "ini": "*", + "init-package-json": "*", + "is-cidr": "*", + "json-parse-even-better-errors": "*", + "libnpmaccess": "*", + "libnpmdiff": "*", + "libnpmexec": "*", + "libnpmfund": "*", + "libnpmhook": "*", + "libnpmorg": "*", + "libnpmpack": "*", + "libnpmpublish": "*", + "libnpmsearch": "*", + "libnpmteam": "*", + "libnpmversion": "*", + "make-fetch-happen": "*", + "minipass": "*", + "minipass-pipeline": "*", + "mkdirp": "*", + "mkdirp-infer-owner": "*", + "ms": "*", + "node-gyp": "*", + "nopt": "*", + "npm-audit-report": "*", + "npm-install-checks": "*", + "npm-package-arg": "*", + "npm-pick-manifest": "*", + "npm-profile": "*", + "npm-registry-fetch": "*", + "npm-user-validate": "*", + "npmlog": "*", + "opener": "*", + "pacote": "*", + "parse-conflict-json": "*", + "qrcode-terminal": "*", + "read": "*", + "read-package-json": "*", + "read-package-json-fast": "*", + "readdir-scoped-modules": "*", + "rimraf": "*", + "semver": "*", + "ssri": "*", + "tar": "*", + "text-table": "*", + "tiny-relative-date": "*", + "treeverse": "*", + "validate-npm-package-name": "*", + "which": "*", + "write-file-atomic": "*" + }, + "bin": { + "npm": "bin/npm-cli.js", + "npx": "bin/npx-cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-watch": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/npm-watch/-/npm-watch-0.7.0.tgz", + "integrity": "sha512-AN2scNyMljMGkn0mIkaRRk19I7Vx0qTK6GmsIcDblX5YRbSsoJORTAtrceICSx7Om9q48NWcwm/R0t6E7F4Ocg==", + "dependencies": { + "nodemon": "^2.0.3", + "through2": "^2.0.0" + }, + "bin": { + "npm-watch": "cli.js" + } + }, + "node_modules/npm/node_modules/@gar/promisify": { + "version": "1.1.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/@isaacs/string-locale-compare": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz", + "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/@npmcli/arborist": { + "version": "2.9.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@isaacs/string-locale-compare": "^1.0.1", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/map-workspaces": "^1.0.2", + "@npmcli/metavuln-calculator": "^1.1.0", + "@npmcli/move-file": "^1.1.0", + "@npmcli/name-from-folder": "^1.0.1", + "@npmcli/node-gyp": "^1.0.1", + "@npmcli/package-json": "^1.0.1", + "@npmcli/run-script": "^1.8.2", + "bin-links": "^2.2.1", + "cacache": "^15.0.3", + "common-ancestor-path": "^1.0.1", + "json-parse-even-better-errors": "^2.3.1", + "json-stringify-nice": "^1.1.4", + "mkdirp": "^1.0.4", + "mkdirp-infer-owner": "^2.0.0", + "npm-install-checks": "^4.0.0", + "npm-package-arg": "^8.1.5", + "npm-pick-manifest": "^6.1.0", + "npm-registry-fetch": "^11.0.0", + "pacote": "^11.3.5", + "parse-conflict-json": "^1.1.1", + "proc-log": "^1.0.0", + "promise-all-reject-late": "^1.0.0", + "promise-call-limit": "^1.0.1", + "read-package-json-fast": "^2.0.2", + "readdir-scoped-modules": "^1.1.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "ssri": "^8.0.1", + "treeverse": "^1.0.4", + "walk-up-path": "^1.0.0" + }, + "bin": { + "arborist": "bin/index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/@npmcli/ci-detect": { + "version": "1.3.0", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/@npmcli/config": { + "version": "2.3.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "ini": "^2.0.0", + "mkdirp-infer-owner": "^2.0.0", + "nopt": "^5.0.0", + "semver": "^7.3.4", + "walk-up-path": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/@npmcli/disparity-colors": { + "version": "1.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "ansi-styles": "^4.3.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/@npmcli/fs": { + "version": "1.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/npm/node_modules/@npmcli/git": { + "version": "2.1.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/promise-spawn": "^1.3.2", + "lru-cache": "^6.0.0", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^6.1.1", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + } + }, + "node_modules/npm/node_modules/@npmcli/installed-package-contents": { + "version": "1.0.7", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "installed-package-contents": "index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/@npmcli/map-workspaces": { + "version": "1.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/name-from-folder": "^1.0.1", + "glob": "^7.1.6", + "minimatch": "^3.0.4", + "read-package-json-fast": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/@npmcli/metavuln-calculator": { + "version": "1.1.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "cacache": "^15.0.5", + "pacote": "^11.1.11", + "semver": "^7.3.2" + } + }, + "node_modules/npm/node_modules/@npmcli/move-file": { + "version": "1.1.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/@npmcli/name-from-folder": { + "version": "1.0.1", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/@npmcli/node-gyp": { + "version": "1.0.2", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/@npmcli/package-json": { + "version": "1.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "json-parse-even-better-errors": "^2.3.1" + } + }, + "node_modules/npm/node_modules/@npmcli/promise-spawn": { + "version": "1.3.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "infer-owner": "^1.0.4" + } + }, + "node_modules/npm/node_modules/@npmcli/run-script": { + "version": "1.8.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^7.1.0", + "read-package-json-fast": "^2.0.1" + } + }, + "node_modules/npm/node_modules/@tootallnate/once": { + "version": "1.1.2", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/npm/node_modules/agentkeepalive": { + "version": "4.1.4", + "inBundle": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/npm/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/ajv": { + "version": "6.12.6", + "inBundle": true, + "license": "MIT", + "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/npm/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/npm/node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/ansistyles": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ansistyles/-/ansistyles-0.1.3.tgz", + "integrity": "sha512-6QWEyvMgIXX0eO972y7YPBLSBsq7UWKFAoNNTLGaOJ9bstcEL9sCbcjf96dVfNDdUsRoGOK82vWFJlKApXds7g==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/are-we-there-yet": { + "version": "1.1.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/asn1": { + "version": "0.2.4", + "inBundle": true, + "license": "MIT", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/npm/node_modules/assert-plus": { + "version": "1.0.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/npm/node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/aws-sign2": { + "version": "0.7.0", + "inBundle": true, + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/aws4": { + "version": "1.11.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "inBundle": true, + "license": "BSD-3-Clause", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/npm/node_modules/bin-links": { + "version": "2.2.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "cmd-shim": "^4.0.1", + "mkdirp": "^1.0.3", + "npm-normalize-package-bin": "^1.0.0", + "read-cmd-shim": "^2.0.0", + "rimraf": "^3.0.0", + "write-file-atomic": "^3.0.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/npm/node_modules/builtins": { + "version": "1.0.3", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/cacache": { + "version": "15.3.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/caseless": { + "version": "0.12.0", + "inBundle": true, + "license": "Apache-2.0" + }, + "node_modules/npm/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "inBundle": true, + "license": "MIT", + "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/npm/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/cidr-regex": { + "version": "3.1.1", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "ip-regex": "^4.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/cli-columns": { + "version": "3.1.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "string-width": "^2.0.0", + "strip-ansi": "^3.0.1" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm/node_modules/cli-table3": { + "version": "0.6.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "object-assign": "^4.1.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "colors": "^1.1.2" + } + }, + "node_modules/npm/node_modules/cli-table3/node_modules/ansi-regex": { + "version": "5.0.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/cli-table3/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/cli-table3/node_modules/strip-ansi": { + "version": "6.0.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/npm/node_modules/cmd-shim": { + "version": "4.1.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "mkdirp-infer-owner": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/code-point-at": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/npm/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/color-support": { + "version": "1.1.3", + "inBundle": true, + "license": "ISC", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/npm/node_modules/colors": { + "version": "1.4.0", + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/npm/node_modules/columnify": { + "version": "1.5.4", + "inBundle": true, + "license": "MIT", + "dependencies": { + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" + } + }, + "node_modules/npm/node_modules/combined-stream": { + "version": "1.0.8", + "inBundle": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/npm/node_modules/common-ancestor-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", + "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/core-util-is": { + "version": "1.0.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/dashdash": { + "version": "1.14.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/npm/node_modules/debug": { + "version": "4.3.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/npm/node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/debuglog": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", + "integrity": "sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/defaults": { + "version": "1.0.3", + "inBundle": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + } + }, + "node_modules/npm/node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/npm/node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/depd": { + "version": "1.1.2", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/npm/node_modules/dezalgo": { + "version": "1.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "node_modules/npm/node_modules/diff": { + "version": "5.0.0", + "inBundle": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/npm/node_modules/ecc-jsbn": { + "version": "0.1.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/npm/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/encoding": { + "version": "0.1.13", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/npm/node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/extend": { + "version": "3.0.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/extsprintf": { + "version": "1.3.0", + "engines": [ + "node >=0.6.0" + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/fastest-levenshtein": { + "version": "1.0.12", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/forever-agent": { + "version": "0.6.1", + "inBundle": true, + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/gauge": { + "version": "3.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1 || ^2.0.0", + "strip-ansi": "^3.0.1 || ^4.0.0", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/getpass": { + "version": "0.1.7", + "inBundle": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/npm/node_modules/glob": { + "version": "7.2.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/graceful-fs": { + "version": "4.2.8", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/har-schema": { + "version": "2.0.0", + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/har-validator": { + "version": "5.1.5", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/npm/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/hosted-git-info": { + "version": "4.0.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/http-cache-semantics": { + "version": "4.1.0", + "inBundle": true, + "license": "BSD-2-Clause" + }, + "node_modules/npm/node_modules/http-proxy-agent": { + "version": "4.0.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/http-signature": { + "version": "1.2.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/npm/node_modules/https-proxy-agent": { + "version": "5.0.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/npm/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/ignore-walk": { + "version": "3.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minimatch": "^3.0.4" + } + }, + "node_modules/npm/node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/npm/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/npm/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/ini": { + "version": "2.0.0", + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/init-package-json": { + "version": "2.0.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-package-arg": "^8.1.5", + "promzard": "^0.3.0", + "read": "~1.0.1", + "read-package-json": "^4.1.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/ip": { + "version": "1.1.5", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/ip-regex": { + "version": "4.3.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/is-cidr": { + "version": "4.0.2", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "cidr-regex": "^3.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/is-core-module": { + "version": "2.7.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/npm/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/is-typedarray": { + "version": "1.0.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/isstream": { + "version": "0.1.2", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/jsbn": { + "version": "0.1.1", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/json-schema": { + "version": "0.2.3", + "inBundle": true + }, + "node_modules/npm/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/json-stringify-nice": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", + "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/json-stringify-safe": { + "version": "5.0.1", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/jsprim": { + "version": "1.4.1", + "engines": [ + "node >=0.6.0" + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/npm/node_modules/just-diff": { + "version": "3.1.1", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/just-diff-apply": { + "version": "3.0.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/libnpmaccess": { + "version": "4.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "minipass": "^3.1.1", + "npm-package-arg": "^8.1.2", + "npm-registry-fetch": "^11.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmdiff": { + "version": "2.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/disparity-colors": "^1.0.1", + "@npmcli/installed-package-contents": "^1.0.7", + "binary-extensions": "^2.2.0", + "diff": "^5.0.0", + "minimatch": "^3.0.4", + "npm-package-arg": "^8.1.4", + "pacote": "^11.3.4", + "tar": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmexec": { + "version": "2.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/arborist": "^2.3.0", + "@npmcli/ci-detect": "^1.3.0", + "@npmcli/run-script": "^1.8.4", + "chalk": "^4.1.0", + "mkdirp-infer-owner": "^2.0.0", + "npm-package-arg": "^8.1.2", + "pacote": "^11.3.1", + "proc-log": "^1.0.0", + "read": "^1.0.7", + "read-package-json-fast": "^2.0.2", + "walk-up-path": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmfund": { + "version": "1.1.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/arborist": "^2.5.0" + } + }, + "node_modules/npm/node_modules/libnpmhook": { + "version": "6.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^11.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmorg": { + "version": "2.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^11.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmpack": { + "version": "2.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/run-script": "^1.8.3", + "npm-package-arg": "^8.1.0", + "pacote": "^11.2.6" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmpublish": { + "version": "4.0.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "normalize-package-data": "^3.0.2", + "npm-package-arg": "^8.1.2", + "npm-registry-fetch": "^11.0.0", + "semver": "^7.1.3", + "ssri": "^8.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmsearch": { + "version": "3.1.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-registry-fetch": "^11.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmteam": { + "version": "2.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^11.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/libnpmversion": { + "version": "1.2.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/git": "^2.0.7", + "@npmcli/run-script": "^1.8.4", + "json-parse-even-better-errors": "^2.3.1", + "semver": "^7.3.5", + "stringify-package": "^1.0.1" + } + }, + "node_modules/npm/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/make-fetch-happen": { + "version": "9.1.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/mime-db": { + "version": "1.49.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/npm/node_modules/mime-types": { + "version": "2.1.32", + "inBundle": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.49.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/npm/node_modules/minimatch": { + "version": "3.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/minipass": { + "version": "3.1.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-fetch": { + "version": "1.4.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" + } + }, + "node_modules/npm/node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/npm/node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "inBundle": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/mkdirp-infer-owner": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz", + "integrity": "sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "infer-owner": "^1.0.4", + "mkdirp": "^1.0.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/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==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/mute-stream": { + "version": "0.0.8", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/negotiator": { + "version": "0.6.2", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/npm/node_modules/node-gyp": { + "version": "7.1.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.3", + "nopt": "^5.0.0", + "npmlog": "^4.1.2", + "request": "^2.88.2", + "rimraf": "^3.0.2", + "semver": "^7.3.2", + "tar": "^6.0.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/aproba": { + "version": "1.2.0", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/node-gyp/node_modules/gauge": { + "version": "2.7.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/npmlog": { + "version": "4.1.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/string-width": { + "version": "1.0.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/nopt": { + "version": "5.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/normalize-package-data": { + "version": "3.0.3", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-audit-report": { + "version": "2.1.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "chalk": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-bundled": { + "version": "1.1.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "node_modules/npm/node_modules/npm-install-checks": { + "version": "4.0.0", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-normalize-package-bin": { + "version": "1.0.1", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/npm-package-arg": { + "version": "8.1.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "hosted-git-info": "^4.0.1", + "semver": "^7.3.4", + "validate-npm-package-name": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-packlist": { + "version": "2.2.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.6", + "ignore-walk": "^3.0.3", + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-pick-manifest": { + "version": "6.1.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-install-checks": "^4.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^8.1.2", + "semver": "^7.3.4" + } + }, + "node_modules/npm/node_modules/npm-profile": { + "version": "5.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-registry-fetch": "^11.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-registry-fetch": { + "version": "11.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "make-fetch-happen": "^9.0.1", + "minipass": "^3.1.3", + "minipass-fetch": "^1.3.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/npm-user-validate": { + "version": "1.0.1", + "inBundle": true, + "license": "BSD-2-Clause" + }, + "node_modules/npm/node_modules/npmlog": { + "version": "5.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "node_modules/npm/node_modules/npmlog/node_modules/are-we-there-yet": { + "version": "2.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/number-is-nan": { + "version": "1.0.1", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/oauth-sign": { + "version": "0.9.0", + "inBundle": true, + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/npm/node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "inBundle": true, + "license": "(WTFPL OR MIT)", + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/npm/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm/node_modules/pacote": { + "version": "11.3.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/git": "^2.1.0", + "@npmcli/installed-package-contents": "^1.0.6", + "@npmcli/promise-spawn": "^1.2.0", + "@npmcli/run-script": "^1.8.2", + "cacache": "^15.0.5", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "minipass": "^3.1.3", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^2.1.4", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^11.0.0", + "promise-retry": "^2.0.1", + "read-package-json-fast": "^2.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.0" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/parse-conflict-json": { + "version": "1.1.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "json-parse-even-better-errors": "^2.3.0", + "just-diff": "^3.0.1", + "just-diff-apply": "^3.0.0" + } + }, + "node_modules/npm/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/performance-now": { + "version": "2.1.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/proc-log": { + "version": "1.0.0", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/promise-all-reject-late": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", + "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/promise-call-limit": { + "version": "1.0.1", + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/promzard": { + "version": "0.3.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "read": "1" + } + }, + "node_modules/npm/node_modules/psl": { + "version": "1.8.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/punycode": { + "version": "2.1.1", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/qrcode-terminal": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", + "inBundle": true, + "bin": { + "qrcode-terminal": "bin/qrcode-terminal.js" + } + }, + "node_modules/npm/node_modules/qs": { + "version": "6.5.2", + "inBundle": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/npm/node_modules/read": { + "version": "1.0.7", + "inBundle": true, + "license": "ISC", + "dependencies": { + "mute-stream": "~0.0.4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/npm/node_modules/read-cmd-shim": { + "version": "2.0.0", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/read-package-json": { + "version": "4.1.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.1", + "json-parse-even-better-errors": "^2.3.0", + "normalize-package-data": "^3.0.0", + "npm-normalize-package-bin": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/read-package-json-fast": { + "version": "2.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/readable-stream": { + "version": "3.6.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/readdir-scoped-modules": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", + "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "graceful-fs": "^4.1.2", + "once": "^1.3.0" + } + }, + "node_modules/npm/node_modules/request": { + "version": "2.88.2", + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/request/node_modules/form-data": { + "version": "2.3.3", + "inBundle": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/npm/node_modules/request/node_modules/tough-cookie": { + "version": "2.5.0", + "inBundle": true, + "license": "BSD-3-Clause", + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/npm/node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/semver": { + "version": "7.3.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/signal-exit": { + "version": "3.0.3", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/smart-buffer": { + "version": "4.2.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/npm/node_modules/socks": { + "version": "2.6.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.1.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/npm/node_modules/socks-proxy-agent": { + "version": "6.1.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/spdx-correct": { + "version": "3.1.1", + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/npm/node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "inBundle": true, + "license": "CC-BY-3.0" + }, + "node_modules/npm/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/npm/node_modules/spdx-license-ids": { + "version": "3.0.10", + "inBundle": true, + "license": "CC0-1.0" + }, + "node_modules/npm/node_modules/sshpk": { + "version": "1.16.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/ssri": { + "version": "8.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/npm/node_modules/string-width": { + "version": "2.1.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/string-width/node_modules/ansi-regex": { + "version": "3.0.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/string-width/node_modules/strip-ansi": { + "version": "4.0.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/stringify-package": { + "version": "1.0.1", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/tar": { + "version": "6.1.11", + "inBundle": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/tiny-relative-date": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz", + "integrity": "sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/treeverse": { + "version": "1.0.4", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/tunnel-agent": { + "version": "0.6.0", + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/tweetnacl": { + "version": "0.14.5", + "inBundle": true, + "license": "Unlicense" + }, + "node_modules/npm/node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "inBundle": true, + "license": "MIT", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/npm/node_modules/unique-filename": { + "version": "1.1.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/npm/node_modules/unique-slug": { + "version": "2.0.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/npm/node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/npm/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/uuid": { + "version": "3.4.0", + "inBundle": true, + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/npm/node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/npm/node_modules/validate-npm-package-name": { + "version": "3.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "builtins": "^1.0.3" + } + }, + "node_modules/npm/node_modules/verror": { + "version": "1.10.0", + "engines": [ + "node >=0.6.0" + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/npm/node_modules/walk-up-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz", + "integrity": "sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/npm/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/wide-align": { + "version": "1.1.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "string-width": "^1.0.2 || 2" + } + }, + "node_modules/npm/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/write-file-atomic": { + "version": "3.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/npm/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dev": true, + "dependencies": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "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, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", + "dev": true + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": 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.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-pipe": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz", + "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parchment": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/parchment/-/parchment-1.1.4.tgz", + "integrity": "sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dev": true, + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": 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/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/pdfmake": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/pdfmake/-/pdfmake-0.2.7.tgz", + "integrity": "sha512-ClLpgx30H5G3EDvRW1MrA1Xih6YxEaSgIVFrOyBMgAAt62V+hxsyWAi6JNP7u1Fc5JKYAbpb4RRVw8Rhvmz5cQ==", + "dependencies": { + "@foliojs-fork/linebreak": "^1.1.1", + "@foliojs-fork/pdfkit": "^0.13.0", + "iconv-lite": "^0.6.3", + "xmldoc": "^1.1.2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/png-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/png-js/-/png-js-1.0.0.tgz", + "integrity": "sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g==" + }, + "node_modules/popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, + "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.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, + "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-loader": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", + "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", + "dev": true, + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "dev": true, + "dependencies": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "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.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "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.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "dev": true, + "dependencies": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "dev": true, + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-purgecss-laravel": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-purgecss-laravel/-/postcss-purgecss-laravel-2.0.0.tgz", + "integrity": "sha512-vWObgEC5f0isOdumiLwzJPuZFyp7i1Go9i2Obce5qrVJWciBtCG1rrNiPEb7xp5bU3u/uk30M2P891tLL8tcQQ==", + "dev": true, + "dependencies": { + "@fullhuman/postcss-purgecss": "^3.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/prism-themes": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/prism-themes/-/prism-themes-1.9.0.tgz", + "integrity": "sha512-tX2AYsehKDw1EORwBps+WhBFKc2kxfoFpQAjxBndbZKr4fRmMkv47XN0BghC/K1qwodB1otbe4oF23vUTFDokw==" + }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "peer": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/propagating-hammerjs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagating-hammerjs/-/propagating-hammerjs-2.0.1.tgz", + "integrity": "sha512-PH3zG5whbSxMocphXJzVtvKr+vWAgfkqVvtuwjSJ/apmEACUoiw6auBAT5HYXpZOR0eGcTAfYG5Yl8h91O5Elg==", + "peer": true, + "peerDependencies": { + "@egjs/hammerjs": "^2.0.17" + } + }, + "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, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/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, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true + }, + "node_modules/purgecss": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/purgecss/-/purgecss-3.1.3.tgz", + "integrity": "sha512-hRSLN9mguJ2lzlIQtW4qmPS2kh6oMnA9RxdIYK8sz18QYqd6ePp4GNDl18oWHA1f2v2NEQIh51CO8s/E3YGckQ==", + "dev": true, + "dependencies": { + "commander": "^6.0.0", + "glob": "^7.0.0", + "postcss": "^8.2.1", + "postcss-selector-parser": "^6.0.2" + }, + "bin": { + "purgecss": "bin/purgecss.js" + } + }, + "node_modules/purgecss/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", + "dev": true, + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "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, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "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" + } + ] + }, + "node_modules/quill": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/quill/-/quill-1.3.7.tgz", + "integrity": "sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==", + "dependencies": { + "clone": "^2.1.1", + "deep-equal": "^1.0.1", + "eventemitter3": "^2.0.3", + "extend": "^3.0.2", + "parchment": "^1.1.4", + "quill-delta": "^3.6.2" + } + }, + "node_modules/quill-delta": { + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/quill-delta/-/quill-delta-3.6.3.tgz", + "integrity": "sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==", + "dependencies": { + "deep-equal": "^1.0.1", + "extend": "^3.0.2", + "fast-diff": "1.1.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/quill/node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/qunit": { + "version": "2.19.4", + "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.19.4.tgz", + "integrity": "sha512-aqUzzUeCqlleWYKlpgfdHHw9C6KxkB9H3wNfiBg5yHqQMzy0xw/pbCRHYFkjl8MsP/t8qkTQE+JTYL71azgiew==", + "dependencies": { + "commander": "7.2.0", + "node-watch": "0.7.3", + "tiny-glob": "0.2.9" + }, + "bin": { + "qunit": "bin/qunit.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/quote-stream": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/quote-stream/-/quote-stream-1.0.2.tgz", + "integrity": "sha512-kKr2uQ2AokadPjvTyKJQad9xELbZwYzWlNfI3Uz2j/ib5u6H9lDP7fUUR//rMycd0gv4Z5P1qXMfXR8YpIxrjQ==", + "dependencies": { + "buffer-equal": "0.0.1", + "minimist": "^1.1.3", + "through2": "^2.0.0" + }, + "bin": { + "quote-stream": "bin/cmd.js" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "dependencies": { + "randombytes": "^2.0.5", + "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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "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/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "peer": true + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/readable-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rechoir": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "dev": true, + "dependencies": { + "resolve": "^1.9.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "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 + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/replace-in-file-webpack-plugin": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/replace-in-file-webpack-plugin/-/replace-in-file-webpack-plugin-1.0.6.tgz", + "integrity": "sha512-+KRgNYL2nbc6nza6SeF+wTBNkovuHFTfJF8QIEqZg5MbwkYpU9no0kH2YU354wvY/BK8mAC2UKoJ7q+sJTvciw==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.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.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz", + "integrity": "sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^7.0.35", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=8.9" + }, + "peerDependencies": { + "rework": "1.0.1", + "rework-visit": "1.0.0" + }, + "peerDependenciesMeta": { + "rework": { + "optional": true + }, + "rework-visit": { + "optional": true + } + } + }, + "node_modules/resolve-url-loader/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/resolve-url-loader/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", + "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==", + "dev": true + }, + "node_modules/rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", + "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + } + }, + "node_modules/rtlcss/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "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" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/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" + } + ] + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sass": { + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz", + "integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==", + "dev": 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": ">=12.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.2.0.tgz", + "integrity": "sha512-JWEp48djQA4nbZxmgC02/Wh0eroSUutulROUusYJO9P9zltRbNN80JCBHqRGzjd4cmZCa/r88xgfkjGD0TXsHg==", + "dev": true, + "dependencies": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.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", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scope-analyzer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/scope-analyzer/-/scope-analyzer-2.1.2.tgz", + "integrity": "sha512-5cfCmsTYV/wPaRIItNxatw02ua/MThdIUNnUOCYp+3LSEJvnG804ANw2VLaavNILIfWXF1D1G2KNANkBBvInwQ==", + "dependencies": { + "array-from": "^2.1.1", + "dash-ast": "^2.0.1", + "es6-map": "^0.1.5", + "es6-set": "^0.1.5", + "es6-symbol": "^3.1.1", + "estree-is-function": "^1.0.0", + "get-assigned-identifiers": "^1.1.0" + } + }, + "node_modules/select": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", + "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true + }, + "node_modules/select2": { + "version": "4.1.0-rc.0", + "resolved": "https://registry.npmjs.org/select2/-/select2-4.1.0-rc.0.tgz", + "integrity": "sha512-Hr9TdhyHCZUtwznEH2CBf7967mEM0idtJ5nMtjvk3Up5tPukOLXbHUNmh10oRfeNIhj+3GD3niu+g6sVK+gK0A==" + }, + "node_modules/selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dev": true, + "dependencies": { + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "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, + "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 + }, + "node_modules/send/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==", + "dev": true + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/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, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "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/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallow-copy": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz", + "integrity": "sha512-b6i4ZpVuUxB9h5gfCxPiusKYkqTMOjEbBs4wMaFbkfia4yFv92UKZ6Df8WXcKbn08JNL/abvg3FnMAOfakDvUw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "dev": true + }, + "node_modules/simple-update-notifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz", + "integrity": "sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==", + "dependencies": { + "semver": "~7.0.0" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/simple-update-notifier/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/smooth-scroll": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/smooth-scroll/-/smooth-scroll-16.1.3.tgz", + "integrity": "sha512-ca9U+neJS/cbdScTBuUTCZvUWNF2EuMCk7oAx3ImdeRK5FPm+xRo9XsVHIkeEVkn7MBRx+ufVEhyveM4ZhaTGA==" + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", + "dev": true + }, + "node_modules/static-eval": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.0.tgz", + "integrity": "sha512-agtxZ/kWSsCkI5E4QifRwsaPs0P0JmZV6dkLz6ILYfFYQGn+5plctanRN+IC8dJRiFkyXHrwEE3W9Wmx67uDbw==", + "dependencies": { + "escodegen": "^1.11.1" + } + }, + "node_modules/static-eval/node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/static-eval/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/static-eval/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/static-module": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/static-module/-/static-module-3.0.4.tgz", + "integrity": "sha512-gb0v0rrgpBkifXCa3yZXxqVmXDVE+ETXj6YlC/jt5VzOnGXR2C15+++eXuMDUYsePnbhf+lwW0pE1UXyOLtGCw==", + "dependencies": { + "acorn-node": "^1.3.0", + "concat-stream": "~1.6.0", + "convert-source-map": "^1.5.1", + "duplexer2": "~0.1.4", + "escodegen": "^1.11.1", + "has": "^1.0.1", + "magic-string": "0.25.1", + "merge-source-map": "1.0.4", + "object-inspect": "^1.6.0", + "readable-stream": "~2.3.3", + "scope-analyzer": "^2.0.1", + "shallow-copy": "~0.0.1", + "static-eval": "^2.0.5", + "through2": "~2.0.3" + } + }, + "node_modules/static-module/node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/static-module/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/static-module/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", + "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==", + "dev": true + }, + "node_modules/stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", + "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", + "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/style-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg.draggable.js": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/svg.draggable.js/-/svg.draggable.js-2.2.2.tgz", + "integrity": "sha512-JzNHBc2fLQMzYCZ90KZHN2ohXL0BQJGQimK1kGk6AvSeibuKcIdDX9Kr0dT9+UJ5O8nYA0RB839Lhvk4CY4MZw==", + "dependencies": { + "svg.js": "^2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svg.easing.js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/svg.easing.js/-/svg.easing.js-2.0.0.tgz", + "integrity": "sha512-//ctPdJMGy22YoYGV+3HEfHbm6/69LJUTAqI2/5qBvaNHZ9uUFVC82B0Pl299HzgH13rKrBgi4+XyXXyVWWthA==", + "dependencies": { + "svg.js": ">=2.3.x" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svg.filter.js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/svg.filter.js/-/svg.filter.js-2.0.2.tgz", + "integrity": "sha512-xkGBwU+dKBzqg5PtilaTb0EYPqPfJ9Q6saVldX+5vCRy31P6TlRCP3U9NxH3HEufkKkpNgdTLBJnmhDHeTqAkw==", + "dependencies": { + "svg.js": "^2.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svg.js": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/svg.js/-/svg.js-2.7.1.tgz", + "integrity": "sha512-ycbxpizEQktk3FYvn/8BH+6/EuWXg7ZpQREJvgacqn46gIddG24tNNe4Son6omdXCnSOaApnpZw6MPCBA1dODA==" + }, + "node_modules/svg.pathmorphing.js": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/svg.pathmorphing.js/-/svg.pathmorphing.js-0.1.3.tgz", + "integrity": "sha512-49HWI9X4XQR/JG1qXkSDV8xViuTLIWm/B/7YuQELV5KMOPtXjiwH4XPJvr/ghEDibmLQ9Oc22dpWpG0vUDDNww==", + "dependencies": { + "svg.js": "^2.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svg.resize.js": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/svg.resize.js/-/svg.resize.js-1.4.3.tgz", + "integrity": "sha512-9k5sXJuPKp+mVzXNvxz7U0uC9oVMQrrf7cFsETznzUDDm0x8+77dtZkWdMfRlmbkEEYvUn9btKuZ3n41oNA+uw==", + "dependencies": { + "svg.js": "^2.6.5", + "svg.select.js": "^2.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svg.resize.js/node_modules/svg.select.js": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/svg.select.js/-/svg.select.js-2.1.2.tgz", + "integrity": "sha512-tH6ABEyJsAOVAhwcCjF8mw4crjXSI1aa7j2VQR8ZuJ37H2MBUbyeqYr5nEO7sSN3cy9AR9DUwNg0t/962HlDbQ==", + "dependencies": { + "svg.js": "^2.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svg.select.js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/svg.select.js/-/svg.select.js-3.0.1.tgz", + "integrity": "sha512-h5IS/hKkuVCbKSieR9uQCj9w+zLHoPh+ce19bBYyqF53g6mnPB8sAtIbe1s9dh2S2fCmYX2xel1Ln3PJBbK4kw==", + "dependencies": { + "svg.js": "^2.6.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/sweetalert2": { + "version": "11.4.8", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.4.8.tgz", + "integrity": "sha512-BDS/+E8RwaekGSxCPUbPnsRAyQ439gtXkTF/s98vY2l9DaVEOMjGj1FaQSorfGREKsbbxGSP7UXboibL5vgTMA==", + "funding": { + "type": "individual", + "url": "https://sweetalert2.github.io/#donations" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.6.tgz", + "integrity": "sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "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.7", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz", + "integrity": "sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.5" + }, + "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/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/ticky": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ticky/-/ticky-1.0.1.tgz", + "integrity": "sha512-RX35iq/D+lrsqhcPWIazM9ELkjOe30MSeoBHQHSsRwd1YuhJO5ui1K1/R0r7N3mFvbLBs33idw+eR6j+w6i/DA==" + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dev": true, + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", + "dev": true + }, + "node_modules/tiny-binary-search": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-binary-search/-/tiny-binary-search-1.0.3.tgz", + "integrity": "sha512-STSHX/L5nI9WTLv6wrzJbAPbO7OIISX83KFBh2GVbX1Uz/vgZOU/ANn/8iV6t35yMTpoPzzO+3OQid3mifE0CA==" + }, + "node_modules/tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" + }, + "node_modules/tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", + "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", + "dependencies": { + "globalyzer": "0.1.0", + "globrex": "^0.1.2" + } + }, + "node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" + }, + "node_modules/tiny-slider": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/tiny-slider/-/tiny-slider-2.9.4.tgz", + "integrity": "sha512-LAs2kldWcY+BqCKw4kxd4CMx2RhWrHyEePEsymlOIISTlOVkjfK40sSD7ay73eKXBLg/UkluAZpcfCstimHXew==" + }, + "node_modules/tinymce": { + "version": "5.10.7", + "resolved": "https://registry.npmjs.org/tinymce/-/tinymce-5.10.7.tgz", + "integrity": "sha512-9UUjaO0R7FxcFo0oxnd1lMs7H+D0Eh+dDVo5hKbVe1a+VB0nit97vOqlinj+YwgoBDt6/DSCUoWqAYlLI8BLYA==" + }, + "node_modules/to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toastr": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/toastr/-/toastr-2.1.4.tgz", + "integrity": "sha512-LIy77F5n+sz4tefMmFOntcJ6HL0Fv3k1TDnNmFZ0bU/GcvIIfy6eG2v7zQmMiYgaalAiUv75ttFrPn5s0gyqlA==", + "dependencies": { + "jquery": ">=1.12.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, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "dev": true + }, + "node_modules/tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==", + "dev": true + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "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, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed.js": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/typed.js/-/typed.js-2.0.16.tgz", + "integrity": "sha512-IBB52GlJiTUOnomwdVVf7lWgC6gScn8md+26zTHj5oJWA+4pSuclHE76rbGI2hnyO+NT+QXdIUHbfjAY5nEtcw==" + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "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, + "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.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-properties": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.4.1.tgz", + "integrity": "sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==", + "dependencies": { + "base64-js": "^1.3.0", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-trie": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", + "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", + "dependencies": { + "pako": "^0.2.5", + "tiny-inflate": "^1.0.0" + } + }, + "node_modules/unicode-trie/node_modules/pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==" + }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", + "dev": true + }, + "node_modules/uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", + "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==", + "dev": true + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==", + "dev": true + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", + "dev": true + }, + "node_modules/util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/util.promisify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", + "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "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, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/vanilla-colorful": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/vanilla-colorful/-/vanilla-colorful-0.7.2.tgz", + "integrity": "sha512-z2YZusTFC6KnLERx1cgoIRX2CjPRP0W75N+3CC6gbvdX5Ch47rZkEMGO2Xnf+IEmi3RiFLxS18gayMA27iU7Kg==" + }, + "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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vendors": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/vis-data": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/vis-data/-/vis-data-7.1.4.tgz", + "integrity": "sha512-usy+ePX1XnArNvJ5BavQod7YRuGQE1pjFl+pu7IS6rCom2EBoG0o1ZzCqf3l5US6MW51kYkLR+efxRbnjxNl7w==", + "hasInstallScript": true, + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/visjs" + }, + "peerDependencies": { + "uuid": "^7.0.0 || ^8.0.0", + "vis-util": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/vis-timeline": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/vis-timeline/-/vis-timeline-7.7.0.tgz", + "integrity": "sha512-et5xobQTEp7i8lqcEjgMWoGE4s4qn+2VtEJ35uRZiL5Y3qRzi84bCTkUKAjOM/HTzVFiLTWET+DZZi1iHYriuA==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/visjs" + }, + "peerDependencies": { + "@egjs/hammerjs": "^2.0.0", + "component-emitter": "^1.3.0", + "keycharm": "^0.3.0 || ^0.4.0", + "moment": "^2.24.0", + "propagating-hammerjs": "^1.4.0 || ^2.0.0", + "uuid": "^3.4.0 || ^7.0.0 || ^8.0.0", + "vis-data": "^6.3.0 || ^7.0.0", + "vis-util": "^3.0.0 || ^4.0.0 || ^5.0.0", + "xss": "^1.0.0" + } + }, + "node_modules/vis-util": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/vis-util/-/vis-util-5.0.3.tgz", + "integrity": "sha512-Wf9STUcFrDzK4/Zr7B6epW2Kvm3ORNWF+WiwEz2dpf5RdWkLUXFSbLcuB88n1W6tCdFwVN+v3V4/Xmn9PeL39g==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/visjs" + }, + "peerDependencies": { + "@egjs/hammerjs": "^2.0.0", + "component-emitter": "^1.3.0" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "node_modules/vue-style-loader": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", + "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", + "dev": true, + "dependencies": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + } + }, + "node_modules/vue-style-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/vue-style-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/webpack": { + "version": "5.76.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.2.tgz", + "integrity": "sha512-Th05ggRm23rVzEOlX8y67NkYCHa9nTNcwHPBhdg+lKG+mtiW7XgggjAeeLnADAe7mLjJ6LUNfgHAuRRh+Z6J7w==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "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.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "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-cli": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", + "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.2.0", + "@webpack-cli/info": "^1.5.0", + "@webpack-cli/serve": "^1.7.0", + "colorette": "^2.0.14", + "commander": "^7.0.0", + "cross-spawn": "^7.0.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "webpack-merge": "^5.7.3" + }, + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true + }, + "@webpack-cli/migrate": { + "optional": true + }, + "webpack-bundle-analyzer": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.1.tgz", + "integrity": "sha512-5tWg00bnWbYgkN+pd5yISQKDejRBYGEw15RaEEslH+zdbNDxxaZvEAO2WulaSaFKb5n3YG8JXsGaDsut1D0xdA==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-notifier": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/webpack-notifier/-/webpack-notifier-1.15.0.tgz", + "integrity": "sha512-N2V8UMgRB5komdXQRavBsRpw0hPhJq2/SWNOGuhrXpIgRhcMexzkGQysUyGStHLV5hkUlgpRiF7IUXoBqyMmzQ==", + "dev": true, + "dependencies": { + "node-notifier": "^9.0.0", + "strip-ansi": "^6.0.0" + }, + "peerDependencies": { + "@types/webpack": ">4.41.31" + }, + "peerDependenciesMeta": { + "@types/webpack": { + "optional": true + } + } + }, + "node_modules/webpack-rtl-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-rtl-plugin/-/webpack-rtl-plugin-2.0.0.tgz", + "integrity": "sha512-lROgFkiPjapg9tcZ8FiLWeP5pJoG00018aEjLTxSrVldPD1ON+LPlhKPHjb7eE8Bc0+KL23pxcAjWDGOv9+UAw==", + "dev": true, + "dependencies": { + "@romainberger/css-diff": "^1.0.3", + "async": "^2.0.0", + "cssnano": "4.1.10", + "rtlcss": "2.4.0", + "webpack-sources": "1.3.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "dependencies": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/css-declaration-sorter": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", + "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.1", + "timsort": "^0.3.0" + }, + "engines": { + "node": ">4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "dev": true, + "dependencies": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/cssnano": { + "version": "4.1.10", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", + "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", + "dev": true, + "dependencies": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.7", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/cssnano-preset-default": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", + "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", + "dev": true, + "dependencies": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.3", + "postcss-unique-selectors": "^4.0.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/domutils/node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", + "dev": true, + "dependencies": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-calc": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", + "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", + "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-colormin/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", + "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-convert-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "dev": true, + "dependencies": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-merge-longhand/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-font-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "dev": true, + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-gradients/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", + "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", + "dev": true, + "dependencies": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-params/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "dev": true, + "dependencies": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "dev": true, + "dependencies": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-display-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "dev": true, + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-positions/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "dev": true, + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-repeat-style/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "dev": true, + "dependencies": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-string/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "dev": true, + "dependencies": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-timing-functions/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-unicode/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "dev": true, + "dependencies": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-url/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-normalize-whitespace/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "dev": true, + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-ordered-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "dev": true, + "dependencies": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-reduce-transforms/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-svgo": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", + "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-svgo/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/webpack-rtl-plugin/node_modules/postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "dev": true, + "dependencies": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/rtlcss": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-2.4.0.tgz", + "integrity": "sha512-hdjFhZ5FCI0ABOfyXOMOhBtwPWtANLCG7rOiOcRf+yi5eDdxmDjqBruWouEnwVdzfh/TWF6NNncIEsigOCFZOA==", + "dev": true, + "dependencies": { + "chalk": "^2.3.0", + "findup": "^0.1.5", + "mkdirp": "^0.5.1", + "postcss": "^6.0.14", + "strip-json-comments": "^2.0.0" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/rtlcss/node_modules/postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "dependencies": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.4.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/stylehacks": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", + "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/stylehacks/node_modules/postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/svgo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.", + "dev": true, + "dependencies": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack-rtl-plugin/node_modules/webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "dependencies": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "node_modules/webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "dependencies": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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/webpack/node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "webpack": "3 || 4 || 5" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "node_modules/wnumb": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/wnumb/-/wnumb-1.2.0.tgz", + "integrity": "sha512-eYut5K/dW7usfk/Mwm6nxBNoTPp/uP7PlXld+hhg7lDtHLdHFnNclywGYM9BRC7Ohd4JhwuHg+vmOUGfd3NhVA==" + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==" + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": 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/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true, + "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/xmldoc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.2.0.tgz", + "integrity": "sha512-2eN8QhjBsMW2uVj7JHLHkMytpvGHLHxKXBy4J3fAT/HujsEtM6yU84iGjpESYGHg6XwK0Vu4l+KgqQ2dv2cCqg==", + "dependencies": { + "sax": "^1.2.4" + } + }, + "node_modules/xss": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", + "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", + "peer": true, + "dependencies": { + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/xss/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "peer": true + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/public/vendor/livewire/livewire.js b/public/vendor/livewire/livewire.js new file mode 100644 index 0000000..c28a26b --- /dev/null +++ b/public/vendor/livewire/livewire.js @@ -0,0 +1,14 @@ +!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?module.exports=factory():"function"==typeof define&&define.amd?define(factory):(global="undefined"!=typeof globalThis?globalThis:global||self).Livewire=factory()}(this,(function(){"use strict";function _iterableToArrayLimit(arr,i){var _i=null==arr?null:"undefined"!=typeof Symbol&&arr[Symbol.iterator]||arr["@@iterator"];if(null!=_i){var _s,_e,_x,_r,_arr=[],_n=!0,_d=!1;try{if(_x=(_i=_i.call(arr)).next,0===i){if(Object(_i)!==_i)return;_n=!1}else for(;!(_n=(_s=_x.call(_i)).done)&&(_arr.push(_s.value),_arr.length!==i);_n=!0);}catch(err){_d=!0,_e=err}finally{try{if(!_n&&null!=_i.return&&(_r=_i.return(),Object(_r)!==_r))return}finally{if(_d)throw _e}}return _arr}}function ownKeys$1(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);enumerableOnly&&(symbols=symbols.filter((function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable}))),keys.push.apply(keys,symbols)}return keys}function _objectSpread2(target){for(var i=1;iarr.length)&&(len=arr.length);for(var i=0,arr2=new Array(len);i0&&void 0!==arguments[0]?arguments[0]:"right";return this.modifiers.includes("up")?"up":this.modifiers.includes("down")?"down":this.modifiers.includes("left")?"left":this.modifiers.includes("right")?"right":fallback}}]),Directive}();function walk(root,callback){if(!1!==callback(root))for(var node=root.firstElementChild;node;)walk(node,callback),node=node.nextElementSibling}function dispatch(eventName){var event=document.createEvent("Events");return event.initEvent(eventName,!0,!0),document.dispatchEvent(event),event}function getCsrfToken(){var _window$livewire_toke,tokenTag=document.head.querySelector('meta[name="csrf-token"]');return tokenTag?tokenTag.content:null!==(_window$livewire_toke=window.livewire_token)&&void 0!==_window$livewire_toke?_window$livewire_toke:void 0}function kebabCase(subject){return subject.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]/,"-").toLowerCase()} +/*! + * isobject + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */var isobject=function(val){return null!=val&&"object"==typeof val&&!1===Array.isArray(val)},getValue=function(target,path,options){if(isobject(options)||(options={default:options}),!isValidObject(target))return void 0!==options.default?options.default:target;"number"==typeof path&&(path=String(path));const isArray=Array.isArray(path),isString="string"==typeof path,splitChar=options.separator||".",joinChar=options.joinChar||("string"==typeof splitChar?splitChar:".");if(!isString&&!isArray)return target;if(isString&&path in target)return isValid(path,target,options)?target[path]:options.default;let segs=isArray?path:split$1(path,splitChar,options),len=segs.length,idx=0;do{let prop=segs[idx];for("number"==typeof prop&&(prop=String(prop));prop&&"\\"===prop.slice(-1);)prop=join([prop.slice(0,-1),segs[++idx]||""],joinChar,options);if(prop in target){if(!isValid(prop,target,options))return options.default;target=target[prop]}else{let hasProp=!1,n=idx+1;for(;n + * + * Copyright (c) 2014-2018, Jon Schlinkert. + * Released under the MIT License. + */function join(segs,joinChar,options){return"function"==typeof options.join?options.join(segs):segs[0]+joinChar+segs[1]}function split$1(path,splitChar,options){return"function"==typeof options.split?options.split(path):path.split(splitChar)}function isValid(key,target,options){return"function"!=typeof options.isValid||options.isValid(key,target)}function isValidObject(val){return isobject(val)||Array.isArray(val)||"function"==typeof val}var _default$6=function(){function _default(el){var skipWatcher=arguments.length>1&&void 0!==arguments[1]&&arguments[1];_classCallCheck(this,_default),this.el=el,this.skipWatcher=skipWatcher,this.resolveCallback=function(){},this.rejectCallback=function(){},this.signature=(Math.random()+1).toString(36).substring(8)}return _createClass(_default,[{key:"toId",value:function(){return btoa(encodeURIComponent(this.el.outerHTML))}},{key:"onResolve",value:function(callback){this.resolveCallback=callback}},{key:"onReject",value:function(callback){this.rejectCallback=callback}},{key:"resolve",value:function(thing){this.resolveCallback(thing)}},{key:"reject",value:function(thing){this.rejectCallback(thing)}}]),_default}(),_default$5=function(_Action){_inherits(_default,_Action);var _super=_createSuper(_default);function _default(event,params,el){var _this;return _classCallCheck(this,_default),(_this=_super.call(this,el)).type="fireEvent",_this.payload={id:_this.signature,event:event,params:params},_this}return _createClass(_default,[{key:"toId",value:function(){return btoa(encodeURIComponent(this.type,this.payload.event,JSON.stringify(this.payload.params)))}}]),_default}(_default$6),MessageBus=function(){function MessageBus(){_classCallCheck(this,MessageBus),this.listeners={}}return _createClass(MessageBus,[{key:"register",value:function(name,callback){this.listeners[name]||(this.listeners[name]=[]),this.listeners[name].push(callback)}},{key:"call",value:function(name){for(var _len=arguments.length,params=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)params[_key-1]=arguments[_key];(this.listeners[name]||[]).forEach((function(callback){callback.apply(void 0,params)}))}},{key:"has",value:function(name){return Object.keys(this.listeners).includes(name)}}]),MessageBus}(),HookManager={availableHooks:["component.initialized","element.initialized","element.updating","element.updated","element.removed","message.sent","message.failed","message.received","message.processed","interceptWireModelSetValue","interceptWireModelAttachListener","beforeReplaceState","beforePushState"],bus:new MessageBus,register:function(name,callback){if(!this.availableHooks.includes(name))throw"Livewire: Referencing unknown hook: [".concat(name,"]");this.bus.register(name,callback)},call:function(name){for(var _this$bus,_len=arguments.length,params=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)params[_key-1]=arguments[_key];(_this$bus=this.bus).call.apply(_this$bus,[name].concat(params))}},DirectiveManager={directives:new MessageBus,register:function(name,callback){if(this.has(name))throw"Livewire: Directive already registered: [".concat(name,"]");this.directives.register(name,callback)},call:function(name,el,directive,component){this.directives.call(name,el,directive,component)},has:function(name){return this.directives.has(name)}},store$2={componentsById:{},listeners:new MessageBus,initialRenderIsFinished:!1,livewireIsInBackground:!1,livewireIsOffline:!1,sessionHasExpired:!1,sessionHasExpiredCallback:void 0,directives:DirectiveManager,hooks:HookManager,onErrorCallback:function(){},components:function(){var _this=this;return Object.keys(this.componentsById).map((function(key){return _this.componentsById[key]}))},addComponent:function(component){return this.componentsById[component.id]=component},findComponent:function(id){return this.componentsById[id]},getComponentsByName:function(name){return this.components().filter((function(component){return component.name===name}))},hasComponent:function(id){return!!this.componentsById[id]},tearDownComponents:function(){var _this2=this;this.components().forEach((function(component){_this2.removeComponent(component)}))},on:function(event,callback){this.listeners.register(event,callback)},emit:function(event){for(var _this$listeners,_len=arguments.length,params=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)params[_key-1]=arguments[_key];(_this$listeners=this.listeners).call.apply(_this$listeners,[event].concat(params)),this.componentsListeningForEvent(event).forEach((function(component){return component.addAction(new _default$5(event,params))}))},emitUp:function(el,event){for(var _len2=arguments.length,params=new Array(_len2>2?_len2-2:0),_key2=2;_key2<_len2;_key2++)params[_key2-2]=arguments[_key2];this.componentsListeningForEventThatAreTreeAncestors(el,event).forEach((function(component){return component.addAction(new _default$5(event,params))}))},emitSelf:function(componentId,event){var component=this.findComponent(componentId);if(component.listeners.includes(event)){for(var _len3=arguments.length,params=new Array(_len3>2?_len3-2:0),_key3=2;_key3<_len3;_key3++)params[_key3-2]=arguments[_key3];component.addAction(new _default$5(event,params))}},emitTo:function(componentName,event){for(var _len4=arguments.length,params=new Array(_len4>2?_len4-2:0),_key4=2;_key4<_len4;_key4++)params[_key4-2]=arguments[_key4];var components=this.getComponentsByName(componentName);components.forEach((function(component){component.listeners.includes(event)&&component.addAction(new _default$5(event,params))}))},componentsListeningForEventThatAreTreeAncestors:function(el,event){for(var parentIds=[],parent=el.parentElement.closest("[wire\\:id]");parent;)parentIds.push(parent.getAttribute("wire:id")),parent=parent.parentElement.closest("[wire\\:id]");return this.components().filter((function(component){return component.listeners.includes(event)&&parentIds.includes(component.id)}))},componentsListeningForEvent:function(event){return this.components().filter((function(component){return component.listeners.includes(event)}))},registerDirective:function(name,callback){this.directives.register(name,callback)},registerHook:function(name,callback){this.hooks.register(name,callback)},callHook:function(name){for(var _this$hooks,_len5=arguments.length,params=new Array(_len5>1?_len5-1:0),_key5=1;_key5<_len5;_key5++)params[_key5-1]=arguments[_key5];(_this$hooks=this.hooks).call.apply(_this$hooks,[name].concat(params))},changeComponentId:function(component,newId){var oldId=component.id;component.id=newId,component.fingerprint.id=newId,this.componentsById[newId]=component,delete this.componentsById[oldId],this.components().forEach((function(component){var children=component.serverMemo.children||{};Object.entries(children).forEach((function(_ref){var _ref2=_slicedToArray(_ref,2),key=_ref2[0],_ref2$=_ref2[1],id=_ref2$.id;_ref2$.tagName,id===oldId&&(children[key].id=newId)}))}))},removeComponent:function(component){component.tearDown(),delete this.componentsById[component.id]},onError:function(callback){this.onErrorCallback=callback},getClosestParentId:function(childId,subsetOfParentIds){var _this3=this,distancesByParentId={};subsetOfParentIds.forEach((function(parentId){var distance=_this3.getDistanceToChild(parentId,childId);distance&&(distancesByParentId[parentId]=distance)}));var closestParentId,smallestDistance=Math.min.apply(Math,_toConsumableArray(Object.values(distancesByParentId)));return Object.entries(distancesByParentId).forEach((function(_ref3){var _ref4=_slicedToArray(_ref3,2),parentId=_ref4[0];_ref4[1]===smallestDistance&&(closestParentId=parentId)})),closestParentId},getDistanceToChild:function(parentId,childId){var distanceMemo=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,parentComponent=this.findComponent(parentId);if(parentComponent){var childIds=parentComponent.childIds;if(childIds.includes(childId))return distanceMemo;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:null;null===node&&(node=document);var allEls=Array.from(node.querySelectorAll("[wire\\:initial-data]")),onlyChildEls=Array.from(node.querySelectorAll("[wire\\:initial-data] [wire\\:initial-data]"));return allEls.filter((function(el){return!onlyChildEls.includes(el)}))},allModelElementsInside:function(root){return Array.from(root.querySelectorAll("[wire\\:model]"))},getByAttributeAndValue:function(attribute,value){return document.querySelector("[wire\\:".concat(attribute,'="').concat(value,'"]'))},nextFrame:function(fn){var _this=this;requestAnimationFrame((function(){requestAnimationFrame(fn.bind(_this))}))},closestRoot:function(el){return this.closestByAttribute(el,"id")},closestByAttribute:function(el,attribute){var closestEl=el.closest("[wire\\:".concat(attribute,"]"));if(!closestEl)throw"\nLivewire Error:\n\nCannot find parent element in DOM tree containing attribute: [wire:".concat(attribute,"].\n\nUsually this is caused by Livewire's DOM-differ not being able to properly track changes.\n\nReference the following guide for common causes: https://laravel-livewire.com/docs/troubleshooting \n\nReferenced element:\n\n").concat(el.outerHTML,"\n");return closestEl},isComponentRootEl:function(el){return this.hasAttribute(el,"id")},hasAttribute:function(el,attribute){return el.hasAttribute("wire:".concat(attribute))},getAttribute:function(el,attribute){return el.getAttribute("wire:".concat(attribute))},removeAttribute:function(el,attribute){return el.removeAttribute("wire:".concat(attribute))},setAttribute:function(el,attribute,value){return el.setAttribute("wire:".concat(attribute),value)},hasFocus:function(el){return el===document.activeElement},isInput:function(el){return["INPUT","TEXTAREA","SELECT"].includes(el.tagName.toUpperCase())},isTextInput:function(el){return["INPUT","TEXTAREA"].includes(el.tagName.toUpperCase())&&!["checkbox","radio"].includes(el.type)},valueFromInput:function(el,component){if("checkbox"===el.type){var modelName=wireDirectives(el).get("model").value,modelValue=component.deferredActions[modelName]?component.deferredActions[modelName].payload.value:getValue(component.data,modelName);return Array.isArray(modelValue)?this.mergeCheckboxValueIntoArray(el,modelValue):!!el.checked&&(el.getAttribute("value")||!0)}return"SELECT"===el.tagName&&el.multiple?this.getSelectValues(el):el.value},mergeCheckboxValueIntoArray:function(el,arrayValue){return el.checked?arrayValue.includes(el.value)?arrayValue:arrayValue.concat(el.value):arrayValue.filter((function(item){return item!=el.value}))},setInputValueFromModel:function(el,component){var modelString=wireDirectives(el).get("model").value,modelValue=getValue(component.data,modelString);"input"===el.tagName.toLowerCase()&&"file"===el.type||this.setInputValue(el,modelValue)},setInputValue:function(el,value){if(store$2.callHook("interceptWireModelSetValue",value,el),"radio"===el.type)el.checked=el.value==value;else if("checkbox"===el.type)if(Array.isArray(value)){var valueFound=!1;value.forEach((function(val){val==el.value&&(valueFound=!0)})),el.checked=valueFound}else el.checked=!!value;else"SELECT"===el.tagName?this.updateSelect(el,value):(value=void 0===value?"":value,el.value=value)},getSelectValues:function(el){return Array.from(el.options).filter((function(option){return option.selected})).map((function(option){return option.value||option.text}))},updateSelect:function(el,value){var arrayWrappedValue=[].concat(value).map((function(value){return value+""}));Array.from(el.options).forEach((function(option){option.selected=arrayWrappedValue.includes(option.value)}))}},fails=function(exec){try{return!!exec()}catch(error){return!0}},functionBindNative=!fails((function(){var test=function(){}.bind();return"function"!=typeof test||test.hasOwnProperty("prototype")})),FunctionPrototype$2=Function.prototype,call$2=FunctionPrototype$2.call,uncurryThisWithBind=functionBindNative&&FunctionPrototype$2.bind.bind(call$2,call$2),functionUncurryThis=functionBindNative?uncurryThisWithBind:function(fn){return function(){return call$2.apply(fn,arguments)}},ceil=Math.ceil,floor=Math.floor,mathTrunc=Math.trunc||function(x){var n=+x;return(n>0?floor:ceil)(n)},toIntegerOrInfinity=function(argument){var number=+argument;return number!=number||0===number?0:mathTrunc(number)},commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function createCommonjsModule(fn,basedir,module){return module={path:basedir,exports:{},require:function(path,base){return commonjsRequire(path,null==base?module.path:base)}},fn(module,module.exports),module.exports}function commonjsRequire(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var check=function(it){return it&&it.Math==Math&&it},global_1=check("object"==typeof globalThis&&globalThis)||check("object"==typeof window&&window)||check("object"==typeof self&&self)||check("object"==typeof commonjsGlobal&&commonjsGlobal)||function(){return this}()||Function("return this")(),defineProperty$4=Object.defineProperty,defineGlobalProperty=function(key,value){try{defineProperty$4(global_1,key,{value:value,configurable:!0,writable:!0})}catch(error){global_1[key]=value}return value},SHARED="__core-js_shared__",store$1=global_1[SHARED]||defineGlobalProperty(SHARED,{}),sharedStore=store$1,shared=createCommonjsModule((function(module){(module.exports=function(key,value){return sharedStore[key]||(sharedStore[key]=void 0!==value?value:{})})("versions",[]).push({version:"3.27.1",mode:"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.27.1/LICENSE",source:"https://github.com/zloirock/core-js"})})),isNullOrUndefined=function(it){return null==it},$TypeError$e=TypeError,requireObjectCoercible=function(it){if(isNullOrUndefined(it))throw $TypeError$e("Can't call method on "+it);return it},$Object$4=Object,toObject=function(argument){return $Object$4(requireObjectCoercible(argument))},hasOwnProperty=functionUncurryThis({}.hasOwnProperty),hasOwnProperty_1=Object.hasOwn||function(it,key){return hasOwnProperty(toObject(it),key)},id=0,postfix=Math.random(),toString$1=functionUncurryThis(1..toString),uid=function(key){return"Symbol("+(void 0===key?"":key)+")_"+toString$1(++id+postfix,36)},documentAll$2="object"==typeof document&&document.all,IS_HTMLDDA=void 0===documentAll$2&&void 0!==documentAll$2,documentAll_1={all:documentAll$2,IS_HTMLDDA:IS_HTMLDDA},documentAll$1=documentAll_1.all,isCallable=documentAll_1.IS_HTMLDDA?function(argument){return"function"==typeof argument||argument===documentAll$1}:function(argument){return"function"==typeof argument},aFunction=function(argument){return isCallable(argument)?argument:void 0},getBuiltIn=function(namespace,method){return arguments.length<2?aFunction(global_1[namespace]):global_1[namespace]&&global_1[namespace][method]},engineUserAgent=getBuiltIn("navigator","userAgent")||"",process$3=global_1.process,Deno$1=global_1.Deno,versions=process$3&&process$3.versions||Deno$1&&Deno$1.version,v8=versions&&versions.v8,match,version;v8&&(match=v8.split("."),version=match[0]>0&&match[0]<4?1:+(match[0]+match[1])),!version&&engineUserAgent&&(match=engineUserAgent.match(/Edge\/(\d+)/),(!match||match[1]>=74)&&(match=engineUserAgent.match(/Chrome\/(\d+)/),match&&(version=+match[1])));var engineV8Version=version,symbolConstructorDetection=!!Object.getOwnPropertySymbols&&!fails((function(){var symbol=Symbol();return!String(symbol)||!(Object(symbol)instanceof Symbol)||!Symbol.sham&&engineV8Version&&engineV8Version<41})),useSymbolAsUid=symbolConstructorDetection&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,WellKnownSymbolsStore=shared("wks"),Symbol$1=global_1.Symbol,symbolFor=Symbol$1&&Symbol$1.for,createWellKnownSymbol=useSymbolAsUid?Symbol$1:Symbol$1&&Symbol$1.withoutSetter||uid,wellKnownSymbol=function(name){if(!hasOwnProperty_1(WellKnownSymbolsStore,name)||!symbolConstructorDetection&&"string"!=typeof WellKnownSymbolsStore[name]){var description="Symbol."+name;symbolConstructorDetection&&hasOwnProperty_1(Symbol$1,name)?WellKnownSymbolsStore[name]=Symbol$1[name]:WellKnownSymbolsStore[name]=useSymbolAsUid&&symbolFor?symbolFor(description):createWellKnownSymbol(description)}return WellKnownSymbolsStore[name]},TO_STRING_TAG$4=wellKnownSymbol("toStringTag"),test={};test[TO_STRING_TAG$4]="z";var toStringTagSupport="[object z]"===String(test),toString=functionUncurryThis({}.toString),stringSlice$2=functionUncurryThis("".slice),classofRaw=function(it){return stringSlice$2(toString(it),8,-1)},TO_STRING_TAG$3=wellKnownSymbol("toStringTag"),$Object$3=Object,CORRECT_ARGUMENTS="Arguments"==classofRaw(function(){return arguments}()),tryGet=function(it,key){try{return it[key]}catch(error){}},classof=toStringTagSupport?classofRaw:function(it){var O,tag,result;return void 0===it?"Undefined":null===it?"Null":"string"==typeof(tag=tryGet(O=$Object$3(it),TO_STRING_TAG$3))?tag:CORRECT_ARGUMENTS?classofRaw(O):"Object"==(result=classofRaw(O))&&isCallable(O.callee)?"Arguments":result},$String$3=String,toString_1=function(argument){if("Symbol"===classof(argument))throw TypeError("Cannot convert a Symbol value to a string");return $String$3(argument)},charAt$1=functionUncurryThis("".charAt),charCodeAt=functionUncurryThis("".charCodeAt),stringSlice$1=functionUncurryThis("".slice),createMethod$3=function(CONVERT_TO_STRING){return function($this,pos){var first,second,S=toString_1(requireObjectCoercible($this)),position=toIntegerOrInfinity(pos),size=S.length;return position<0||position>=size?CONVERT_TO_STRING?"":void 0:(first=charCodeAt(S,position))<55296||first>56319||position+1===size||(second=charCodeAt(S,position+1))<56320||second>57343?CONVERT_TO_STRING?charAt$1(S,position):first:CONVERT_TO_STRING?stringSlice$1(S,position,position+2):second-56320+(first-55296<<10)+65536}},stringMultibyte={codeAt:createMethod$3(!1),charAt:createMethod$3(!0)},WeakMap$1=global_1.WeakMap,weakMapBasicDetection=isCallable(WeakMap$1)&&/native code/.test(String(WeakMap$1)),documentAll=documentAll_1.all,isObject=documentAll_1.IS_HTMLDDA?function(it){return"object"==typeof it?null!==it:isCallable(it)||it===documentAll}:function(it){return"object"==typeof it?null!==it:isCallable(it)},descriptors=!fails((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),document$3=global_1.document,EXISTS$1=isObject(document$3)&&isObject(document$3.createElement),documentCreateElement=function(it){return EXISTS$1?document$3.createElement(it):{}},ie8DomDefine=!descriptors&&!fails((function(){return 7!=Object.defineProperty(documentCreateElement("div"),"a",{get:function(){return 7}}).a})),v8PrototypeDefineBug=descriptors&&fails((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),$String$2=String,$TypeError$d=TypeError,anObject=function(argument){if(isObject(argument))return argument;throw $TypeError$d($String$2(argument)+" is not an object")},call$1=Function.prototype.call,functionCall=functionBindNative?call$1.bind(call$1):function(){return call$1.apply(call$1,arguments)},objectIsPrototypeOf=functionUncurryThis({}.isPrototypeOf),$Object$2=Object,isSymbol=useSymbolAsUid?function(it){return"symbol"==typeof it}:function(it){var $Symbol=getBuiltIn("Symbol");return isCallable($Symbol)&&objectIsPrototypeOf($Symbol.prototype,$Object$2(it))},$String$1=String,tryToString=function(argument){try{return $String$1(argument)}catch(error){return"Object"}},$TypeError$c=TypeError,aCallable=function(argument){if(isCallable(argument))return argument;throw $TypeError$c(tryToString(argument)+" is not a function")},getMethod=function(V,P){var func=V[P];return isNullOrUndefined(func)?void 0:aCallable(func)},$TypeError$b=TypeError,ordinaryToPrimitive=function(input,pref){var fn,val;if("string"===pref&&isCallable(fn=input.toString)&&!isObject(val=functionCall(fn,input)))return val;if(isCallable(fn=input.valueOf)&&!isObject(val=functionCall(fn,input)))return val;if("string"!==pref&&isCallable(fn=input.toString)&&!isObject(val=functionCall(fn,input)))return val;throw $TypeError$b("Can't convert object to primitive value")},$TypeError$a=TypeError,TO_PRIMITIVE=wellKnownSymbol("toPrimitive"),toPrimitive=function(input,pref){if(!isObject(input)||isSymbol(input))return input;var result,exoticToPrim=getMethod(input,TO_PRIMITIVE);if(exoticToPrim){if(void 0===pref&&(pref="default"),result=functionCall(exoticToPrim,input,pref),!isObject(result)||isSymbol(result))return result;throw $TypeError$a("Can't convert object to primitive value")}return void 0===pref&&(pref="number"),ordinaryToPrimitive(input,pref)},toPropertyKey=function(argument){var key=toPrimitive(argument,"string");return isSymbol(key)?key:key+""},$TypeError$9=TypeError,$defineProperty=Object.defineProperty,$getOwnPropertyDescriptor$1=Object.getOwnPropertyDescriptor,ENUMERABLE="enumerable",CONFIGURABLE$1="configurable",WRITABLE="writable",f$6=descriptors?v8PrototypeDefineBug?function(O,P,Attributes){if(anObject(O),P=toPropertyKey(P),anObject(Attributes),"function"==typeof O&&"prototype"===P&&"value"in Attributes&&WRITABLE in Attributes&&!Attributes[WRITABLE]){var current=$getOwnPropertyDescriptor$1(O,P);current&¤t[WRITABLE]&&(O[P]=Attributes.value,Attributes={configurable:CONFIGURABLE$1 in Attributes?Attributes[CONFIGURABLE$1]:current[CONFIGURABLE$1],enumerable:ENUMERABLE in Attributes?Attributes[ENUMERABLE]:current[ENUMERABLE],writable:!1})}return $defineProperty(O,P,Attributes)}:$defineProperty:function(O,P,Attributes){if(anObject(O),P=toPropertyKey(P),anObject(Attributes),ie8DomDefine)try{return $defineProperty(O,P,Attributes)}catch(error){}if("get"in Attributes||"set"in Attributes)throw $TypeError$9("Accessors not supported");return"value"in Attributes&&(O[P]=Attributes.value),O},objectDefineProperty={f:f$6},createPropertyDescriptor=function(bitmap,value){return{enumerable:!(1&bitmap),configurable:!(2&bitmap),writable:!(4&bitmap),value:value}},createNonEnumerableProperty=descriptors?function(object,key,value){return objectDefineProperty.f(object,key,createPropertyDescriptor(1,value))}:function(object,key,value){return object[key]=value,object},keys=shared("keys"),sharedKey=function(key){return keys[key]||(keys[key]=uid(key))},hiddenKeys$1={},OBJECT_ALREADY_INITIALIZED="Object already initialized",TypeError$2=global_1.TypeError,WeakMap=global_1.WeakMap,set$1,get,has,enforce=function(it){return has(it)?get(it):set$1(it,{})},getterFor=function(TYPE){return function(it){var state;if(!isObject(it)||(state=get(it)).type!==TYPE)throw TypeError$2("Incompatible receiver, "+TYPE+" required");return state}};if(weakMapBasicDetection||sharedStore.state){var store=sharedStore.state||(sharedStore.state=new WeakMap);store.get=store.get,store.has=store.has,store.set=store.set,set$1=function(it,metadata){if(store.has(it))throw TypeError$2(OBJECT_ALREADY_INITIALIZED);return metadata.facade=it,store.set(it,metadata),metadata},get=function(it){return store.get(it)||{}},has=function(it){return store.has(it)}}else{var STATE=sharedKey("state");hiddenKeys$1[STATE]=!0,set$1=function(it,metadata){if(hasOwnProperty_1(it,STATE))throw TypeError$2(OBJECT_ALREADY_INITIALIZED);return metadata.facade=it,createNonEnumerableProperty(it,STATE,metadata),metadata},get=function(it){return hasOwnProperty_1(it,STATE)?it[STATE]:{}},has=function(it){return hasOwnProperty_1(it,STATE)}}var internalState={set:set$1,get:get,has:has,enforce:enforce,getterFor:getterFor},$propertyIsEnumerable$1={}.propertyIsEnumerable,getOwnPropertyDescriptor$3=Object.getOwnPropertyDescriptor,NASHORN_BUG=getOwnPropertyDescriptor$3&&!$propertyIsEnumerable$1.call({1:2},1),f$5=NASHORN_BUG?function(V){var descriptor=getOwnPropertyDescriptor$3(this,V);return!!descriptor&&descriptor.enumerable}:$propertyIsEnumerable$1,objectPropertyIsEnumerable={f:f$5},$Object$1=Object,split=functionUncurryThis("".split),indexedObject=fails((function(){return!$Object$1("z").propertyIsEnumerable(0)}))?function(it){return"String"==classofRaw(it)?split(it,""):$Object$1(it)}:$Object$1,toIndexedObject=function(it){return indexedObject(requireObjectCoercible(it))},$getOwnPropertyDescriptor=Object.getOwnPropertyDescriptor,f$4=descriptors?$getOwnPropertyDescriptor:function(O,P){if(O=toIndexedObject(O),P=toPropertyKey(P),ie8DomDefine)try{return $getOwnPropertyDescriptor(O,P)}catch(error){}if(hasOwnProperty_1(O,P))return createPropertyDescriptor(!functionCall(objectPropertyIsEnumerable.f,O,P),O[P])},objectGetOwnPropertyDescriptor={f:f$4},FunctionPrototype$1=Function.prototype,getDescriptor=descriptors&&Object.getOwnPropertyDescriptor,EXISTS=hasOwnProperty_1(FunctionPrototype$1,"name"),PROPER=EXISTS&&"something"===function(){}.name,CONFIGURABLE=EXISTS&&(!descriptors||descriptors&&getDescriptor(FunctionPrototype$1,"name").configurable),functionName={EXISTS:EXISTS,PROPER:PROPER,CONFIGURABLE:CONFIGURABLE},functionToString=functionUncurryThis(Function.toString);isCallable(sharedStore.inspectSource)||(sharedStore.inspectSource=function(it){return functionToString(it)});var inspectSource=sharedStore.inspectSource,makeBuiltIn_1=createCommonjsModule((function(module){var CONFIGURABLE_FUNCTION_NAME=functionName.CONFIGURABLE,enforceInternalState=internalState.enforce,getInternalState=internalState.get,defineProperty=Object.defineProperty,CONFIGURABLE_LENGTH=descriptors&&!fails((function(){return 8!==defineProperty((function(){}),"length",{value:8}).length})),TEMPLATE=String(String).split("String"),makeBuiltIn=module.exports=function(value,name,options){"Symbol("===String(name).slice(0,7)&&(name="["+String(name).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),options&&options.getter&&(name="get "+name),options&&options.setter&&(name="set "+name),(!hasOwnProperty_1(value,"name")||CONFIGURABLE_FUNCTION_NAME&&value.name!==name)&&(descriptors?defineProperty(value,"name",{value:name,configurable:!0}):value.name=name),CONFIGURABLE_LENGTH&&options&&hasOwnProperty_1(options,"arity")&&value.length!==options.arity&&defineProperty(value,"length",{value:options.arity});try{options&&hasOwnProperty_1(options,"constructor")&&options.constructor?descriptors&&defineProperty(value,"prototype",{writable:!1}):value.prototype&&(value.prototype=void 0)}catch(error){}var state=enforceInternalState(value);return hasOwnProperty_1(state,"source")||(state.source=TEMPLATE.join("string"==typeof name?name:"")),value};Function.prototype.toString=makeBuiltIn((function(){return isCallable(this)&&getInternalState(this).source||inspectSource(this)}),"toString")})),defineBuiltIn=function(O,key,value,options){options||(options={});var simple=options.enumerable,name=void 0!==options.name?options.name:key;if(isCallable(value)&&makeBuiltIn_1(value,name,options),options.global)simple?O[key]=value:defineGlobalProperty(key,value);else{try{options.unsafe?O[key]&&(simple=!0):delete O[key]}catch(error){}simple?O[key]=value:objectDefineProperty.f(O,key,{value:value,enumerable:!1,configurable:!options.nonConfigurable,writable:!options.nonWritable})}return O},max=Math.max,min$2=Math.min,toAbsoluteIndex=function(index,length){var integer=toIntegerOrInfinity(index);return integer<0?max(integer+length,0):min$2(integer,length)},min$1=Math.min,toLength=function(argument){return argument>0?min$1(toIntegerOrInfinity(argument),9007199254740991):0},lengthOfArrayLike=function(obj){return toLength(obj.length)},createMethod$2=function(IS_INCLUDES){return function($this,el,fromIndex){var value,O=toIndexedObject($this),length=lengthOfArrayLike(O),index=toAbsoluteIndex(fromIndex,length);if(IS_INCLUDES&&el!=el){for(;length>index;)if((value=O[index++])!=value)return!0}else for(;length>index;index++)if((IS_INCLUDES||index in O)&&O[index]===el)return IS_INCLUDES||index||0;return!IS_INCLUDES&&-1}},arrayIncludes={includes:createMethod$2(!0),indexOf:createMethod$2(!1)},indexOf=arrayIncludes.indexOf,push$3=functionUncurryThis([].push),objectKeysInternal=function(object,names){var key,O=toIndexedObject(object),i=0,result=[];for(key in O)!hasOwnProperty_1(hiddenKeys$1,key)&&hasOwnProperty_1(O,key)&&push$3(result,key);for(;names.length>i;)hasOwnProperty_1(O,key=names[i++])&&(~indexOf(result,key)||push$3(result,key));return result},enumBugKeys=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],hiddenKeys=enumBugKeys.concat("length","prototype"),f$3=Object.getOwnPropertyNames||function(O){return objectKeysInternal(O,hiddenKeys)},objectGetOwnPropertyNames={f:f$3},f$2=Object.getOwnPropertySymbols,objectGetOwnPropertySymbols={f:f$2},concat$1=functionUncurryThis([].concat),ownKeys=getBuiltIn("Reflect","ownKeys")||function(it){var keys=objectGetOwnPropertyNames.f(anObject(it)),getOwnPropertySymbols=objectGetOwnPropertySymbols.f;return getOwnPropertySymbols?concat$1(keys,getOwnPropertySymbols(it)):keys},copyConstructorProperties=function(target,source,exceptions){for(var keys=ownKeys(source),defineProperty=objectDefineProperty.f,getOwnPropertyDescriptor=objectGetOwnPropertyDescriptor.f,i=0;iindex;)objectDefineProperty.f(O,key=keys[index++],props[key]);return O},objectDefineProperties={f:f$1},html=getBuiltIn("document","documentElement"),GT=">",LT="<",PROTOTYPE="prototype",SCRIPT="script",IE_PROTO$1=sharedKey("IE_PROTO"),EmptyConstructor=function(){},scriptTag=function(content){return LT+SCRIPT+GT+content+LT+"/"+SCRIPT+GT},NullProtoObjectViaActiveX=function(activeXDocument){activeXDocument.write(scriptTag("")),activeXDocument.close();var temp=activeXDocument.parentWindow.Object;return activeXDocument=null,temp},NullProtoObjectViaIFrame=function(){var iframeDocument,iframe=documentCreateElement("iframe"),JS="java"+SCRIPT+":";return iframe.style.display="none",html.appendChild(iframe),iframe.src=String(JS),(iframeDocument=iframe.contentWindow.document).open(),iframeDocument.write(scriptTag("document.F=Object")),iframeDocument.close(),iframeDocument.F},activeXDocument,NullProtoObject=function(){try{activeXDocument=new ActiveXObject("htmlfile")}catch(error){}NullProtoObject="undefined"!=typeof document?document.domain&&activeXDocument?NullProtoObjectViaActiveX(activeXDocument):NullProtoObjectViaIFrame():NullProtoObjectViaActiveX(activeXDocument);for(var length=enumBugKeys.length;length--;)delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];return NullProtoObject()};hiddenKeys$1[IE_PROTO$1]=!0;var objectCreate=Object.create||function(O,Properties){var result;return null!==O?(EmptyConstructor[PROTOTYPE]=anObject(O),result=new EmptyConstructor,EmptyConstructor[PROTOTYPE]=null,result[IE_PROTO$1]=O):result=NullProtoObject(),void 0===Properties?result:objectDefineProperties.f(result,Properties)},correctPrototypeGetter=!fails((function(){function F(){}return F.prototype.constructor=null,Object.getPrototypeOf(new F)!==F.prototype})),IE_PROTO=sharedKey("IE_PROTO"),$Object=Object,ObjectPrototype=$Object.prototype,objectGetPrototypeOf=correctPrototypeGetter?$Object.getPrototypeOf:function(O){var object=toObject(O);if(hasOwnProperty_1(object,IE_PROTO))return object[IE_PROTO];var constructor=object.constructor;return isCallable(constructor)&&object instanceof constructor?constructor.prototype:object instanceof $Object?ObjectPrototype:null},ITERATOR$5=wellKnownSymbol("iterator"),BUGGY_SAFARI_ITERATORS$1=!1,IteratorPrototype$2,PrototypeOfArrayIteratorPrototype,arrayIterator;[].keys&&(arrayIterator=[].keys(),"next"in arrayIterator?(PrototypeOfArrayIteratorPrototype=objectGetPrototypeOf(objectGetPrototypeOf(arrayIterator)),PrototypeOfArrayIteratorPrototype!==Object.prototype&&(IteratorPrototype$2=PrototypeOfArrayIteratorPrototype)):BUGGY_SAFARI_ITERATORS$1=!0);var NEW_ITERATOR_PROTOTYPE=!isObject(IteratorPrototype$2)||fails((function(){var test={};return IteratorPrototype$2[ITERATOR$5].call(test)!==test}));NEW_ITERATOR_PROTOTYPE&&(IteratorPrototype$2={}),isCallable(IteratorPrototype$2[ITERATOR$5])||defineBuiltIn(IteratorPrototype$2,ITERATOR$5,(function(){return this}));var iteratorsCore={IteratorPrototype:IteratorPrototype$2,BUGGY_SAFARI_ITERATORS:BUGGY_SAFARI_ITERATORS$1},defineProperty$3=objectDefineProperty.f,TO_STRING_TAG$2=wellKnownSymbol("toStringTag"),setToStringTag=function(target,TAG,STATIC){target&&!STATIC&&(target=target.prototype),target&&!hasOwnProperty_1(target,TO_STRING_TAG$2)&&defineProperty$3(target,TO_STRING_TAG$2,{configurable:!0,value:TAG})},iterators={},IteratorPrototype$1=iteratorsCore.IteratorPrototype,returnThis$1=function(){return this},iteratorCreateConstructor=function(IteratorConstructor,NAME,next,ENUMERABLE_NEXT){var TO_STRING_TAG=NAME+" Iterator";return IteratorConstructor.prototype=objectCreate(IteratorPrototype$1,{next:createPropertyDescriptor(+!ENUMERABLE_NEXT,next)}),setToStringTag(IteratorConstructor,TO_STRING_TAG,!1),iterators[TO_STRING_TAG]=returnThis$1,IteratorConstructor},$String=String,$TypeError$8=TypeError,aPossiblePrototype=function(argument){if("object"==typeof argument||isCallable(argument))return argument;throw $TypeError$8("Can't set "+$String(argument)+" as a prototype")},objectSetPrototypeOf=Object.setPrototypeOf||("__proto__"in{}?function(){var setter,CORRECT_SETTER=!1,test={};try{(setter=functionUncurryThis(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(test,[]),CORRECT_SETTER=test instanceof Array}catch(error){}return function(O,proto){return anObject(O),aPossiblePrototype(proto),CORRECT_SETTER?setter(O,proto):O.__proto__=proto,O}}():void 0),PROPER_FUNCTION_NAME=functionName.PROPER,CONFIGURABLE_FUNCTION_NAME=functionName.CONFIGURABLE,IteratorPrototype=iteratorsCore.IteratorPrototype,BUGGY_SAFARI_ITERATORS=iteratorsCore.BUGGY_SAFARI_ITERATORS,ITERATOR$4=wellKnownSymbol("iterator"),KEYS="keys",VALUES="values",ENTRIES="entries",returnThis=function(){return this},iteratorDefine=function(Iterable,NAME,IteratorConstructor,next,DEFAULT,IS_SET,FORCED){iteratorCreateConstructor(IteratorConstructor,NAME,next);var CurrentIteratorPrototype,methods,KEY,getIterationMethod=function(KIND){if(KIND===DEFAULT&&defaultIterator)return defaultIterator;if(!BUGGY_SAFARI_ITERATORS&&KIND in IterablePrototype)return IterablePrototype[KIND];switch(KIND){case KEYS:case VALUES:case ENTRIES:return function(){return new IteratorConstructor(this,KIND)}}return function(){return new IteratorConstructor(this)}},TO_STRING_TAG=NAME+" Iterator",INCORRECT_VALUES_NAME=!1,IterablePrototype=Iterable.prototype,nativeIterator=IterablePrototype[ITERATOR$4]||IterablePrototype["@@iterator"]||DEFAULT&&IterablePrototype[DEFAULT],defaultIterator=!BUGGY_SAFARI_ITERATORS&&nativeIterator||getIterationMethod(DEFAULT),anyNativeIterator="Array"==NAME&&IterablePrototype.entries||nativeIterator;if(anyNativeIterator&&(CurrentIteratorPrototype=objectGetPrototypeOf(anyNativeIterator.call(new Iterable)))!==Object.prototype&&CurrentIteratorPrototype.next&&(objectGetPrototypeOf(CurrentIteratorPrototype)!==IteratorPrototype&&(objectSetPrototypeOf?objectSetPrototypeOf(CurrentIteratorPrototype,IteratorPrototype):isCallable(CurrentIteratorPrototype[ITERATOR$4])||defineBuiltIn(CurrentIteratorPrototype,ITERATOR$4,returnThis)),setToStringTag(CurrentIteratorPrototype,TO_STRING_TAG,!0)),PROPER_FUNCTION_NAME&&DEFAULT==VALUES&&nativeIterator&&nativeIterator.name!==VALUES&&(CONFIGURABLE_FUNCTION_NAME?createNonEnumerableProperty(IterablePrototype,"name",VALUES):(INCORRECT_VALUES_NAME=!0,defaultIterator=function(){return functionCall(nativeIterator,this)})),DEFAULT)if(methods={values:getIterationMethod(VALUES),keys:IS_SET?defaultIterator:getIterationMethod(KEYS),entries:getIterationMethod(ENTRIES)},FORCED)for(KEY in methods)(BUGGY_SAFARI_ITERATORS||INCORRECT_VALUES_NAME||!(KEY in IterablePrototype))&&defineBuiltIn(IterablePrototype,KEY,methods[KEY]);else _export({target:NAME,proto:!0,forced:BUGGY_SAFARI_ITERATORS||INCORRECT_VALUES_NAME},methods);return IterablePrototype[ITERATOR$4]!==defaultIterator&&defineBuiltIn(IterablePrototype,ITERATOR$4,defaultIterator,{name:DEFAULT}),iterators[NAME]=defaultIterator,methods},createIterResultObject=function(value,done){return{value:value,done:done}},charAt=stringMultibyte.charAt,STRING_ITERATOR="String Iterator",setInternalState$2=internalState.set,getInternalState$1=internalState.getterFor(STRING_ITERATOR);iteratorDefine(String,"String",(function(iterated){setInternalState$2(this,{type:STRING_ITERATOR,string:toString_1(iterated),index:0})}),(function(){var point,state=getInternalState$1(this),string=state.string,index=state.index;return index>=string.length?createIterResultObject(void 0,!0):(point=charAt(string,index),state.index+=point.length,createIterResultObject(point,!1))}));var functionUncurryThisClause=function(fn){if("Function"===classofRaw(fn))return functionUncurryThis(fn)},bind$1=functionUncurryThisClause(functionUncurryThisClause.bind),functionBindContext=function(fn,that){return aCallable(fn),void 0===that?fn:functionBindNative?bind$1(fn,that):function(){return fn.apply(that,arguments)}},iteratorClose=function(iterator,kind,value){var innerResult,innerError;anObject(iterator);try{if(!(innerResult=getMethod(iterator,"return"))){if("throw"===kind)throw value;return value}innerResult=functionCall(innerResult,iterator)}catch(error){innerError=!0,innerResult=error}if("throw"===kind)throw value;if(innerError)throw innerResult;return anObject(innerResult),value},callWithSafeIterationClosing=function(iterator,fn,value,ENTRIES){try{return ENTRIES?fn(anObject(value)[0],value[1]):fn(value)}catch(error){iteratorClose(iterator,"throw",error)}},ITERATOR$3=wellKnownSymbol("iterator"),ArrayPrototype$1=Array.prototype,isArrayIteratorMethod=function(it){return void 0!==it&&(iterators.Array===it||ArrayPrototype$1[ITERATOR$3]===it)},noop$1=function(){},empty=[],construct=getBuiltIn("Reflect","construct"),constructorRegExp=/^\s*(?:class|function)\b/,exec=functionUncurryThis(constructorRegExp.exec),INCORRECT_TO_STRING=!constructorRegExp.exec(noop$1),isConstructorModern=function(argument){if(!isCallable(argument))return!1;try{return construct(noop$1,empty,argument),!0}catch(error){return!1}},isConstructorLegacy=function(argument){if(!isCallable(argument))return!1;switch(classof(argument)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return INCORRECT_TO_STRING||!!exec(constructorRegExp,inspectSource(argument))}catch(error){return!0}};isConstructorLegacy.sham=!0;var isConstructor=!construct||fails((function(){var called;return isConstructorModern(isConstructorModern.call)||!isConstructorModern(Object)||!isConstructorModern((function(){called=!0}))||called}))?isConstructorLegacy:isConstructorModern,createProperty=function(object,key,value){var propertyKey=toPropertyKey(key);propertyKey in object?objectDefineProperty.f(object,propertyKey,createPropertyDescriptor(0,value)):object[propertyKey]=value},ITERATOR$2=wellKnownSymbol("iterator"),getIteratorMethod=function(it){if(!isNullOrUndefined(it))return getMethod(it,ITERATOR$2)||getMethod(it,"@@iterator")||iterators[classof(it)]},$TypeError$7=TypeError,getIterator=function(argument,usingIterator){var iteratorMethod=arguments.length<2?getIteratorMethod(argument):usingIterator;if(aCallable(iteratorMethod))return anObject(functionCall(iteratorMethod,argument));throw $TypeError$7(tryToString(argument)+" is not iterable")},$Array$1=Array,arrayFrom=function(arrayLike){var O=toObject(arrayLike),IS_CONSTRUCTOR=isConstructor(this),argumentsLength=arguments.length,mapfn=argumentsLength>1?arguments[1]:void 0,mapping=void 0!==mapfn;mapping&&(mapfn=functionBindContext(mapfn,argumentsLength>2?arguments[2]:void 0));var length,result,step,iterator,next,value,iteratorMethod=getIteratorMethod(O),index=0;if(!iteratorMethod||this===$Array$1&&isArrayIteratorMethod(iteratorMethod))for(length=lengthOfArrayLike(O),result=IS_CONSTRUCTOR?new this(length):$Array$1(length);length>index;index++)value=mapping?mapfn(O[index],index):O[index],createProperty(result,index,value);else for(next=(iterator=getIterator(O,iteratorMethod)).next,result=IS_CONSTRUCTOR?new this:[];!(step=functionCall(next,iterator)).done;index++)value=mapping?callWithSafeIterationClosing(iterator,mapfn,[step.value,index],!0):step.value,createProperty(result,index,value);return result.length=index,result},ITERATOR$1=wellKnownSymbol("iterator"),SAFE_CLOSING=!1;try{var called=0,iteratorWithReturn={next:function(){return{done:!!called++}},return:function(){SAFE_CLOSING=!0}};iteratorWithReturn[ITERATOR$1]=function(){return this},Array.from(iteratorWithReturn,(function(){throw 2}))}catch(error){}var checkCorrectnessOfIteration=function(exec,SKIP_CLOSING){if(!SKIP_CLOSING&&!SAFE_CLOSING)return!1;var ITERATION_SUPPORT=!1;try{var object={};object[ITERATOR$1]=function(){return{next:function(){return{done:ITERATION_SUPPORT=!0}}}},exec(object)}catch(error){}return ITERATION_SUPPORT},INCORRECT_ITERATION=!checkCorrectnessOfIteration((function(iterable){Array.from(iterable)}));_export({target:"Array",stat:!0,forced:INCORRECT_ITERATION},{from:arrayFrom});var path=global_1;path.Array.from;var defineProperty$2=objectDefineProperty.f,UNSCOPABLES=wellKnownSymbol("unscopables"),ArrayPrototype=Array.prototype;null==ArrayPrototype[UNSCOPABLES]&&defineProperty$2(ArrayPrototype,UNSCOPABLES,{configurable:!0,value:objectCreate(null)});var addToUnscopables=function(key){ArrayPrototype[UNSCOPABLES][key]=!0},$includes=arrayIncludes.includes,BROKEN_ON_SPARSE=fails((function(){return!Array(1).includes()}));_export({target:"Array",proto:!0,forced:BROKEN_ON_SPARSE},{includes:function(el){return $includes(this,el,arguments.length>1?arguments[1]:void 0)}}),addToUnscopables("includes");var entryUnbind=function(CONSTRUCTOR,METHOD){return functionUncurryThis(global_1[CONSTRUCTOR].prototype[METHOD])};entryUnbind("Array","includes");var isArray=Array.isArray||function(argument){return"Array"==classofRaw(argument)},$TypeError$6=TypeError,MAX_SAFE_INTEGER=9007199254740991,doesNotExceedSafeInteger=function(it){if(it>MAX_SAFE_INTEGER)throw $TypeError$6("Maximum allowed index exceeded");return it},flattenIntoArray=function(target,original,source,sourceLen,start,depth,mapper,thisArg){for(var element,elementLen,targetIndex=start,sourceIndex=0,mapFn=!!mapper&&functionBindContext(mapper,thisArg);sourceIndex0&&isArray(element)?(elementLen=lengthOfArrayLike(element),targetIndex=flattenIntoArray(target,original,element,elementLen,targetIndex,depth-1)-1):(doesNotExceedSafeInteger(targetIndex+1),target[targetIndex]=element),targetIndex++),sourceIndex++;return targetIndex},flattenIntoArray_1=flattenIntoArray,SPECIES$3=wellKnownSymbol("species"),$Array=Array,arraySpeciesConstructor=function(originalArray){var C;return isArray(originalArray)&&(C=originalArray.constructor,(isConstructor(C)&&(C===$Array||isArray(C.prototype))||isObject(C)&&null===(C=C[SPECIES$3]))&&(C=void 0)),void 0===C?$Array:C},arraySpeciesCreate=function(originalArray,length){return new(arraySpeciesConstructor(originalArray))(0===length?0:length)};_export({target:"Array",proto:!0},{flat:function(){var depthArg=arguments.length?arguments[0]:void 0,O=toObject(this),sourceLen=lengthOfArrayLike(O),A=arraySpeciesCreate(O,0);return A.length=flattenIntoArray_1(A,O,O,sourceLen,0,void 0===depthArg?1:toIntegerOrInfinity(depthArg)),A}}),addToUnscopables("flat"),entryUnbind("Array","flat");var push$2=functionUncurryThis([].push),createMethod$1=function(TYPE){var IS_MAP=1==TYPE,IS_FILTER=2==TYPE,IS_SOME=3==TYPE,IS_EVERY=4==TYPE,IS_FIND_INDEX=6==TYPE,IS_FILTER_REJECT=7==TYPE,NO_HOLES=5==TYPE||IS_FIND_INDEX;return function($this,callbackfn,that,specificCreate){for(var value,result,O=toObject($this),self=indexedObject(O),boundFunction=functionBindContext(callbackfn,that),length=lengthOfArrayLike(self),index=0,create=specificCreate||arraySpeciesCreate,target=IS_MAP?create($this,length):IS_FILTER||IS_FILTER_REJECT?create($this,0):void 0;length>index;index++)if((NO_HOLES||index in self)&&(result=boundFunction(value=self[index],index,O),TYPE))if(IS_MAP)target[index]=result;else if(result)switch(TYPE){case 3:return!0;case 5:return value;case 6:return index;case 2:push$2(target,value)}else switch(TYPE){case 4:return!1;case 7:push$2(target,value)}return IS_FIND_INDEX?-1:IS_SOME||IS_EVERY?IS_EVERY:target}},arrayIteration={forEach:createMethod$1(0),map:createMethod$1(1),filter:createMethod$1(2),some:createMethod$1(3),every:createMethod$1(4),find:createMethod$1(5),findIndex:createMethod$1(6),filterReject:createMethod$1(7)},$find=arrayIteration.find,FIND="find",SKIPS_HOLES=!0;FIND in[]&&Array(1)[FIND]((function(){SKIPS_HOLES=!1})),_export({target:"Array",proto:!0,forced:SKIPS_HOLES},{find:function(callbackfn){return $find(this,callbackfn,arguments.length>1?arguments[1]:void 0)}}),addToUnscopables(FIND),entryUnbind("Array","find");var $assign=Object.assign,defineProperty$1=Object.defineProperty,concat=functionUncurryThis([].concat),objectAssign=!$assign||fails((function(){if(descriptors&&1!==$assign({b:1},$assign(defineProperty$1({},"a",{enumerable:!0,get:function(){defineProperty$1(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var A={},B={},symbol=Symbol();return A[symbol]=7,"abcdefghijklmnopqrst".split("").forEach((function(chr){B[chr]=chr})),7!=$assign({},A)[symbol]||"abcdefghijklmnopqrst"!=objectKeys($assign({},B)).join("")}))?function(target,source){for(var T=toObject(target),argumentsLength=arguments.length,index=1,getOwnPropertySymbols=objectGetOwnPropertySymbols.f,propertyIsEnumerable=objectPropertyIsEnumerable.f;argumentsLength>index;)for(var key,S=indexedObject(arguments[index++]),keys=getOwnPropertySymbols?concat(objectKeys(S),getOwnPropertySymbols(S)):objectKeys(S),length=keys.length,j=0;length>j;)key=keys[j++],descriptors&&!functionCall(propertyIsEnumerable,S,key)||(T[key]=S[key]);return T}:$assign;_export({target:"Object",stat:!0,arity:2,forced:Object.assign!==objectAssign},{assign:objectAssign}),path.Object.assign;var $propertyIsEnumerable=objectPropertyIsEnumerable.f,propertyIsEnumerable=functionUncurryThis($propertyIsEnumerable),push$1=functionUncurryThis([].push),createMethod=function(TO_ENTRIES){return function(it){for(var key,O=toIndexedObject(it),keys=objectKeys(O),length=keys.length,i=0,result=[];length>i;)key=keys[i++],descriptors&&!propertyIsEnumerable(O,key)||push$1(result,TO_ENTRIES?[key,O[key]]:O[key]);return result}},objectToArray={entries:createMethod(!0),values:createMethod(!1)},$entries=objectToArray.entries;_export({target:"Object",stat:!0},{entries:function(O){return $entries(O)}}),path.Object.entries;var $values=objectToArray.values;_export({target:"Object",stat:!0},{values:function(O){return $values(O)}}),path.Object.values;var $Error$1=Error,replace=functionUncurryThis("".replace),TEST=String($Error$1("zxcasd").stack),V8_OR_CHAKRA_STACK_ENTRY=/\n\s*at [^:]*:[^\n]*/,IS_V8_OR_CHAKRA_STACK=V8_OR_CHAKRA_STACK_ENTRY.test(TEST),errorStackClear=function(stack,dropEntries){if(IS_V8_OR_CHAKRA_STACK&&"string"==typeof stack&&!$Error$1.prepareStackTrace)for(;dropEntries--;)stack=replace(stack,V8_OR_CHAKRA_STACK_ENTRY,"");return stack},installErrorCause=function(O,options){isObject(options)&&"cause"in options&&createNonEnumerableProperty(O,"cause",options.cause)},$TypeError$5=TypeError,Result=function(stopped,result){this.stopped=stopped,this.result=result},ResultPrototype=Result.prototype,iterate=function(iterable,unboundFunction,options){var iterator,iterFn,index,length,result,next,step,that=options&&options.that,AS_ENTRIES=!(!options||!options.AS_ENTRIES),IS_RECORD=!(!options||!options.IS_RECORD),IS_ITERATOR=!(!options||!options.IS_ITERATOR),INTERRUPTED=!(!options||!options.INTERRUPTED),fn=functionBindContext(unboundFunction,that),stop=function(condition){return iterator&&iteratorClose(iterator,"normal",condition),new Result(!0,condition)},callFn=function(value){return AS_ENTRIES?(anObject(value),INTERRUPTED?fn(value[0],value[1],stop):fn(value[0],value[1])):INTERRUPTED?fn(value,stop):fn(value)};if(IS_RECORD)iterator=iterable.iterator;else if(IS_ITERATOR)iterator=iterable;else{if(!(iterFn=getIteratorMethod(iterable)))throw $TypeError$5(tryToString(iterable)+" is not iterable");if(isArrayIteratorMethod(iterFn)){for(index=0,length=lengthOfArrayLike(iterable);length>index;index++)if((result=callFn(iterable[index]))&&objectIsPrototypeOf(ResultPrototype,result))return result;return new Result(!1)}iterator=getIterator(iterable,iterFn)}for(next=IS_RECORD?iterable.next:iterator.next;!(step=functionCall(next,iterator)).done;){try{result=callFn(step.value)}catch(error){iteratorClose(iterator,"throw",error)}if("object"==typeof result&&result&&objectIsPrototypeOf(ResultPrototype,result))return result}return new Result(!1)},normalizeStringArgument=function(argument,$default){return void 0===argument?arguments.length<2?"":$default:toString_1(argument)},errorStackInstallable=!fails((function(){var error=Error("a");return!("stack"in error)||(Object.defineProperty(error,"stack",createPropertyDescriptor(1,7)),7!==error.stack)})),TO_STRING_TAG$1=wellKnownSymbol("toStringTag"),$Error=Error,push=[].push,$AggregateError=function(errors,message){var that,options=arguments.length>2?arguments[2]:void 0,isInstance=objectIsPrototypeOf(AggregateErrorPrototype,this);objectSetPrototypeOf?that=objectSetPrototypeOf($Error(),isInstance?objectGetPrototypeOf(this):AggregateErrorPrototype):(that=isInstance?this:objectCreate(AggregateErrorPrototype),createNonEnumerableProperty(that,TO_STRING_TAG$1,"Error")),void 0!==message&&createNonEnumerableProperty(that,"message",normalizeStringArgument(message)),errorStackInstallable&&createNonEnumerableProperty(that,"stack",errorStackClear(that.stack,1)),installErrorCause(that,options);var errorsArray=[];return iterate(errors,push,{that:errorsArray}),createNonEnumerableProperty(that,"errors",errorsArray),that};objectSetPrototypeOf?objectSetPrototypeOf($AggregateError,$Error):copyConstructorProperties($AggregateError,$Error,{name:!0});var AggregateErrorPrototype=$AggregateError.prototype=objectCreate($Error.prototype,{constructor:createPropertyDescriptor(1,$AggregateError),message:createPropertyDescriptor(1,""),name:createPropertyDescriptor(1,"AggregateError")});_export({global:!0,constructor:!0,arity:2},{AggregateError:$AggregateError});var defineProperty=objectDefineProperty.f,ARRAY_ITERATOR="Array Iterator",setInternalState$1=internalState.set,getInternalState=internalState.getterFor(ARRAY_ITERATOR),es_array_iterator=iteratorDefine(Array,"Array",(function(iterated,kind){setInternalState$1(this,{type:ARRAY_ITERATOR,target:toIndexedObject(iterated),index:0,kind:kind})}),(function(){var state=getInternalState(this),target=state.target,kind=state.kind,index=state.index++;return!target||index>=target.length?(state.target=void 0,createIterResultObject(void 0,!0)):createIterResultObject("keys"==kind?index:"values"==kind?target[index]:[index,target[index]],!1)}),"values"),values=iterators.Arguments=iterators.Array;if(addToUnscopables("keys"),addToUnscopables("values"),addToUnscopables("entries"),descriptors&&"values"!==values.name)try{defineProperty(values,"name",{value:"values"})}catch(error){}var objectToString=toStringTagSupport?{}.toString:function(){return"[object "+classof(this)+"]"};toStringTagSupport||defineBuiltIn(Object.prototype,"toString",objectToString,{unsafe:!0});var engineIsNode="process"==classofRaw(global_1.process),SPECIES$2=wellKnownSymbol("species"),setSpecies=function(CONSTRUCTOR_NAME){var Constructor=getBuiltIn(CONSTRUCTOR_NAME),defineProperty=objectDefineProperty.f;descriptors&&Constructor&&!Constructor[SPECIES$2]&&defineProperty(Constructor,SPECIES$2,{configurable:!0,get:function(){return this}})},$TypeError$4=TypeError,anInstance=function(it,Prototype){if(objectIsPrototypeOf(Prototype,it))return it;throw $TypeError$4("Incorrect invocation")},$TypeError$3=TypeError,aConstructor=function(argument){if(isConstructor(argument))return argument;throw $TypeError$3(tryToString(argument)+" is not a constructor")},SPECIES$1=wellKnownSymbol("species"),speciesConstructor=function(O,defaultConstructor){var S,C=anObject(O).constructor;return void 0===C||isNullOrUndefined(S=anObject(C)[SPECIES$1])?defaultConstructor:aConstructor(S)},FunctionPrototype=Function.prototype,apply=FunctionPrototype.apply,call=FunctionPrototype.call,functionApply="object"==typeof Reflect&&Reflect.apply||(functionBindNative?call.bind(apply):function(){return call.apply(apply,arguments)}),arraySlice=functionUncurryThis([].slice),$TypeError$2=TypeError,validateArgumentsLength=function(passed,required){if(passed1?arguments[1]:void 0,that.length)),search=toString_1(searchString);return nativeStartsWith?nativeStartsWith(that,search,index):stringSlice(that,index,index+search.length)===search}}),entryUnbind("String","startsWith");var global$1="undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||void 0!==global$1&&global$1,support={searchParams:"URLSearchParams"in global$1,iterable:"Symbol"in global$1&&"iterator"in Symbol,blob:"FileReader"in global$1&&"Blob"in global$1&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in global$1,arrayBuffer:"ArrayBuffer"in global$1};function isDataView(obj){return obj&&DataView.prototype.isPrototypeOf(obj)}if(support.arrayBuffer)var viewClasses=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],isArrayBufferView=ArrayBuffer.isView||function(obj){return obj&&viewClasses.indexOf(Object.prototype.toString.call(obj))>-1};function normalizeName(name){if("string"!=typeof name&&(name=String(name)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(name)||""===name)throw new TypeError('Invalid character in header field name: "'+name+'"');return name.toLowerCase()}function normalizeValue(value){return"string"!=typeof value&&(value=String(value)),value}function iteratorFor(items){var iterator={next:function(){var value=items.shift();return{done:void 0===value,value:value}}};return support.iterable&&(iterator[Symbol.iterator]=function(){return iterator}),iterator}function Headers(headers){this.map={},headers instanceof Headers?headers.forEach((function(value,name){this.append(name,value)}),this):Array.isArray(headers)?headers.forEach((function(header){this.append(header[0],header[1])}),this):headers&&Object.getOwnPropertyNames(headers).forEach((function(name){this.append(name,headers[name])}),this)}function consumed(body){if(body.bodyUsed)return Promise.reject(new TypeError("Already read"));body.bodyUsed=!0}function fileReaderReady(reader){return new Promise((function(resolve,reject){reader.onload=function(){resolve(reader.result)},reader.onerror=function(){reject(reader.error)}}))}function readBlobAsArrayBuffer(blob){var reader=new FileReader,promise=fileReaderReady(reader);return reader.readAsArrayBuffer(blob),promise}function readBlobAsText(blob){var reader=new FileReader,promise=fileReaderReady(reader);return reader.readAsText(blob),promise}function readArrayBufferAsText(buf){for(var view=new Uint8Array(buf),chars=new Array(view.length),i=0;i-1?upcased:method}function Request(input,options){if(!(this instanceof Request))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');var body=(options=options||{}).body;if(input instanceof Request){if(input.bodyUsed)throw new TypeError("Already read");this.url=input.url,this.credentials=input.credentials,options.headers||(this.headers=new Headers(input.headers)),this.method=input.method,this.mode=input.mode,this.signal=input.signal,body||null==input._bodyInit||(body=input._bodyInit,input.bodyUsed=!0)}else this.url=String(input);if(this.credentials=options.credentials||this.credentials||"same-origin",!options.headers&&this.headers||(this.headers=new Headers(options.headers)),this.method=normalizeMethod(options.method||this.method||"GET"),this.mode=options.mode||this.mode||null,this.signal=options.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&body)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(body),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==options.cache&&"no-cache"!==options.cache)){var reParamSearch=/([?&])_=[^&]*/;if(reParamSearch.test(this.url))this.url=this.url.replace(reParamSearch,"$1_="+(new Date).getTime());else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function decode(body){var form=new FormData;return body.trim().split("&").forEach((function(bytes){if(bytes){var split=bytes.split("="),name=split.shift().replace(/\+/g," "),value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}})),form}function parseHeaders(rawHeaders){var headers=new Headers;return rawHeaders.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(header){return 0===header.indexOf("\n")?header.substr(1,header.length):header})).forEach((function(line){var parts=line.split(":"),key=parts.shift().trim();if(key){var value=parts.join(":").trim();headers.append(key,value)}})),headers}function Response(bodyInit,options){if(!(this instanceof Response))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');options||(options={}),this.type="default",this.status=void 0===options.status?200:options.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===options.statusText?"":""+options.statusText,this.headers=new Headers(options.headers),this.url=options.url||"",this._initBody(bodyInit)}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})},Body.call(Request.prototype),Body.call(Response.prototype),Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})},Response.error=function(){var response=new Response(null,{status:0,statusText:""});return response.type="error",response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(-1===redirectStatuses.indexOf(status))throw new RangeError("Invalid status code");return new Response(null,{status:status,headers:{location:url}})};var DOMException=global$1.DOMException;try{new DOMException}catch(err){DOMException=function(message,name){this.message=message,this.name=name;var error=Error(message);this.stack=error.stack},DOMException.prototype=Object.create(Error.prototype),DOMException.prototype.constructor=DOMException}function fetch$1(input,init){return new Promise((function(resolve,reject){var request=new Request(input,init);if(request.signal&&request.signal.aborted)return reject(new DOMException("Aborted","AbortError"));var xhr=new XMLHttpRequest;function abortXhr(){xhr.abort()}xhr.onload=function(){var options={status:xhr.status,statusText:xhr.statusText,headers:parseHeaders(xhr.getAllResponseHeaders()||"")};options.url="responseURL"in xhr?xhr.responseURL:options.headers.get("X-Request-URL");var body="response"in xhr?xhr.response:xhr.responseText;setTimeout((function(){resolve(new Response(body,options))}),0)},xhr.onerror=function(){setTimeout((function(){reject(new TypeError("Network request failed"))}),0)},xhr.ontimeout=function(){setTimeout((function(){reject(new TypeError("Network request failed"))}),0)},xhr.onabort=function(){setTimeout((function(){reject(new DOMException("Aborted","AbortError"))}),0)},xhr.open(request.method,function(url){try{return""===url&&global$1.location.href?global$1.location.href:url}catch(e){return url}}(request.url),!0),"include"===request.credentials?xhr.withCredentials=!0:"omit"===request.credentials&&(xhr.withCredentials=!1),"responseType"in xhr&&(support.blob?xhr.responseType="blob":support.arrayBuffer&&request.headers.get("Content-Type")&&-1!==request.headers.get("Content-Type").indexOf("application/octet-stream")&&(xhr.responseType="arraybuffer")),!init||"object"!=typeof init.headers||init.headers instanceof Headers?request.headers.forEach((function(value,name){xhr.setRequestHeader(name,value)})):Object.getOwnPropertyNames(init.headers).forEach((function(name){xhr.setRequestHeader(name,normalizeValue(init.headers[name]))})),request.signal&&(request.signal.addEventListener("abort",abortXhr),xhr.onreadystatechange=function(){4===xhr.readyState&&request.signal.removeEventListener("abort",abortXhr)}),xhr.send(void 0===request._bodyInit?null:request._bodyInit)}))}fetch$1.polyfill=!0,global$1.fetch||(global$1.fetch=fetch$1,global$1.Headers=Headers,global$1.Request=Request,global$1.Response=Response),null==Element.prototype.getAttributeNames&&(Element.prototype.getAttributeNames=function(){for(var attributes=this.attributes,length=attributes.length,result=new Array(length),i=0;i=0&&matches.item(i)!==this;);return i>-1}),Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(s){var el=this;do{if(el.matches(s))return el;el=el.parentElement||el.parentNode}while(null!==el&&1===el.nodeType);return null});var Connection=function(){function Connection(){_classCallCheck(this,Connection),this.headers={}}return _createClass(Connection,[{key:"onMessage",value:function(message,payload){message.component.receiveMessage(message,payload)}},{key:"onError",value:function(message,status,response){return message.component.messageSendFailed(),store$2.onErrorCallback(status,response)}},{key:"showExpiredMessage",value:function(response,message){store$2.sessionHasExpiredCallback?store$2.sessionHasExpiredCallback(response,message):confirm("This page has expired.\nWould you like to refresh the page?")&&window.location.reload()}},{key:"sendMessage",value:function(message){var _this=this,payload=message.payload(),csrfToken=getCsrfToken(),socketId=this.getSocketId(),appUrl=window.livewire_app_url;if(this.shouldUseLocalePrefix(payload)&&(appUrl="".concat(appUrl,"/").concat(payload.fingerprint.locale)),window.__testing_request_interceptor)return window.__testing_request_interceptor(payload,this);fetch("".concat(appUrl,"/livewire/message/").concat(payload.fingerprint.name),{method:"POST",body:JSON.stringify(payload),credentials:"same-origin",headers:_objectSpread2(_objectSpread2(_objectSpread2({"Content-Type":"application/json",Accept:"text/html, application/xhtml+xml","X-Livewire":!0},this.headers),{},{Referer:window.location.href},csrfToken&&{"X-CSRF-TOKEN":csrfToken}),socketId&&{"X-Socket-ID":socketId})}).then((function(response){if(response.ok)response.text().then((function(response){_this.isOutputFromDump(response)?(_this.onError(message),_this.showHtmlModal(response)):_this.onMessage(message,JSON.parse(response))}));else{if(!1===_this.onError(message,response.status,response))return;if(419===response.status){if(store$2.sessionHasExpired)return;store$2.sessionHasExpired=!0,_this.showExpiredMessage(response,message)}else response.text().then((function(response){_this.showHtmlModal(response)}))}})).catch((function(){_this.onError(message)}))}},{key:"shouldUseLocalePrefix",value:function(payload){var path=payload.fingerprint.path,locale=payload.fingerprint.locale;return path.split("/")[0]==locale}},{key:"isOutputFromDump",value:function(output){return!!output.match(/ + + + ``` + + The `zipCode` validator will be registered automatically. So we don't have to add it manually such as + + ```js + fv.registerValidator('zipCode', FormValidation.validators.zipCode); + ``` + */ + var validators = {}; + var formValidationValidators = function (form, options) { + var instance = formValidation(form, options); + Object.keys(validators).forEach(function (name) { return instance.registerValidator(name, validators[name]); }); + return instance; + }; + + exports.Plugin = Plugin; + exports.algorithms = index$1; + exports.formValidation = formValidationValidators; + exports.utils = index; + exports.validators = validators; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js new file mode 100644 index 0000000..c032485 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/core + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation={})}(this,(function(e){"use strict";var t={luhn:function(e){for(var t=e.length,i=[[0,1,2,3,4,5,6,7,8,9],[0,2,4,6,8,1,3,5,7,9]],r=0,n=0;t--;)n+=i[r][parseInt(e.charAt(t),10)],r=1-r;return n%10==0&&n>0},mod11And10:function(e){for(var t=e.length,i=5,r=0;r=65&&t<=90?t-55:e})).join("").split("").map((function(e){return parseInt(e,10)}))}(e),i=0,r=t.length,n=0;n=0&&this.fns[e].splice(i,1)}},on:function(e,t){(this.fns[e]=this.fns[e]||[]).push(t)}},this.filter={filters:{},add:function(e,t){(this.filters[e]=this.filters[e]||[]).push(t)},clear:function(){this.filters={}},execute:function(e,t,i){if(!this.filters[e]||!this.filters[e].length)return t;for(var r=t,n=this.filters[e],s=n.length,o=0;o=0?o.options.item(l).value:""}if("input"===s){if("radio"===n||"checkbox"===n){var a=r.filter((function(e){return e.checked})).length;return 0===a?"":a+""}return i.value}return""}(this.form,0,t,this.elements[e]);return this.filter.execute("field-value",r,[r,e,t,i])},e.prototype.getElements=function(e){return this.elements[e]},e.prototype.getFields=function(){return this.fields},e.prototype.getFormElement=function(){return this.form},e.prototype.getLocale=function(){return this.locale},e.prototype.getPlugin=function(e){return this.plugins[e]},e.prototype.updateFieldStatus=function(e,t,i){var r=this,n=this.elements[e],s=n[0].getAttribute("type");if(("radio"===s||"checkbox"===s?[n[0]]:n).forEach((function(n){return r.updateElementStatus(e,n,t,i)})),i)"Invalid"===t&&(this.emit("core.field.invalid",e),this.results.set(e,"Invalid"));else switch(t){case"NotValidated":this.emit("core.field.notvalidated",e),this.results.delete(e);break;case"Validating":this.emit("core.field.validating",e),this.results.delete(e);break;case"Valid":this.emit("core.field.valid",e),this.results.set(e,"Valid");break;case"Invalid":this.emit("core.field.invalid",e),this.results.set(e,"Invalid")}return this},e.prototype.updateElementStatus=function(e,t,i,r){var n=this,s=this.elements[e],o=this.fields[e].validators,l=r?[r]:Object.keys(o);switch(i){case"NotValidated":l.forEach((function(i){return n.emit("core.validator.notvalidated",{element:t,elements:s,field:e,validator:i})})),this.emit("core.element.notvalidated",{element:t,elements:s,field:e});break;case"Validating":l.forEach((function(i){return n.emit("core.validator.validating",{element:t,elements:s,field:e,validator:i})})),this.emit("core.element.validating",{element:t,elements:s,field:e});break;case"Valid":l.forEach((function(i){return n.emit("core.validator.validated",{element:t,elements:s,field:e,result:{message:o[i].message,valid:!0},validator:i})})),this.emit("core.element.validated",{element:t,elements:s,field:e,valid:!0});break;case"Invalid":l.forEach((function(i){return n.emit("core.validator.validated",{element:t,elements:s,field:e,result:{message:o[i].message,valid:!1},validator:i})})),this.emit("core.element.validated",{element:t,elements:s,field:e,valid:!1})}return this},e.prototype.resetForm=function(e){var t=this;return Object.keys(this.fields).forEach((function(i){return t.resetField(i,e)})),this.emit("core.form.reset",{formValidation:this,reset:e}),this},e.prototype.resetField=function(e,t){if(t){var i=this.elements[e],r=i[0].getAttribute("type");i.forEach((function(e){"radio"===r||"checkbox"===r?(e.removeAttribute("selected"),e.removeAttribute("checked"),e.checked=!1):(e.setAttribute("value",""),(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement)&&(e.value=""))}))}return this.updateFieldStatus(e,"NotValidated"),this.emit("core.field.reset",{field:e,reset:t}),this},e.prototype.revalidateField=function(e){return this.fields[e]?(this.updateFieldStatus(e,"NotValidated"),this.validateField(e)):Promise.resolve("Ignored")},e.prototype.disableValidator=function(e,t){if(!this.fields[e])return this;var i=this.elements[e];return this.toggleValidator(!1,e,t),this.emit("core.validator.disabled",{elements:i,field:e,formValidation:this,validator:t}),this},e.prototype.enableValidator=function(e,t){if(!this.fields[e])return this;var i=this.elements[e];return this.toggleValidator(!0,e,t),this.emit("core.validator.enabled",{elements:i,field:e,formValidation:this,validator:t}),this},e.prototype.updateValidatorOption=function(e,t,i,r){return this.fields[e]&&this.fields[e].validators&&this.fields[e].validators[t]&&(this.fields[e].validators[t][i]=r),this},e.prototype.setFieldOptions=function(e,t){return this.fields[e]=t,this},e.prototype.destroy=function(){var e=this;return Object.keys(this.plugins).forEach((function(t){return e.plugins[t].uninstall()})),this.ee.clear(),this.filter.clear(),this.results.clear(),this.plugins={},this},e.prototype.setLocale=function(e,t){return this.locale=e,this.localization=t,this},e.prototype.waterfall=function(e){return e.reduce((function(e,t){return e.then((function(e){return t().then((function(t){return e.push(t),e}))}))}),Promise.resolve([]))},e.prototype.queryElements=function(e){var t=this.fields[e].selector?"#"===this.fields[e].selector.charAt(0)?'[id="'.concat(this.fields[e].selector.substring(1),'"]'):this.fields[e].selector:'[name="'.concat(e.replace(/"/g,'\\"'),'"]');return[].slice.call(this.form.querySelectorAll(t))},e.prototype.normalizeResult=function(e,t,i){var r=this.fields[e].validators[t];return Object.assign({},i,{message:i.message||(r?r.message:"")||(this.localization&&this.localization[t]&&this.localization[t].default?this.localization[t].default:"")||"The field ".concat(e," is not valid")})},e.prototype.toggleValidator=function(e,t,i){var r=this,n=this.fields[t].validators;return i&&n&&n[i]?this.fields[t].validators[i].enabled=e:i||Object.keys(n).forEach((function(i){return r.fields[t].validators[i].enabled=e})),this.updateFieldStatus(t,"NotValidated",i)},e}();var r=function(){function e(e){this.opts=e,this.isEnabled=!0}return e.prototype.setCore=function(e){return this.core=e,this},e.prototype.enable=function(){return this.isEnabled=!0,this.onEnabled(),this},e.prototype.disable=function(){return this.isEnabled=!1,this.onDisabled(),this},e.prototype.isPluginEnabled=function(){return this.isEnabled},e.prototype.onEnabled=function(){},e.prototype.onDisabled=function(){},e.prototype.install=function(){},e.prototype.uninstall=function(){},e}();var n=function(e,t){var i=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector;return i?i.call(e,t):[].slice.call(e.parentElement.querySelectorAll(t)).indexOf(e)>=0},s={call:function(e,t){if("function"==typeof e)return e.apply(this,t);if("string"==typeof e){var i=e;"()"===i.substring(i.length-2)&&(i=i.substring(0,i.length-2));for(var r=i.split("."),n=r.pop(),s=window,o=0,l=r;o-1,a="GET"===s.method?"".concat(e).concat(l?"&":"?").concat(o):e;if(s.crossDomain){var d=document.createElement("script"),c="___FormValidationFetch_".concat(Array(12).fill("").map((function(e){return Math.random().toString(36).charAt(2)})).join(""),"___");window[c]=function(e){delete window[c],i(e)},d.src="".concat(a).concat(l?"&":"?","callback=").concat(c),d.async=!0,d.addEventListener("load",(function(){d.parentNode.removeChild(d)})),d.addEventListener("error",(function(){return r})),document.head.appendChild(d)}else{var u=new XMLHttpRequest;u.open(s.method,a),u.setRequestHeader("X-Requested-With","XMLHttpRequest"),"POST"===s.method&&u.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),Object.keys(s.headers).forEach((function(e){return u.setRequestHeader(e,s.headers[e])})),u.addEventListener("load",(function(){i(JSON.parse(this.responseText))})),u.addEventListener("error",(function(){return r})),u.send((n=s.params,Object.keys(n).map((function(e){return"".concat(encodeURIComponent(e),"=").concat(encodeURIComponent(n[e]))})).join("&")))}}))},format:function(e,t){var i=Array.isArray(t)?t:[t],r=e;return i.forEach((function(e){r=r.replace("%s",e)})),r},hasClass:function(e,t){return e.classList?e.classList.contains(t):new RegExp("(^| )".concat(t,"( |$)"),"gi").test(e.className)},isValidDate:function(e,t,i,r){if(isNaN(e)||isNaN(t)||isNaN(i))return!1;if(e<1e3||e>9999||t<=0||t>12)return!1;if(i<=0||i>[31,e%400==0||e%100!=0&&e%4==0?29:28,31,30,31,30,31,31,30,31,30,31][t-1])return!1;if(!0===r){var n=new Date,s=n.getFullYear(),o=n.getMonth(),l=n.getDate();return e + */ + /** + * This plugin allows to use multiple instances of the same validator by defining alias. + * ``` + * formValidation(form, { + * fields: { + * email: { + * validators: { + * required: ..., + * pattern: ..., + * regexp: ... + * } + * } + * }, + * plugins: { + * alias: new Alias({ + * required: 'notEmpty', + * pattern: 'regexp' + * }) + * } + * }) + * ``` + * Then, you can use the `required`, `pattern` as the same as `notEmpty`, `regexp` validators. + */ + var Alias = /** @class */ (function (_super) { + __extends(Alias, _super); + function Alias(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = opts || {}; + _this.validatorNameFilter = _this.getValidatorName.bind(_this); + return _this; + } + Alias.prototype.install = function () { + this.core.registerFilter('validator-name', this.validatorNameFilter); + }; + Alias.prototype.uninstall = function () { + this.core.deregisterFilter('validator-name', this.validatorNameFilter); + }; + Alias.prototype.getValidatorName = function (validatorName, _field) { + return this.isEnabled ? this.opts[validatorName] || validatorName : validatorName; + }; + return Alias; + }(core.Plugin)); + + return Alias; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js new file mode 100644 index 0000000..ef718df --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-alias + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Alias=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,i){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var i in o)Object.prototype.hasOwnProperty.call(o,i)&&(t[i]=o[i])},o(t,i)};return function(t){function i(o){var i=t.call(this,o)||this;return i.opts=o||{},i.validatorNameFilter=i.getValidatorName.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function e(){this.constructor=t}o(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}(i,t),i.prototype.install=function(){this.core.registerFilter("validator-name",this.validatorNameFilter)},i.prototype.uninstall=function(){this.core.deregisterFilter("validator-name",this.validatorNameFilter)},i.prototype.getValidatorName=function(t,o){return this.isEnabled&&this.opts[t]||t},i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js new file mode 100644 index 0000000..283e6dc --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js @@ -0,0 +1,113 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Aria = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * This plugin adds ARIA attributes based on the field validity. + * The list include: + * - `aria-invalid`, `aria-describedby` for field element + * - `aria-hidden`, `role` for associated message element + * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques + */ + var Aria = /** @class */ (function (_super) { + __extends(Aria, _super); + function Aria() { + var _this = _super.call(this, {}) || this; + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.fieldValidHandler = _this.onFieldValid.bind(_this); + _this.fieldInvalidHandler = _this.onFieldInvalid.bind(_this); + _this.messageDisplayedHandler = _this.onMessageDisplayed.bind(_this); + return _this; + } + Aria.prototype.install = function () { + this.core + .on('core.field.valid', this.fieldValidHandler) + .on('core.field.invalid', this.fieldInvalidHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('plugins.message.displayed', this.messageDisplayedHandler); + }; + Aria.prototype.uninstall = function () { + this.core + .off('core.field.valid', this.fieldValidHandler) + .off('core.field.invalid', this.fieldInvalidHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('plugins.message.displayed', this.messageDisplayedHandler); + }; + Aria.prototype.onElementValidated = function (e) { + if (e.valid) { + e.element.setAttribute('aria-invalid', 'false'); + e.element.removeAttribute('aria-describedby'); + } + }; + Aria.prototype.onFieldValid = function (field) { + var elements = this.core.getElements(field); + if (elements) { + elements.forEach(function (ele) { + ele.setAttribute('aria-invalid', 'false'); + ele.removeAttribute('aria-describedby'); + }); + } + }; + Aria.prototype.onFieldInvalid = function (field) { + var elements = this.core.getElements(field); + if (elements) { + elements.forEach(function (ele) { return ele.setAttribute('aria-invalid', 'true'); }); + } + }; + Aria.prototype.onMessageDisplayed = function (e) { + e.messageElement.setAttribute('role', 'alert'); + e.messageElement.setAttribute('aria-hidden', 'false'); + var elements = this.core.getElements(e.field); + var index = elements.indexOf(e.element); + var id = "js-fv-".concat(e.field, "-").concat(index, "-").concat(Date.now(), "-message"); + e.messageElement.setAttribute('id', id); + e.element.setAttribute('aria-describedby', id); + var type = e.element.getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + elements.forEach(function (ele) { return ele.setAttribute('aria-describedby', id); }); + } + }; + return Aria; + }(core.Plugin)); + + return Aria; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js new file mode 100644 index 0000000..302e986 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-aria + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Aria=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},t(e,i)};return function(e){function i(){var t=e.call(this,{})||this;return t.elementValidatedHandler=t.onElementValidated.bind(t),t.fieldValidHandler=t.onFieldValid.bind(t),t.fieldInvalidHandler=t.onFieldInvalid.bind(t),t.messageDisplayedHandler=t.onMessageDisplayed.bind(t),t}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,e),i.prototype.install=function(){this.core.on("core.field.valid",this.fieldValidHandler).on("core.field.invalid",this.fieldInvalidHandler).on("core.element.validated",this.elementValidatedHandler).on("plugins.message.displayed",this.messageDisplayedHandler)},i.prototype.uninstall=function(){this.core.off("core.field.valid",this.fieldValidHandler).off("core.field.invalid",this.fieldInvalidHandler).off("core.element.validated",this.elementValidatedHandler).off("plugins.message.displayed",this.messageDisplayedHandler)},i.prototype.onElementValidated=function(e){e.valid&&(e.element.setAttribute("aria-invalid","false"),e.element.removeAttribute("aria-describedby"))},i.prototype.onFieldValid=function(e){var t=this.core.getElements(e);t&&t.forEach((function(e){e.setAttribute("aria-invalid","false"),e.removeAttribute("aria-describedby")}))},i.prototype.onFieldInvalid=function(e){var t=this.core.getElements(e);t&&t.forEach((function(e){return e.setAttribute("aria-invalid","true")}))},i.prototype.onMessageDisplayed=function(e){e.messageElement.setAttribute("role","alert"),e.messageElement.setAttribute("aria-hidden","false");var t=this.core.getElements(e.field),i=t.indexOf(e.element),n="js-fv-".concat(e.field,"-").concat(i,"-").concat(Date.now(),"-message");e.messageElement.setAttribute("id",n),e.element.setAttribute("aria-describedby",n);var a=e.element.getAttribute("type");"radio"!==a&&"checkbox"!==a||t.forEach((function(e){return e.setAttribute("aria-describedby",n)}))},i}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js new file mode 100644 index 0000000..c79cd99 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js @@ -0,0 +1,96 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-field-status')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-field-status'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.AutoFocus = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFieldStatus) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var AutoFocus = /** @class */ (function (_super) { + __extends(AutoFocus, _super); + function AutoFocus(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + onPrefocus: function () { }, + }, opts); + _this.invalidFormHandler = _this.onFormInvalid.bind(_this); + return _this; + } + AutoFocus.prototype.install = function () { + this.core + .on('core.form.invalid', this.invalidFormHandler) + .registerPlugin(AutoFocus.FIELD_STATUS_PLUGIN, new pluginFieldStatus.FieldStatus()); + }; + AutoFocus.prototype.uninstall = function () { + this.core.off('core.form.invalid', this.invalidFormHandler).deregisterPlugin(AutoFocus.FIELD_STATUS_PLUGIN); + }; + AutoFocus.prototype.onEnabled = function () { + this.core.enablePlugin(AutoFocus.FIELD_STATUS_PLUGIN); + }; + AutoFocus.prototype.onDisabled = function () { + this.core.disablePlugin(AutoFocus.FIELD_STATUS_PLUGIN); + }; + AutoFocus.prototype.onFormInvalid = function () { + if (!this.isEnabled) { + return; + } + var plugin = this.core.getPlugin(AutoFocus.FIELD_STATUS_PLUGIN); + var statuses = plugin.getStatuses(); + var invalidFields = Object.keys(this.core.getFields()).filter(function (key) { return statuses.get(key) === 'Invalid'; }); + if (invalidFields.length > 0) { + var firstInvalidField = invalidFields[0]; + var elements = this.core.getElements(firstInvalidField); + if (elements.length > 0) { + var firstElement = elements[0]; + var e = { + firstElement: firstElement, + field: firstInvalidField, + }; + this.core.emit('plugins.autofocus.prefocus', e); + this.opts.onPrefocus(e); + // Focus on the first invalid element + firstElement.focus(); + } + } + }; + AutoFocus.FIELD_STATUS_PLUGIN = '___autoFocusFieldStatus'; + return AutoFocus; + }(core.Plugin)); + + return AutoFocus; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js new file mode 100644 index 0000000..9fbd8f2 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-auto-focus + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core"),require("@form-validation/plugin-field-status")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-field-status"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.AutoFocus=o(t.FormValidation,t.FormValidation.plugins))}(this,(function(t,o){"use strict";var i=function(t,o){return i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var i in o)Object.prototype.hasOwnProperty.call(o,i)&&(t[i]=o[i])},i(t,o)};return function(t){function n(o){var i=t.call(this,o)||this;return i.opts=Object.assign({},{onPrefocus:function(){}},o),i.invalidFormHandler=i.onFormInvalid.bind(i),i}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}i(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}(n,t),n.prototype.install=function(){this.core.on("core.form.invalid",this.invalidFormHandler).registerPlugin(n.FIELD_STATUS_PLUGIN,new o.FieldStatus)},n.prototype.uninstall=function(){this.core.off("core.form.invalid",this.invalidFormHandler).deregisterPlugin(n.FIELD_STATUS_PLUGIN)},n.prototype.onEnabled=function(){this.core.enablePlugin(n.FIELD_STATUS_PLUGIN)},n.prototype.onDisabled=function(){this.core.disablePlugin(n.FIELD_STATUS_PLUGIN)},n.prototype.onFormInvalid=function(){if(this.isEnabled){var t=this.core.getPlugin(n.FIELD_STATUS_PLUGIN).getStatuses(),o=Object.keys(this.core.getFields()).filter((function(o){return"Invalid"===t.get(o)}));if(o.length>0){var i=o[0],e=this.core.getElements(i);if(e.length>0){var r=e[0],l={firstElement:r,field:i};this.core.emit("plugins.autofocus.prefocus",l),this.opts.onPrefocus(l),r.focus()}}}},n.FIELD_STATUS_PLUGIN="___autoFocusFieldStatus",n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js new file mode 100644 index 0000000..92f1fa4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js @@ -0,0 +1,88 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bootstrap = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Bootstrap = /** @class */ (function (_super) { + __extends(Bootstrap, _super); + // See https://getbootstrap.com/docs/4.1/components/forms/#custom-styles + function Bootstrap(opts) { + return _super.call(this, Object.assign({}, { + eleInvalidClass: 'is-invalid', + eleValidClass: 'is-valid', + formClass: 'fv-plugins-bootstrap', + messageClass: 'fv-help-block', + rowInvalidClass: 'has-danger', + rowPattern: /^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/, + rowSelector: '.form-group', + rowValidClass: 'has-success', + }, opts)) || this; + } + Bootstrap.prototype.onIconPlaced = function (e) { + // Adjust icon place if the field belongs to a `input-group` + var parent = e.element.parentElement; + if (hasClass(parent, 'input-group')) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var grandParent = parent.parentElement; + // Place it after the container of checkbox/radio + if (hasClass(parent, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + else if (hasClass(parent.parentElement, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + grandParent.parentElement.insertBefore(e.iconElement, grandParent.nextSibling); + } + } + }; + return Bootstrap; + }(pluginFramework.Framework)); + + return Bootstrap; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js new file mode 100644 index 0000000..90d2b77 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bootstrap + * @version 2.4.0 + */ + +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],n):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bootstrap=n(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,n){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])},t(e,n)};var o=e.utils.classSet,i=e.utils.hasClass;return function(e){function n(n){return e.call(this,Object.assign({},{eleInvalidClass:"is-invalid",eleValidClass:"is-valid",formClass:"fv-plugins-bootstrap",messageClass:"fv-help-block",rowInvalidClass:"has-danger",rowPattern:/^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/,rowSelector:".form-group",rowValidClass:"has-success"},n))||this}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}(n,e),n.prototype.onIconPlaced=function(e){var n=e.element.parentElement;i(n,"input-group")&&n.parentElement.insertBefore(e.iconElement,n.nextSibling);var t=e.element.getAttribute("type");if("checkbox"===t||"radio"===t){var r=n.parentElement;i(n,"form-check")?(o(e.iconElement,{"fv-plugins-icon-check":!0}),n.parentElement.insertBefore(e.iconElement,n.nextSibling)):i(n.parentElement,"form-check")&&(o(e.iconElement,{"fv-plugins-icon-check":!0}),r.parentElement.insertBefore(e.iconElement,r.nextSibling))}},n}(n.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js new file mode 100644 index 0000000..f0c2afe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js @@ -0,0 +1,83 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bootstrap3 = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Bootstrap3 = /** @class */ (function (_super) { + __extends(Bootstrap3, _super); + function Bootstrap3(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-bootstrap3', + messageClass: 'help-block', + rowClasses: 'has-feedback', + rowInvalidClass: 'has-error', + rowPattern: /^(.*)(col|offset)-(xs|sm|md|lg)-[0-9]+(.*)$/, + rowSelector: '.form-group', + rowValidClass: 'has-success', + }, opts)) || this; + } + Bootstrap3.prototype.onIconPlaced = function (e) { + classSet(e.iconElement, { + 'form-control-feedback': true, + }); + // Adjust icon place if the field belongs to a `input-group` + var parent = e.element.parentElement; + if (hasClass(parent, 'input-group')) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var grandParent = parent.parentElement; + // Place it after the container of checkbox/radio + if (hasClass(parent, type)) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + else if (hasClass(parent.parentElement, type)) { + grandParent.parentElement.insertBefore(e.iconElement, grandParent.nextSibling); + } + } + }; + return Bootstrap3; + }(pluginFramework.Framework)); + + return Bootstrap3; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js new file mode 100644 index 0000000..904b33d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bootstrap3 + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bootstrap3=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},o(e,t)};var n=e.utils.classSet,r=e.utils.hasClass;return function(e){function t(t){return e.call(this,Object.assign({},{formClass:"fv-plugins-bootstrap3",messageClass:"help-block",rowClasses:"has-feedback",rowInvalidClass:"has-error",rowPattern:/^(.*)(col|offset)-(xs|sm|md|lg)-[0-9]+(.*)$/,rowSelector:".form-group",rowValidClass:"has-success"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t.prototype.onIconPlaced=function(e){n(e.iconElement,{"form-control-feedback":!0});var t=e.element.parentElement;r(t,"input-group")&&t.parentElement.insertBefore(e.iconElement,t.nextSibling);var o=e.element.getAttribute("type");if("checkbox"===o||"radio"===o){var i=t.parentElement;r(t,o)?t.parentElement.insertBefore(e.iconElement,t.nextSibling):r(t.parentElement,o)&&i.parentElement.insertBefore(e.iconElement,i.nextSibling)}},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js new file mode 100644 index 0000000..f7d8844 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js @@ -0,0 +1,156 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bootstrap5 = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Bootstrap5 = /** @class */ (function (_super) { + __extends(Bootstrap5, _super); + function Bootstrap5(opts) { + var _this = _super.call(this, Object.assign({}, { + eleInvalidClass: 'is-invalid', + eleValidClass: 'is-valid', + formClass: 'fv-plugins-bootstrap5', + rowInvalidClass: 'fv-plugins-bootstrap5-row-invalid', + rowPattern: /^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-plugins-bootstrap5-row-valid', + }, opts)) || this; + _this.eleValidatedHandler = _this.handleElementValidated.bind(_this); + return _this; + } + Bootstrap5.prototype.install = function () { + _super.prototype.install.call(this); + this.core.on('core.element.validated', this.eleValidatedHandler); + }; + Bootstrap5.prototype.uninstall = function () { + _super.prototype.uninstall.call(this); + this.core.off('core.element.validated', this.eleValidatedHandler); + }; + Bootstrap5.prototype.handleElementValidated = function (e) { + var type = e.element.getAttribute('type'); + // If we use more than 1 inline checkbox/radio, we need to add `is-invalid` for the `form-check` container + // so the error messages are displayed properly. + // The markup looks like as following: + //
+ // + // + //
+ // + // + //
...
+ if (('checkbox' === type || 'radio' === type) && + e.elements.length > 1 && + hasClass(e.element, 'form-check-input')) { + var inputParent = e.element.parentElement; + if (hasClass(inputParent, 'form-check') && hasClass(inputParent, 'form-check-inline')) { + classSet(inputParent, { + 'is-invalid': !e.valid, + 'is-valid': e.valid, + }); + } + } + }; + Bootstrap5.prototype.onIconPlaced = function (e) { + // Disable the default icon of Bootstrap 5 + classSet(e.element, { + 'fv-plugins-icon-input': true, + }); + // Adjust icon place if the field belongs to a `input-group` + var parent = e.element.parentElement; + if (hasClass(parent, 'input-group')) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + if (e.element.nextElementSibling && hasClass(e.element.nextElementSibling, 'input-group-text')) { + classSet(e.iconElement, { + 'fv-plugins-icon-input-group': true, + }); + } + } + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var grandParent = parent.parentElement; + // Place it after the container of checkbox/radio + if (hasClass(parent, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + else if (hasClass(parent.parentElement, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + grandParent.parentElement.insertBefore(e.iconElement, grandParent.nextSibling); + } + } + }; + Bootstrap5.prototype.onMessagePlaced = function (e) { + e.messageElement.classList.add('invalid-feedback'); + // Check if the input is placed inside an `input-group` element + var inputParent = e.element.parentElement; + if (hasClass(inputParent, 'input-group')) { + // The markup looks like + //
+ // ... + // + // + //
+ inputParent.appendChild(e.messageElement); + // Keep the border radius of the right corners + classSet(inputParent, { + 'has-validation': true, + }); + return; + } + var type = e.element.getAttribute('type'); + if (('checkbox' === type || 'radio' === type) && + hasClass(e.element, 'form-check-input') && + !hasClass(inputParent, 'form-check') && + !hasClass(inputParent, 'form-check-inline')) { + // Place the message inside the `form-check` container of the last checkbox/radio + e.elements[e.elements.length - 1].parentElement.appendChild(e.messageElement); + } + }; + return Bootstrap5; + }(pluginFramework.Framework)); + + return Bootstrap5; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js new file mode 100644 index 0000000..1289050 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bootstrap5 + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bootstrap5=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};var i=e.utils.classSet,o=e.utils.hasClass;return function(e){function t(t){var n=e.call(this,Object.assign({},{eleInvalidClass:"is-invalid",eleValidClass:"is-valid",formClass:"fv-plugins-bootstrap5",rowInvalidClass:"fv-plugins-bootstrap5-row-invalid",rowPattern:/^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-plugins-bootstrap5-row-valid"},t))||this;return n.eleValidatedHandler=n.handleElementValidated.bind(n),n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}(t,e),t.prototype.install=function(){e.prototype.install.call(this),this.core.on("core.element.validated",this.eleValidatedHandler)},t.prototype.uninstall=function(){e.prototype.uninstall.call(this),this.core.off("core.element.validated",this.eleValidatedHandler)},t.prototype.handleElementValidated=function(e){var t=e.element.getAttribute("type");if(("checkbox"===t||"radio"===t)&&e.elements.length>1&&o(e.element,"form-check-input")){var n=e.element.parentElement;o(n,"form-check")&&o(n,"form-check-inline")&&i(n,{"is-invalid":!e.valid,"is-valid":e.valid})}},t.prototype.onIconPlaced=function(e){i(e.element,{"fv-plugins-icon-input":!0});var t=e.element.parentElement;o(t,"input-group")&&(t.parentElement.insertBefore(e.iconElement,t.nextSibling),e.element.nextElementSibling&&o(e.element.nextElementSibling,"input-group-text")&&i(e.iconElement,{"fv-plugins-icon-input-group":!0}));var n=e.element.getAttribute("type");if("checkbox"===n||"radio"===n){var l=t.parentElement;o(t,"form-check")?(i(e.iconElement,{"fv-plugins-icon-check":!0}),t.parentElement.insertBefore(e.iconElement,t.nextSibling)):o(t.parentElement,"form-check")&&(i(e.iconElement,{"fv-plugins-icon-check":!0}),l.parentElement.insertBefore(e.iconElement,l.nextSibling))}},t.prototype.onMessagePlaced=function(e){e.messageElement.classList.add("invalid-feedback");var t=e.element.parentElement;if(o(t,"input-group"))return t.appendChild(e.messageElement),void i(t,{"has-validation":!0});var n=e.element.getAttribute("type");"checkbox"!==n&&"radio"!==n||!o(e.element,"form-check-input")||o(t,"form-check")||o(t,"form-check-inline")||e.elements[e.elements.length-1].parentElement.appendChild(e.messageElement)},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js new file mode 100644 index 0000000..27305e4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js @@ -0,0 +1,88 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bulma = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Bulma = /** @class */ (function (_super) { + __extends(Bulma, _super); + function Bulma(opts) { + // See http://bulma.io/documentation/elements/form/ + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-bulma', + messageClass: 'help is-danger', + rowInvalidClass: 'fv-has-error', + rowPattern: /^.*field.*$/, + rowSelector: '.field', + rowValidClass: 'fv-has-success', + }, opts)) || this; + } + Bulma.prototype.onIconPlaced = function (e) { + classSet(e.iconElement, { + 'fv-plugins-icon': false, + }); + // Wrap the icon inside a + var span = document.createElement('span'); + span.setAttribute('class', 'icon is-small is-right'); + e.iconElement.parentNode.insertBefore(span, e.iconElement); + span.appendChild(e.iconElement); + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + classSet(parent.parentElement, { + 'has-icons-right': true, + }); + classSet(span, { + 'fv-plugins-icon-check': true, + }); + parent.parentElement.insertBefore(span, parent.nextSibling); + } + else { + classSet(parent, { + 'has-icons-right': true, + }); + } + }; + return Bulma; + }(pluginFramework.Framework)); + + return Bulma; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js new file mode 100644 index 0000000..6b65500 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bulma + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bulma=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};var o=e.utils.classSet;return function(e){function t(t){return e.call(this,Object.assign({},{formClass:"fv-plugins-bulma",messageClass:"help is-danger",rowInvalidClass:"fv-has-error",rowPattern:/^.*field.*$/,rowSelector:".field",rowValidClass:"fv-has-success"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}(t,e),t.prototype.onIconPlaced=function(e){o(e.iconElement,{"fv-plugins-icon":!1});var t=document.createElement("span");t.setAttribute("class","icon is-small is-right"),e.iconElement.parentNode.insertBefore(t,e.iconElement),t.appendChild(e.iconElement);var n=e.element.getAttribute("type"),i=e.element.parentElement;"checkbox"===n||"radio"===n?(o(i.parentElement,{"has-icons-right":!0}),o(t,{"fv-plugins-icon-check":!0}),i.parentElement.insertBefore(t,i.nextSibling)):o(i,{"has-icons-right":!0})},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js new file mode 100644 index 0000000..f2271c8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js @@ -0,0 +1,290 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Declarative = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * This plugin provides the ability of declaring validator options via HTML attributes. + * All attributes are declared in lowercase + * ``` + * + * ``` + */ + var Declarative = /** @class */ (function (_super) { + __extends(Declarative, _super); + function Declarative(opts) { + var _this = _super.call(this, opts) || this; + _this.addedFields = new Map(); + _this.opts = Object.assign({}, { + html5Input: false, + pluginPrefix: 'data-fvp-', + prefix: 'data-fv-', + }, opts); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + return _this; + } + Declarative.prototype.install = function () { + var _this = this; + // Parse the plugin options + this.parsePlugins(); + var opts = this.parseOptions(); + Object.keys(opts).forEach(function (field) { + if (!_this.addedFields.has(field)) { + _this.addedFields.set(field, true); + } + _this.core.addField(field, opts[field]); + }); + this.core.on('core.field.added', this.fieldAddedHandler).on('core.field.removed', this.fieldRemovedHandler); + }; + Declarative.prototype.uninstall = function () { + this.addedFields.clear(); + this.core.off('core.field.added', this.fieldAddedHandler).off('core.field.removed', this.fieldRemovedHandler); + }; + Declarative.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + // Don't add the element which is already available in the field lists + // Otherwise, it can cause an infinite loop + if (!elements || elements.length === 0 || this.addedFields.has(e.field)) { + return; + } + this.addedFields.set(e.field, true); + elements.forEach(function (ele) { + var declarativeOptions = _this.parseElement(ele); + if (!_this.isEmptyOption(declarativeOptions)) { + // Update validator options + var mergeOptions = { + selector: e.options.selector, + validators: Object.assign({}, e.options.validators || {}, declarativeOptions.validators), + }; + _this.core.setFieldOptions(e.field, mergeOptions); + } + }); + }; + Declarative.prototype.onFieldRemoved = function (e) { + if (e.field && this.addedFields.has(e.field)) { + this.addedFields.delete(e.field); + } + }; + Declarative.prototype.parseOptions = function () { + var _this = this; + // Find all fields which have either `name` or `data-fv-field` attribute + var prefix = this.opts.prefix; + var opts = {}; + var fields = this.core.getFields(); + var form = this.core.getFormElement(); + var elements = [].slice.call(form.querySelectorAll("[name], [".concat(prefix, "field]"))); + elements.forEach(function (ele) { + var validators = _this.parseElement(ele); + // Do not try to merge the options if it's empty + // For instance, there are multiple elements having the same name, + // we only set the HTML attribute to one of them + if (!_this.isEmptyOption(validators)) { + var field = ele.getAttribute('name') || ele.getAttribute("".concat(prefix, "field")); + opts[field] = Object.assign({}, opts[field], validators); + } + }); + Object.keys(opts).forEach(function (field) { + Object.keys(opts[field].validators).forEach(function (v) { + // Set the `enabled` key to `false` if it isn't set + // (the data-fv-{validator} attribute is missing, for example) + opts[field].validators[v].enabled = opts[field].validators[v].enabled || false; + // Mix the options in declarative and programmatic modes + if (fields[field] && fields[field].validators && fields[field].validators[v]) { + Object.assign(opts[field].validators[v], fields[field].validators[v]); + } + }); + }); + return Object.assign({}, fields, opts); + }; + Declarative.prototype.createPluginInstance = function (clazz, opts) { + var arr = clazz.split('.'); + // TODO: Find a safer way to create a plugin instance from the class + // Currently, I have to use `any` here instead of a construtable interface + var fn = window || this; // eslint-disable-line @typescript-eslint/no-explicit-any + for (var i = 0, len = arr.length; i < len; i++) { + fn = fn[arr[i]]; + } + if (typeof fn !== 'function') { + throw new Error("the plugin ".concat(clazz, " doesn't exist")); + } + return new fn(opts); + }; + Declarative.prototype.parsePlugins = function () { + var _a; + var _this = this; + var form = this.core.getFormElement(); + var reg = new RegExp("^".concat(this.opts.pluginPrefix, "([a-z0-9-]+)(___)*([a-z0-9-]+)*$")); + var numAttributes = form.attributes.length; + var plugins = {}; + for (var i = 0; i < numAttributes; i++) { + var name_1 = form.attributes[i].name; + var value = form.attributes[i].value; + var items = reg.exec(name_1); + if (items && items.length === 4) { + var pluginName = this.toCamelCase(items[1]); + plugins[pluginName] = Object.assign({}, items[3] ? (_a = {}, _a[this.toCamelCase(items[3])] = value, _a) : { enabled: '' === value || 'true' === value }, plugins[pluginName]); + } + } + Object.keys(plugins).forEach(function (pluginName) { + var opts = plugins[pluginName]; + var enabled = opts['enabled']; + var clazz = opts['class']; + if (enabled && clazz) { + delete opts['enabled']; + delete opts['clazz']; + var p = _this.createPluginInstance(clazz, opts); + _this.core.registerPlugin(pluginName, p); + } + }); + }; + Declarative.prototype.isEmptyOption = function (opts) { + var validators = opts.validators; + return Object.keys(validators).length === 0 && validators.constructor === Object; + }; + Declarative.prototype.parseElement = function (ele) { + var reg = new RegExp("^".concat(this.opts.prefix, "([a-z0-9-]+)(___)*([a-z0-9-]+)*$")); + var numAttributes = ele.attributes.length; + var opts = {}; + var type = ele.getAttribute('type'); + for (var i = 0; i < numAttributes; i++) { + var name_2 = ele.attributes[i].name; + var value = ele.attributes[i].value; + if (this.opts.html5Input) { + switch (true) { + case 'minlength' === name_2: + opts['stringLength'] = Object.assign({}, { + enabled: true, + min: parseInt(value, 10), + }, opts['stringLength']); + break; + case 'maxlength' === name_2: + opts['stringLength'] = Object.assign({}, { + enabled: true, + max: parseInt(value, 10), + }, opts['stringLength']); + break; + case 'pattern' === name_2: + opts['regexp'] = Object.assign({}, { + enabled: true, + regexp: value, + }, opts['regexp']); + break; + case 'required' === name_2: + opts['notEmpty'] = Object.assign({}, { + enabled: true, + }, opts['notEmpty']); + break; + case 'type' === name_2 && 'color' === value: + // Only accept 6 hex character values due to the HTML 5 spec + // See http://www.w3.org/TR/html-markup/input.color.html#input.color.attrs.value + opts['color'] = Object.assign({}, { + enabled: true, + type: 'hex', + }, opts['color']); + break; + case 'type' === name_2 && 'email' === value: + opts['emailAddress'] = Object.assign({}, { + enabled: true, + }, opts['emailAddress']); + break; + case 'type' === name_2 && 'url' === value: + opts['uri'] = Object.assign({}, { + enabled: true, + }, opts['uri']); + break; + case 'type' === name_2 && 'range' === value: + opts['between'] = Object.assign({}, { + enabled: true, + max: parseFloat(ele.getAttribute('max')), + min: parseFloat(ele.getAttribute('min')), + }, opts['between']); + break; + case 'min' === name_2 && type !== 'date' && type !== 'range': + opts['greaterThan'] = Object.assign({}, { + enabled: true, + min: parseFloat(value), + }, opts['greaterThan']); + break; + case 'max' === name_2 && type !== 'date' && type !== 'range': + opts['lessThan'] = Object.assign({}, { + enabled: true, + max: parseFloat(value), + }, opts['lessThan']); + break; + } + } + var items = reg.exec(name_2); + if (items && items.length === 4) { + var v = this.toCamelCase(items[1]); + if (!opts[v]) { + opts[v] = {}; + } + if (items[3]) { + opts[v][this.toCamelCase(items[3])] = this.normalizeValue(value); + } + else if (opts[v]['enabled'] !== true || opts[v]['enabled'] !== false) { + opts[v]['enabled'] = '' === value || 'true' === value; + } + } + } + return { validators: opts }; + }; + // Many validators accept `boolean` options, for example + // `data-fv-between___inclusive="false"` should be identical to `inclusive: false`, not `inclusive: 'false'` + Declarative.prototype.normalizeValue = function (value) { + return value === 'true' || value === '' ? true : value === 'false' ? false : value; + }; + Declarative.prototype.toUpperCase = function (input) { + return input.charAt(1).toUpperCase(); + }; + Declarative.prototype.toCamelCase = function (input) { + return input.replace(/-./g, this.toUpperCase); + }; + return Declarative; + }(core.Plugin)); + + return Declarative; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js new file mode 100644 index 0000000..17ef499 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-declarative + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Declarative=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,a){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])},t(e,a)};return function(e){function a(t){var a=e.call(this,t)||this;return a.addedFields=new Map,a.opts=Object.assign({},{html5Input:!1,pluginPrefix:"data-fvp-",prefix:"data-fv-"},t),a.fieldAddedHandler=a.onFieldAdded.bind(a),a.fieldRemovedHandler=a.onFieldRemoved.bind(a),a}return function(e,a){if("function"!=typeof a&&null!==a)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");function n(){this.constructor=e}t(e,a),e.prototype=null===a?Object.create(a):(n.prototype=a.prototype,new n)}(a,e),a.prototype.install=function(){var e=this;this.parsePlugins();var t=this.parseOptions();Object.keys(t).forEach((function(a){e.addedFields.has(a)||e.addedFields.set(a,!0),e.core.addField(a,t[a])})),this.core.on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler)},a.prototype.uninstall=function(){this.addedFields.clear(),this.core.off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler)},a.prototype.onFieldAdded=function(e){var t=this,a=e.elements;a&&0!==a.length&&!this.addedFields.has(e.field)&&(this.addedFields.set(e.field,!0),a.forEach((function(a){var n=t.parseElement(a);if(!t.isEmptyOption(n)){var i={selector:e.options.selector,validators:Object.assign({},e.options.validators||{},n.validators)};t.core.setFieldOptions(e.field,i)}})))},a.prototype.onFieldRemoved=function(e){e.field&&this.addedFields.has(e.field)&&this.addedFields.delete(e.field)},a.prototype.parseOptions=function(){var e=this,t=this.opts.prefix,a={},n=this.core.getFields(),i=this.core.getFormElement();return[].slice.call(i.querySelectorAll("[name], [".concat(t,"field]"))).forEach((function(n){var i=e.parseElement(n);if(!e.isEmptyOption(i)){var r=n.getAttribute("name")||n.getAttribute("".concat(t,"field"));a[r]=Object.assign({},a[r],i)}})),Object.keys(a).forEach((function(e){Object.keys(a[e].validators).forEach((function(t){a[e].validators[t].enabled=a[e].validators[t].enabled||!1,n[e]&&n[e].validators&&n[e].validators[t]&&Object.assign(a[e].validators[t],n[e].validators[t])}))})),Object.assign({},n,a)},a.prototype.createPluginInstance=function(e,t){for(var a=e.split("."),n=window||this,i=0,r=a.length;i + */ + /** + * This plugin will submit the form if all fields are valid after validating + */ + var DefaultSubmit = /** @class */ (function (_super) { + __extends(DefaultSubmit, _super); + function DefaultSubmit() { + var _this = _super.call(this, {}) || this; + _this.onValidHandler = _this.onFormValid.bind(_this); + return _this; + } + DefaultSubmit.prototype.install = function () { + var form = this.core.getFormElement(); + if (form.querySelectorAll('[type="submit"][name="submit"]').length) { + throw new Error('Do not use `submit` for the name attribute of submit button'); + } + this.core.on('core.form.valid', this.onValidHandler); + }; + DefaultSubmit.prototype.uninstall = function () { + this.core.off('core.form.valid', this.onValidHandler); + }; + DefaultSubmit.prototype.onFormValid = function () { + var form = this.core.getFormElement(); + if (this.isEnabled && form instanceof HTMLFormElement) { + form.submit(); + } + }; + return DefaultSubmit; + }(core.Plugin)); + + return DefaultSubmit; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js new file mode 100644 index 0000000..7b18f62 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-default-submit + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.DefaultSubmit=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(t[n]=o[n])},o(t,n)};return function(t){function n(){var o=t.call(this,{})||this;return o.onValidHandler=o.onFormValid.bind(o),o}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function e(){this.constructor=t}o(t,n),t.prototype=null===n?Object.create(n):(e.prototype=n.prototype,new e)}(n,t),n.prototype.install=function(){if(this.core.getFormElement().querySelectorAll('[type="submit"][name="submit"]').length)throw new Error("Do not use `submit` for the name attribute of submit button");this.core.on("core.form.valid",this.onValidHandler)},n.prototype.uninstall=function(){this.core.off("core.form.valid",this.onValidHandler)},n.prototype.onFormValid=function(){var t=this.core.getFormElement();this.isEnabled&&t instanceof HTMLFormElement&&t.submit()},n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js new file mode 100644 index 0000000..4ac0c37 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js @@ -0,0 +1,75 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Dependency = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Dependency = /** @class */ (function (_super) { + __extends(Dependency, _super); + function Dependency(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = opts || {}; + _this.triggerExecutedHandler = _this.onTriggerExecuted.bind(_this); + return _this; + } + Dependency.prototype.install = function () { + this.core.on('plugins.trigger.executed', this.triggerExecutedHandler); + }; + Dependency.prototype.uninstall = function () { + this.core.off('plugins.trigger.executed', this.triggerExecutedHandler); + }; + Dependency.prototype.onTriggerExecuted = function (e) { + if (this.isEnabled && this.opts[e.field]) { + var dependencies = this.opts[e.field].split(' '); + for (var _i = 0, dependencies_1 = dependencies; _i < dependencies_1.length; _i++) { + var d = dependencies_1[_i]; + var dependentField = d.trim(); + if (this.opts[dependentField]) { + // Revalidate the dependent field + this.core.revalidateField(dependentField); + } + } + } + }; + return Dependency; + }(core.Plugin)); + + return Dependency; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js new file mode 100644 index 0000000..5e0ca0e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-dependency + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Dependency=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};return function(t){function o(e){var o=t.call(this,e)||this;return o.opts=e||{},o.triggerExecutedHandler=o.onTriggerExecuted.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function i(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(i.prototype=o.prototype,new i)}(o,t),o.prototype.install=function(){this.core.on("plugins.trigger.executed",this.triggerExecutedHandler)},o.prototype.uninstall=function(){this.core.off("plugins.trigger.executed",this.triggerExecutedHandler)},o.prototype.onTriggerExecuted=function(t){if(this.isEnabled&&this.opts[t.field])for(var e=0,o=this.opts[t.field].split(" ");e + */ + var removeUndefined = core.utils.removeUndefined; + var Excluded = /** @class */ (function (_super) { + __extends(Excluded, _super); + function Excluded(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { excluded: Excluded.defaultIgnore }, removeUndefined(opts)); + _this.ignoreValidationFilter = _this.ignoreValidation.bind(_this); + return _this; + } + Excluded.defaultIgnore = function (_field, element, _elements) { + var isVisible = !!(element.offsetWidth || element.offsetHeight || element.getClientRects().length); + var disabled = element.getAttribute('disabled'); + return disabled === '' || disabled === 'disabled' || element.getAttribute('type') === 'hidden' || !isVisible; + }; + Excluded.prototype.install = function () { + this.core.registerFilter('element-ignored', this.ignoreValidationFilter); + }; + Excluded.prototype.uninstall = function () { + this.core.deregisterFilter('element-ignored', this.ignoreValidationFilter); + }; + Excluded.prototype.ignoreValidation = function (field, element, elements) { + if (!this.isEnabled) { + return false; + } + return this.opts.excluded.apply(this, [field, element, elements]); + }; + return Excluded; + }(core.Plugin)); + + return Excluded; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js new file mode 100644 index 0000000..2087b71 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-excluded + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Excluded=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};var i=t.utils.removeUndefined;return function(t){function o(e){var n=t.call(this,e)||this;return n.opts=Object.assign({},{excluded:o.defaultIgnore},i(e)),n.ignoreValidationFilter=n.ignoreValidation.bind(n),n}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(o,t),o.defaultIgnore=function(t,e,i){var o=!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length),n=e.getAttribute("disabled");return""===n||"disabled"===n||"hidden"===e.getAttribute("type")||!o},o.prototype.install=function(){this.core.registerFilter("element-ignored",this.ignoreValidationFilter)},o.prototype.uninstall=function(){this.core.deregisterFilter("element-ignored",this.ignoreValidationFilter)},o.prototype.ignoreValidation=function(t,e,i){return!!this.isEnabled&&this.opts.excluded.apply(this,[t,e,i])},o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js new file mode 100644 index 0000000..4f711a2 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js @@ -0,0 +1,126 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.FieldStatus = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var FieldStatus = /** @class */ (function (_super) { + __extends(FieldStatus, _super); + function FieldStatus(opts) { + var _this = _super.call(this, opts) || this; + _this.statuses = new Map(); + _this.opts = Object.assign({}, { + onStatusChanged: function () { }, + }, opts); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + return _this; + } + FieldStatus.prototype.install = function () { + this.core + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.field.removed', this.fieldRemovedHandler); + }; + FieldStatus.prototype.uninstall = function () { + this.statuses.clear(); + this.core + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.field.removed', this.fieldRemovedHandler); + }; + FieldStatus.prototype.areFieldsValid = function () { + return Array.from(this.statuses.values()).every(function (value) { + return value === 'Valid' || value === 'NotValidated' || value === 'Ignored'; + }); + }; + FieldStatus.prototype.getStatuses = function () { + return this.isEnabled ? this.statuses : new Map(); + }; + FieldStatus.prototype.onFieldAdded = function (e) { + this.statuses.set(e.field, 'NotValidated'); + }; + FieldStatus.prototype.onFieldRemoved = function (e) { + if (this.statuses.has(e.field)) { + this.statuses.delete(e.field); + } + this.handleStatusChanged(this.areFieldsValid()); + }; + FieldStatus.prototype.onElementValidating = function (e) { + this.statuses.set(e.field, 'Validating'); + this.handleStatusChanged(false); + }; + FieldStatus.prototype.onElementValidated = function (e) { + this.statuses.set(e.field, e.valid ? 'Valid' : 'Invalid'); + if (e.valid) { + this.handleStatusChanged(this.areFieldsValid()); + } + else { + this.handleStatusChanged(false); + } + }; + FieldStatus.prototype.onElementNotValidated = function (e) { + this.statuses.set(e.field, 'NotValidated'); + this.handleStatusChanged(false); + }; + FieldStatus.prototype.onElementIgnored = function (e) { + this.statuses.set(e.field, 'Ignored'); + this.handleStatusChanged(this.areFieldsValid()); + }; + FieldStatus.prototype.handleStatusChanged = function (areFieldsValid) { + if (this.isEnabled) { + this.opts.onStatusChanged(areFieldsValid); + } + }; + return FieldStatus; + }(core.Plugin)); + + return FieldStatus; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js new file mode 100644 index 0000000..0e56ec0 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-field-status + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.FieldStatus=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};return function(e){function n(t){var n=e.call(this,t)||this;return n.statuses=new Map,n.opts=Object.assign({},{onStatusChanged:function(){}},t),n.elementValidatingHandler=n.onElementValidating.bind(n),n.elementValidatedHandler=n.onElementValidated.bind(n),n.elementNotValidatedHandler=n.onElementNotValidated.bind(n),n.elementIgnoredHandler=n.onElementIgnored.bind(n),n.fieldAddedHandler=n.onFieldAdded.bind(n),n.fieldRemovedHandler=n.onFieldRemoved.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(n,e),n.prototype.install=function(){this.core.on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("core.element.ignored",this.elementIgnoredHandler).on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler)},n.prototype.uninstall=function(){this.statuses.clear(),this.core.off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("core.element.ignored",this.elementIgnoredHandler).off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler)},n.prototype.areFieldsValid=function(){return Array.from(this.statuses.values()).every((function(e){return"Valid"===e||"NotValidated"===e||"Ignored"===e}))},n.prototype.getStatuses=function(){return this.isEnabled?this.statuses:new Map},n.prototype.onFieldAdded=function(e){this.statuses.set(e.field,"NotValidated")},n.prototype.onFieldRemoved=function(e){this.statuses.has(e.field)&&this.statuses.delete(e.field),this.handleStatusChanged(this.areFieldsValid())},n.prototype.onElementValidating=function(e){this.statuses.set(e.field,"Validating"),this.handleStatusChanged(!1)},n.prototype.onElementValidated=function(e){this.statuses.set(e.field,e.valid?"Valid":"Invalid"),e.valid?this.handleStatusChanged(this.areFieldsValid()):this.handleStatusChanged(!1)},n.prototype.onElementNotValidated=function(e){this.statuses.set(e.field,"NotValidated"),this.handleStatusChanged(!1)},n.prototype.onElementIgnored=function(e){this.statuses.set(e.field,"Ignored"),this.handleStatusChanged(this.areFieldsValid())},n.prototype.handleStatusChanged=function(e){this.isEnabled&&this.opts.onStatusChanged(e)},n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js new file mode 100644 index 0000000..169ca33 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js @@ -0,0 +1,79 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Foundation = factory(global.FormValidation.plugins))); +})(this, (function (pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Foundation = /** @class */ (function (_super) { + __extends(Foundation, _super); + function Foundation(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-foundation', + // See http://foundation.zurb.com/sites/docs/abide.html#form-errors + messageClass: 'form-error', + rowInvalidClass: 'fv-row__error', + rowPattern: /^.*((small|medium|large)-[0-9]+)\s.*(cell).*$/, + rowSelector: '.grid-x', + rowValidClass: 'fv-row__success', + }, opts)) || this; + } + Foundation.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var nextEle = e.iconElement.nextSibling; + if ('LABEL' === nextEle.nodeName) { + nextEle.parentNode.insertBefore(e.iconElement, nextEle.nextSibling); + } + else if ('#text' === nextEle.nodeName) { + // There's space between the input and label tags as + // + // + var next = nextEle.nextSibling; + if (next && 'LABEL' === next.nodeName) { + next.parentNode.insertBefore(e.iconElement, next.nextSibling); + } + } + } + }; + return Foundation; + }(pluginFramework.Framework)); + + return Foundation; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js new file mode 100644 index 0000000..d33a9ae --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-foundation + * @version 2.4.0 + */ + +!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/plugin-framework"],o):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Foundation=o(e.FormValidation.plugins))}(this,(function(e){"use strict";var o=function(e,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,o){e.__proto__=o}||function(e,o){for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])},o(e,n)};return function(e){function n(o){return e.call(this,Object.assign({},{formClass:"fv-plugins-foundation",messageClass:"form-error",rowInvalidClass:"fv-row__error",rowPattern:/^.*((small|medium|large)-[0-9]+)\s.*(cell).*$/,rowSelector:".grid-x",rowValidClass:"fv-row__success"},o))||this}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function t(){this.constructor=e}o(e,n),e.prototype=null===n?Object.create(n):(t.prototype=n.prototype,new t)}(n,e),n.prototype.onIconPlaced=function(e){var o=e.element.getAttribute("type");if("checkbox"===o||"radio"===o){var n=e.iconElement.nextSibling;if("LABEL"===n.nodeName)n.parentNode.insertBefore(e.iconElement,n.nextSibling);else if("#text"===n.nodeName){var t=n.nextSibling;t&&"LABEL"===t.nodeName&&t.parentNode.insertBefore(e.iconElement,t.nextSibling)}}},n}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js new file mode 100644 index 0000000..f52b718 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js @@ -0,0 +1,275 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-message')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-message'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Framework = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginMessage) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, closest = core.utils.closest; + var Framework = /** @class */ (function (_super) { + __extends(Framework, _super); + function Framework(opts) { + var _this = _super.call(this, opts) || this; + _this.results = new Map(); + _this.containers = new Map(); + _this.opts = Object.assign({}, { + defaultMessageContainer: true, + eleInvalidClass: '', + eleValidClass: '', + rowClasses: '', + rowValidatingClass: '', + }, opts); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + _this.messagePlacedHandler = _this.onMessagePlaced.bind(_this); + return _this; + } + Framework.prototype.install = function () { + var _a; + var _this = this; + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = true, + _a['fv-plugins-framework'] = true, + _a)); + this.core + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.field.removed', this.fieldRemovedHandler); + if (this.opts.defaultMessageContainer) { + this.core.registerPlugin(Framework.MESSAGE_PLUGIN, new pluginMessage.Message({ + clazz: this.opts.messageClass, + container: function (field, element) { + var selector = 'string' === typeof _this.opts.rowSelector + ? _this.opts.rowSelector + : _this.opts.rowSelector(field, element); + var groupEle = closest(element, selector); + return pluginMessage.Message.getClosestContainer(element, groupEle, _this.opts.rowPattern); + }, + })); + this.core.on('plugins.message.placed', this.messagePlacedHandler); + } + }; + Framework.prototype.uninstall = function () { + var _a; + this.results.clear(); + this.containers.clear(); + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = false, + _a['fv-plugins-framework'] = false, + _a)); + this.core + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.field.removed', this.fieldRemovedHandler); + if (this.opts.defaultMessageContainer) { + this.core.deregisterPlugin(Framework.MESSAGE_PLUGIN); + this.core.off('plugins.message.placed', this.messagePlacedHandler); + } + }; + Framework.prototype.onEnabled = function () { + var _a; + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = true, + _a)); + if (this.opts.defaultMessageContainer) { + this.core.enablePlugin(Framework.MESSAGE_PLUGIN); + } + }; + Framework.prototype.onDisabled = function () { + var _a; + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = false, + _a)); + if (this.opts.defaultMessageContainer) { + this.core.disablePlugin(Framework.MESSAGE_PLUGIN); + } + }; + Framework.prototype.onIconPlaced = function (_e) { }; // eslint-disable-line @typescript-eslint/no-empty-function + Framework.prototype.onMessagePlaced = function (_e) { }; // eslint-disable-line @typescript-eslint/no-empty-function + Framework.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + if (elements) { + elements.forEach(function (ele) { + var _a; + var groupEle = _this.containers.get(ele); + if (groupEle) { + classSet(groupEle, (_a = {}, + _a[_this.opts.rowInvalidClass] = false, + _a[_this.opts.rowValidatingClass] = false, + _a[_this.opts.rowValidClass] = false, + _a['fv-plugins-icon-container'] = false, + _a)); + _this.containers.delete(ele); + } + }); + this.prepareFieldContainer(e.field, elements); + } + }; + Framework.prototype.onFieldRemoved = function (e) { + var _this = this; + e.elements.forEach(function (ele) { + var _a; + var groupEle = _this.containers.get(ele); + if (groupEle) { + classSet(groupEle, (_a = {}, + _a[_this.opts.rowInvalidClass] = false, + _a[_this.opts.rowValidatingClass] = false, + _a[_this.opts.rowValidClass] = false, + _a)); + } + }); + }; + Framework.prototype.prepareFieldContainer = function (field, elements) { + var _this = this; + if (elements.length) { + var type = elements[0].getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + this.prepareElementContainer(field, elements[0]); + } + else { + elements.forEach(function (ele) { return _this.prepareElementContainer(field, ele); }); + } + } + }; + Framework.prototype.prepareElementContainer = function (field, element) { + var _a; + var selector = 'string' === typeof this.opts.rowSelector ? this.opts.rowSelector : this.opts.rowSelector(field, element); + var groupEle = closest(element, selector); + if (groupEle !== element) { + classSet(groupEle, (_a = {}, + _a[this.opts.rowClasses] = true, + _a['fv-plugins-icon-container'] = true, + _a)); + this.containers.set(element, groupEle); + } + }; + Framework.prototype.onElementValidating = function (e) { + this.removeClasses(e.element, e.elements); + }; + Framework.prototype.onElementNotValidated = function (e) { + this.removeClasses(e.element, e.elements); + }; + Framework.prototype.onElementIgnored = function (e) { + this.removeClasses(e.element, e.elements); + }; + Framework.prototype.removeClasses = function (element, elements) { + var _a; + var _this = this; + var type = element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : element; + elements.forEach(function (ele) { + var _a; + classSet(ele, (_a = {}, + _a[_this.opts.eleValidClass] = false, + _a[_this.opts.eleInvalidClass] = false, + _a)); + }); + var groupEle = this.containers.get(ele); + if (groupEle) { + classSet(groupEle, (_a = {}, + _a[this.opts.rowInvalidClass] = false, + _a[this.opts.rowValidatingClass] = false, + _a[this.opts.rowValidClass] = false, + _a)); + } + }; + Framework.prototype.onElementValidated = function (e) { + var _a, _b; + var _this = this; + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + // Set the valid or invalid class for all elements + elements.forEach(function (ele) { + var _a; + classSet(ele, (_a = {}, + _a[_this.opts.eleValidClass] = e.valid, + _a[_this.opts.eleInvalidClass] = !e.valid, + _a)); + }); + var groupEle = this.containers.get(element); + if (groupEle) { + if (!e.valid) { + this.results.set(element, false); + classSet(groupEle, (_a = {}, + _a[this.opts.rowInvalidClass] = true, + _a[this.opts.rowValidatingClass] = false, + _a[this.opts.rowValidClass] = false, + _a)); + } + else { + this.results.delete(element); + // Maybe there're multiple fields belong to the same row + var isValid_1 = true; + this.containers.forEach(function (value, key) { + if (value === groupEle && _this.results.get(key) === false) { + isValid_1 = false; + } + }); + // If all field(s) belonging to the row are valid + if (isValid_1) { + classSet(groupEle, (_b = {}, + _b[this.opts.rowInvalidClass] = false, + _b[this.opts.rowValidatingClass] = false, + _b[this.opts.rowValidClass] = true, + _b)); + } + } + } + }; + Framework.MESSAGE_PLUGIN = '___frameworkMessage'; + return Framework; + }(core.Plugin)); + + return Framework; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js new file mode 100644 index 0000000..ee3db82 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-framework + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-message")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-message"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Framework=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},o(e,t)};var n=e.utils.classSet,i=e.utils.closest;return function(e){function s(t){var o=e.call(this,t)||this;return o.results=new Map,o.containers=new Map,o.opts=Object.assign({},{defaultMessageContainer:!0,eleInvalidClass:"",eleValidClass:"",rowClasses:"",rowValidatingClass:""},t),o.elementIgnoredHandler=o.onElementIgnored.bind(o),o.elementValidatingHandler=o.onElementValidating.bind(o),o.elementValidatedHandler=o.onElementValidated.bind(o),o.elementNotValidatedHandler=o.onElementNotValidated.bind(o),o.iconPlacedHandler=o.onIconPlaced.bind(o),o.fieldAddedHandler=o.onFieldAdded.bind(o),o.fieldRemovedHandler=o.onFieldRemoved.bind(o),o.messagePlacedHandler=o.onMessagePlaced.bind(o),o}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(s,e),s.prototype.install=function(){var e,o=this;n(this.core.getFormElement(),((e={})[this.opts.formClass]=!0,e["fv-plugins-framework"]=!0,e)),this.core.on("core.element.ignored",this.elementIgnoredHandler).on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("plugins.icon.placed",this.iconPlacedHandler).on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler),this.opts.defaultMessageContainer&&(this.core.registerPlugin(s.MESSAGE_PLUGIN,new t.Message({clazz:this.opts.messageClass,container:function(e,n){var s="string"==typeof o.opts.rowSelector?o.opts.rowSelector:o.opts.rowSelector(e,n),a=i(n,s);return t.Message.getClosestContainer(n,a,o.opts.rowPattern)}})),this.core.on("plugins.message.placed",this.messagePlacedHandler))},s.prototype.uninstall=function(){var e;this.results.clear(),this.containers.clear(),n(this.core.getFormElement(),((e={})[this.opts.formClass]=!1,e["fv-plugins-framework"]=!1,e)),this.core.off("core.element.ignored",this.elementIgnoredHandler).off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("plugins.icon.placed",this.iconPlacedHandler).off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler),this.opts.defaultMessageContainer&&(this.core.deregisterPlugin(s.MESSAGE_PLUGIN),this.core.off("plugins.message.placed",this.messagePlacedHandler))},s.prototype.onEnabled=function(){var e;n(this.core.getFormElement(),((e={})[this.opts.formClass]=!0,e)),this.opts.defaultMessageContainer&&this.core.enablePlugin(s.MESSAGE_PLUGIN)},s.prototype.onDisabled=function(){var e;n(this.core.getFormElement(),((e={})[this.opts.formClass]=!1,e)),this.opts.defaultMessageContainer&&this.core.disablePlugin(s.MESSAGE_PLUGIN)},s.prototype.onIconPlaced=function(e){},s.prototype.onMessagePlaced=function(e){},s.prototype.onFieldAdded=function(e){var t=this,o=e.elements;o&&(o.forEach((function(e){var o,i=t.containers.get(e);i&&(n(i,((o={})[t.opts.rowInvalidClass]=!1,o[t.opts.rowValidatingClass]=!1,o[t.opts.rowValidClass]=!1,o["fv-plugins-icon-container"]=!1,o)),t.containers.delete(e))})),this.prepareFieldContainer(e.field,o))},s.prototype.onFieldRemoved=function(e){var t=this;e.elements.forEach((function(e){var o,i=t.containers.get(e);i&&n(i,((o={})[t.opts.rowInvalidClass]=!1,o[t.opts.rowValidatingClass]=!1,o[t.opts.rowValidClass]=!1,o))}))},s.prototype.prepareFieldContainer=function(e,t){var o=this;if(t.length){var n=t[0].getAttribute("type");"radio"===n||"checkbox"===n?this.prepareElementContainer(e,t[0]):t.forEach((function(t){return o.prepareElementContainer(e,t)}))}},s.prototype.prepareElementContainer=function(e,t){var o,s="string"==typeof this.opts.rowSelector?this.opts.rowSelector:this.opts.rowSelector(e,t),a=i(t,s);a!==t&&(n(a,((o={})[this.opts.rowClasses]=!0,o["fv-plugins-icon-container"]=!0,o)),this.containers.set(t,a))},s.prototype.onElementValidating=function(e){this.removeClasses(e.element,e.elements)},s.prototype.onElementNotValidated=function(e){this.removeClasses(e.element,e.elements)},s.prototype.onElementIgnored=function(e){this.removeClasses(e.element,e.elements)},s.prototype.removeClasses=function(e,t){var o,i=this,s=e.getAttribute("type"),a="radio"===s||"checkbox"===s?t[0]:e;t.forEach((function(e){var t;n(e,((t={})[i.opts.eleValidClass]=!1,t[i.opts.eleInvalidClass]=!1,t))}));var l=this.containers.get(a);l&&n(l,((o={})[this.opts.rowInvalidClass]=!1,o[this.opts.rowValidatingClass]=!1,o[this.opts.rowValidClass]=!1,o))},s.prototype.onElementValidated=function(e){var t,o,i=this,s=e.elements,a=e.element.getAttribute("type"),l="radio"===a||"checkbox"===a?s[0]:e.element;s.forEach((function(t){var o;n(t,((o={})[i.opts.eleValidClass]=e.valid,o[i.opts.eleInvalidClass]=!e.valid,o))}));var r=this.containers.get(l);if(r)if(e.valid){this.results.delete(l);var d=!0;this.containers.forEach((function(e,t){e===r&&!1===i.results.get(t)&&(d=!1)})),d&&n(r,((o={})[this.opts.rowInvalidClass]=!1,o[this.opts.rowValidatingClass]=!1,o[this.opts.rowValidClass]=!0,o))}else this.results.set(l,!1),n(r,((t={})[this.opts.rowInvalidClass]=!0,t[this.opts.rowValidatingClass]=!1,t[this.opts.rowValidClass]=!1,t))},s.MESSAGE_PLUGIN="___frameworkMessage",s}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js new file mode 100644 index 0000000..ec9429e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js @@ -0,0 +1,229 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Icon = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Icon = /** @class */ (function (_super) { + __extends(Icon, _super); + function Icon(opts) { + var _this = _super.call(this, opts) || this; + // Map the field element with icon + _this.icons = new Map(); + _this.opts = Object.assign({}, { + invalid: 'fv-plugins-icon--invalid', + onPlaced: function () { }, + onSet: function () { }, + valid: 'fv-plugins-icon--valid', + validating: 'fv-plugins-icon--validating', + }, opts); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + return _this; + } + Icon.prototype.install = function () { + this.core + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.field.added', this.fieldAddedHandler); + }; + Icon.prototype.uninstall = function () { + this.icons.forEach(function (icon) { return icon.parentNode.removeChild(icon); }); + this.icons.clear(); + this.core + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.field.added', this.fieldAddedHandler); + }; + Icon.prototype.onEnabled = function () { + this.icons.forEach(function (_element, i, _map) { + classSet(i, { + 'fv-plugins-icon--enabled': true, + 'fv-plugins-icon--disabled': false, + }); + }); + }; + Icon.prototype.onDisabled = function () { + this.icons.forEach(function (_element, i, _map) { + classSet(i, { + 'fv-plugins-icon--enabled': false, + 'fv-plugins-icon--disabled': true, + }); + }); + }; + Icon.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + if (elements) { + elements.forEach(function (ele) { + var icon = _this.icons.get(ele); + if (icon) { + icon.parentNode.removeChild(icon); + _this.icons.delete(ele); + } + }); + this.prepareFieldIcon(e.field, elements); + } + }; + Icon.prototype.prepareFieldIcon = function (field, elements) { + var _this = this; + if (elements.length) { + var type = elements[0].getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + this.prepareElementIcon(field, elements[0]); + } + else { + elements.forEach(function (ele) { return _this.prepareElementIcon(field, ele); }); + } + } + }; + Icon.prototype.prepareElementIcon = function (field, ele) { + var i = document.createElement('i'); + i.setAttribute('data-field', field); + // Append the icon right after the field element + ele.parentNode.insertBefore(i, ele.nextSibling); + classSet(i, { + 'fv-plugins-icon': true, + 'fv-plugins-icon--enabled': this.isEnabled, + 'fv-plugins-icon--disabled': !this.isEnabled, + }); + var e = { + classes: { + invalid: this.opts.invalid, + valid: this.opts.valid, + validating: this.opts.validating, + }, + element: ele, + field: field, + iconElement: i, + }; + this.core.emit('plugins.icon.placed', e); + this.opts.onPlaced(e); + this.icons.set(ele, i); + }; + Icon.prototype.onElementValidating = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = false, + _a[this.opts.valid] = false, + _a[this.opts.validating] = true, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: 'Validating', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.onElementValidated = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = !e.valid, + _a[this.opts.valid] = e.valid, + _a[this.opts.validating] = false, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: e.valid ? 'Valid' : 'Invalid', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.onElementNotValidated = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = false, + _a[this.opts.valid] = false, + _a[this.opts.validating] = false, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: 'NotValidated', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.onElementIgnored = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = false, + _a[this.opts.valid] = false, + _a[this.opts.validating] = false, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: 'Ignored', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.setClasses = function (_field, element, elements, classes) { + var type = element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : element; + if (this.icons.has(ele)) { + var icon = this.icons.get(ele); + classSet(icon, classes); + return icon; + } + else { + return null; + } + }; + return Icon; + }(core.Plugin)); + + return Icon; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js new file mode 100644 index 0000000..72856b6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-icon + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Icon=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};var n=e.utils.classSet;return function(e){function i(t){var n=e.call(this,t)||this;return n.icons=new Map,n.opts=Object.assign({},{invalid:"fv-plugins-icon--invalid",onPlaced:function(){},onSet:function(){},valid:"fv-plugins-icon--valid",validating:"fv-plugins-icon--validating"},t),n.elementValidatingHandler=n.onElementValidating.bind(n),n.elementValidatedHandler=n.onElementValidated.bind(n),n.elementNotValidatedHandler=n.onElementNotValidated.bind(n),n.elementIgnoredHandler=n.onElementIgnored.bind(n),n.fieldAddedHandler=n.onFieldAdded.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(i,e),i.prototype.install=function(){this.core.on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("core.element.ignored",this.elementIgnoredHandler).on("core.field.added",this.fieldAddedHandler)},i.prototype.uninstall=function(){this.icons.forEach((function(e){return e.parentNode.removeChild(e)})),this.icons.clear(),this.core.off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("core.element.ignored",this.elementIgnoredHandler).off("core.field.added",this.fieldAddedHandler)},i.prototype.onEnabled=function(){this.icons.forEach((function(e,t,i){n(t,{"fv-plugins-icon--enabled":!0,"fv-plugins-icon--disabled":!1})}))},i.prototype.onDisabled=function(){this.icons.forEach((function(e,t,i){n(t,{"fv-plugins-icon--enabled":!1,"fv-plugins-icon--disabled":!0})}))},i.prototype.onFieldAdded=function(e){var t=this,n=e.elements;n&&(n.forEach((function(e){var n=t.icons.get(e);n&&(n.parentNode.removeChild(n),t.icons.delete(e))})),this.prepareFieldIcon(e.field,n))},i.prototype.prepareFieldIcon=function(e,t){var n=this;if(t.length){var i=t[0].getAttribute("type");"radio"===i||"checkbox"===i?this.prepareElementIcon(e,t[0]):t.forEach((function(t){return n.prepareElementIcon(e,t)}))}},i.prototype.prepareElementIcon=function(e,t){var i=document.createElement("i");i.setAttribute("data-field",e),t.parentNode.insertBefore(i,t.nextSibling),n(i,{"fv-plugins-icon":!0,"fv-plugins-icon--enabled":this.isEnabled,"fv-plugins-icon--disabled":!this.isEnabled});var o={classes:{invalid:this.opts.invalid,valid:this.opts.valid,validating:this.opts.validating},element:t,field:e,iconElement:i};this.core.emit("plugins.icon.placed",o),this.opts.onPlaced(o),this.icons.set(t,i)},i.prototype.onElementValidating=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!1,t[this.opts.valid]=!1,t[this.opts.validating]=!0,t)),i={element:e.element,field:e.field,iconElement:n,status:"Validating"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.onElementValidated=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!e.valid,t[this.opts.valid]=e.valid,t[this.opts.validating]=!1,t)),i={element:e.element,field:e.field,iconElement:n,status:e.valid?"Valid":"Invalid"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.onElementNotValidated=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!1,t[this.opts.valid]=!1,t[this.opts.validating]=!1,t)),i={element:e.element,field:e.field,iconElement:n,status:"NotValidated"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.onElementIgnored=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!1,t[this.opts.valid]=!1,t[this.opts.validating]=!1,t)),i={element:e.element,field:e.field,iconElement:n,status:"Ignored"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.setClasses=function(e,t,i,o){var l=t.getAttribute("type"),a="radio"===l||"checkbox"===l?i[0]:t;if(this.icons.has(a)){var d=this.icons.get(a);return n(d,o),d}return null},i}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js new file mode 100644 index 0000000..e04f76c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js @@ -0,0 +1,187 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.InternationalTelephoneInput = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var InternationalTelephoneInput = /** @class */ (function (_super) { + __extends(InternationalTelephoneInput, _super); + function InternationalTelephoneInput(opts) { + var _this = _super.call(this, opts) || this; + _this.intlTelInstances = new Map(); + _this.countryChangeHandler = new Map(); + _this.fieldElements = new Map(); + _this.hiddenFieldElements = new Map(); + _this.opts = Object.assign({}, { + autoPlaceholder: 'polite', + utilsScript: '', + }, opts); + _this.validatePhoneNumber = _this.checkPhoneNumber.bind(_this); + _this.fields = typeof _this.opts.field === 'string' ? _this.opts.field.split(',') : _this.opts.field; + _this.hiddenFieldInputs = _this.opts.hiddenPhoneInput + ? typeof _this.opts.hiddenPhoneInput === 'string' + ? _this.opts.hiddenPhoneInput.split(',') + : _this.opts.hiddenPhoneInput + : []; + _this.onValidatorValidatedHandler = _this.onValidatorValidated.bind(_this); + return _this; + } + InternationalTelephoneInput.prototype.install = function () { + var _this = this; + this.core.registerValidator(InternationalTelephoneInput.INT_TEL_VALIDATOR, this.validatePhoneNumber); + var numHiddenFieldInputs = this.hiddenFieldInputs.length; + this.fields.forEach(function (field, index) { + var _a; + _this.core.addField(field, { + validators: (_a = {}, + _a[InternationalTelephoneInput.INT_TEL_VALIDATOR] = { + message: _this.opts.message, + }, + _a), + }); + var ele = _this.core.getElements(field)[0]; + var handler = function () { return _this.core.revalidateField(field); }; + ele.addEventListener('countrychange', handler); + _this.countryChangeHandler.set(field, handler); + _this.fieldElements.set(field, ele); + _this.intlTelInstances.set(field, intlTelInput(ele, _this.opts)); + if (index < numHiddenFieldInputs && _this.hiddenFieldInputs[index]) { + var hiddenInputEle = document.createElement('input'); + hiddenInputEle.setAttribute('type', 'hidden'); + hiddenInputEle.setAttribute('name', _this.hiddenFieldInputs[index]); + _this.core.getFormElement().appendChild(hiddenInputEle); + _this.hiddenFieldElements.set(field, hiddenInputEle); + } + }); + if (numHiddenFieldInputs > 0) { + this.core.on('core.validator.validated', this.onValidatorValidatedHandler); + } + }; + InternationalTelephoneInput.prototype.uninstall = function () { + var _this = this; + var numHiddenFieldInputs = this.hiddenFieldInputs.length; + this.fields.forEach(function (field, index) { + // Remove event handler + var handler = _this.countryChangeHandler.get(field); + var ele = _this.fieldElements.get(field); + var intlTel = _this.getIntTelInstance(field); + if (handler && ele && intlTel) { + ele.removeEventListener('countrychange', handler); + _this.core.disableValidator(field, InternationalTelephoneInput.INT_TEL_VALIDATOR); + intlTel.destroy(); + } + if (index < numHiddenFieldInputs && _this.hiddenFieldInputs[index]) { + var hiddenInputEle = _this.hiddenFieldElements.get(field); + if (hiddenInputEle) { + _this.core.getFormElement().removeChild(hiddenInputEle); + } + } + }); + if (numHiddenFieldInputs > 0) { + this.core.off('core.validator.validated', this.onValidatorValidatedHandler); + } + this.fieldElements.clear(); + this.hiddenFieldElements.clear(); + }; + InternationalTelephoneInput.prototype.getIntTelInstance = function (field) { + return this.intlTelInstances.get(field); + }; + InternationalTelephoneInput.prototype.onEnabled = function () { + var _this = this; + this.fields.forEach(function (field) { + _this.core.enableValidator(field, InternationalTelephoneInput.INT_TEL_VALIDATOR); + }); + }; + InternationalTelephoneInput.prototype.onDisabled = function () { + var _this = this; + this.fields.forEach(function (field) { + _this.core.disableValidator(field, InternationalTelephoneInput.INT_TEL_VALIDATOR); + // Reset the full phone number input + var hiddenInputEle = _this.hiddenFieldElements.get(field); + if (hiddenInputEle) { + hiddenInputEle.value = ''; + } + }); + }; + InternationalTelephoneInput.prototype.checkPhoneNumber = function () { + var _this = this; + return { + validate: function (input) { + var value = input.value; + var intlTel = _this.getIntTelInstance(input.field); + if (value === '' || !intlTel) { + return { + valid: true, + }; + } + return { + valid: intlTel.isValidNumber(), + }; + }, + }; + }; + InternationalTelephoneInput.prototype.onValidatorValidated = function (e) { + if (this.hiddenFieldInputs.length === 0 || e.validator !== InternationalTelephoneInput.INT_TEL_VALIDATOR) { + return; + } + var field = e.field; + var hiddenInputEle = this.hiddenFieldElements.get(field); + if (!hiddenInputEle) { + return; + } + if (this.isEnabled && e.result.valid) { + // Get the intl-tel-input instance + var intlTelInstance = this.getIntTelInstance(field); + // Get the phone number including the country code + // See https://github.com/jackocnr/intl-tel-input#public-methods + var phoneNumber = intlTelInstance.getNumber(); + // Set the value for the hidden field + hiddenInputEle.value = phoneNumber; + } + else { + hiddenInputEle.value = ''; + } + }; + InternationalTelephoneInput.INT_TEL_VALIDATOR = '___InternationalTelephoneInputValidator'; + return InternationalTelephoneInput; + }(core.Plugin)); + + return InternationalTelephoneInput; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js new file mode 100644 index 0000000..e8759c5 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-international-telephone-input + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.InternationalTelephoneInput=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};return function(e){function n(t){var n=e.call(this,t)||this;return n.intlTelInstances=new Map,n.countryChangeHandler=new Map,n.fieldElements=new Map,n.hiddenFieldElements=new Map,n.opts=Object.assign({},{autoPlaceholder:"polite",utilsScript:""},t),n.validatePhoneNumber=n.checkPhoneNumber.bind(n),n.fields="string"==typeof n.opts.field?n.opts.field.split(","):n.opts.field,n.hiddenFieldInputs=n.opts.hiddenPhoneInput?"string"==typeof n.opts.hiddenPhoneInput?n.opts.hiddenPhoneInput.split(","):n.opts.hiddenPhoneInput:[],n.onValidatorValidatedHandler=n.onValidatorValidated.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(n,e),n.prototype.install=function(){var e=this;this.core.registerValidator(n.INT_TEL_VALIDATOR,this.validatePhoneNumber);var t=this.hiddenFieldInputs.length;this.fields.forEach((function(i,o){var a;e.core.addField(i,{validators:(a={},a[n.INT_TEL_VALIDATOR]={message:e.opts.message},a)});var l=e.core.getElements(i)[0],r=function(){return e.core.revalidateField(i)};if(l.addEventListener("countrychange",r),e.countryChangeHandler.set(i,r),e.fieldElements.set(i,l),e.intlTelInstances.set(i,intlTelInput(l,e.opts)),o0&&this.core.on("core.validator.validated",this.onValidatorValidatedHandler)},n.prototype.uninstall=function(){var e=this,t=this.hiddenFieldInputs.length;this.fields.forEach((function(i,o){var a=e.countryChangeHandler.get(i),l=e.fieldElements.get(i),r=e.getIntTelInstance(i);if(a&&l&&r&&(l.removeEventListener("countrychange",a),e.core.disableValidator(i,n.INT_TEL_VALIDATOR),r.destroy()),o0&&this.core.off("core.validator.validated",this.onValidatorValidatedHandler),this.fieldElements.clear(),this.hiddenFieldElements.clear()},n.prototype.getIntTelInstance=function(e){return this.intlTelInstances.get(e)},n.prototype.onEnabled=function(){var e=this;this.fields.forEach((function(t){e.core.enableValidator(t,n.INT_TEL_VALIDATOR)}))},n.prototype.onDisabled=function(){var e=this;this.fields.forEach((function(t){e.core.disableValidator(t,n.INT_TEL_VALIDATOR);var i=e.hiddenFieldElements.get(t);i&&(i.value="")}))},n.prototype.checkPhoneNumber=function(){var e=this;return{validate:function(t){var n=t.value,i=e.getIntTelInstance(t.field);return""!==n&&i?{valid:i.isValidNumber()}:{valid:!0}}}},n.prototype.onValidatorValidated=function(e){if(0!==this.hiddenFieldInputs.length&&e.validator===n.INT_TEL_VALIDATOR){var t=e.field,i=this.hiddenFieldElements.get(t);if(i)if(this.isEnabled&&e.result.valid){var o=this.getIntTelInstance(t).getNumber();i.value=o}else i.value=""}},n.INT_TEL_VALIDATOR="___InternationalTelephoneInputValidator",n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js new file mode 100644 index 0000000..5f10c11 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('jquery'), require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['jquery', '@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.$, global.FormValidation)); +})(this, (function ($, core) { 'use strict'; + + const version = $.fn.jquery.split(' ')[0].split('.'); + if ((+version[0] < 2 && +version[1] < 9) || (+version[0] === 1 && +version[1] === 9 && +version[2] < 1)) { + throw new Error('The J plugin requires jQuery version 1.9.1 or higher'); + } + $.fn['formValidation'] = function (options) { + const params = arguments; + return this.each(function () { + const $this = $(this); + let data = $this.data('formValidation'); + const opts = 'object' === typeof options && options; + if (!data) { + data = core.formValidation(this, opts); + $this.data('formValidation', data).data('FormValidation', data); + } + if ('string' === typeof options) { + data[options].apply(data, Array.prototype.slice.call(params, 1)); + } + }); + }; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js new file mode 100644 index 0000000..e37c327 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-j + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?i(require("jquery"),require("@form-validation/core")):"function"==typeof define&&define.amd?define(["jquery","@form-validation/core"],i):i((o="undefined"!=typeof globalThis?globalThis:o||self).$,o.FormValidation)}(this,(function(o,i){"use strict";const e=o.fn.jquery.split(" ")[0].split(".");if(+e[0]<2&&+e[1]<9||1==+e[0]&&9==+e[1]&&+e[2]<1)throw new Error("The J plugin requires jQuery version 1.9.1 or higher");o.fn.formValidation=function(e){const t=arguments;return this.each((function(){const n=o(this);let r=n.data("formValidation");const a="object"==typeof e&&e;r||(r=i.formValidation(this,a),n.data("formValidation",r).data("FormValidation",r)),"string"==typeof e&&r[e].apply(r,Array.prototype.slice.call(t,1))}))}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js new file mode 100644 index 0000000..9526d953 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js @@ -0,0 +1,80 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.L10n = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var L10n = /** @class */ (function (_super) { + __extends(L10n, _super); + function L10n(opts) { + var _this = _super.call(this, opts) || this; + _this.messageFilter = _this.getMessage.bind(_this); + return _this; + } + L10n.prototype.install = function () { + this.core.registerFilter('validator-message', this.messageFilter); + }; + L10n.prototype.uninstall = function () { + this.core.deregisterFilter('validator-message', this.messageFilter); + }; + L10n.prototype.getMessage = function (locale, field, validator) { + if (!this.isEnabled) { + return ''; + } + if (this.opts[field] && this.opts[field][validator]) { + var message = this.opts[field][validator]; + var messageType = typeof message; + if ('object' === messageType && message[locale]) { + // message is a literal object + return message[locale]; + } + else if ('function' === messageType) { + // message is defined by a function + var result = message.apply(this, [field, validator]); + return result && result[locale] ? result[locale] : ''; + } + } + return ''; + }; + return L10n; + }(core.Plugin)); + + return L10n; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js new file mode 100644 index 0000000..a500426 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-l10n + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.L10n=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};return function(t){function o(e){var o=t.call(this,e)||this;return o.messageFilter=o.getMessage.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function i(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(i.prototype=o.prototype,new i)}(o,t),o.prototype.install=function(){this.core.registerFilter("validator-message",this.messageFilter)},o.prototype.uninstall=function(){this.core.deregisterFilter("validator-message",this.messageFilter)},o.prototype.getMessage=function(t,e,o){if(!this.isEnabled)return"";if(this.opts[e]&&this.opts[e][o]){var i=this.opts[e][o],n=typeof i;if("object"===n&&i[t])return i[t];if("function"===n){var r=i.apply(this,[e,o]);return r&&r[t]?r[t]:""}}return""},o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js new file mode 100644 index 0000000..ba0b093 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js @@ -0,0 +1,108 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-alias')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-alias'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Mailgun = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginAlias) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + /** + * This plugin is used to validate an email address by using Mailgun API + */ + var Mailgun = /** @class */ (function (_super) { + __extends(Mailgun, _super); + function Mailgun(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { suggestion: false }, removeUndefined(opts)); + _this.messageDisplayedHandler = _this.onMessageDisplayed.bind(_this); + return _this; + } + Mailgun.prototype.install = function () { + if (this.opts.suggestion) { + this.core.on('plugins.message.displayed', this.messageDisplayedHandler); + } + var aliasOpts = { + mailgun: 'remote', + }; + this.core.registerPlugin(Mailgun.ALIAS_PLUGIN, new pluginAlias.Alias(aliasOpts)).addField(this.opts.field, { + validators: { + mailgun: { + crossDomain: true, + data: { + api_key: this.opts.apiKey, + }, + headers: { + 'Content-Type': 'application/json', + }, + message: this.opts.message, + name: 'address', + url: 'https://api.mailgun.net/v3/address/validate', + validKey: 'is_valid', + }, + }, + }); + }; + Mailgun.prototype.uninstall = function () { + if (this.opts.suggestion) { + this.core.off('plugins.message.displayed', this.messageDisplayedHandler); + } + this.core.deregisterPlugin(Mailgun.ALIAS_PLUGIN); + this.core.removeField(this.opts.field); + }; + Mailgun.prototype.onEnabled = function () { + this.core.enableValidator(this.opts.field, 'mailgun').enablePlugin(Mailgun.ALIAS_PLUGIN); + }; + Mailgun.prototype.onDisabled = function () { + this.core.disableValidator(this.opts.field, 'mailgun').disablePlugin(Mailgun.ALIAS_PLUGIN); + }; + Mailgun.prototype.onMessageDisplayed = function (e) { + if (this.isEnabled && + e.field === this.opts.field && + 'mailgun' === e.validator && + e.meta && + e.meta['did_you_mean']) { + e.messageElement.innerHTML = "Did you mean ".concat(e.meta['did_you_mean'], "?"); + } + }; + Mailgun.ALIAS_PLUGIN = '___mailgunAlias'; + return Mailgun; + }(core.Plugin)); + + return Mailgun; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js new file mode 100644 index 0000000..40366ab --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mailgun + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@form-validation/core"),require("@form-validation/plugin-alias")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-alias"],i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Mailgun=i(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,i){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,i){e.__proto__=i}||function(e,i){for(var t in i)Object.prototype.hasOwnProperty.call(i,t)&&(e[t]=i[t])},t(e,i)};var o=e.utils.removeUndefined;return function(e){function n(i){var t=e.call(this,i)||this;return t.opts=Object.assign({},{suggestion:!1},o(i)),t.messageDisplayedHandler=t.onMessageDisplayed.bind(t),t}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(n,e),n.prototype.install=function(){this.opts.suggestion&&this.core.on("plugins.message.displayed",this.messageDisplayedHandler);this.core.registerPlugin(n.ALIAS_PLUGIN,new i.Alias({mailgun:"remote"})).addField(this.opts.field,{validators:{mailgun:{crossDomain:!0,data:{api_key:this.opts.apiKey},headers:{"Content-Type":"application/json"},message:this.opts.message,name:"address",url:"https://api.mailgun.net/v3/address/validate",validKey:"is_valid"}}})},n.prototype.uninstall=function(){this.opts.suggestion&&this.core.off("plugins.message.displayed",this.messageDisplayedHandler),this.core.deregisterPlugin(n.ALIAS_PLUGIN),this.core.removeField(this.opts.field)},n.prototype.onEnabled=function(){this.core.enableValidator(this.opts.field,"mailgun").enablePlugin(n.ALIAS_PLUGIN)},n.prototype.onDisabled=function(){this.core.disableValidator(this.opts.field,"mailgun").disablePlugin(n.ALIAS_PLUGIN)},n.prototype.onMessageDisplayed=function(e){this.isEnabled&&e.field===this.opts.field&&"mailgun"===e.validator&&e.meta&&e.meta.did_you_mean&&(e.messageElement.innerHTML="Did you mean ".concat(e.meta.did_you_mean,"?"))},n.ALIAS_PLUGIN="___mailgunAlias",n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js new file mode 100644 index 0000000..d9a9614 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js @@ -0,0 +1,179 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.MandatoryIcon = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var MandatoryIcon = /** @class */ (function (_super) { + __extends(MandatoryIcon, _super); + function MandatoryIcon(opts) { + var _this = _super.call(this, opts) || this; + _this.removedIcons = { + Invalid: '', + NotValidated: '', + Valid: '', + Validating: '', + }; + // Map the field element with icon + _this.icons = new Map(); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + _this.iconSetHandler = _this.onIconSet.bind(_this); + return _this; + } + MandatoryIcon.prototype.install = function () { + this.core + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .on('plugins.icon.set', this.iconSetHandler); + }; + MandatoryIcon.prototype.uninstall = function () { + this.icons.clear(); + this.core + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .off('plugins.icon.set', this.iconSetHandler); + }; + MandatoryIcon.prototype.onEnabled = function () { + var _this = this; + this.icons.forEach(function (_element, iconElement, _map) { + var _a; + classSet(iconElement, (_a = {}, + _a[_this.opts.icon] = true, + _a)); + }); + }; + MandatoryIcon.prototype.onDisabled = function () { + var _this = this; + this.icons.forEach(function (_element, iconElement, _map) { + var _a; + classSet(iconElement, (_a = {}, + _a[_this.opts.icon] = false, + _a)); + }); + }; + MandatoryIcon.prototype.onIconPlaced = function (e) { + var _a; + var _this = this; + var validators = this.core.getFields()[e.field].validators; + var elements = this.core.getElements(e.field); + if (validators && validators['notEmpty'] && validators['notEmpty'].enabled !== false && elements.length) { + this.icons.set(e.element, e.iconElement); + var eleType = elements[0].getAttribute('type'); + var type = !eleType ? '' : eleType.toLowerCase(); + var elementArray = 'checkbox' === type || 'radio' === type ? [elements[0]] : elements; + for (var _i = 0, elementArray_1 = elementArray; _i < elementArray_1.length; _i++) { + var ele = elementArray_1[_i]; + if (this.core.getElementValue(e.field, ele) === '') { + // Add required icon + classSet(e.iconElement, (_a = {}, + _a[this.opts.icon] = this.isEnabled, + _a)); + } + } + } + // Maybe the required icon consists of one which is in the list of valid/invalid/validating feedback icons + // (for example, fa, glyphicon) + this.iconClasses = e.classes; + var icons = this.opts.icon.split(' '); + var feedbackIcons = { + Invalid: this.iconClasses.invalid ? this.iconClasses.invalid.split(' ') : [], + Valid: this.iconClasses.valid ? this.iconClasses.valid.split(' ') : [], + Validating: this.iconClasses.validating ? this.iconClasses.validating.split(' ') : [], + }; + Object.keys(feedbackIcons).forEach(function (status) { + var classes = []; + for (var _i = 0, icons_1 = icons; _i < icons_1.length; _i++) { + var clazz = icons_1[_i]; + if (feedbackIcons[status].indexOf(clazz) === -1) { + classes.push(clazz); + } + } + _this.removedIcons[status] = classes.join(' '); + }); + }; + MandatoryIcon.prototype.onElementValidating = function (e) { + this.updateIconClasses(e.element, 'Validating'); + }; + MandatoryIcon.prototype.onElementValidated = function (e) { + this.updateIconClasses(e.element, e.valid ? 'Valid' : 'Invalid'); + }; + MandatoryIcon.prototype.onElementNotValidated = function (e) { + this.updateIconClasses(e.element, 'NotValidated'); + }; + // Remove the required icon when the field updates its status + MandatoryIcon.prototype.updateIconClasses = function (ele, status) { + var _a; + var icon = this.icons.get(ele); + if (icon && + this.iconClasses && + (this.iconClasses.valid || this.iconClasses.invalid || this.iconClasses.validating)) { + classSet(icon, (_a = {}, + _a[this.removedIcons[status]] = false, + _a[this.opts.icon] = false, + _a)); + } + }; + MandatoryIcon.prototype.onIconSet = function (e) { + var _a; + // Show the icon when the field is empty after resetting + var icon = this.icons.get(e.element); + if (!icon) { + return; + } + if ((e.status === 'NotValidated' && this.core.getElementValue(e.field, e.element) === '') || + e.status === 'Ignored') { + classSet(icon, (_a = {}, + _a[this.opts.icon] = this.isEnabled, + _a)); + } + }; + return MandatoryIcon; + }(core.Plugin)); + + return MandatoryIcon; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js new file mode 100644 index 0000000..3c85a6a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mandatory-icon + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.MandatoryIcon=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},e(t,n)};var n=t.utils.classSet;return function(t){function i(e){var n=t.call(this,e)||this;return n.removedIcons={Invalid:"",NotValidated:"",Valid:"",Validating:""},n.icons=new Map,n.elementValidatingHandler=n.onElementValidating.bind(n),n.elementValidatedHandler=n.onElementValidated.bind(n),n.elementNotValidatedHandler=n.onElementNotValidated.bind(n),n.iconPlacedHandler=n.onIconPlaced.bind(n),n.iconSetHandler=n.onIconSet.bind(n),n}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(i,t),i.prototype.install=function(){this.core.on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("plugins.icon.placed",this.iconPlacedHandler).on("plugins.icon.set",this.iconSetHandler)},i.prototype.uninstall=function(){this.icons.clear(),this.core.off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("plugins.icon.placed",this.iconPlacedHandler).off("plugins.icon.set",this.iconSetHandler)},i.prototype.onEnabled=function(){var t=this;this.icons.forEach((function(e,i,o){var a;n(i,((a={})[t.opts.icon]=!0,a))}))},i.prototype.onDisabled=function(){var t=this;this.icons.forEach((function(e,i,o){var a;n(i,((a={})[t.opts.icon]=!1,a))}))},i.prototype.onIconPlaced=function(t){var e,i=this,o=this.core.getFields()[t.field].validators,a=this.core.getElements(t.field);if(o&&o.notEmpty&&!1!==o.notEmpty.enabled&&a.length){this.icons.set(t.element,t.iconElement);for(var l=a[0].getAttribute("type"),s=l?l.toLowerCase():"",d=0,c="checkbox"===s||"radio"===s?[a[0]]:a;d + */ + var classSet = core.utils.classSet; + // Support materialize CSS framework (https://materializecss.com/) + var Materialize = /** @class */ (function (_super) { + __extends(Materialize, _super); + function Materialize(opts) { + return _super.call(this, Object.assign({}, { + eleInvalidClass: 'validate invalid', + eleValidClass: 'validate valid', + formClass: 'fv-plugins-materialize', + messageClass: 'helper-text', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)col(\s+)s[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Materialize.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Materialize; + }(pluginFramework.Framework)); + + return Materialize; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js new file mode 100644 index 0000000..385a06e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-materialize + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Materialize=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},o(e,t)};var n=e.utils.classSet;return function(e){function t(t){return e.call(this,Object.assign({},{eleInvalidClass:"validate invalid",eleValidClass:"validate valid",formClass:"fv-plugins-materialize",messageClass:"helper-text",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)col(\s+)s[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-valid-row"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t.prototype.onIconPlaced=function(e){var t=e.element.getAttribute("type"),o=e.element.parentElement;"checkbox"!==t&&"radio"!==t||(o.parentElement.insertBefore(e.iconElement,o.nextSibling),n(e.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js new file mode 100644 index 0000000..9dcec39 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js @@ -0,0 +1,288 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Message = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Message = /** @class */ (function (_super) { + __extends(Message, _super); + function Message(opts) { + var _this = _super.call(this, opts) || this; + _this.useDefaultContainer = false; + // Map the field element to message container + _this.messages = new Map(); + // By default, we will display error messages at the bottom of form + _this.defaultContainer = document.createElement('div'); + _this.useDefaultContainer = !opts || !opts.container; + _this.opts = Object.assign({}, { + container: function (_field, _element) { return _this.defaultContainer; }, + }, opts); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + _this.validatorValidatedHandler = _this.onValidatorValidated.bind(_this); + _this.validatorNotValidatedHandler = _this.onValidatorNotValidated.bind(_this); + return _this; + } + /** + * Determine the closest element that its class matches with given pattern. + * In popular cases, all the fields might follow the same markup, so that closest element + * can be used as message container. + * + * For example, if we use the Bootstrap framework then the field often be placed inside a + * `col-{size}-{numberOfColumns}` class, we can register the plugin as following: + * ``` + * formValidation(form, { + * plugins: { + * message: new Message({ + * container: function(field, element) { + * return Message.getClosestContainer(element, form, /^(.*)(col|offset)-(xs|sm|md|lg)-[0-9]+(.*)$/) + * } + * }) + * } + * }) + * ``` + * + * @param element The field element + * @param upper The upper element, so we don't have to look for the entire page + * @param pattern The pattern + * @return {HTMLElement} + */ + Message.getClosestContainer = function (element, upper, pattern) { + var ele = element; + while (ele) { + if (ele === upper) { + break; + } + ele = ele.parentElement; + if (pattern.test(ele.className)) { + break; + } + } + return ele; + }; + Message.prototype.install = function () { + if (this.useDefaultContainer) { + this.core.getFormElement().appendChild(this.defaultContainer); + } + this.core + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.field.removed', this.fieldRemovedHandler) + .on('core.validator.validated', this.validatorValidatedHandler) + .on('core.validator.notvalidated', this.validatorNotValidatedHandler); + }; + Message.prototype.uninstall = function () { + if (this.useDefaultContainer) { + this.core.getFormElement().removeChild(this.defaultContainer); + } + this.messages.forEach(function (message) { return message.parentNode.removeChild(message); }); + this.messages.clear(); + this.core + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.field.removed', this.fieldRemovedHandler) + .off('core.validator.validated', this.validatorValidatedHandler) + .off('core.validator.notvalidated', this.validatorNotValidatedHandler); + }; + Message.prototype.onEnabled = function () { + this.messages.forEach(function (_element, message, _map) { + classSet(message, { + 'fv-plugins-message-container--enabled': true, + 'fv-plugins-message-container--disabled': false, + }); + }); + }; + Message.prototype.onDisabled = function () { + this.messages.forEach(function (_element, message, _map) { + classSet(message, { + 'fv-plugins-message-container--enabled': false, + 'fv-plugins-message-container--disabled': true, + }); + }); + }; + // Prepare message container for new added field + Message.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + if (elements) { + elements.forEach(function (ele) { + var msg = _this.messages.get(ele); + if (msg) { + msg.parentNode.removeChild(msg); + _this.messages.delete(ele); + } + }); + this.prepareFieldContainer(e.field, elements); + } + }; + // When a field is removed, we remove all error messages that associates with the field + Message.prototype.onFieldRemoved = function (e) { + var _this = this; + if (!e.elements.length || !e.field) { + return; + } + var type = e.elements[0].getAttribute('type'); + var elements = 'radio' === type || 'checkbox' === type ? [e.elements[0]] : e.elements; + elements.forEach(function (ele) { + if (_this.messages.has(ele)) { + var container = _this.messages.get(ele); + container.parentNode.removeChild(container); + _this.messages.delete(ele); + } + }); + }; + Message.prototype.prepareFieldContainer = function (field, elements) { + var _this = this; + if (elements.length) { + var type = elements[0].getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + this.prepareElementContainer(field, elements[0], elements); + } + else { + elements.forEach(function (ele) { return _this.prepareElementContainer(field, ele, elements); }); + } + } + }; + Message.prototype.prepareElementContainer = function (field, element, elements) { + var container; + if ('string' === typeof this.opts.container) { + var selector = '#' === this.opts.container.charAt(0) + ? "[id=\"".concat(this.opts.container.substring(1), "\"]") + : this.opts.container; + container = this.core.getFormElement().querySelector(selector); + } + else { + container = this.opts.container(field, element); + } + var message = document.createElement('div'); + container.appendChild(message); + classSet(message, { + 'fv-plugins-message-container': true, + 'fv-plugins-message-container--enabled': this.isEnabled, + 'fv-plugins-message-container--disabled': !this.isEnabled, + }); + this.core.emit('plugins.message.placed', { + element: element, + elements: elements, + field: field, + messageElement: message, + }); + this.messages.set(element, message); + }; + Message.prototype.getMessage = function (result) { + return typeof result.message === 'string' ? result.message : result.message[this.core.getLocale()]; + }; + Message.prototype.onValidatorValidated = function (e) { + var _a; + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = ('radio' === type || 'checkbox' === type) && elements.length > 0 ? elements[0] : e.element; + if (this.messages.has(element)) { + var container = this.messages.get(element); + var messageEle = container.querySelector("[data-field=\"".concat(e.field.replace(/"/g, '\\"'), "\"][data-validator=\"").concat(e.validator.replace(/"/g, '\\"'), "\"]")); + if (!messageEle && !e.result.valid) { + var ele = document.createElement('div'); + ele.innerHTML = this.getMessage(e.result); + ele.setAttribute('data-field', e.field); + ele.setAttribute('data-validator', e.validator); + if (this.opts.clazz) { + classSet(ele, (_a = {}, + _a[this.opts.clazz] = true, + _a)); + } + container.appendChild(ele); + this.core.emit('plugins.message.displayed', { + element: e.element, + field: e.field, + message: e.result.message, + messageElement: ele, + meta: e.result.meta, + validator: e.validator, + }); + } + else if (messageEle && !e.result.valid) { + // The validator returns new message + messageEle.innerHTML = this.getMessage(e.result); + this.core.emit('plugins.message.displayed', { + element: e.element, + field: e.field, + message: e.result.message, + messageElement: messageEle, + meta: e.result.meta, + validator: e.validator, + }); + } + else if (messageEle && e.result.valid) { + // Field is valid + container.removeChild(messageEle); + } + } + }; + Message.prototype.onValidatorNotValidated = function (e) { + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + if (this.messages.has(element)) { + var container = this.messages.get(element); + var messageEle = container.querySelector("[data-field=\"".concat(e.field.replace(/"/g, '\\"'), "\"][data-validator=\"").concat(e.validator.replace(/"/g, '\\"'), "\"]")); + if (messageEle) { + container.removeChild(messageEle); + } + } + }; + Message.prototype.onElementIgnored = function (e) { + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + if (this.messages.has(element)) { + var container_1 = this.messages.get(element); + var messageElements = [].slice.call(container_1.querySelectorAll("[data-field=\"".concat(e.field.replace(/"/g, '\\"'), "\"]"))); + messageElements.forEach(function (messageEle) { + container_1.removeChild(messageEle); + }); + } + }; + return Message; + }(core.Plugin)); + + return Message; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js new file mode 100644 index 0000000..6249e62 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-message + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Message=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,a){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])},t(e,a)};var a=e.utils.classSet;return function(e){function n(t){var a=e.call(this,t)||this;return a.useDefaultContainer=!1,a.messages=new Map,a.defaultContainer=document.createElement("div"),a.useDefaultContainer=!t||!t.container,a.opts=Object.assign({},{container:function(e,t){return a.defaultContainer}},t),a.elementIgnoredHandler=a.onElementIgnored.bind(a),a.fieldAddedHandler=a.onFieldAdded.bind(a),a.fieldRemovedHandler=a.onFieldRemoved.bind(a),a.validatorValidatedHandler=a.onValidatorValidated.bind(a),a.validatorNotValidatedHandler=a.onValidatorNotValidated.bind(a),a}return function(e,a){if("function"!=typeof a&&null!==a)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");function n(){this.constructor=e}t(e,a),e.prototype=null===a?Object.create(a):(n.prototype=a.prototype,new n)}(n,e),n.getClosestContainer=function(e,t,a){for(var n=e;n&&n!==t&&(n=n.parentElement,!a.test(n.className)););return n},n.prototype.install=function(){this.useDefaultContainer&&this.core.getFormElement().appendChild(this.defaultContainer),this.core.on("core.element.ignored",this.elementIgnoredHandler).on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler).on("core.validator.validated",this.validatorValidatedHandler).on("core.validator.notvalidated",this.validatorNotValidatedHandler)},n.prototype.uninstall=function(){this.useDefaultContainer&&this.core.getFormElement().removeChild(this.defaultContainer),this.messages.forEach((function(e){return e.parentNode.removeChild(e)})),this.messages.clear(),this.core.off("core.element.ignored",this.elementIgnoredHandler).off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler).off("core.validator.validated",this.validatorValidatedHandler).off("core.validator.notvalidated",this.validatorNotValidatedHandler)},n.prototype.onEnabled=function(){this.messages.forEach((function(e,t,n){a(t,{"fv-plugins-message-container--enabled":!0,"fv-plugins-message-container--disabled":!1})}))},n.prototype.onDisabled=function(){this.messages.forEach((function(e,t,n){a(t,{"fv-plugins-message-container--enabled":!1,"fv-plugins-message-container--disabled":!0})}))},n.prototype.onFieldAdded=function(e){var t=this,a=e.elements;a&&(a.forEach((function(e){var a=t.messages.get(e);a&&(a.parentNode.removeChild(a),t.messages.delete(e))})),this.prepareFieldContainer(e.field,a))},n.prototype.onFieldRemoved=function(e){var t=this;if(e.elements.length&&e.field){var a=e.elements[0].getAttribute("type");("radio"===a||"checkbox"===a?[e.elements[0]]:e.elements).forEach((function(e){if(t.messages.has(e)){var a=t.messages.get(e);a.parentNode.removeChild(a),t.messages.delete(e)}}))}},n.prototype.prepareFieldContainer=function(e,t){var a=this;if(t.length){var n=t[0].getAttribute("type");"radio"===n||"checkbox"===n?this.prepareElementContainer(e,t[0],t):t.forEach((function(n){return a.prepareElementContainer(e,n,t)}))}},n.prototype.prepareElementContainer=function(e,t,n){var i;if("string"==typeof this.opts.container){var o="#"===this.opts.container.charAt(0)?'[id="'.concat(this.opts.container.substring(1),'"]'):this.opts.container;i=this.core.getFormElement().querySelector(o)}else i=this.opts.container(e,t);var r=document.createElement("div");i.appendChild(r),a(r,{"fv-plugins-message-container":!0,"fv-plugins-message-container--enabled":this.isEnabled,"fv-plugins-message-container--disabled":!this.isEnabled}),this.core.emit("plugins.message.placed",{element:t,elements:n,field:e,messageElement:r}),this.messages.set(t,r)},n.prototype.getMessage=function(e){return"string"==typeof e.message?e.message:e.message[this.core.getLocale()]},n.prototype.onValidatorValidated=function(e){var t,n=e.elements,i=e.element.getAttribute("type"),o=("radio"===i||"checkbox"===i)&&n.length>0?n[0]:e.element;if(this.messages.has(o)){var r=this.messages.get(o),s=r.querySelector('[data-field="'.concat(e.field.replace(/"/g,'\\"'),'"][data-validator="').concat(e.validator.replace(/"/g,'\\"'),'"]'));if(s||e.result.valid)s&&!e.result.valid?(s.innerHTML=this.getMessage(e.result),this.core.emit("plugins.message.displayed",{element:e.element,field:e.field,message:e.result.message,messageElement:s,meta:e.result.meta,validator:e.validator})):s&&e.result.valid&&r.removeChild(s);else{var l=document.createElement("div");l.innerHTML=this.getMessage(e.result),l.setAttribute("data-field",e.field),l.setAttribute("data-validator",e.validator),this.opts.clazz&&a(l,((t={})[this.opts.clazz]=!0,t)),r.appendChild(l),this.core.emit("plugins.message.displayed",{element:e.element,field:e.field,message:e.result.message,messageElement:l,meta:e.result.meta,validator:e.validator})}}},n.prototype.onValidatorNotValidated=function(e){var t=e.elements,a=e.element.getAttribute("type"),n="radio"===a||"checkbox"===a?t[0]:e.element;if(this.messages.has(n)){var i=this.messages.get(n),o=i.querySelector('[data-field="'.concat(e.field.replace(/"/g,'\\"'),'"][data-validator="').concat(e.validator.replace(/"/g,'\\"'),'"]'));o&&i.removeChild(o)}},n.prototype.onElementIgnored=function(e){var t=e.elements,a=e.element.getAttribute("type"),n="radio"===a||"checkbox"===a?t[0]:e.element;if(this.messages.has(n)){var i=this.messages.get(n);[].slice.call(i.querySelectorAll('[data-field="'.concat(e.field.replace(/"/g,'\\"'),'"]'))).forEach((function(e){i.removeChild(e)}))}},n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js new file mode 100644 index 0000000..b884cbe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Milligram = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support Milligram framework (https://milligram.io/) + var Milligram = /** @class */ (function (_super) { + __extends(Milligram, _super); + function Milligram(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-milligram', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)column(-offset)*-[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Milligram.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Milligram; + }(pluginFramework.Framework)); + + return Milligram; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js new file mode 100644 index 0000000..f4a699a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-milligram + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Milligram=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-milligram",messageClass:"fv-help-block",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)column(-offset)*-[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-valid-row"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js new file mode 100644 index 0000000..9ec3d74 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Mini = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support mini.css framework (https://minicss.org) + var Mini = /** @class */ (function (_super) { + __extends(Mini, _super); + function Mini(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-mini', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)col-(sm|md|lg|xl)(-offset)*-[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Mini.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Mini; + }(pluginFramework.Framework)); + + return Mini; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js new file mode 100644 index 0000000..95a17f6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mini + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Mini=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-mini",messageClass:"fv-help-block",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)col-(sm|md|lg|xl)(-offset)*-[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-valid-row"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js new file mode 100644 index 0000000..8a6049a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Mui = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support Mui CSS framework (https://muicss.com/) + var Mui = /** @class */ (function (_super) { + __extends(Mui, _super); + function Mui(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-mui', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)mui-col-(xs|md|lg|xl)(-offset)*-[0-9]+(.*)$/, + rowSelector: '.mui-row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Mui.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Mui; + }(pluginFramework.Framework)); + + return Mui; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js new file mode 100644 index 0000000..93db2fa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mui + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Mui=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-mui",messageClass:"fv-help-block",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)mui-col-(xs|md|lg|xl)(-offset)*-[0-9]+(.*)$/,rowSelector:".mui-row",rowValidClass:"fv-valid-row"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js new file mode 100644 index 0000000..a3d079f --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js @@ -0,0 +1,130 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.PasswordStrength = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var PasswordStrength = /** @class */ (function (_super) { + __extends(PasswordStrength, _super); + function PasswordStrength(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + minimalScore: 3, + onValidated: function () { }, + }, opts); + _this.validatePassword = _this.checkPasswordStrength.bind(_this); + _this.validatorValidatedHandler = _this.onValidatorValidated.bind(_this); + return _this; + } + PasswordStrength.prototype.install = function () { + var _a; + this.core.registerValidator(PasswordStrength.PASSWORD_STRENGTH_VALIDATOR, this.validatePassword); + this.core.on('core.validator.validated', this.validatorValidatedHandler); + this.core.addField(this.opts.field, { + validators: (_a = {}, + _a[PasswordStrength.PASSWORD_STRENGTH_VALIDATOR] = { + message: this.opts.message, + minimalScore: this.opts.minimalScore, + }, + _a), + }); + }; + PasswordStrength.prototype.uninstall = function () { + this.core.off('core.validator.validated', this.validatorValidatedHandler); + // It's better if we can remove validator + this.core.disableValidator(this.opts.field, PasswordStrength.PASSWORD_STRENGTH_VALIDATOR); + }; + PasswordStrength.prototype.onEnabled = function () { + this.core.enableValidator(this.opts.field, PasswordStrength.PASSWORD_STRENGTH_VALIDATOR); + }; + PasswordStrength.prototype.onDisabled = function () { + this.core.disableValidator(this.opts.field, PasswordStrength.PASSWORD_STRENGTH_VALIDATOR); + }; + PasswordStrength.prototype.checkPasswordStrength = function () { + var _this = this; + return { + validate: function (input) { + var value = input.value; + if (value === '') { + return { + valid: true, + }; + } + var result = zxcvbn(value); + var score = result.score; + var message = result.feedback.warning || 'The password is weak'; + if (score < _this.opts.minimalScore) { + return { + message: message, + meta: { + message: message, + score: score, + }, + valid: false, + }; + } + else { + return { + meta: { + message: message, + score: score, + }, + valid: true, + }; + } + }, + }; + }; + PasswordStrength.prototype.onValidatorValidated = function (e) { + if (this.isEnabled && + e.field === this.opts.field && + e.validator === PasswordStrength.PASSWORD_STRENGTH_VALIDATOR && + e.result.meta) { + var message = e.result.meta['message']; + var score = e.result.meta['score']; + this.opts.onValidated(e.result.valid, message, score); + } + }; + PasswordStrength.PASSWORD_STRENGTH_VALIDATOR = '___PasswordStrengthValidator'; + return PasswordStrength; + }(core.Plugin)); + + return PasswordStrength; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js new file mode 100644 index 0000000..d5a39d8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-password-strength + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.PasswordStrength=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},o(t,e)};return function(t){function e(o){var e=t.call(this,o)||this;return e.opts=Object.assign({},{minimalScore:3,onValidated:function(){}},o),e.validatePassword=e.checkPasswordStrength.bind(e),e.validatorValidatedHandler=e.onValidatorValidated.bind(e),e}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype.install=function(){var t;this.core.registerValidator(e.PASSWORD_STRENGTH_VALIDATOR,this.validatePassword),this.core.on("core.validator.validated",this.validatorValidatedHandler),this.core.addField(this.opts.field,{validators:(t={},t[e.PASSWORD_STRENGTH_VALIDATOR]={message:this.opts.message,minimalScore:this.opts.minimalScore},t)})},e.prototype.uninstall=function(){this.core.off("core.validator.validated",this.validatorValidatedHandler),this.core.disableValidator(this.opts.field,e.PASSWORD_STRENGTH_VALIDATOR)},e.prototype.onEnabled=function(){this.core.enableValidator(this.opts.field,e.PASSWORD_STRENGTH_VALIDATOR)},e.prototype.onDisabled=function(){this.core.disableValidator(this.opts.field,e.PASSWORD_STRENGTH_VALIDATOR)},e.prototype.checkPasswordStrength=function(){var t=this;return{validate:function(o){var e=o.value;if(""===e)return{valid:!0};var i=zxcvbn(e),a=i.score,r=i.feedback.warning||"The password is weak";return a + */ + var classSet = core.utils.classSet; + var Pure = /** @class */ (function (_super) { + __extends(Pure, _super); + function Pure(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-pure', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-has-error', + rowPattern: /^.*pure-control-group.*$/, + rowSelector: '.pure-control-group', + rowValidClass: 'fv-has-success', + }, opts)) || this; + } + Pure.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var parent_1 = e.element.parentElement; + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + if ('LABEL' === parent_1.tagName) { + parent_1.parentElement.insertBefore(e.iconElement, parent_1.nextSibling); + } + } + }; + return Pure; + }(pluginFramework.Framework)); + + return Pure; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js new file mode 100644 index 0000000..10cb8f3 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-pure + * @version 2.4.0 + */ + +!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],e):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Pure=e(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,e){"use strict";var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,e){o.__proto__=e}||function(o,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t])},t(o,e)};var n=o.utils.classSet;return function(o){function e(e){return o.call(this,Object.assign({},{formClass:"fv-plugins-pure",messageClass:"fv-help-block",rowInvalidClass:"fv-has-error",rowPattern:/^.*pure-control-group.*$/,rowSelector:".pure-control-group",rowValidClass:"fv-has-success"},e))||this}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,o),e.prototype.onIconPlaced=function(o){var e=o.element.getAttribute("type");if("checkbox"===e||"radio"===e){var t=o.element.parentElement;n(o.iconElement,{"fv-plugins-icon-check":!0}),"LABEL"===t.tagName&&t.parentElement.insertBefore(o.iconElement,t.nextSibling)}},e}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js new file mode 100644 index 0000000..b4a4b60 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js @@ -0,0 +1,262 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Recaptcha = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + /** + * This plugin shows and validates a Google reCAPTCHA v2 + * Usage: + * - Register a ReCaptcha API key + * - Prepare a container to show the captcha + * ``` + *
+ *
+ *
+ * ``` + * - Use the plugin + * ``` + * formValidation(document.getElementById('testForm'), { + * plugins: { + * recaptcha: new Recaptcha({ + * element: 'captchaContainer', + * theme: 'light', + * siteKey: '...', // The key provided by Google + * language: 'en', + * message: 'The captcha is not valid' + * }) + * } + * }) + * ``` + */ + var Recaptcha = /** @class */ (function (_super) { + __extends(Recaptcha, _super); + function Recaptcha(opts) { + var _this = _super.call(this, opts) || this; + _this.widgetIds = new Map(); + _this.captchaStatus = 'NotValidated'; + _this.opts = Object.assign({}, Recaptcha.DEFAULT_OPTIONS, removeUndefined(opts)); + _this.fieldResetHandler = _this.onResetField.bind(_this); + _this.preValidateFilter = _this.preValidate.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + return _this; + } + Recaptcha.prototype.install = function () { + var _this = this; + this.core + .on('core.field.reset', this.fieldResetHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .registerFilter('validate-pre', this.preValidateFilter); + var loadPrevCaptcha = typeof window[Recaptcha.LOADED_CALLBACK] === 'undefined' ? function () { } : window[Recaptcha.LOADED_CALLBACK]; + window[Recaptcha.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + var captchaOptions = { + badge: _this.opts.badge, + callback: function () { + if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + // Mark the captcha as valid, so the library will remove the error message + _this.core.updateFieldStatus(Recaptcha.CAPTCHA_FIELD, 'Valid'); + } + }, + 'error-callback': function () { + _this.captchaStatus = 'Invalid'; + _this.core.updateFieldStatus(Recaptcha.CAPTCHA_FIELD, 'Invalid'); + }, + 'expired-callback': function () { + // Update the captcha status when session expires + _this.captchaStatus = 'NotValidated'; + _this.core.updateFieldStatus(Recaptcha.CAPTCHA_FIELD, 'NotValidated'); + }, + sitekey: _this.opts.siteKey, + size: _this.opts.size, + }; + var widgetId = window['grecaptcha'].render(_this.opts.element, captchaOptions); + _this.widgetIds.set(_this.opts.element, widgetId); + _this.core.addField(Recaptcha.CAPTCHA_FIELD, { + validators: { + promise: { + message: _this.opts.message, + promise: function (input) { + var _a; + var value = _this.widgetIds.has(_this.opts.element) + ? window['grecaptcha'].getResponse(_this.widgetIds.get(_this.opts.element)) + : input.value; + if (value === '') { + _this.captchaStatus = 'Invalid'; + return Promise.resolve({ + valid: false, + }); + } + else if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + return Promise.resolve({ + valid: true, + }); + } + else if (_this.captchaStatus === 'Valid') { + // Do not need to send the back-end verification request if the captcha is already valid + return Promise.resolve({ + valid: true, + }); + } + else { + return fetch(_this.opts.backendVerificationUrl, { + method: 'POST', + params: (_a = {}, + _a[Recaptcha.CAPTCHA_FIELD] = value, + _a), + }) + .then(function (response) { + var isValid = "".concat(response['success']) === 'true'; + _this.captchaStatus = isValid ? 'Valid' : 'Invalid'; + return Promise.resolve({ + meta: response, + valid: isValid, + }); + }) + .catch(function (_reason) { + _this.captchaStatus = 'NotValidated'; + return Promise.reject({ + valid: false, + }); + }); + } + }, + }, + }, + }); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Recaptcha.prototype.uninstall = function () { + delete window[Recaptcha.LOADED_CALLBACK]; + if (this.timer) { + clearTimeout(this.timer); + } + this.core + .off('core.field.reset', this.fieldResetHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .deregisterFilter('validate-pre', this.preValidateFilter); + this.widgetIds.clear(); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + this.core.removeField(Recaptcha.CAPTCHA_FIELD); + }; + Recaptcha.prototype.onEnabled = function () { + this.core.enableValidator(Recaptcha.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha.prototype.onDisabled = function () { + this.core.disableValidator(Recaptcha.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha.prototype.getScript = function () { + var lang = this.opts.language ? "&hl=".concat(this.opts.language) : ''; + return "https://www.google.com/recaptcha/api.js?onload=".concat(Recaptcha.LOADED_CALLBACK, "&render=explicit").concat(lang); + }; + Recaptcha.prototype.preValidate = function () { + var _this = this; + // grecaptcha.execute() is only available for invisible reCAPTCHA + if (this.isEnabled && this.opts.size === 'invisible' && this.widgetIds.has(this.opts.element)) { + var widgetId_1 = this.widgetIds.get(this.opts.element); + return this.captchaStatus === 'Valid' + ? Promise.resolve() + : new Promise(function (resolve, _reject) { + window['grecaptcha'].execute(widgetId_1).then(function () { + if (_this.timer) { + clearTimeout(_this.timer); + } + _this.timer = window.setTimeout(resolve, 1 * 1000); + }); + }); + } + else { + return Promise.resolve(); + } + }; + Recaptcha.prototype.onResetField = function (e) { + if (e.field === Recaptcha.CAPTCHA_FIELD && this.widgetIds.has(this.opts.element)) { + var widgetId = this.widgetIds.get(this.opts.element); + window['grecaptcha'].reset(widgetId); + } + }; + Recaptcha.prototype.onIconPlaced = function (e) { + if (e.field === Recaptcha.CAPTCHA_FIELD) { + // Hide the icon for captcha element, since it will look weird when the captcha is valid + if (this.opts.size === 'invisible') { + e.iconElement.style.display = 'none'; + } + else { + var captchaContainer = document.getElementById(this.opts.element); + // We need to move the icon element to after the captcha container + // Otherwise, the icon will be removed when the captcha is re-rendered (after it's expired) + if (captchaContainer) { + captchaContainer.parentNode.insertBefore(e.iconElement, captchaContainer.nextSibling); + } + } + } + }; + // The captcha field name, generated by Google reCAPTCHA + Recaptcha.CAPTCHA_FIELD = 'g-recaptcha-response'; + Recaptcha.DEFAULT_OPTIONS = { + backendVerificationUrl: '', + badge: 'bottomright', + size: 'normal', + theme: 'light', + }; + // The name of callback that will be executed after reCaptcha script is loaded + Recaptcha.LOADED_CALLBACK = '___reCaptchaLoaded___'; + return Recaptcha; + }(core.Plugin)); + + return Recaptcha; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js new file mode 100644 index 0000000..b7ca126 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-recaptcha + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Recaptcha=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},t(e,i)};var i=e.utils.fetch,o=e.utils.removeUndefined;return function(e){function a(t){var i=e.call(this,t)||this;return i.widgetIds=new Map,i.captchaStatus="NotValidated",i.opts=Object.assign({},a.DEFAULT_OPTIONS,o(t)),i.fieldResetHandler=i.onResetField.bind(i),i.preValidateFilter=i.preValidate.bind(i),i.iconPlacedHandler=i.onIconPlaced.bind(i),i}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(a,e),a.prototype.install=function(){var e=this;this.core.on("core.field.reset",this.fieldResetHandler).on("plugins.icon.placed",this.iconPlacedHandler).registerFilter("validate-pre",this.preValidateFilter);var t=void 0===window[a.LOADED_CALLBACK]?function(){}:window[a.LOADED_CALLBACK];window[a.LOADED_CALLBACK]=function(){t();var o={badge:e.opts.badge,callback:function(){""===e.opts.backendVerificationUrl&&(e.captchaStatus="Valid",e.core.updateFieldStatus(a.CAPTCHA_FIELD,"Valid"))},"error-callback":function(){e.captchaStatus="Invalid",e.core.updateFieldStatus(a.CAPTCHA_FIELD,"Invalid")},"expired-callback":function(){e.captchaStatus="NotValidated",e.core.updateFieldStatus(a.CAPTCHA_FIELD,"NotValidated")},sitekey:e.opts.siteKey,size:e.opts.size},n=window.grecaptcha.render(e.opts.element,o);e.widgetIds.set(e.opts.element,n),e.core.addField(a.CAPTCHA_FIELD,{validators:{promise:{message:e.opts.message,promise:function(t){var o,n=e.widgetIds.has(e.opts.element)?window.grecaptcha.getResponse(e.widgetIds.get(e.opts.element)):t.value;return""===n?(e.captchaStatus="Invalid",Promise.resolve({valid:!1})):""===e.opts.backendVerificationUrl?(e.captchaStatus="Valid",Promise.resolve({valid:!0})):"Valid"===e.captchaStatus?Promise.resolve({valid:!0}):i(e.opts.backendVerificationUrl,{method:"POST",params:(o={},o[a.CAPTCHA_FIELD]=n,o)}).then((function(t){var i="true"==="".concat(t.success);return e.captchaStatus=i?"Valid":"Invalid",Promise.resolve({meta:t,valid:i})})).catch((function(t){return e.captchaStatus="NotValidated",Promise.reject({valid:!1})}))}}}})};var o=this.getScript();if(!document.body.querySelector('script[src="'.concat(o,'"]'))){var n=document.createElement("script");n.type="text/javascript",n.async=!0,n.defer=!0,n.src=o,document.body.appendChild(n)}},a.prototype.uninstall=function(){delete window[a.LOADED_CALLBACK],this.timer&&clearTimeout(this.timer),this.core.off("core.field.reset",this.fieldResetHandler).off("plugins.icon.placed",this.iconPlacedHandler).deregisterFilter("validate-pre",this.preValidateFilter),this.widgetIds.clear();var e=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(e,'"]'))).forEach((function(e){return e.parentNode.removeChild(e)})),this.core.removeField(a.CAPTCHA_FIELD)},a.prototype.onEnabled=function(){this.core.enableValidator(a.CAPTCHA_FIELD,"promise")},a.prototype.onDisabled=function(){this.core.disableValidator(a.CAPTCHA_FIELD,"promise")},a.prototype.getScript=function(){var e=this.opts.language?"&hl=".concat(this.opts.language):"";return"https://www.google.com/recaptcha/api.js?onload=".concat(a.LOADED_CALLBACK,"&render=explicit").concat(e)},a.prototype.preValidate=function(){var e=this;if(this.isEnabled&&"invisible"===this.opts.size&&this.widgetIds.has(this.opts.element)){var t=this.widgetIds.get(this.opts.element);return"Valid"===this.captchaStatus?Promise.resolve():new Promise((function(i,o){window.grecaptcha.execute(t).then((function(){e.timer&&clearTimeout(e.timer),e.timer=window.setTimeout(i,1e3)}))}))}return Promise.resolve()},a.prototype.onResetField=function(e){if(e.field===a.CAPTCHA_FIELD&&this.widgetIds.has(this.opts.element)){var t=this.widgetIds.get(this.opts.element);window.grecaptcha.reset(t)}},a.prototype.onIconPlaced=function(e){if(e.field===a.CAPTCHA_FIELD)if("invisible"===this.opts.size)e.iconElement.style.display="none";else{var t=document.getElementById(this.opts.element);t&&t.parentNode.insertBefore(e.iconElement,t.nextSibling)}},a.CAPTCHA_FIELD="g-recaptcha-response",a.DEFAULT_OPTIONS={backendVerificationUrl:"",badge:"bottomright",size:"normal",theme:"light"},a.LOADED_CALLBACK="___reCaptchaLoaded___",a}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js new file mode 100644 index 0000000..cda5c22 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js @@ -0,0 +1,116 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Recaptcha3Token = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Recaptcha3Token = /** @class */ (function (_super) { + __extends(Recaptcha3Token, _super); + function Recaptcha3Token(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + action: 'submit', + hiddenTokenName: '___hidden-token___', + }, opts); + _this.onValidHandler = _this.onFormValid.bind(_this); + return _this; + } + Recaptcha3Token.prototype.install = function () { + this.core.on('core.form.valid', this.onValidHandler); + // Add a hidden field to the form + this.hiddenTokenEle = document.createElement('input'); + this.hiddenTokenEle.setAttribute('type', 'hidden'); + this.core.getFormElement().appendChild(this.hiddenTokenEle); + var loadPrevCaptcha = typeof window[Recaptcha3Token.LOADED_CALLBACK] === 'undefined' + ? function () { } + : window[Recaptcha3Token.LOADED_CALLBACK]; + window[Recaptcha3Token.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Recaptcha3Token.prototype.uninstall = function () { + delete window[Recaptcha3Token.LOADED_CALLBACK]; + this.core.off('core.form.valid', this.onValidHandler); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + // Remove hidden field from the form element + this.core.getFormElement().removeChild(this.hiddenTokenEle); + }; + Recaptcha3Token.prototype.onFormValid = function () { + var _this = this; + if (!this.isEnabled) { + return; + } + // Send recaptcha request + window['grecaptcha'].execute(this.opts.siteKey, { action: this.opts.action }).then(function (token) { + _this.hiddenTokenEle.setAttribute('name', _this.opts.hiddenTokenName); + _this.hiddenTokenEle.value = token; + // Submit the form + var form = _this.core.getFormElement(); + if (form instanceof HTMLFormElement) { + form.submit(); + } + }); + }; + Recaptcha3Token.prototype.getScript = function () { + var lang = this.opts.language ? "&hl=".concat(this.opts.language) : ''; + return ('https://www.google.com/recaptcha/api.js?' + + "onload=".concat(Recaptcha3Token.LOADED_CALLBACK, "&render=").concat(this.opts.siteKey).concat(lang)); + }; + // The name of callback that will be executed after reCaptcha script is loaded + Recaptcha3Token.LOADED_CALLBACK = '___reCaptcha3TokenLoaded___'; + return Recaptcha3Token; + }(core.Plugin)); + + return Recaptcha3Token; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js new file mode 100644 index 0000000..307a0eb --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-recaptcha3-token + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Recaptcha3Token=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};return function(t){function o(e){var o=t.call(this,e)||this;return o.opts=Object.assign({},{action:"submit",hiddenTokenName:"___hidden-token___"},e),o.onValidHandler=o.onFormValid.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}(o,t),o.prototype.install=function(){this.core.on("core.form.valid",this.onValidHandler),this.hiddenTokenEle=document.createElement("input"),this.hiddenTokenEle.setAttribute("type","hidden"),this.core.getFormElement().appendChild(this.hiddenTokenEle);var t=void 0===window[o.LOADED_CALLBACK]?function(){}:window[o.LOADED_CALLBACK];window[o.LOADED_CALLBACK]=function(){t()};var e=this.getScript();if(!document.body.querySelector('script[src="'.concat(e,'"]'))){var n=document.createElement("script");n.type="text/javascript",n.async=!0,n.defer=!0,n.src=e,document.body.appendChild(n)}},o.prototype.uninstall=function(){delete window[o.LOADED_CALLBACK],this.core.off("core.form.valid",this.onValidHandler);var t=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(t,'"]'))).forEach((function(t){return t.parentNode.removeChild(t)})),this.core.getFormElement().removeChild(this.hiddenTokenEle)},o.prototype.onFormValid=function(){var t=this;this.isEnabled&&window.grecaptcha.execute(this.opts.siteKey,{action:this.opts.action}).then((function(e){t.hiddenTokenEle.setAttribute("name",t.opts.hiddenTokenName),t.hiddenTokenEle.value=e;var o=t.core.getFormElement();o instanceof HTMLFormElement&&o.submit()}))},o.prototype.getScript=function(){var t=this.opts.language?"&hl=".concat(this.opts.language):"";return"https://www.google.com/recaptcha/api.js?"+"onload=".concat(o.LOADED_CALLBACK,"&render=").concat(this.opts.siteKey).concat(t)},o.LOADED_CALLBACK="___reCaptcha3TokenLoaded___",o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js new file mode 100644 index 0000000..d067d15 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js @@ -0,0 +1,150 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Recaptcha3 = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + var Recaptcha3 = /** @class */ (function (_super) { + __extends(Recaptcha3, _super); + function Recaptcha3(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { minimumScore: 0 }, removeUndefined(opts)); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + return _this; + } + Recaptcha3.prototype.install = function () { + var _this = this; + this.core.on('plugins.icon.placed', this.iconPlacedHandler); + var loadPrevCaptcha = typeof window[Recaptcha3.LOADED_CALLBACK] === 'undefined' ? function () { } : window[Recaptcha3.LOADED_CALLBACK]; + window[Recaptcha3.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + // Add a hidden field to the form + var tokenField = document.createElement('input'); + tokenField.setAttribute('type', 'hidden'); + tokenField.setAttribute('name', Recaptcha3.CAPTCHA_FIELD); + document.getElementById(_this.opts.element).appendChild(tokenField); + _this.core.addField(Recaptcha3.CAPTCHA_FIELD, { + validators: { + promise: { + message: _this.opts.message, + promise: function (_input) { + return new Promise(function (resolve, reject) { + window['grecaptcha'] + .execute(_this.opts.siteKey, { + action: _this.opts.action, + }) + .then(function (token) { + var _a; + // Verify it + fetch(_this.opts.backendVerificationUrl, { + method: 'POST', + params: (_a = {}, + _a[Recaptcha3.CAPTCHA_FIELD] = token, + _a), + }) + .then(function (response) { + var isValid = "".concat(response.success) === 'true' && + response.score >= _this.opts.minimumScore; + resolve({ + message: response.message || _this.opts.message, + meta: response, + valid: isValid, + }); + }) + .catch(function (_) { + reject({ + valid: false, + }); + }); + }); + }); + }, + }, + }, + }); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Recaptcha3.prototype.uninstall = function () { + delete window[Recaptcha3.LOADED_CALLBACK]; + this.core.off('plugins.icon.placed', this.iconPlacedHandler); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + this.core.removeField(Recaptcha3.CAPTCHA_FIELD); + }; + Recaptcha3.prototype.onEnabled = function () { + this.core.enableValidator(Recaptcha3.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha3.prototype.onDisabled = function () { + this.core.disableValidator(Recaptcha3.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha3.prototype.getScript = function () { + var lang = this.opts.language ? "&hl=".concat(this.opts.language) : ''; + return ('https://www.google.com/recaptcha/api.js?' + + "onload=".concat(Recaptcha3.LOADED_CALLBACK, "&render=").concat(this.opts.siteKey).concat(lang)); + }; + Recaptcha3.prototype.onIconPlaced = function (e) { + if (e.field === Recaptcha3.CAPTCHA_FIELD) { + // Hide the icon for captcha element, since it will look weird when the captcha is valid + e.iconElement.style.display = 'none'; + } + }; + // The captcha field name + Recaptcha3.CAPTCHA_FIELD = '___g-recaptcha-token___'; + // The name of callback that will be executed after reCaptcha script is loaded + Recaptcha3.LOADED_CALLBACK = '___reCaptcha3Loaded___'; + return Recaptcha3; + }(core.Plugin)); + + return Recaptcha3; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js new file mode 100644 index 0000000..1f87daa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-recaptcha3 + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Recaptcha3=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};var o=t.utils.fetch,n=t.utils.removeUndefined;return function(t){function i(e){var o=t.call(this,e)||this;return o.opts=Object.assign({},{minimumScore:0},n(e)),o.iconPlacedHandler=o.onIconPlaced.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}(i,t),i.prototype.install=function(){var t=this;this.core.on("plugins.icon.placed",this.iconPlacedHandler);var e=void 0===window[i.LOADED_CALLBACK]?function(){}:window[i.LOADED_CALLBACK];window[i.LOADED_CALLBACK]=function(){e();var n=document.createElement("input");n.setAttribute("type","hidden"),n.setAttribute("name",i.CAPTCHA_FIELD),document.getElementById(t.opts.element).appendChild(n),t.core.addField(i.CAPTCHA_FIELD,{validators:{promise:{message:t.opts.message,promise:function(e){return new Promise((function(e,n){window.grecaptcha.execute(t.opts.siteKey,{action:t.opts.action}).then((function(r){var c;o(t.opts.backendVerificationUrl,{method:"POST",params:(c={},c[i.CAPTCHA_FIELD]=r,c)}).then((function(o){var n="true"==="".concat(o.success)&&o.score>=t.opts.minimumScore;e({message:o.message||t.opts.message,meta:o,valid:n})})).catch((function(t){n({valid:!1})}))}))}))}}}})};var n=this.getScript();if(!document.body.querySelector('script[src="'.concat(n,'"]'))){var r=document.createElement("script");r.type="text/javascript",r.async=!0,r.defer=!0,r.src=n,document.body.appendChild(r)}},i.prototype.uninstall=function(){delete window[i.LOADED_CALLBACK],this.core.off("plugins.icon.placed",this.iconPlacedHandler);var t=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(t,'"]'))).forEach((function(t){return t.parentNode.removeChild(t)})),this.core.removeField(i.CAPTCHA_FIELD)},i.prototype.onEnabled=function(){this.core.enableValidator(i.CAPTCHA_FIELD,"promise")},i.prototype.onDisabled=function(){this.core.disableValidator(i.CAPTCHA_FIELD,"promise")},i.prototype.getScript=function(){var t=this.opts.language?"&hl=".concat(this.opts.language):"";return"https://www.google.com/recaptcha/api.js?"+"onload=".concat(i.LOADED_CALLBACK,"&render=").concat(this.opts.siteKey).concat(t)},i.prototype.onIconPlaced=function(t){t.field===i.CAPTCHA_FIELD&&(t.iconElement.style.display="none")},i.CAPTCHA_FIELD="___g-recaptcha-token___",i.LOADED_CALLBACK="___reCaptcha3Loaded___",i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js new file mode 100644 index 0000000..40fe7db --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js @@ -0,0 +1,97 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Semantic = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Semantic = /** @class */ (function (_super) { + __extends(Semantic, _super); + function Semantic(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-semantic', + // See https://semantic-ui.com/elements/label.html#pointing + messageClass: 'ui pointing red label', + rowInvalidClass: 'error', + rowPattern: /^.*(field|column).*$/, + rowSelector: '.fields', + rowValidClass: 'fv-has-success', + }, opts)) || this; + } + Semantic.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var parent_1 = e.element.parentElement; + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent_1.parentElement.insertBefore(e.iconElement, parent_1.nextSibling); + } + }; + Semantic.prototype.onMessagePlaced = function (e) { + var type = e.element.getAttribute('type'); + var numElements = e.elements.length; + if (('checkbox' === type || 'radio' === type) && numElements > 1) { + // Put the message at the end when there are multiple checkboxes/radios + //
+ //
+ // + //
+ //
+ // ... + //
+ //
+ // + //
+ // <-- The error message will be placed here --> + //
+ // Get the last checkbox + var last = e.elements[numElements - 1]; + var parent_2 = last.parentElement; + if (hasClass(parent_2, type) && hasClass(parent_2, 'ui')) { + parent_2.parentElement.insertBefore(e.messageElement, parent_2.nextSibling); + } + } + }; + return Semantic; + }(pluginFramework.Framework)); + + return Semantic; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js new file mode 100644 index 0000000..cf46d57 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-semantic + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Semantic=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};var o=e.utils.classSet,i=e.utils.hasClass;return function(e){function t(t){return e.call(this,Object.assign({},{formClass:"fv-plugins-semantic",messageClass:"ui pointing red label",rowInvalidClass:"error",rowPattern:/^.*(field|column).*$/,rowSelector:".fields",rowValidClass:"fv-has-success"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}(t,e),t.prototype.onIconPlaced=function(e){var t=e.element.getAttribute("type");if("checkbox"===t||"radio"===t){var n=e.element.parentElement;o(e.iconElement,{"fv-plugins-icon-check":!0}),n.parentElement.insertBefore(e.iconElement,n.nextSibling)}},t.prototype.onMessagePlaced=function(e){var t=e.element.getAttribute("type"),n=e.elements.length;if(("checkbox"===t||"radio"===t)&&n>1){var o=e.elements[n-1].parentElement;i(o,t)&&i(o,"ui")&&o.parentElement.insertBefore(e.messageElement,o.nextSibling)}},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js new file mode 100644 index 0000000..1efb04c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js @@ -0,0 +1,146 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Sequence = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + /** + * ``` + * new Core(form, { ... }) + * .registerPlugin('sequence', new Sequence({ + * enabled: false // Default value is `true` + * })); + * ``` + * + * The `enabled` option can be: + * - `true` (default): When a field has multiple validators, all of them will be checked respectively. + * If errors occur in multiple validators, all of them will be displayed to the user + * - `false`: When a field has multiple validators, validation for this field will be terminated upon the + * first encountered error. + * Thus, only the very first error message related to this field will be displayed to the user + * + * User can set the `enabled` option to all fields as sample code above, or apply it for specific fields as following: + * ``` + * new Core(form, { ... }) + * .registerPlugin('sequence', new Sequence({ + * enabled: { + * fullName: true, // It's not necessary since the default value is `true` + * username: false, + * email: false + * } + * })); + * ``` + */ + var Sequence = /** @class */ (function (_super) { + __extends(Sequence, _super); + function Sequence(opts) { + var _this = _super.call(this, opts) || this; + _this.invalidFields = new Map(); + _this.opts = Object.assign({}, { enabled: true }, removeUndefined(opts)); + _this.validatorHandler = _this.onValidatorValidated.bind(_this); + _this.shouldValidateFilter = _this.shouldValidate.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + return _this; + } + Sequence.prototype.install = function () { + this.core + .on('core.validator.validated', this.validatorHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('core.element.validating', this.elementValidatingHandler) + .registerFilter('field-should-validate', this.shouldValidateFilter); + }; + Sequence.prototype.uninstall = function () { + this.invalidFields.clear(); + this.core + .off('core.validator.validated', this.validatorHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('core.element.validating', this.elementValidatingHandler) + .deregisterFilter('field-should-validate', this.shouldValidateFilter); + }; + Sequence.prototype.shouldValidate = function (field, element, _value, validator) { + if (!this.isEnabled) { + return true; + } + // Stop validating + // if the `enabled` option is set to `false` + // and there's at least one validator that field doesn't pass + var stop = (this.opts.enabled === true || this.opts.enabled[field] === true) && + this.invalidFields.has(element) && + !!this.invalidFields.get(element).length && + this.invalidFields.get(element).indexOf(validator) === -1; + return !stop; + }; + Sequence.prototype.onValidatorValidated = function (e) { + var validators = this.invalidFields.has(e.element) ? this.invalidFields.get(e.element) : []; + var index = validators.indexOf(e.validator); + if (e.result.valid && index >= 0) { + validators.splice(index, 1); + } + else if (!e.result.valid && index === -1) { + validators.push(e.validator); + } + this.invalidFields.set(e.element, validators); + }; + Sequence.prototype.onFieldAdded = function (e) { + // Remove the field element from set of invalid elements + if (e.elements) { + this.clearInvalidFields(e.elements); + } + }; + Sequence.prototype.onElementNotValidated = function (e) { + this.clearInvalidFields(e.elements); + }; + Sequence.prototype.onElementValidating = function (e) { + this.clearInvalidFields(e.elements); + }; + Sequence.prototype.clearInvalidFields = function (elements) { + var _this = this; + elements.forEach(function (ele) { return _this.invalidFields.delete(ele); }); + }; + return Sequence; + }(core.Plugin)); + + return Sequence; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js new file mode 100644 index 0000000..b0bd8e4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-sequence + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Sequence=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},t(e,i)};var i=e.utils.removeUndefined;return function(e){function l(t){var l=e.call(this,t)||this;return l.invalidFields=new Map,l.opts=Object.assign({},{enabled:!0},i(t)),l.validatorHandler=l.onValidatorValidated.bind(l),l.shouldValidateFilter=l.shouldValidate.bind(l),l.fieldAddedHandler=l.onFieldAdded.bind(l),l.elementNotValidatedHandler=l.onElementNotValidated.bind(l),l.elementValidatingHandler=l.onElementValidating.bind(l),l}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function l(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(l.prototype=i.prototype,new l)}(l,e),l.prototype.install=function(){this.core.on("core.validator.validated",this.validatorHandler).on("core.field.added",this.fieldAddedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("core.element.validating",this.elementValidatingHandler).registerFilter("field-should-validate",this.shouldValidateFilter)},l.prototype.uninstall=function(){this.invalidFields.clear(),this.core.off("core.validator.validated",this.validatorHandler).off("core.field.added",this.fieldAddedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("core.element.validating",this.elementValidatingHandler).deregisterFilter("field-should-validate",this.shouldValidateFilter)},l.prototype.shouldValidate=function(e,t,i,l){return!this.isEnabled||!((!0===this.opts.enabled||!0===this.opts.enabled[e])&&this.invalidFields.has(t)&&!!this.invalidFields.get(t).length&&-1===this.invalidFields.get(t).indexOf(l))},l.prototype.onValidatorValidated=function(e){var t=this.invalidFields.has(e.element)?this.invalidFields.get(e.element):[],i=t.indexOf(e.validator);e.result.valid&&i>=0?t.splice(i,1):e.result.valid||-1!==i||t.push(e.validator),this.invalidFields.set(e.element,t)},l.prototype.onFieldAdded=function(e){e.elements&&this.clearInvalidFields(e.elements)},l.prototype.onElementNotValidated=function(e){this.clearInvalidFields(e.elements)},l.prototype.onElementValidating=function(e){this.clearInvalidFields(e.elements)},l.prototype.clearInvalidFields=function(e){var t=this;e.forEach((function(e){return t.invalidFields.delete(e)}))},l}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js new file mode 100644 index 0000000..cd5a787 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js @@ -0,0 +1,76 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Shoelace = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // This plugin supports validating the form made with https://shoelace.style + var Shoelace = /** @class */ (function (_super) { + __extends(Shoelace, _super); + function Shoelace(opts) { + // See https://shoelace.style/#forms + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-shoelace', + messageClass: 'fv-help-block', + rowInvalidClass: 'input-invalid', + rowPattern: /^(.*)(col|offset)-[0-9]+(.*)$/, + rowSelector: '.input-field', + rowValidClass: 'input-valid', + }, opts)) || this; + } + Shoelace.prototype.onIconPlaced = function (e) { + var parent = e.element.parentElement; + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + if ('LABEL' === parent.tagName) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + } + }; + return Shoelace; + }(pluginFramework.Framework)); + + return Shoelace; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js new file mode 100644 index 0000000..2b1f9b4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-shoelace + * @version 2.4.0 + */ + +!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],e):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Shoelace=e(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,e){"use strict";var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,e){o.__proto__=e}||function(o,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t])},t(o,e)};var n=o.utils.classSet;return function(o){function e(e){return o.call(this,Object.assign({},{formClass:"fv-plugins-shoelace",messageClass:"fv-help-block",rowInvalidClass:"input-invalid",rowPattern:/^(.*)(col|offset)-[0-9]+(.*)$/,rowSelector:".input-field",rowValidClass:"input-valid"},e))||this}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,o),e.prototype.onIconPlaced=function(o){var e=o.element.parentElement,t=o.element.getAttribute("type");"checkbox"!==t&&"radio"!==t||(n(o.iconElement,{"fv-plugins-icon-check":!0}),"LABEL"===e.tagName&&e.parentElement.insertBefore(o.iconElement,e.nextSibling))},e}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js new file mode 100644 index 0000000..dd6da4a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js @@ -0,0 +1,75 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Spectre = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Spectre = /** @class */ (function (_super) { + __extends(Spectre, _super); + function Spectre(opts) { + // See https://picturepan2.github.io/spectre/elements.html#forms + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-spectre', + messageClass: 'form-input-hint', + rowInvalidClass: 'has-error', + rowPattern: /^(.*)(col)(-(xs|sm|md|lg))*-[0-9]+(.*)$/, + rowSelector: '.form-group', + rowValidClass: 'has-success', + }, opts)) || this; + } + Spectre.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + // Place it after the container of checkbox/radio + if (hasClass(parent, "form-".concat(type))) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + } + }; + return Spectre; + }(pluginFramework.Framework)); + + return Spectre; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js new file mode 100644 index 0000000..02314ce --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-spectre + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Spectre=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet,r=o.utils.hasClass;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-spectre",messageClass:"form-input-hint",rowInvalidClass:"has-error",rowPattern:/^(.*)(col)(-(xs|sm|md|lg))*-[0-9]+(.*)$/,rowSelector:".form-group",rowValidClass:"has-success"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(n(o.iconElement,{"fv-plugins-icon-check":!0}),r(e,"form-".concat(t))&&e.parentElement.insertBefore(o.iconElement,e.nextSibling))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js new file mode 100644 index 0000000..2109c61 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js @@ -0,0 +1,134 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.StartEndDate = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var StartEndDate = /** @class */ (function (_super) { + __extends(StartEndDate, _super); + function StartEndDate(opts) { + var _this = _super.call(this, opts) || this; + _this.fieldValidHandler = _this.onFieldValid.bind(_this); + _this.fieldInvalidHandler = _this.onFieldInvalid.bind(_this); + return _this; + } + StartEndDate.prototype.install = function () { + var _this = this; + // Backup the original options + var fieldOptions = this.core.getFields(); + this.startDateFieldOptions = fieldOptions[this.opts.startDate.field]; + this.endDateFieldOptions = fieldOptions[this.opts.endDate.field]; + var form = this.core.getFormElement(); + this.core + .on('core.field.valid', this.fieldValidHandler) + .on('core.field.invalid', this.fieldInvalidHandler) + .addField(this.opts.startDate.field, { + validators: { + date: { + format: this.opts.format, + max: function () { + var endDateField = form.querySelector("[name=\"".concat(_this.opts.endDate.field, "\"]")); + return endDateField.value; + }, + message: this.opts.startDate.message, + }, + }, + }) + .addField(this.opts.endDate.field, { + validators: { + date: { + format: this.opts.format, + message: this.opts.endDate.message, + min: function () { + var startDateField = form.querySelector("[name=\"".concat(_this.opts.startDate.field, "\"]")); + return startDateField.value; + }, + }, + }, + }); + }; + StartEndDate.prototype.uninstall = function () { + this.core.removeField(this.opts.startDate.field); + if (this.startDateFieldOptions) { + this.core.addField(this.opts.startDate.field, this.startDateFieldOptions); + } + this.core.removeField(this.opts.endDate.field); + if (this.endDateFieldOptions) { + this.core.addField(this.opts.endDate.field, this.endDateFieldOptions); + } + this.core.off('core.field.valid', this.fieldValidHandler).off('core.field.invalid', this.fieldInvalidHandler); + }; + StartEndDate.prototype.onEnabled = function () { + this.core.enableValidator(this.opts.startDate.field, 'date').enableValidator(this.opts.endDate.field, 'date'); + }; + StartEndDate.prototype.onDisabled = function () { + this.core.disableValidator(this.opts.startDate.field, 'date').disableValidator(this.opts.endDate.field, 'date'); + }; + StartEndDate.prototype.onFieldInvalid = function (field) { + switch (field) { + case this.opts.startDate.field: + this.startDateValid = false; + break; + case this.opts.endDate.field: + this.endDateValid = false; + break; + } + }; + StartEndDate.prototype.onFieldValid = function (field) { + switch (field) { + case this.opts.startDate.field: + this.startDateValid = true; + if (this.isEnabled && this.endDateValid === false) { + this.core.revalidateField(this.opts.endDate.field); + } + break; + case this.opts.endDate.field: + this.endDateValid = true; + if (this.isEnabled && this.startDateValid === false) { + this.core.revalidateField(this.opts.startDate.field); + } + break; + } + }; + return StartEndDate; + }(core.Plugin)); + + return StartEndDate; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js new file mode 100644 index 0000000..0df3756 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-start-end-date + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.StartEndDate=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};return function(t){function i(e){var i=t.call(this,e)||this;return i.fieldValidHandler=i.onFieldValid.bind(i),i.fieldInvalidHandler=i.onFieldInvalid.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function a(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(a.prototype=i.prototype,new a)}(i,t),i.prototype.install=function(){var t=this,e=this.core.getFields();this.startDateFieldOptions=e[this.opts.startDate.field],this.endDateFieldOptions=e[this.opts.endDate.field];var i=this.core.getFormElement();this.core.on("core.field.valid",this.fieldValidHandler).on("core.field.invalid",this.fieldInvalidHandler).addField(this.opts.startDate.field,{validators:{date:{format:this.opts.format,max:function(){return i.querySelector('[name="'.concat(t.opts.endDate.field,'"]')).value},message:this.opts.startDate.message}}}).addField(this.opts.endDate.field,{validators:{date:{format:this.opts.format,message:this.opts.endDate.message,min:function(){return i.querySelector('[name="'.concat(t.opts.startDate.field,'"]')).value}}}})},i.prototype.uninstall=function(){this.core.removeField(this.opts.startDate.field),this.startDateFieldOptions&&this.core.addField(this.opts.startDate.field,this.startDateFieldOptions),this.core.removeField(this.opts.endDate.field),this.endDateFieldOptions&&this.core.addField(this.opts.endDate.field,this.endDateFieldOptions),this.core.off("core.field.valid",this.fieldValidHandler).off("core.field.invalid",this.fieldInvalidHandler)},i.prototype.onEnabled=function(){this.core.enableValidator(this.opts.startDate.field,"date").enableValidator(this.opts.endDate.field,"date")},i.prototype.onDisabled=function(){this.core.disableValidator(this.opts.startDate.field,"date").disableValidator(this.opts.endDate.field,"date")},i.prototype.onFieldInvalid=function(t){switch(t){case this.opts.startDate.field:this.startDateValid=!1;break;case this.opts.endDate.field:this.endDateValid=!1}},i.prototype.onFieldValid=function(t){switch(t){case this.opts.startDate.field:this.startDateValid=!0,this.isEnabled&&!1===this.endDateValid&&this.core.revalidateField(this.opts.endDate.field);break;case this.opts.endDate.field:this.endDateValid=!0,this.isEnabled&&!1===this.startDateValid&&this.core.revalidateField(this.opts.startDate.field)}},i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js new file mode 100644 index 0000000..f78056a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js @@ -0,0 +1,143 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.SubmitButton = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var SubmitButton = /** @class */ (function (_super) { + __extends(SubmitButton, _super); + function SubmitButton(opts) { + var _this = _super.call(this, opts) || this; + _this.isFormValid = false; + _this.isButtonClicked = false; + _this.opts = Object.assign({}, { + // Set it to `true` to support classical ASP.Net form + aspNetButton: false, + // By default, don't perform validation when clicking on + // the submit button/input which have `formnovalidate` attribute + buttons: function (form) { + return [].slice.call(form.querySelectorAll('[type="submit"]:not([formnovalidate])')); + }, + liveMode: true, + }, opts); + _this.submitHandler = _this.handleSubmitEvent.bind(_this); + _this.buttonClickHandler = _this.handleClickEvent.bind(_this); + _this.ignoreValidationFilter = _this.ignoreValidation.bind(_this); + return _this; + } + SubmitButton.prototype.install = function () { + var _this = this; + if (!(this.core.getFormElement() instanceof HTMLFormElement)) { + return; + } + var form = this.core.getFormElement(); + this.submitButtons = this.opts.buttons(form); + // Disable client side validation in HTML 5 + form.setAttribute('novalidate', 'novalidate'); + // Disable the default submission first + form.addEventListener('submit', this.submitHandler); + this.hiddenClickedEle = document.createElement('input'); + this.hiddenClickedEle.setAttribute('type', 'hidden'); + form.appendChild(this.hiddenClickedEle); + this.submitButtons.forEach(function (button) { + button.addEventListener('click', _this.buttonClickHandler); + }); + this.core.registerFilter('element-ignored', this.ignoreValidationFilter); + }; + SubmitButton.prototype.uninstall = function () { + var _this = this; + var form = this.core.getFormElement(); + if (form instanceof HTMLFormElement) { + form.removeEventListener('submit', this.submitHandler); + } + this.submitButtons.forEach(function (button) { + button.removeEventListener('click', _this.buttonClickHandler); + }); + this.hiddenClickedEle.parentElement.removeChild(this.hiddenClickedEle); + this.core.deregisterFilter('element-ignored', this.ignoreValidationFilter); + }; + SubmitButton.prototype.handleSubmitEvent = function (e) { + this.validateForm(e); + }; + SubmitButton.prototype.handleClickEvent = function (e) { + var target = e.currentTarget; + this.isButtonClicked = true; + if (target instanceof HTMLElement) { + if (this.opts.aspNetButton && this.isFormValid === true) ; + else { + var form = this.core.getFormElement(); + form.removeEventListener('submit', this.submitHandler); + this.clickedButton = e.target; + var name_1 = this.clickedButton.getAttribute('name'); + var value = this.clickedButton.getAttribute('value'); + if (name_1 && value) { + this.hiddenClickedEle.setAttribute('name', name_1); + this.hiddenClickedEle.setAttribute('value', value); + } + this.validateForm(e); + } + } + }; + SubmitButton.prototype.validateForm = function (e) { + var _this = this; + if (!this.isEnabled) { + return; + } + e.preventDefault(); + this.core.validate().then(function (result) { + if (result === 'Valid' && _this.opts.aspNetButton && !_this.isFormValid && _this.clickedButton) { + _this.isFormValid = true; + _this.clickedButton.removeEventListener('click', _this.buttonClickHandler); + // It's the time for ASP.Net submit button to do its own submission + _this.clickedButton.click(); + } + }); + }; + SubmitButton.prototype.ignoreValidation = function (_field, _element, _elements) { + if (!this.isEnabled) { + return false; + } + return this.opts.liveMode ? false : !this.isButtonClicked; + }; + return SubmitButton; + }(core.Plugin)); + + return SubmitButton; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js new file mode 100644 index 0000000..57d7d17 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-submit-button + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.SubmitButton=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};return function(t){function i(e){var i=t.call(this,e)||this;return i.isFormValid=!1,i.isButtonClicked=!1,i.opts=Object.assign({},{aspNetButton:!1,buttons:function(t){return[].slice.call(t.querySelectorAll('[type="submit"]:not([formnovalidate])'))},liveMode:!0},e),i.submitHandler=i.handleSubmitEvent.bind(i),i.buttonClickHandler=i.handleClickEvent.bind(i),i.ignoreValidationFilter=i.ignoreValidation.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,t),i.prototype.install=function(){var t=this;if(this.core.getFormElement()instanceof HTMLFormElement){var e=this.core.getFormElement();this.submitButtons=this.opts.buttons(e),e.setAttribute("novalidate","novalidate"),e.addEventListener("submit",this.submitHandler),this.hiddenClickedEle=document.createElement("input"),this.hiddenClickedEle.setAttribute("type","hidden"),e.appendChild(this.hiddenClickedEle),this.submitButtons.forEach((function(e){e.addEventListener("click",t.buttonClickHandler)})),this.core.registerFilter("element-ignored",this.ignoreValidationFilter)}},i.prototype.uninstall=function(){var t=this,e=this.core.getFormElement();e instanceof HTMLFormElement&&e.removeEventListener("submit",this.submitHandler),this.submitButtons.forEach((function(e){e.removeEventListener("click",t.buttonClickHandler)})),this.hiddenClickedEle.parentElement.removeChild(this.hiddenClickedEle),this.core.deregisterFilter("element-ignored",this.ignoreValidationFilter)},i.prototype.handleSubmitEvent=function(t){this.validateForm(t)},i.prototype.handleClickEvent=function(t){var e=t.currentTarget;if(this.isButtonClicked=!0,e instanceof HTMLElement)if(this.opts.aspNetButton&&!0===this.isFormValid);else{this.core.getFormElement().removeEventListener("submit",this.submitHandler),this.clickedButton=t.target;var i=this.clickedButton.getAttribute("name"),n=this.clickedButton.getAttribute("value");i&&n&&(this.hiddenClickedEle.setAttribute("name",i),this.hiddenClickedEle.setAttribute("value",n)),this.validateForm(t)}},i.prototype.validateForm=function(t){var e=this;this.isEnabled&&(t.preventDefault(),this.core.validate().then((function(t){"Valid"===t&&e.opts.aspNetButton&&!e.isFormValid&&e.clickedButton&&(e.isFormValid=!0,e.clickedButton.removeEventListener("click",e.buttonClickHandler),e.clickedButton.click())})))},i.prototype.ignoreValidation=function(t,e,i){return!!this.isEnabled&&(!this.opts.liveMode&&!this.isButtonClicked)},i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js new file mode 100644 index 0000000..1bf5209 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js @@ -0,0 +1,72 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Tachyons = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Tachyons = /** @class */ (function (_super) { + __extends(Tachyons, _super); + function Tachyons(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-tachyons', + messageClass: 'small', + rowInvalidClass: 'red', + rowPattern: /^(.*)fl(.*)$/, + rowSelector: '.fl', + rowValidClass: 'green', + }, opts)) || this; + } + Tachyons.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Tachyons; + }(pluginFramework.Framework)); + + return Tachyons; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js new file mode 100644 index 0000000..4ad1eee --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-tachyons + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Tachyons=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-tachyons",messageClass:"small",rowInvalidClass:"red",rowPattern:/^(.*)fl(.*)$/,rowSelector:".fl",rowValidClass:"green"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js new file mode 100644 index 0000000..93644b9 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js @@ -0,0 +1,198 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Tooltip = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Tooltip = /** @class */ (function (_super) { + __extends(Tooltip, _super); + function Tooltip(opts) { + var _this = _super.call(this, opts) || this; + // Map the element with message + _this.messages = new Map(); + _this.opts = Object.assign({}, { + placement: 'top', + trigger: 'click', + }, opts); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + _this.validatorValidatedHandler = _this.onValidatorValidated.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.documentClickHandler = _this.onDocumentClicked.bind(_this); + return _this; + } + Tooltip.prototype.install = function () { + var _a; + this.tip = document.createElement('div'); + classSet(this.tip, (_a = { + 'fv-plugins-tooltip': true + }, + _a["fv-plugins-tooltip--".concat(this.opts.placement)] = true, + _a)); + document.body.appendChild(this.tip); + this.core + .on('plugins.icon.placed', this.iconPlacedHandler) + .on('core.validator.validated', this.validatorValidatedHandler) + .on('core.element.validated', this.elementValidatedHandler); + if ('click' === this.opts.trigger) { + document.addEventListener('click', this.documentClickHandler); + } + }; + Tooltip.prototype.uninstall = function () { + this.messages.clear(); + document.body.removeChild(this.tip); + this.core + .off('plugins.icon.placed', this.iconPlacedHandler) + .off('core.validator.validated', this.validatorValidatedHandler) + .off('core.element.validated', this.elementValidatedHandler); + if ('click' === this.opts.trigger) { + document.removeEventListener('click', this.documentClickHandler); + } + }; + Tooltip.prototype.onIconPlaced = function (e) { + var _this = this; + classSet(e.iconElement, { + 'fv-plugins-tooltip-icon': true, + }); + switch (this.opts.trigger) { + case 'hover': + e.iconElement.addEventListener('mouseenter', function (evt) { return _this.show(e.element, evt); }); + e.iconElement.addEventListener('mouseleave', function (_evt) { return _this.hide(); }); + break; + case 'click': + default: + e.iconElement.addEventListener('click', function (evt) { return _this.show(e.element, evt); }); + break; + } + }; + Tooltip.prototype.onValidatorValidated = function (e) { + if (!e.result.valid) { + var elements = e.elements; + var type = e.element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + // Get the message + var message = typeof e.result.message === 'string' ? e.result.message : e.result.message[this.core.getLocale()]; + this.messages.set(ele, message); + } + }; + Tooltip.prototype.onElementValidated = function (e) { + if (e.valid) { + // Clear the message + var elements = e.elements; + var type = e.element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + this.messages.delete(ele); + } + }; + Tooltip.prototype.onDocumentClicked = function (_e) { + this.hide(); + }; + Tooltip.prototype.show = function (ele, e) { + if (!this.isEnabled) { + return; + } + e.preventDefault(); + e.stopPropagation(); + if (!this.messages.has(ele)) { + return; + } + classSet(this.tip, { + 'fv-plugins-tooltip--hide': false, + }); + this.tip.innerHTML = "
".concat(this.messages.get(ele), "
"); + // Calculate position of the icon element + var icon = e.target; + var targetRect = icon.getBoundingClientRect(); + var _a = this.tip.getBoundingClientRect(), height = _a.height, width = _a.width; + var top = 0; + var left = 0; + switch (this.opts.placement) { + case 'bottom': + top = targetRect.top + targetRect.height; + left = targetRect.left + targetRect.width / 2 - width / 2; + break; + case 'bottom-left': + top = targetRect.top + targetRect.height; + left = targetRect.left; + break; + case 'bottom-right': + top = targetRect.top + targetRect.height; + left = targetRect.left + targetRect.width - width; + break; + case 'left': + top = targetRect.top + targetRect.height / 2 - height / 2; + left = targetRect.left - width; + break; + case 'right': + top = targetRect.top + targetRect.height / 2 - height / 2; + left = targetRect.left + targetRect.width; + break; + case 'top-left': + top = targetRect.top - height; + left = targetRect.left; + break; + case 'top-right': + top = targetRect.top - height; + left = targetRect.left + targetRect.width - width; + break; + case 'top': + default: + top = targetRect.top - height; + left = targetRect.left + targetRect.width / 2 - width / 2; + break; + } + var scrollTop = window.scrollY || document.documentElement.scrollTop || document.body.scrollTop || 0; + var scrollLeft = window.scrollX || document.documentElement.scrollLeft || document.body.scrollLeft || 0; + top = top + scrollTop; + left = left + scrollLeft; + this.tip.setAttribute('style', "top: ".concat(top, "px; left: ").concat(left, "px")); + }; + Tooltip.prototype.hide = function () { + if (this.isEnabled) { + classSet(this.tip, { + 'fv-plugins-tooltip--hide': true, + }); + } + }; + return Tooltip; + }(core.Plugin)); + + return Tooltip; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js new file mode 100644 index 0000000..90ffbef --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-tooltip + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Tooltip=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};var i=t.utils.classSet;return function(t){function o(e){var i=t.call(this,e)||this;return i.messages=new Map,i.opts=Object.assign({},{placement:"top",trigger:"click"},e),i.iconPlacedHandler=i.onIconPlaced.bind(i),i.validatorValidatedHandler=i.onValidatorValidated.bind(i),i.elementValidatedHandler=i.onElementValidated.bind(i),i.documentClickHandler=i.onDocumentClicked.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(o,t),o.prototype.install=function(){var t;this.tip=document.createElement("div"),i(this.tip,((t={"fv-plugins-tooltip":!0})["fv-plugins-tooltip--".concat(this.opts.placement)]=!0,t)),document.body.appendChild(this.tip),this.core.on("plugins.icon.placed",this.iconPlacedHandler).on("core.validator.validated",this.validatorValidatedHandler).on("core.element.validated",this.elementValidatedHandler),"click"===this.opts.trigger&&document.addEventListener("click",this.documentClickHandler)},o.prototype.uninstall=function(){this.messages.clear(),document.body.removeChild(this.tip),this.core.off("plugins.icon.placed",this.iconPlacedHandler).off("core.validator.validated",this.validatorValidatedHandler).off("core.element.validated",this.elementValidatedHandler),"click"===this.opts.trigger&&document.removeEventListener("click",this.documentClickHandler)},o.prototype.onIconPlaced=function(t){var e=this;if(i(t.iconElement,{"fv-plugins-tooltip-icon":!0}),"hover"===this.opts.trigger)t.iconElement.addEventListener("mouseenter",(function(i){return e.show(t.element,i)})),t.iconElement.addEventListener("mouseleave",(function(t){return e.hide()}));else t.iconElement.addEventListener("click",(function(i){return e.show(t.element,i)}))},o.prototype.onValidatorValidated=function(t){if(!t.result.valid){var e=t.elements,i=t.element.getAttribute("type"),o="radio"===i||"checkbox"===i?e[0]:t.element,n="string"==typeof t.result.message?t.result.message:t.result.message[this.core.getLocale()];this.messages.set(o,n)}},o.prototype.onElementValidated=function(t){if(t.valid){var e=t.elements,i=t.element.getAttribute("type"),o="radio"===i||"checkbox"===i?e[0]:t.element;this.messages.delete(o)}},o.prototype.onDocumentClicked=function(t){this.hide()},o.prototype.show=function(t,e){if(this.isEnabled&&(e.preventDefault(),e.stopPropagation(),this.messages.has(t))){i(this.tip,{"fv-plugins-tooltip--hide":!1}),this.tip.innerHTML='
'.concat(this.messages.get(t),"
");var o=e.target.getBoundingClientRect(),n=this.tip.getBoundingClientRect(),l=n.height,a=n.width,r=0,s=0;switch(this.opts.placement){case"bottom":r=o.top+o.height,s=o.left+o.width/2-a/2;break;case"bottom-left":r=o.top+o.height,s=o.left;break;case"bottom-right":r=o.top+o.height,s=o.left+o.width-a;break;case"left":r=o.top+o.height/2-l/2,s=o.left-a;break;case"right":r=o.top+o.height/2-l/2,s=o.left+o.width;break;case"top-left":r=o.top-l,s=o.left;break;case"top-right":r=o.top-l,s=o.left+o.width-a;break;default:r=o.top-l,s=o.left+o.width/2-a/2}r+=window.scrollY||document.documentElement.scrollTop||document.body.scrollTop||0,s+=window.scrollX||document.documentElement.scrollLeft||document.body.scrollLeft||0,this.tip.setAttribute("style","top: ".concat(r,"px; left: ").concat(s,"px"))}},o.prototype.hide=function(){this.isEnabled&&i(this.tip,{"fv-plugins-tooltip--hide":!0})},o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js new file mode 100644 index 0000000..9804d96 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js @@ -0,0 +1,69 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Transformer = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Transformer = /** @class */ (function (_super) { + __extends(Transformer, _super); + function Transformer(opts) { + var _this = _super.call(this, opts) || this; + _this.valueFilter = _this.getElementValue.bind(_this); + return _this; + } + Transformer.prototype.install = function () { + this.core.registerFilter('field-value', this.valueFilter); + }; + Transformer.prototype.uninstall = function () { + this.core.deregisterFilter('field-value', this.valueFilter); + }; + Transformer.prototype.getElementValue = function (defaultValue, field, element, validator) { + if (!this.isEnabled) { + return defaultValue; + } + return this.opts[field] && this.opts[field][validator] && 'function' === typeof this.opts[field][validator] + ? this.opts[field][validator].apply(this, [field, element, validator]) + : defaultValue; + }; + return Transformer; + }(core.Plugin)); + + return Transformer; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js new file mode 100644 index 0000000..59a8b80 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-transformer + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Transformer=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},o(t,e)};return function(t){function e(o){var e=t.call(this,o)||this;return e.valueFilter=e.getElementValue.bind(e),e}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype.install=function(){this.core.registerFilter("field-value",this.valueFilter)},e.prototype.uninstall=function(){this.core.deregisterFilter("field-value",this.valueFilter)},e.prototype.getElementValue=function(t,o,e,i){return this.isEnabled&&this.opts[o]&&this.opts[o][i]&&"function"==typeof this.opts[o][i]?this.opts[o][i].apply(this,[o,e,i]):t},e}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js new file mode 100644 index 0000000..b67dc26 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js @@ -0,0 +1,199 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Trigger = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Indicate the events which the validation will be executed when these events are triggered + * + * ``` + * const fv = formValidation(form, { + * fields: { + * fullName: {}, + * email: {}, + * }, + * }); + * + * // Validate fields when the `blur` events are triggered + * fv.registerPlugin(Trigger, { + * event: 'blur', + * }); + * + * // We can indicate different events for each particular field + * fv.registerPlugin(Trigger, { + * event: { + * fullName: 'blur', + * email: 'change', + * }, + * }); + * + * // If we don't want the field to be validated automatically, set the associate value to `false` + * fv.registerPlugin(Trigger, { + * event: { + * email: false, // The field is only validated when we click the submit button of form + * }, + * }); + * ``` + */ + var Trigger = /** @class */ (function (_super) { + __extends(Trigger, _super); + function Trigger(opts) { + var _this = _super.call(this, opts) || this; + _this.handlers = []; + _this.timers = new Map(); + var ele = document.createElement('div'); + _this.defaultEvent = !('oninput' in ele) ? 'keyup' : 'input'; + _this.opts = Object.assign({}, { + delay: 0, + event: _this.defaultEvent, + threshold: 0, + }, opts); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + return _this; + } + Trigger.prototype.install = function () { + this.core.on('core.field.added', this.fieldAddedHandler).on('core.field.removed', this.fieldRemovedHandler); + }; + Trigger.prototype.uninstall = function () { + this.handlers.forEach(function (item) { return item.element.removeEventListener(item.event, item.handler); }); + this.handlers = []; + this.timers.forEach(function (t) { return window.clearTimeout(t); }); + this.timers.clear(); + this.core.off('core.field.added', this.fieldAddedHandler).off('core.field.removed', this.fieldRemovedHandler); + }; + Trigger.prototype.prepareHandler = function (field, elements) { + var _this = this; + elements.forEach(function (ele) { + var events = []; + if (!!_this.opts.event && _this.opts.event[field] === false) { + events = []; + } + else if (!!_this.opts.event && !!_this.opts.event[field] && typeof _this.opts.event[field] !== 'function') { + // To fix the case where `field` is a special property of String + // For example, `link` is the special function of `String.prototype` + // In this case, `this.opts.event[field]` is a function, not a string + events = _this.opts.event[field].split(' '); + } + else if ('string' === typeof _this.opts.event && _this.opts.event !== _this.defaultEvent) { + events = _this.opts.event.split(' '); + } + else { + var type = ele.getAttribute('type'); + var tagName = ele.tagName.toLowerCase(); + // IE10/11 fires the `input` event when focus on the field having a placeholder + var event_1 = 'radio' === type || 'checkbox' === type || 'file' === type || 'select' === tagName + ? 'change' + : _this.ieVersion >= 10 && ele.getAttribute('placeholder') + ? 'keyup' + : _this.defaultEvent; + events = [event_1]; + } + events.forEach(function (evt) { + var evtHandler = function (e) { return _this.handleEvent(e, field, ele); }; + _this.handlers.push({ + element: ele, + event: evt, + field: field, + handler: evtHandler, + }); + ele.addEventListener(evt, evtHandler); + }); + }); + }; + Trigger.prototype.handleEvent = function (e, field, ele) { + var _this = this; + if (this.isEnabled && + this.exceedThreshold(field, ele) && + this.core.executeFilter('plugins-trigger-should-validate', true, [field, ele])) { + var handler = function () { + return _this.core.validateElement(field, ele).then(function (_) { + _this.core.emit('plugins.trigger.executed', { + element: ele, + event: e, + field: field, + }); + }); + }; + var delay = this.opts.delay[field] || this.opts.delay; + if (delay === 0) { + handler(); + } + else { + var timer = this.timers.get(ele); + if (timer) { + window.clearTimeout(timer); + } + this.timers.set(ele, window.setTimeout(handler, delay * 1000)); + } + } + }; + Trigger.prototype.onFieldAdded = function (e) { + this.handlers + .filter(function (item) { return item.field === e.field; }) + .forEach(function (item) { return item.element.removeEventListener(item.event, item.handler); }); + this.prepareHandler(e.field, e.elements); + }; + Trigger.prototype.onFieldRemoved = function (e) { + this.handlers + .filter(function (item) { return item.field === e.field && e.elements.indexOf(item.element) >= 0; }) + .forEach(function (item) { return item.element.removeEventListener(item.event, item.handler); }); + }; + Trigger.prototype.exceedThreshold = function (field, element) { + var threshold = this.opts.threshold[field] === 0 || this.opts.threshold === 0 + ? false + : this.opts.threshold[field] || this.opts.threshold; + if (!threshold) { + return true; + } + // List of input type which user can't type in + var type = element.getAttribute('type'); + if (['button', 'checkbox', 'file', 'hidden', 'image', 'radio', 'reset', 'submit'].indexOf(type) !== -1) { + return true; + } + var value = this.core.getElementValue(field, element); + return value.length >= threshold; + }; + return Trigger; + }(core.Plugin)); + + return Trigger; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js new file mode 100644 index 0000000..8a73a3b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-trigger + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Trigger=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};return function(e){function n(t){var n=e.call(this,t)||this;n.handlers=[],n.timers=new Map;var o=document.createElement("div");return n.defaultEvent="oninput"in o?"input":"keyup",n.opts=Object.assign({},{delay:0,event:n.defaultEvent,threshold:0},t),n.fieldAddedHandler=n.onFieldAdded.bind(n),n.fieldRemovedHandler=n.onFieldRemoved.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}(n,e),n.prototype.install=function(){this.core.on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler)},n.prototype.uninstall=function(){this.handlers.forEach((function(e){return e.element.removeEventListener(e.event,e.handler)})),this.handlers=[],this.timers.forEach((function(e){return window.clearTimeout(e)})),this.timers.clear(),this.core.off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler)},n.prototype.prepareHandler=function(e,t){var n=this;t.forEach((function(t){var o=[];if(n.opts.event&&!1===n.opts.event[e])o=[];else if(n.opts.event&&n.opts.event[e]&&"function"!=typeof n.opts.event[e])o=n.opts.event[e].split(" ");else if("string"==typeof n.opts.event&&n.opts.event!==n.defaultEvent)o=n.opts.event.split(" ");else{var i=t.getAttribute("type"),r=t.tagName.toLowerCase();o=["radio"===i||"checkbox"===i||"file"===i||"select"===r?"change":n.ieVersion>=10&&t.getAttribute("placeholder")?"keyup":n.defaultEvent]}o.forEach((function(o){var i=function(o){return n.handleEvent(o,e,t)};n.handlers.push({element:t,event:o,field:e,handler:i}),t.addEventListener(o,i)}))}))},n.prototype.handleEvent=function(e,t,n){var o=this;if(this.isEnabled&&this.exceedThreshold(t,n)&&this.core.executeFilter("plugins-trigger-should-validate",!0,[t,n])){var i=function(){return o.core.validateElement(t,n).then((function(i){o.core.emit("plugins.trigger.executed",{element:n,event:e,field:t})}))},r=this.opts.delay[t]||this.opts.delay;if(0===r)i();else{var l=this.timers.get(n);l&&window.clearTimeout(l),this.timers.set(n,window.setTimeout(i,1e3*r))}}},n.prototype.onFieldAdded=function(e){this.handlers.filter((function(t){return t.field===e.field})).forEach((function(e){return e.element.removeEventListener(e.event,e.handler)})),this.prepareHandler(e.field,e.elements)},n.prototype.onFieldRemoved=function(e){this.handlers.filter((function(t){return t.field===e.field&&e.elements.indexOf(t.element)>=0})).forEach((function(e){return e.element.removeEventListener(e.event,e.handler)}))},n.prototype.exceedThreshold=function(e,t){var n=0!==this.opts.threshold[e]&&0!==this.opts.threshold&&(this.opts.threshold[e]||this.opts.threshold);if(!n)return!0;var o=t.getAttribute("type");return-1!==["button","checkbox","file","hidden","image","radio","reset","submit"].indexOf(o)||this.core.getElementValue(e,t).length>=n},n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js new file mode 100644 index 0000000..cf5d32e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js @@ -0,0 +1,246 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Turnstile = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + var Turnstile = /** @class */ (function (_super) { + __extends(Turnstile, _super); + function Turnstile(opts) { + var _this = _super.call(this, opts) || this; + _this.widgetIds = new Map(); + _this.captchaStatus = 'NotValidated'; + _this.captchaContainer = ''; + _this.opts = Object.assign({}, Turnstile.DEFAULT_OPTIONS, removeUndefined(opts)); + _this.fieldResetHandler = _this.onResetField.bind(_this); + _this.preValidateFilter = _this.preValidate.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + // Turnstile accepts ID selector or a given element + _this.captchaContainer = _this.opts.element.startsWith('#') ? _this.opts.element : "#".concat(_this.opts.element); + return _this; + } + Turnstile.prototype.install = function () { + var _this = this; + this.core + .on('core.field.reset', this.fieldResetHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .registerFilter('validate-pre', this.preValidateFilter); + var loadPrevCaptcha = typeof window[Turnstile.LOADED_CALLBACK] === 'undefined' ? function () { } : window[Turnstile.LOADED_CALLBACK]; + window[Turnstile.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + var widgetId = _this.getTurnstileInstance().render(_this.captchaContainer, _this.buildTurnstileRenderOptions()); + _this.widgetIds.set(_this.captchaContainer, widgetId); + _this.core.addField(Turnstile.CAPTCHA_FIELD, { + validators: { + promise: { + message: _this.opts.message, + promise: function (input) { + var _a; + var value = _this.widgetIds.has(_this.captchaContainer) + ? _this.getTurnstileInstance().getResponse(_this.widgetIds.get(_this.captchaContainer)) + : input.value; + if (value === '') { + _this.captchaStatus = 'Invalid'; + return Promise.resolve({ + valid: false, + }); + } + if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + return Promise.resolve({ + valid: true, + }); + } + if (_this.captchaStatus === 'Valid') { + // Do not need to send the back-end verification request if the captcha is already valid + return Promise.resolve({ + valid: true, + }); + } + return fetch(_this.opts.backendVerificationUrl, { + method: 'POST', + params: (_a = {}, + _a[Turnstile.CAPTCHA_FIELD] = value, + _a), + }) + .then(function (response) { + var isValid = "".concat(response['success']) === 'true'; + _this.captchaStatus = isValid ? 'Valid' : 'Invalid'; + return Promise.resolve({ + meta: response, + valid: isValid, + }); + }) + .catch(function (_reason) { + _this.captchaStatus = 'NotValidated'; + return Promise.reject({ + valid: false, + }); + }); + }, + }, + }, + }); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Turnstile.prototype.uninstall = function () { + var _this = this; + delete window[Turnstile.LOADED_CALLBACK]; + this.core + .off('core.field.reset', this.fieldResetHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .deregisterFilter('validate-pre', this.preValidateFilter); + this.widgetIds.forEach(function (_element, widgetId, _map) { + _this.getTurnstileInstance().remove(widgetId); + }); + this.widgetIds.clear(); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + this.core.removeField(Turnstile.CAPTCHA_FIELD); + }; + Turnstile.prototype.onEnabled = function () { + this.core.enableValidator(Turnstile.CAPTCHA_FIELD, 'promise'); + }; + Turnstile.prototype.onDisabled = function () { + this.core.disableValidator(Turnstile.CAPTCHA_FIELD, 'promise'); + }; + Turnstile.prototype.buildTurnstileRenderOptions = function () { + var _this = this; + return { + callback: function () { + if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + // Mark the captcha as valid, so the library will remove the error message + _this.core.updateFieldStatus(Turnstile.CAPTCHA_FIELD, 'Valid'); + } + }, + 'error-callback': function () { + _this.captchaStatus = 'Invalid'; + _this.core.updateFieldStatus(Turnstile.CAPTCHA_FIELD, 'Invalid'); + }, + 'expired-callback': function () { + // Update the captcha status when session expires + _this.captchaStatus = 'NotValidated'; + _this.core.updateFieldStatus(Turnstile.CAPTCHA_FIELD, 'NotValidated'); + }, + sitekey: this.opts.siteKey, + // Optional parameters + action: this.opts.action, + appearance: this.opts.appearance, + cData: this.opts.cData, + language: this.opts.language, + size: this.opts.size, + 'refresh-expired': this.opts.refreshExpired, + retry: this.opts.retry, + 'retry-interval': this.opts.retryInterval, + tabindex: this.opts.tabIndex, + theme: this.opts.theme, + }; + }; + Turnstile.prototype.getTurnstileInstance = function () { + return window['turnstile']; + }; + Turnstile.prototype.getScript = function () { + return "https://challenges.cloudflare.com/turnstile/v0/api.js?onload=".concat(Turnstile.LOADED_CALLBACK, "&render=explicit"); + }; + Turnstile.prototype.preValidate = function () { + // In the `execute` mode, we have to call the `execute()` function to challenge visitors + if (this.isEnabled && + this.opts.appearance === 'execute' && + this.widgetIds.has(this.captchaContainer) && + this.captchaStatus !== 'Valid') { + this.getTurnstileInstance().execute(this.captchaContainer, this.buildTurnstileRenderOptions()); + } + return Promise.resolve(); + }; + Turnstile.prototype.onResetField = function (e) { + if (e.field === Turnstile.CAPTCHA_FIELD && this.widgetIds.has(this.captchaContainer)) { + var widgetId = this.widgetIds.get(this.captchaContainer); + this.getTurnstileInstance().reset(widgetId); + } + }; + Turnstile.prototype.onIconPlaced = function (e) { + if (e.field === Turnstile.CAPTCHA_FIELD) { + if (this.opts.appearance === 'execute') { + e.iconElement.style.display = 'none'; + } + else { + var captchaContainer = document.getElementById(this.captchaContainer); + // We need to move the icon element to after the captcha container + // Otherwise, the icon will be removed when the captcha is re-rendered (after it's expired) + if (captchaContainer) { + captchaContainer.parentNode.insertBefore(e.iconElement, captchaContainer.nextSibling); + } + } + } + }; + // The captcha field name, generated by Turnstile + Turnstile.CAPTCHA_FIELD = 'cf-turnstile-response'; + Turnstile.DEFAULT_OPTIONS = { + backendVerificationUrl: '', + appearance: 'always', + language: 'auto', + refreshExpired: 'auto', + retry: 'auto', + size: 'normal', + tabIndex: 0, + theme: 'auto', + }; + // The name of callback that will be executed after Turnstile script is loaded + Turnstile.LOADED_CALLBACK = '___turnstileLoaded___'; + return Turnstile; + }(core.Plugin)); + + return Turnstile; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js new file mode 100644 index 0000000..d21561e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-turnstile + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Turnstile=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};var i=t.utils.fetch,a=t.utils.removeUndefined;return function(t){function n(e){var i=t.call(this,e)||this;return i.widgetIds=new Map,i.captchaStatus="NotValidated",i.captchaContainer="",i.opts=Object.assign({},n.DEFAULT_OPTIONS,a(e)),i.fieldResetHandler=i.onResetField.bind(i),i.preValidateFilter=i.preValidate.bind(i),i.iconPlacedHandler=i.onIconPlaced.bind(i),i.captchaContainer=i.opts.element.startsWith("#")?i.opts.element:"#".concat(i.opts.element),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function a(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(a.prototype=i.prototype,new a)}(n,t),n.prototype.install=function(){var t=this;this.core.on("core.field.reset",this.fieldResetHandler).on("plugins.icon.placed",this.iconPlacedHandler).registerFilter("validate-pre",this.preValidateFilter);var e=void 0===window[n.LOADED_CALLBACK]?function(){}:window[n.LOADED_CALLBACK];window[n.LOADED_CALLBACK]=function(){e();var a=t.getTurnstileInstance().render(t.captchaContainer,t.buildTurnstileRenderOptions());t.widgetIds.set(t.captchaContainer,a),t.core.addField(n.CAPTCHA_FIELD,{validators:{promise:{message:t.opts.message,promise:function(e){var a,r=t.widgetIds.has(t.captchaContainer)?t.getTurnstileInstance().getResponse(t.widgetIds.get(t.captchaContainer)):e.value;return""===r?(t.captchaStatus="Invalid",Promise.resolve({valid:!1})):""===t.opts.backendVerificationUrl?(t.captchaStatus="Valid",Promise.resolve({valid:!0})):"Valid"===t.captchaStatus?Promise.resolve({valid:!0}):i(t.opts.backendVerificationUrl,{method:"POST",params:(a={},a[n.CAPTCHA_FIELD]=r,a)}).then((function(e){var i="true"==="".concat(e.success);return t.captchaStatus=i?"Valid":"Invalid",Promise.resolve({meta:e,valid:i})})).catch((function(e){return t.captchaStatus="NotValidated",Promise.reject({valid:!1})}))}}}})};var a=this.getScript();if(!document.body.querySelector('script[src="'.concat(a,'"]'))){var r=document.createElement("script");r.type="text/javascript",r.async=!0,r.defer=!0,r.src=a,document.body.appendChild(r)}},n.prototype.uninstall=function(){var t=this;delete window[n.LOADED_CALLBACK],this.core.off("core.field.reset",this.fieldResetHandler).off("plugins.icon.placed",this.iconPlacedHandler).deregisterFilter("validate-pre",this.preValidateFilter),this.widgetIds.forEach((function(e,i,a){t.getTurnstileInstance().remove(i)})),this.widgetIds.clear();var e=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(e,'"]'))).forEach((function(t){return t.parentNode.removeChild(t)})),this.core.removeField(n.CAPTCHA_FIELD)},n.prototype.onEnabled=function(){this.core.enableValidator(n.CAPTCHA_FIELD,"promise")},n.prototype.onDisabled=function(){this.core.disableValidator(n.CAPTCHA_FIELD,"promise")},n.prototype.buildTurnstileRenderOptions=function(){var t=this;return{callback:function(){""===t.opts.backendVerificationUrl&&(t.captchaStatus="Valid",t.core.updateFieldStatus(n.CAPTCHA_FIELD,"Valid"))},"error-callback":function(){t.captchaStatus="Invalid",t.core.updateFieldStatus(n.CAPTCHA_FIELD,"Invalid")},"expired-callback":function(){t.captchaStatus="NotValidated",t.core.updateFieldStatus(n.CAPTCHA_FIELD,"NotValidated")},sitekey:this.opts.siteKey,action:this.opts.action,appearance:this.opts.appearance,cData:this.opts.cData,language:this.opts.language,size:this.opts.size,"refresh-expired":this.opts.refreshExpired,retry:this.opts.retry,"retry-interval":this.opts.retryInterval,tabindex:this.opts.tabIndex,theme:this.opts.theme}},n.prototype.getTurnstileInstance=function(){return window.turnstile},n.prototype.getScript=function(){return"https://challenges.cloudflare.com/turnstile/v0/api.js?onload=".concat(n.LOADED_CALLBACK,"&render=explicit")},n.prototype.preValidate=function(){return this.isEnabled&&"execute"===this.opts.appearance&&this.widgetIds.has(this.captchaContainer)&&"Valid"!==this.captchaStatus&&this.getTurnstileInstance().execute(this.captchaContainer,this.buildTurnstileRenderOptions()),Promise.resolve()},n.prototype.onResetField=function(t){if(t.field===n.CAPTCHA_FIELD&&this.widgetIds.has(this.captchaContainer)){var e=this.widgetIds.get(this.captchaContainer);this.getTurnstileInstance().reset(e)}},n.prototype.onIconPlaced=function(t){if(t.field===n.CAPTCHA_FIELD)if("execute"===this.opts.appearance)t.iconElement.style.display="none";else{var e=document.getElementById(this.captchaContainer);e&&e.parentNode.insertBefore(t.iconElement,e.nextSibling)}},n.CAPTCHA_FIELD="cf-turnstile-response",n.DEFAULT_OPTIONS={backendVerificationUrl:"",appearance:"always",language:"auto",refreshExpired:"auto",retry:"auto",size:"normal",tabIndex:0,theme:"auto"},n.LOADED_CALLBACK="___turnstileLoaded___",n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js new file mode 100644 index 0000000..a7b71a5 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js @@ -0,0 +1,74 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Turret = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support Turretcss framework (https://turretcss.com/) + var Turret = /** @class */ (function (_super) { + __extends(Turret, _super); + function Turret(opts) { + // See https://turretcss.com/docs/form/ + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-turret', + messageClass: 'form-message', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^field$/, + rowSelector: '.field', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Turret.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Turret; + }(pluginFramework.Framework)); + + return Turret; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js new file mode 100644 index 0000000..1cf085c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-turret + * @version 2.4.0 + */ + +!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],e):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Turret=e(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,e){"use strict";var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,e){o.__proto__=e}||function(o,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t])},t(o,e)};var n=o.utils.classSet;return function(o){function e(e){return o.call(this,Object.assign({},{formClass:"fv-plugins-turret",messageClass:"form-message",rowInvalidClass:"fv-invalid-row",rowPattern:/^field$/,rowSelector:".field",rowValidClass:"fv-valid-row"},e))||this}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,o),e.prototype.onIconPlaced=function(o){var e=o.element.getAttribute("type"),t=o.element.parentElement;"checkbox"!==e&&"radio"!==e||(t.parentElement.insertBefore(o.iconElement,t.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},e}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js new file mode 100644 index 0000000..6873f4b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js @@ -0,0 +1,106 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.TypingAnimation = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var TypingAnimation = /** @class */ (function (_super) { + __extends(TypingAnimation, _super); + function TypingAnimation(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + autoPlay: true, + }, opts); + return _this; + } + TypingAnimation.prototype.install = function () { + this.fields = Object.keys(this.core.getFields()); + if (this.opts.autoPlay) { + this.play(); + } + }; + TypingAnimation.prototype.play = function () { + return this.animate(0); + }; + TypingAnimation.prototype.animate = function (fieldIndex) { + var _this = this; + if (fieldIndex >= this.fields.length) { + return Promise.resolve(fieldIndex); + } + var field = this.fields[fieldIndex]; + var ele = this.core.getElements(field)[0]; + var inputType = ele.getAttribute('type'); + var samples = this.opts.data[field]; + if ('checkbox' === inputType || 'radio' === inputType) { + ele.checked = true; + ele.setAttribute('checked', 'true'); + return this.core.revalidateField(field).then(function (_status) { + return _this.animate(fieldIndex + 1); + }); + } + else if (!samples) { + return this.animate(fieldIndex + 1); + } + else { + return new Promise(function (resolve) { + return new Typed(ele, { + attr: 'value', + autoInsertCss: true, + bindInputFocusEvents: true, + onComplete: function () { + resolve(fieldIndex + 1); + }, + onStringTyped: function (arrayPos, _self) { + ele.value = samples[arrayPos]; + _this.core.revalidateField(field); + }, + strings: samples, + typeSpeed: 100, + }); + }).then(function (nextFieldIndex) { + return _this.animate(nextFieldIndex); + }); + } + }; + return TypingAnimation; + }(core.Plugin)); + + return TypingAnimation; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js new file mode 100644 index 0000000..33fee5e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-typing-animation + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.TypingAnimation=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},e(t,n)};return function(t){function n(e){var n=t.call(this,e)||this;return n.opts=Object.assign({},{autoPlay:!0},e),n}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}(n,t),n.prototype.install=function(){this.fields=Object.keys(this.core.getFields()),this.opts.autoPlay&&this.play()},n.prototype.play=function(){return this.animate(0)},n.prototype.animate=function(t){var e=this;if(t>=this.fields.length)return Promise.resolve(t);var n=this.fields[t],o=this.core.getElements(n)[0],i=o.getAttribute("type"),r=this.opts.data[n];return"checkbox"===i||"radio"===i?(o.checked=!0,o.setAttribute("checked","true"),this.core.revalidateField(n).then((function(n){return e.animate(t+1)}))):r?new Promise((function(i){return new Typed(o,{attr:"value",autoInsertCss:!0,bindInputFocusEvents:!0,onComplete:function(){i(t+1)},onStringTyped:function(t,i){o.value=r[t],e.core.revalidateField(n)},strings:r,typeSpeed:100})})).then((function(t){return e.animate(t)})):this.animate(t+1)},n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js new file mode 100644 index 0000000..e52cb03 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.UiKit = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var UiKit = /** @class */ (function (_super) { + __extends(UiKit, _super); + function UiKit(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-uikit', + // See https://getuikit.com/docs/text#text-color + messageClass: 'uk-text-danger', + rowInvalidClass: 'uk-form-danger', + rowPattern: /^.*(uk-form-controls|uk-width-[\d+]-[\d+]).*$/, + rowSelector: '.uk-margin', + // See https://getuikit.com/docs/form + rowValidClass: 'uk-form-success', + }, opts)) || this; + } + UiKit.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var parent_1 = e.element.parentElement; + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent_1.parentElement.insertBefore(e.iconElement, parent_1.nextSibling); + } + }; + return UiKit; + }(pluginFramework.Framework)); + + return UiKit; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js new file mode 100644 index 0000000..38dce00 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-ui-kit + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.UiKit=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-uikit",messageClass:"uk-text-danger",rowInvalidClass:"uk-form-danger",rowPattern:/^.*(uk-form-controls|uk-width-[\d+]-[\d+]).*$/,rowSelector:".uk-margin",rowValidClass:"uk-form-success"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type");if("checkbox"===t||"radio"===t){var e=o.element.parentElement;n(o.iconElement,{"fv-plugins-icon-check":!0}),e.parentElement.insertBefore(o.iconElement,e.nextSibling)}},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js new file mode 100644 index 0000000..e0016eb --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js @@ -0,0 +1,244 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-excluded')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-excluded'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Wizard = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginExcluded) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Wizard = /** @class */ (function (_super) { + __extends(Wizard, _super); + function Wizard(opts) { + var _this = _super.call(this, opts) || this; + _this.currentStep = 0; + _this.numSteps = 0; + _this.stepIndexes = []; + _this.opts = Object.assign({}, { + activeStepClass: 'fv-plugins-wizard--active', + onStepActive: function () { }, + onStepInvalid: function () { }, + onStepValid: function () { }, + onValid: function () { }, + stepClass: 'fv-plugins-wizard--step', + }, opts); + _this.prevStepHandler = _this.onClickPrev.bind(_this); + _this.nextStepHandler = _this.onClickNext.bind(_this); + return _this; + } + Wizard.prototype.install = function () { + var _a; + var _this = this; + this.core.registerPlugin(Wizard.EXCLUDED_PLUGIN, this.opts.isFieldExcluded ? new pluginExcluded.Excluded({ excluded: this.opts.isFieldExcluded }) : new pluginExcluded.Excluded()); + var form = this.core.getFormElement(); + this.steps = [].slice.call(form.querySelectorAll(this.opts.stepSelector)); + this.numSteps = this.steps.length; + this.steps.forEach(function (s) { + var _a; + classSet(s, (_a = {}, + _a[_this.opts.stepClass] = true, + _a)); + }); + classSet(this.steps[0], (_a = {}, + _a[this.opts.activeStepClass] = true, + _a)); + this.stepIndexes = Array(this.numSteps) + .fill(0) + .map(function (_, i) { return i; }); + this.prevButton = + typeof this.opts.prevButton === 'string' + ? this.opts.prevButton.substring(0, 1) === '#' + ? document.getElementById(this.opts.prevButton.substring(1)) + : form.querySelector(this.opts.prevButton) + : this.opts.prevButton; + this.nextButton = + typeof this.opts.nextButton === 'string' + ? this.opts.nextButton.substring(0, 1) === '#' + ? document.getElementById(this.opts.nextButton.substring(1)) + : form.querySelector(this.opts.nextButton) + : this.opts.nextButton; + this.prevButton.addEventListener('click', this.prevStepHandler); + this.nextButton.addEventListener('click', this.nextStepHandler); + }; + Wizard.prototype.uninstall = function () { + this.core.deregisterPlugin(Wizard.EXCLUDED_PLUGIN); + this.prevButton.removeEventListener('click', this.prevStepHandler); + this.nextButton.removeEventListener('click', this.nextStepHandler); + this.stepIndexes.length = 0; + }; + /** + * Get the current step index + */ + Wizard.prototype.getCurrentStep = function () { + return this.currentStep; + }; + /** + * Jump to the previous step + */ + Wizard.prototype.goToPrevStep = function () { + var _this = this; + if (!this.isEnabled) { + return; + } + var prevStep = this.currentStep - 1; + if (prevStep < 0) { + return; + } + // Find the closest previous step which isn't skipped + var prevUnskipStep = this.opts.isStepSkipped + ? this.stepIndexes + .slice(0, this.currentStep) + .reverse() + .find(function (value, _) { + return !_this.opts.isStepSkipped({ + currentStep: _this.currentStep, + numSteps: _this.numSteps, + targetStep: value, + }); + }) + : prevStep; + // Activate the previous step + this.goToStep(prevUnskipStep); + this.onStepActive(); + }; + /** + * Jump to the next step. + * It's useful when users want to go to the next step automatically + * when a checkbox/radio button is chosen + */ + Wizard.prototype.goToNextStep = function () { + var _this = this; + if (!this.isEnabled) { + return; + } + // When click the Next button, we will validate the current step + this.core.validate().then(function (status) { + if (status === 'Valid') { + var nextStep = _this.currentStep + 1; + if (nextStep >= _this.numSteps) { + // The last step are valid + _this.currentStep = _this.numSteps - 1; + } + else { + // Find the next step that isn't skipped + var nextUnskipStep = _this.opts.isStepSkipped + ? _this.stepIndexes.slice(nextStep, _this.numSteps).find(function (value, _) { + return !_this.opts.isStepSkipped({ + currentStep: _this.currentStep, + numSteps: _this.numSteps, + targetStep: value, + }); + }) + : nextStep; + nextStep = nextUnskipStep; + // Activate the next step + _this.goToStep(nextStep); + } + _this.onStepActive(); + _this.onStepValid(); + if (nextStep === _this.numSteps) { + _this.onValid(); + } + } + else if (status === 'Invalid') { + _this.onStepInvalid(); + } + }); + }; + Wizard.prototype.goToStep = function (index) { + var _a, _b; + if (!this.isEnabled) { + return; + } + classSet(this.steps[this.currentStep], (_a = {}, + _a[this.opts.activeStepClass] = false, + _a)); + classSet(this.steps[index], (_b = {}, + _b[this.opts.activeStepClass] = true, + _b)); + this.currentStep = index; + }; + Wizard.prototype.onEnabled = function () { + this.core.enablePlugin(Wizard.EXCLUDED_PLUGIN); + }; + Wizard.prototype.onDisabled = function () { + this.core.disablePlugin(Wizard.EXCLUDED_PLUGIN); + }; + Wizard.prototype.onClickPrev = function () { + this.goToPrevStep(); + }; + Wizard.prototype.onClickNext = function () { + this.goToNextStep(); + }; + Wizard.prototype.onStepActive = function () { + var e = { + numSteps: this.numSteps, + step: this.currentStep, + }; + this.core.emit('plugins.wizard.step.active', e); + this.opts.onStepActive(e); + }; + Wizard.prototype.onStepValid = function () { + var e = { + numSteps: this.numSteps, + step: this.currentStep, + }; + this.core.emit('plugins.wizard.step.valid', e); + this.opts.onStepValid(e); + }; + Wizard.prototype.onStepInvalid = function () { + var e = { + numSteps: this.numSteps, + step: this.currentStep, + }; + this.core.emit('plugins.wizard.step.invalid', e); + this.opts.onStepInvalid(e); + }; + Wizard.prototype.onValid = function () { + var e = { + numSteps: this.numSteps, + }; + this.core.emit('plugins.wizard.valid', e); + this.opts.onValid(e); + }; + Wizard.EXCLUDED_PLUGIN = '___wizardExcluded'; + return Wizard; + }(core.Plugin)); + + return Wizard; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js new file mode 100644 index 0000000..8060a0a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-wizard + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-excluded")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-excluded"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Wizard=e(t.FormValidation,t.FormValidation.plugins))}(this,(function(t,e){"use strict";var n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},n(t,e)};var i=t.utils.classSet;return function(t){function s(e){var n=t.call(this,e)||this;return n.currentStep=0,n.numSteps=0,n.stepIndexes=[],n.opts=Object.assign({},{activeStepClass:"fv-plugins-wizard--active",onStepActive:function(){},onStepInvalid:function(){},onStepValid:function(){},onValid:function(){},stepClass:"fv-plugins-wizard--step"},e),n.prevStepHandler=n.onClickPrev.bind(n),n.nextStepHandler=n.onClickNext.bind(n),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(s,t),s.prototype.install=function(){var t,n=this;this.core.registerPlugin(s.EXCLUDED_PLUGIN,this.opts.isFieldExcluded?new e.Excluded({excluded:this.opts.isFieldExcluded}):new e.Excluded);var o=this.core.getFormElement();this.steps=[].slice.call(o.querySelectorAll(this.opts.stepSelector)),this.numSteps=this.steps.length,this.steps.forEach((function(t){var e;i(t,((e={})[n.opts.stepClass]=!0,e))})),i(this.steps[0],((t={})[this.opts.activeStepClass]=!0,t)),this.stepIndexes=Array(this.numSteps).fill(0).map((function(t,e){return e})),this.prevButton="string"==typeof this.opts.prevButton?"#"===this.opts.prevButton.substring(0,1)?document.getElementById(this.opts.prevButton.substring(1)):o.querySelector(this.opts.prevButton):this.opts.prevButton,this.nextButton="string"==typeof this.opts.nextButton?"#"===this.opts.nextButton.substring(0,1)?document.getElementById(this.opts.nextButton.substring(1)):o.querySelector(this.opts.nextButton):this.opts.nextButton,this.prevButton.addEventListener("click",this.prevStepHandler),this.nextButton.addEventListener("click",this.nextStepHandler)},s.prototype.uninstall=function(){this.core.deregisterPlugin(s.EXCLUDED_PLUGIN),this.prevButton.removeEventListener("click",this.prevStepHandler),this.nextButton.removeEventListener("click",this.nextStepHandler),this.stepIndexes.length=0},s.prototype.getCurrentStep=function(){return this.currentStep},s.prototype.goToPrevStep=function(){var t=this;if(this.isEnabled){var e=this.currentStep-1;if(!(e<0)){var n=this.opts.isStepSkipped?this.stepIndexes.slice(0,this.currentStep).reverse().find((function(e,n){return!t.opts.isStepSkipped({currentStep:t.currentStep,numSteps:t.numSteps,targetStep:e})})):e;this.goToStep(n),this.onStepActive()}}},s.prototype.goToNextStep=function(){var t=this;this.isEnabled&&this.core.validate().then((function(e){if("Valid"===e){var n=t.currentStep+1;if(n>=t.numSteps)t.currentStep=t.numSteps-1;else n=t.opts.isStepSkipped?t.stepIndexes.slice(n,t.numSteps).find((function(e,n){return!t.opts.isStepSkipped({currentStep:t.currentStep,numSteps:t.numSteps,targetStep:e})})):n,t.goToStep(n);t.onStepActive(),t.onStepValid(),n===t.numSteps&&t.onValid()}else"Invalid"===e&&t.onStepInvalid()}))},s.prototype.goToStep=function(t){var e,n;this.isEnabled&&(i(this.steps[this.currentStep],((e={})[this.opts.activeStepClass]=!1,e)),i(this.steps[t],((n={})[this.opts.activeStepClass]=!0,n)),this.currentStep=t)},s.prototype.onEnabled=function(){this.core.enablePlugin(s.EXCLUDED_PLUGIN)},s.prototype.onDisabled=function(){this.core.disablePlugin(s.EXCLUDED_PLUGIN)},s.prototype.onClickPrev=function(){this.goToPrevStep()},s.prototype.onClickNext=function(){this.goToNextStep()},s.prototype.onStepActive=function(){var t={numSteps:this.numSteps,step:this.currentStep};this.core.emit("plugins.wizard.step.active",t),this.opts.onStepActive(t)},s.prototype.onStepValid=function(){var t={numSteps:this.numSteps,step:this.currentStep};this.core.emit("plugins.wizard.step.valid",t),this.opts.onStepValid(t)},s.prototype.onStepInvalid=function(){var t={numSteps:this.numSteps,step:this.currentStep};this.core.emit("plugins.wizard.step.invalid",t),this.opts.onStepInvalid(t)},s.prototype.onValid=function(){var t={numSteps:this.numSteps};this.core.emit("plugins.wizard.valid",t),this.opts.onValid(t)},s.EXCLUDED_PLUGIN="___wizardExcluded",s}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css new file mode 100644 index 0000000..707bf69 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css @@ -0,0 +1,582 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ +.fv-sr-only { + display: none; +} + +.fv-plugins-framework input::-ms-clear, +.fv-plugins-framework textarea::-ms-clear { + display: none; + height: 0; + width: 0; +} + +.fv-plugins-icon-container { + position: relative; +} + +.fv-plugins-icon { + position: absolute; + right: 0; + text-align: center; + top: 0; +} +.fv-plugins-icon--enabled { + visibility: visible; +} +.fv-plugins-icon--disabled { + visibility: hidden; +} + +.fv-plugins-message-container--enabled { + display: block; +} +.fv-plugins-message-container--disabled { + display: none; +} + +.fv-plugins-tooltip { + max-width: 256px; + position: absolute; + text-align: center; + z-index: 10000; +} +.fv-plugins-tooltip .fv-plugins-tooltip__content { + background: #000; + border-radius: 3px; + color: #eee; + padding: 8px; + position: relative; +} +.fv-plugins-tooltip .fv-plugins-tooltip__content:before { + border: 8px solid transparent; + content: ""; + position: absolute; +} + +.fv-plugins-tooltip--hide { + display: none; +} + +.fv-plugins-tooltip--top-left { + transform: translateY(-8px); +} +.fv-plugins-tooltip--top-left .fv-plugins-tooltip__content:before { + border-top-color: #000; + left: 8px; + top: 100%; +} + +.fv-plugins-tooltip--top { + transform: translateY(-8px); +} +.fv-plugins-tooltip--top .fv-plugins-tooltip__content:before { + border-top-color: #000; + left: 50%; + margin-left: -8px; + top: 100%; +} + +.fv-plugins-tooltip--top-right { + transform: translateY(-8px); +} +.fv-plugins-tooltip--top-right .fv-plugins-tooltip__content:before { + border-top-color: #000; + right: 8px; + top: 100%; +} + +.fv-plugins-tooltip--right { + transform: translateX(8px); +} +.fv-plugins-tooltip--right .fv-plugins-tooltip__content:before { + border-right-color: #000; + margin-top: -8px; + right: 100%; + top: 50%; +} + +.fv-plugins-tooltip--bottom-right { + transform: translateY(8px); +} +.fv-plugins-tooltip--bottom-right .fv-plugins-tooltip__content:before { + border-bottom-color: #000; + bottom: 100%; + right: 8px; +} + +.fv-plugins-tooltip--bottom { + transform: translateY(8px); +} +.fv-plugins-tooltip--bottom .fv-plugins-tooltip__content:before { + border-bottom-color: #000; + bottom: 100%; + left: 50%; + margin-left: -8px; +} + +.fv-plugins-tooltip--bottom-left { + transform: translateY(8px); +} +.fv-plugins-tooltip--bottom-left .fv-plugins-tooltip__content:before { + border-bottom-color: #000; + bottom: 100%; + left: 8px; +} + +.fv-plugins-tooltip--left { + transform: translateX(-8px); +} +.fv-plugins-tooltip--left .fv-plugins-tooltip__content:before { + border-left-color: #000; + left: 100%; + margin-top: -8px; + top: 50%; +} + +.fv-plugins-tooltip-icon { + cursor: pointer; + pointer-events: inherit; +} + +.fv-plugins-bootstrap { + /* For horizontal form */ + /* Stacked form */ + /* Inline form */ + /* Remove the icons generated by Bootstrap 4.2+ */ +} +.fv-plugins-bootstrap .fv-help-block { + color: #dc3545; + font-size: 80%; + margin-top: 0.25rem; +} +.fv-plugins-bootstrap .is-invalid ~ .form-check-label, +.fv-plugins-bootstrap .is-valid ~ .form-check-label { + color: inherit; +} +.fv-plugins-bootstrap .has-danger .fv-plugins-icon { + color: #dc3545; +} +.fv-plugins-bootstrap .has-success .fv-plugins-icon { + color: #28a745; +} +.fv-plugins-bootstrap .fv-plugins-icon { + height: 38px; + line-height: 38px; + width: 38px; +} +.fv-plugins-bootstrap .input-group ~ .fv-plugins-icon { + z-index: 3; +} +.fv-plugins-bootstrap .form-group.row .fv-plugins-icon { + right: 15px; +} +.fv-plugins-bootstrap .form-group.row .fv-plugins-icon-check { + top: -7px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-bootstrap:not(.form-inline) label ~ .fv-plugins-icon { + top: 32px; +} +.fv-plugins-bootstrap:not(.form-inline) label ~ .fv-plugins-icon-check { + top: 25px; +} +.fv-plugins-bootstrap:not(.form-inline) label.sr-only ~ .fv-plugins-icon-check { + top: -7px; +} +.fv-plugins-bootstrap.form-inline .form-group { + align-items: flex-start; + flex-direction: column; + margin-bottom: auto; +} +.fv-plugins-bootstrap .form-control.is-valid, +.fv-plugins-bootstrap .form-control.is-invalid { + background-image: none; +} + +.fv-plugins-bootstrap3 .help-block { + margin-bottom: 0; +} +.fv-plugins-bootstrap3 .input-group ~ .form-control-feedback { + z-index: 4; +} +.fv-plugins-bootstrap3.form-inline .form-group { + vertical-align: top; +} + +.fv-plugins-bootstrap5 { + /* Support floating label */ + /* For horizontal form */ + /* Stacked form */ + /* Inline form */ +} +.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-invalid .fv-plugins-icon { + color: #dc3545; +} +.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-valid .fv-plugins-icon { + color: #198754; +} +.fv-plugins-bootstrap5 .fv-plugins-icon { + align-items: center; + display: flex; + justify-content: center; + height: 38px; + width: 38px; +} +.fv-plugins-bootstrap5 .input-group ~ .fv-plugins-icon { + z-index: 3; +} +.fv-plugins-bootstrap5 .fv-plugins-icon-input-group { + right: -38px; +} +.fv-plugins-bootstrap5 .form-floating .fv-plugins-icon { + height: 58px; +} +.fv-plugins-bootstrap5 .row .fv-plugins-icon { + right: 12px; +} +.fv-plugins-bootstrap5 .row .fv-plugins-icon-check { + top: -7px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label ~ .fv-plugins-icon { + top: 32px; +} +.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label ~ .fv-plugins-icon-check { + top: 25px; +} +.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label.sr-only ~ .fv-plugins-icon-check { + top: -7px; +} +.fv-plugins-bootstrap5.fv-plugins-bootstrap5-form-inline .fv-plugins-icon { + right: calc(var(--bs-gutter-x, 1.5rem) / 2); +} +.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-valid, +.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-invalid, +.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-valid, +.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-invalid { + background-image: none; +} + +.fv-plugins-bulma { + /* Support add ons inside field */ +} +.fv-plugins-bulma .field.has-addons { + flex-wrap: wrap; +} +.fv-plugins-bulma .field.has-addons::after { + content: ""; + width: 100%; +} +.fv-plugins-bulma .field.has-addons .fv-plugins-message-container { + order: 1; +} +.fv-plugins-bulma .icon.fv-plugins-icon-check { + top: -4px; +} +.fv-plugins-bulma .fv-has-error .select select, +.fv-plugins-bulma .fv-has-error .input, +.fv-plugins-bulma .fv-has-error .textarea { + border: 1px solid #ff3860; /* Same as .input.is-danger */ +} +.fv-plugins-bulma .fv-has-success .select select, +.fv-plugins-bulma .fv-has-success .input, +.fv-plugins-bulma .fv-has-success .textarea { + border: 1px solid #23d160; /* Same as .input.is-success */ +} + +.fv-plugins-foundation { + /* Stacked form */ +} +.fv-plugins-foundation .fv-plugins-icon { + height: 39px; + line-height: 39px; + right: 0; + width: 39px; /* Same as height of input */ +} +.fv-plugins-foundation .grid-padding-x .fv-plugins-icon { + right: 15px; +} +.fv-plugins-foundation .fv-plugins-icon-container .cell { + position: relative; +} +.fv-plugins-foundation [type=checkbox] ~ .fv-plugins-icon, +.fv-plugins-foundation [type=checkbox] ~ .fv-plugins-icon { + top: -7px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-foundation.fv-stacked-form .fv-plugins-message-container { + width: 100%; +} +.fv-plugins-foundation.fv-stacked-form label .fv-plugins-icon, +.fv-plugins-foundation.fv-stacked-form fieldset [type=checkbox] ~ .fv-plugins-icon, +.fv-plugins-foundation.fv-stacked-form fieldset [type=radio] ~ .fv-plugins-icon { + top: 25px; /* Same as height of label */ +} +.fv-plugins-foundation .form-error { + display: block; +} +.fv-plugins-foundation .fv-row__success .fv-plugins-icon { + color: #3adb76; /* Same as .success */ +} +.fv-plugins-foundation .fv-row__error label, +.fv-plugins-foundation .fv-row__error fieldset legend, +.fv-plugins-foundation .fv-row__error .fv-plugins-icon { + color: #cc4b37; /* Same as .is-invalid-label and .form-error */ +} + +.fv-plugins-materialize .fv-plugins-icon { + height: 42px; /* Same as height of input */ + line-height: 42px; + width: 42px; +} +.fv-plugins-materialize .fv-plugins-icon-check { + top: -10px; +} +.fv-plugins-materialize .fv-invalid-row .helper-text, +.fv-plugins-materialize .fv-invalid-row .fv-plugins-icon { + color: #f44336; +} +.fv-plugins-materialize .fv-valid-row .helper-text, +.fv-plugins-materialize .fv-valid-row .fv-plugins-icon { + color: #4caf50; +} + +.fv-plugins-milligram .fv-plugins-icon { + height: 38px; /* Same as height of input */ + line-height: 38px; + width: 38px; +} +.fv-plugins-milligram .column { + position: relative; +} +.fv-plugins-milligram .column .fv-plugins-icon { + right: 10px; +} +.fv-plugins-milligram .fv-plugins-icon-check { + top: -6px; +} +.fv-plugins-milligram .fv-plugins-message-container { + margin-bottom: 15px; +} +.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon { + top: 30px; +} +.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon-check { + top: 24px; +} +.fv-plugins-milligram .fv-invalid-row .fv-help-block, +.fv-plugins-milligram .fv-invalid-row .fv-plugins-icon { + color: red; +} +.fv-plugins-milligram .fv-valid-row .fv-help-block, +.fv-plugins-milligram .fv-valid-row .fv-plugins-icon { + color: green; +} + +.fv-plugins-mini .fv-plugins-icon { + height: 42px; /* Same as height of input */ + line-height: 42px; + width: 42px; + top: 4px; /* Same as input's margin top */ +} +.fv-plugins-mini .fv-plugins-icon-check { + top: -8px; +} +.fv-plugins-mini.fv-stacked-form .fv-plugins-icon { + top: 28px; +} +.fv-plugins-mini.fv-stacked-form .fv-plugins-icon-check { + top: 20px; +} +.fv-plugins-mini .fv-plugins-message-container { + margin: calc(var(--universal-margin) / 2); +} +.fv-plugins-mini .fv-invalid-row .fv-help-block, +.fv-plugins-mini .fv-invalid-row .fv-plugins-icon { + color: var(--input-invalid-color); +} +.fv-plugins-mini .fv-valid-row .fv-help-block, +.fv-plugins-mini .fv-valid-row .fv-plugins-icon { + color: #308732; /* Same as tertiary color */ +} + +.fv-plugins-mui .fv-plugins-icon { + height: 32px; /* Same as height of input */ + line-height: 32px; + width: 32px; + top: 15px; + right: 4px; +} +.fv-plugins-mui .fv-plugins-icon-check { + top: -6px; + right: -10px; +} +.fv-plugins-mui .fv-plugins-message-container { + margin: 8px 0; +} +.fv-plugins-mui .fv-invalid-row .fv-help-block, +.fv-plugins-mui .fv-invalid-row .fv-plugins-icon { + color: #f44336; +} +.fv-plugins-mui .fv-valid-row .fv-help-block, +.fv-plugins-mui .fv-valid-row .fv-plugins-icon { + color: #4caf50; +} + +.fv-plugins-pure { + /* Horizontal form */ + /* Stacked form */ +} +.fv-plugins-pure .fv-plugins-icon { + height: 36px; + line-height: 36px; + width: 36px; /* Height of Pure input */ +} +.fv-plugins-pure .fv-has-error label, +.fv-plugins-pure .fv-has-error .fv-help-block, +.fv-plugins-pure .fv-has-error .fv-plugins-icon { + color: #ca3c3c; /* Same as .button-error */ +} +.fv-plugins-pure .fv-has-success label, +.fv-plugins-pure .fv-has-success .fv-help-block, +.fv-plugins-pure .fv-has-success .fv-plugins-icon { + color: #1cb841; /* Same as .button-success */ +} +.fv-plugins-pure.pure-form-aligned .fv-help-block { + margin-top: 5px; + margin-left: 180px; +} +.fv-plugins-pure.pure-form-aligned .fv-plugins-icon-check { + top: -9px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-pure.pure-form-stacked .pure-control-group { + margin-bottom: 8px; +} +.fv-plugins-pure.pure-form-stacked .fv-plugins-icon { + top: 22px; /* Same as height of label */ +} +.fv-plugins-pure.pure-form-stacked .fv-plugins-icon-check { + top: 13px; +} +.fv-plugins-pure.pure-form-stacked .fv-sr-only ~ .fv-plugins-icon { + top: -9px; +} + +.fv-plugins-semantic.ui.form .fields.error label, +.fv-plugins-semantic .error .fv-plugins-icon { + color: #9f3a38; /* Same as .ui.form .field.error .input */ +} +.fv-plugins-semantic .fv-plugins-icon-check { + right: 7px; +} + +.fv-plugins-shoelace .input-group { + margin-bottom: 0; +} +.fv-plugins-shoelace .fv-plugins-icon { + height: 32px; + line-height: 32px; /* Same as height of input */ + width: 32px; + top: 28px; /* Same as height of label */ +} +.fv-plugins-shoelace .row .fv-plugins-icon { + right: 16px; + top: 0; +} +.fv-plugins-shoelace .fv-plugins-icon-check { + top: 24px; +} +.fv-plugins-shoelace .fv-sr-only ~ .fv-plugins-icon, +.fv-plugins-shoelace .fv-sr-only ~ div .fv-plugins-icon { + top: -4px; +} +.fv-plugins-shoelace .input-valid .fv-help-block, +.fv-plugins-shoelace .input-valid .fv-plugins-icon { + color: #2ecc40; +} +.fv-plugins-shoelace .input-invalid .fv-help-block, +.fv-plugins-shoelace .input-invalid .fv-plugins-icon { + color: #ff4136; +} + +.fv-plugins-spectre .input-group .fv-plugins-icon { + z-index: 2; +} +.fv-plugins-spectre .form-group .fv-plugins-icon-check { + right: 6px; + top: 10px; +} +.fv-plugins-spectre:not(.form-horizontal) .form-group .fv-plugins-icon-check { + right: 6px; + top: 45px; +} + +.fv-plugins-tachyons .fv-plugins-icon { + height: 36px; + line-height: 36px; + width: 36px; +} +.fv-plugins-tachyons .fv-plugins-icon-check { + top: -7px; +} +.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon { + top: 34px; +} +.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon-check { + top: 24px; +} + +.fv-plugins-turret .fv-plugins-icon { + height: 40px; /* Same as height of input */ + line-height: 40px; + width: 40px; +} +.fv-plugins-turret.fv-stacked-form .fv-plugins-icon { + top: 29px; +} +.fv-plugins-turret.fv-stacked-form .fv-plugins-icon-check { + top: 17px; +} +.fv-plugins-turret .fv-invalid-row .form-message, +.fv-plugins-turret .fv-invalid-row .fv-plugins-icon { + color: #c00; /* Same as .form-message.error */ +} +.fv-plugins-turret .fv-valid-row .form-message, +.fv-plugins-turret .fv-valid-row .fv-plugins-icon { + color: #00b300; /* Same as .form-message.success */ +} + +.fv-plugins-uikit { + /* Horizontal form */ + /* Stacked form */ +} +.fv-plugins-uikit .fv-plugins-icon { + height: 40px; /* Height of UIKit input */ + line-height: 40px; + top: 25px; /* Height of UIKit label */ + width: 40px; +} +.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon { + top: 0; +} +.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon-check { + top: -11px; /* checkboxLabelHeight/2 - iconHeight/2 = 18/2 - 40/2 */ +} +.fv-plugins-uikit.uk-form-stacked .fv-plugins-icon-check { + top: 15px; /* labelHeight + labelMarginBottom + checkboxLabelHeight/2 - iconHeight/2 = 21 + 5 + 18/2 - 40/2 */ +} +.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon { + top: 0; +} +.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon-check { + top: -11px; +} + +.fv-plugins-wizard--step { + display: none; +} + +.fv-plugins-wizard--active { + display: block; +} diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css new file mode 100644 index 0000000..1c4f2fe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css @@ -0,0 +1 @@ +.fv-sr-only{display:none}.fv-plugins-framework input::-ms-clear,.fv-plugins-framework textarea::-ms-clear{display:none;height:0;width:0}.fv-plugins-icon-container{position:relative}.fv-plugins-icon{position:absolute;right:0;text-align:center;top:0}.fv-plugins-icon--enabled{visibility:visible}.fv-plugins-icon--disabled{visibility:hidden}.fv-plugins-message-container--enabled{display:block}.fv-plugins-message-container--disabled{display:none}.fv-plugins-tooltip{max-width:256px;position:absolute;text-align:center;z-index:10000}.fv-plugins-tooltip .fv-plugins-tooltip__content{background:#000;border-radius:3px;color:#eee;padding:8px;position:relative}.fv-plugins-tooltip .fv-plugins-tooltip__content:before{border:8px solid rgba(0,0,0,0);content:"";position:absolute}.fv-plugins-tooltip--hide{display:none}.fv-plugins-tooltip--top-left{transform:translateY(-8px)}.fv-plugins-tooltip--top-left .fv-plugins-tooltip__content:before{border-top-color:#000;left:8px;top:100%}.fv-plugins-tooltip--top{transform:translateY(-8px)}.fv-plugins-tooltip--top .fv-plugins-tooltip__content:before{border-top-color:#000;left:50%;margin-left:-8px;top:100%}.fv-plugins-tooltip--top-right{transform:translateY(-8px)}.fv-plugins-tooltip--top-right .fv-plugins-tooltip__content:before{border-top-color:#000;right:8px;top:100%}.fv-plugins-tooltip--right{transform:translateX(8px)}.fv-plugins-tooltip--right .fv-plugins-tooltip__content:before{border-right-color:#000;margin-top:-8px;right:100%;top:50%}.fv-plugins-tooltip--bottom-right{transform:translateY(8px)}.fv-plugins-tooltip--bottom-right .fv-plugins-tooltip__content:before{border-bottom-color:#000;bottom:100%;right:8px}.fv-plugins-tooltip--bottom{transform:translateY(8px)}.fv-plugins-tooltip--bottom .fv-plugins-tooltip__content:before{border-bottom-color:#000;bottom:100%;left:50%;margin-left:-8px}.fv-plugins-tooltip--bottom-left{transform:translateY(8px)}.fv-plugins-tooltip--bottom-left .fv-plugins-tooltip__content:before{border-bottom-color:#000;bottom:100%;left:8px}.fv-plugins-tooltip--left{transform:translateX(-8px)}.fv-plugins-tooltip--left .fv-plugins-tooltip__content:before{border-left-color:#000;left:100%;margin-top:-8px;top:50%}.fv-plugins-tooltip-icon{cursor:pointer;pointer-events:inherit}.fv-plugins-bootstrap .fv-help-block{color:#dc3545;font-size:80%;margin-top:.25rem}.fv-plugins-bootstrap .is-invalid~.form-check-label,.fv-plugins-bootstrap .is-valid~.form-check-label{color:inherit}.fv-plugins-bootstrap .has-danger .fv-plugins-icon{color:#dc3545}.fv-plugins-bootstrap .has-success .fv-plugins-icon{color:#28a745}.fv-plugins-bootstrap .fv-plugins-icon{height:38px;line-height:38px;width:38px}.fv-plugins-bootstrap .input-group~.fv-plugins-icon{z-index:3}.fv-plugins-bootstrap .form-group.row .fv-plugins-icon{right:15px}.fv-plugins-bootstrap .form-group.row .fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap:not(.form-inline) label~.fv-plugins-icon{top:32px}.fv-plugins-bootstrap:not(.form-inline) label~.fv-plugins-icon-check{top:25px}.fv-plugins-bootstrap:not(.form-inline) label.sr-only~.fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap.form-inline .form-group{align-items:flex-start;flex-direction:column;margin-bottom:auto}.fv-plugins-bootstrap .form-control.is-valid,.fv-plugins-bootstrap .form-control.is-invalid{background-image:none}.fv-plugins-bootstrap3 .help-block{margin-bottom:0}.fv-plugins-bootstrap3 .input-group~.form-control-feedback{z-index:4}.fv-plugins-bootstrap3.form-inline .form-group{vertical-align:top}.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-invalid .fv-plugins-icon{color:#dc3545}.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-valid .fv-plugins-icon{color:#198754}.fv-plugins-bootstrap5 .fv-plugins-icon{align-items:center;display:flex;justify-content:center;height:38px;width:38px}.fv-plugins-bootstrap5 .input-group~.fv-plugins-icon{z-index:3}.fv-plugins-bootstrap5 .fv-plugins-icon-input-group{right:-38px}.fv-plugins-bootstrap5 .form-floating .fv-plugins-icon{height:58px}.fv-plugins-bootstrap5 .row .fv-plugins-icon{right:12px}.fv-plugins-bootstrap5 .row .fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label~.fv-plugins-icon{top:32px}.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label~.fv-plugins-icon-check{top:25px}.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label.sr-only~.fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap5.fv-plugins-bootstrap5-form-inline .fv-plugins-icon{right:calc(var(--bs-gutter-x, 1.5rem)/2)}.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-valid,.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-invalid,.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-valid,.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-invalid{background-image:none}.fv-plugins-bulma .field.has-addons{flex-wrap:wrap}.fv-plugins-bulma .field.has-addons::after{content:"";width:100%}.fv-plugins-bulma .field.has-addons .fv-plugins-message-container{order:1}.fv-plugins-bulma .icon.fv-plugins-icon-check{top:-4px}.fv-plugins-bulma .fv-has-error .select select,.fv-plugins-bulma .fv-has-error .input,.fv-plugins-bulma .fv-has-error .textarea{border:1px solid #ff3860}.fv-plugins-bulma .fv-has-success .select select,.fv-plugins-bulma .fv-has-success .input,.fv-plugins-bulma .fv-has-success .textarea{border:1px solid #23d160}.fv-plugins-foundation .fv-plugins-icon{height:39px;line-height:39px;right:0;width:39px}.fv-plugins-foundation .grid-padding-x .fv-plugins-icon{right:15px}.fv-plugins-foundation .fv-plugins-icon-container .cell{position:relative}.fv-plugins-foundation [type=checkbox]~.fv-plugins-icon,.fv-plugins-foundation [type=checkbox]~.fv-plugins-icon{top:-7px}.fv-plugins-foundation.fv-stacked-form .fv-plugins-message-container{width:100%}.fv-plugins-foundation.fv-stacked-form label .fv-plugins-icon,.fv-plugins-foundation.fv-stacked-form fieldset [type=checkbox]~.fv-plugins-icon,.fv-plugins-foundation.fv-stacked-form fieldset [type=radio]~.fv-plugins-icon{top:25px}.fv-plugins-foundation .form-error{display:block}.fv-plugins-foundation .fv-row__success .fv-plugins-icon{color:#3adb76}.fv-plugins-foundation .fv-row__error label,.fv-plugins-foundation .fv-row__error fieldset legend,.fv-plugins-foundation .fv-row__error .fv-plugins-icon{color:#cc4b37}.fv-plugins-materialize .fv-plugins-icon{height:42px;line-height:42px;width:42px}.fv-plugins-materialize .fv-plugins-icon-check{top:-10px}.fv-plugins-materialize .fv-invalid-row .helper-text,.fv-plugins-materialize .fv-invalid-row .fv-plugins-icon{color:#f44336}.fv-plugins-materialize .fv-valid-row .helper-text,.fv-plugins-materialize .fv-valid-row .fv-plugins-icon{color:#4caf50}.fv-plugins-milligram .fv-plugins-icon{height:38px;line-height:38px;width:38px}.fv-plugins-milligram .column{position:relative}.fv-plugins-milligram .column .fv-plugins-icon{right:10px}.fv-plugins-milligram .fv-plugins-icon-check{top:-6px}.fv-plugins-milligram .fv-plugins-message-container{margin-bottom:15px}.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon{top:30px}.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon-check{top:24px}.fv-plugins-milligram .fv-invalid-row .fv-help-block,.fv-plugins-milligram .fv-invalid-row .fv-plugins-icon{color:red}.fv-plugins-milligram .fv-valid-row .fv-help-block,.fv-plugins-milligram .fv-valid-row .fv-plugins-icon{color:green}.fv-plugins-mini .fv-plugins-icon{height:42px;line-height:42px;width:42px;top:4px}.fv-plugins-mini .fv-plugins-icon-check{top:-8px}.fv-plugins-mini.fv-stacked-form .fv-plugins-icon{top:28px}.fv-plugins-mini.fv-stacked-form .fv-plugins-icon-check{top:20px}.fv-plugins-mini .fv-plugins-message-container{margin:calc(var(--universal-margin)/2)}.fv-plugins-mini .fv-invalid-row .fv-help-block,.fv-plugins-mini .fv-invalid-row .fv-plugins-icon{color:var(--input-invalid-color)}.fv-plugins-mini .fv-valid-row .fv-help-block,.fv-plugins-mini .fv-valid-row .fv-plugins-icon{color:#308732}.fv-plugins-mui .fv-plugins-icon{height:32px;line-height:32px;width:32px;top:15px;right:4px}.fv-plugins-mui .fv-plugins-icon-check{top:-6px;right:-10px}.fv-plugins-mui .fv-plugins-message-container{margin:8px 0}.fv-plugins-mui .fv-invalid-row .fv-help-block,.fv-plugins-mui .fv-invalid-row .fv-plugins-icon{color:#f44336}.fv-plugins-mui .fv-valid-row .fv-help-block,.fv-plugins-mui .fv-valid-row .fv-plugins-icon{color:#4caf50}.fv-plugins-pure .fv-plugins-icon{height:36px;line-height:36px;width:36px}.fv-plugins-pure .fv-has-error label,.fv-plugins-pure .fv-has-error .fv-help-block,.fv-plugins-pure .fv-has-error .fv-plugins-icon{color:#ca3c3c}.fv-plugins-pure .fv-has-success label,.fv-plugins-pure .fv-has-success .fv-help-block,.fv-plugins-pure .fv-has-success .fv-plugins-icon{color:#1cb841}.fv-plugins-pure.pure-form-aligned .fv-help-block{margin-top:5px;margin-left:180px}.fv-plugins-pure.pure-form-aligned .fv-plugins-icon-check{top:-9px}.fv-plugins-pure.pure-form-stacked .pure-control-group{margin-bottom:8px}.fv-plugins-pure.pure-form-stacked .fv-plugins-icon{top:22px}.fv-plugins-pure.pure-form-stacked .fv-plugins-icon-check{top:13px}.fv-plugins-pure.pure-form-stacked .fv-sr-only~.fv-plugins-icon{top:-9px}.fv-plugins-semantic.ui.form .fields.error label,.fv-plugins-semantic .error .fv-plugins-icon{color:#9f3a38}.fv-plugins-semantic .fv-plugins-icon-check{right:7px}.fv-plugins-shoelace .input-group{margin-bottom:0}.fv-plugins-shoelace .fv-plugins-icon{height:32px;line-height:32px;width:32px;top:28px}.fv-plugins-shoelace .row .fv-plugins-icon{right:16px;top:0}.fv-plugins-shoelace .fv-plugins-icon-check{top:24px}.fv-plugins-shoelace .fv-sr-only~.fv-plugins-icon,.fv-plugins-shoelace .fv-sr-only~div .fv-plugins-icon{top:-4px}.fv-plugins-shoelace .input-valid .fv-help-block,.fv-plugins-shoelace .input-valid .fv-plugins-icon{color:#2ecc40}.fv-plugins-shoelace .input-invalid .fv-help-block,.fv-plugins-shoelace .input-invalid .fv-plugins-icon{color:#ff4136}.fv-plugins-spectre .input-group .fv-plugins-icon{z-index:2}.fv-plugins-spectre .form-group .fv-plugins-icon-check{right:6px;top:10px}.fv-plugins-spectre:not(.form-horizontal) .form-group .fv-plugins-icon-check{right:6px;top:45px}.fv-plugins-tachyons .fv-plugins-icon{height:36px;line-height:36px;width:36px}.fv-plugins-tachyons .fv-plugins-icon-check{top:-7px}.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon{top:34px}.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon-check{top:24px}.fv-plugins-turret .fv-plugins-icon{height:40px;line-height:40px;width:40px}.fv-plugins-turret.fv-stacked-form .fv-plugins-icon{top:29px}.fv-plugins-turret.fv-stacked-form .fv-plugins-icon-check{top:17px}.fv-plugins-turret .fv-invalid-row .form-message,.fv-plugins-turret .fv-invalid-row .fv-plugins-icon{color:#c00}.fv-plugins-turret .fv-valid-row .form-message,.fv-plugins-turret .fv-valid-row .fv-plugins-icon{color:#00b300}.fv-plugins-uikit .fv-plugins-icon{height:40px;line-height:40px;top:25px;width:40px}.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon{top:0}.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon-check{top:-11px}.fv-plugins-uikit.uk-form-stacked .fv-plugins-icon-check{top:15px}.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon{top:0}.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon-check{top:-11px}.fv-plugins-wizard--step{display:none}.fv-plugins-wizard--active{display:block} diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js new file mode 100644 index 0000000..e24d50b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js @@ -0,0 +1,25 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.base64 = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function base64() { + return { + validate: function (input) { + return { + valid: input.value === '' || + /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$/.test(input.value), + }; + }, + }; + } + + return base64; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js new file mode 100644 index 0000000..7491b97 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-base64 + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.base64=e())}(this,(function(){"use strict";return function(){return{validate:function(a){return{valid:""===a.value||/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$/.test(a.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js new file mode 100644 index 0000000..e79ab8a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js @@ -0,0 +1,47 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.between = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function between() { + var formatValue = function (value) { + return parseFloat("".concat(value).replace(',', '.')); + }; + return { + validate: function (input) { + var value = input.value; + if (value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { inclusive: true, message: '' }, removeUndefined(input.options)); + var minValue = formatValue(opts.min); + var maxValue = formatValue(opts.max); + return opts.inclusive + ? { + message: format(input.l10n ? opts.message || input.l10n.between.default : opts.message, [ + "".concat(minValue), + "".concat(maxValue), + ]), + valid: parseFloat(value) >= minValue && parseFloat(value) <= maxValue, + } + : { + message: format(input.l10n ? opts.message || input.l10n.between.notInclusive : opts.message, [ + "".concat(minValue), + "".concat(maxValue), + ]), + valid: parseFloat(value) > minValue && parseFloat(value) < maxValue, + }; + }, + }; + } + + return between; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js new file mode 100644 index 0000000..2e2b9ba --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-between + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.between=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,n=e.utils.removeUndefined;return function(){var e=function(e){return parseFloat("".concat(e).replace(",","."))};return{validate:function(o){var t=o.value;if(""===t)return{valid:!0};var i=Object.assign({},{inclusive:!0,message:""},n(o.options)),r=e(i.min),l=e(i.max);return i.inclusive?{message:a(o.l10n?i.message||o.l10n.between.default:i.message,["".concat(r),"".concat(l)]),valid:parseFloat(t)>=r&&parseFloat(t)<=l}:{message:a(o.l10n?i.message||o.l10n.between.notInclusive:i.message,["".concat(r),"".concat(l)]),valid:parseFloat(t)>r&&parseFloat(t) + */ + /** + * Validate an Business Identifier Code (BIC), also known as ISO 9362, SWIFT-BIC, SWIFT ID or SWIFT code + * For more information see http://en.wikipedia.org/wiki/ISO_9362 + * + * @todo The 5 and 6 characters are an ISO 3166-1 country code, this could also be validated + */ + function bic() { + return { + validate: function (input) { + return { + valid: input.value === '' || /^[a-zA-Z]{6}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?$/.test(input.value), + }; + }, + }; + } + + return bic; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js new file mode 100644 index 0000000..c9ed525 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-bic + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.bic=o())}(this,(function(){"use strict";return function(){return{validate:function(i){return{valid:""===i.value||/^[a-zA-Z]{6}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?$/.test(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js new file mode 100644 index 0000000..49e9603 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js @@ -0,0 +1,26 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.blank = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * This validator always returns valid. + * It can be used when we want to show the custom message returned from server + */ + function blank() { + return { + validate: function (_input) { + return { valid: true }; + }, + }; + } + + return blank; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js new file mode 100644 index 0000000..1c7053e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-blank + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.blank=o())}(this,(function(){"use strict";return function(){return{validate:function(i){return{valid:!0}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js new file mode 100644 index 0000000..d2eaecd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js @@ -0,0 +1,26 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.callback = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var call = core.utils.call; + function callback() { + return { + validate: function (input) { + var response = call(input.options.callback, [input]); + return 'boolean' === typeof response + ? { valid: response } // Deprecated + : response; + }, + }; + } + + return callback; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js new file mode 100644 index 0000000..4714e9d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-callback + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.callback=i(o.FormValidation))}(this,(function(o){"use strict";var i=o.utils.call;return function(){return{validate:function(o){var a=i(o.options.callback,[o]);return"boolean"==typeof a?{valid:a}:a}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js new file mode 100644 index 0000000..84ae112 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js @@ -0,0 +1,44 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.choice = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format; + function choice() { + return { + validate: function (input) { + var numChoices = 'select' === input.element.tagName.toLowerCase() + ? input.element.querySelectorAll('option:checked').length + : input.elements.filter(function (ele) { return ele.checked; }).length; + var min = input.options.min ? "".concat(input.options.min) : ''; + var max = input.options.max ? "".concat(input.options.max) : ''; + var msg = input.l10n ? input.options.message || input.l10n.choice.default : input.options.message; + var isValid = !((min && numChoices < parseInt(min, 10)) || (max && numChoices > parseInt(max, 10))); + switch (true) { + case !!min && !!max: + msg = format(input.l10n ? input.l10n.choice.between : input.options.message, [min, max]); + break; + case !!min: + msg = format(input.l10n ? input.l10n.choice.more : input.options.message, min); + break; + case !!max: + msg = format(input.l10n ? input.l10n.choice.less : input.options.message, max); + break; + } + return { + message: msg, + valid: isValid, + }; + }, + }; + } + + return choice; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js new file mode 100644 index 0000000..8d1afaf --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-choice + * @version 2.4.0 + */ + +!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.choice=o(e.FormValidation))}(this,(function(e){"use strict";var o=e.utils.format;return function(){return{validate:function(e){var n="select"===e.element.tagName.toLowerCase()?e.element.querySelectorAll("option:checked").length:e.elements.filter((function(e){return e.checked})).length,t=e.options.min?"".concat(e.options.min):"",i=e.options.max?"".concat(e.options.max):"",a=e.l10n?e.options.message||e.l10n.choice.default:e.options.message,s=!(t&&nparseInt(i,10));switch(!0){case!!t&&!!i:a=o(e.l10n?e.l10n.choice.between:e.options.message,[t,i]);break;case!!t:a=o(e.l10n?e.l10n.choice.more:e.options.message,t);break;case!!i:a=o(e.l10n?e.l10n.choice.less:e.options.message,i)}return{message:a,valid:s}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js new file mode 100644 index 0000000..61311d3 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js @@ -0,0 +1,253 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.color = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function color() { + var SUPPORTED_TYPES = ['hex', 'rgb', 'rgba', 'hsl', 'hsla', 'keyword']; + var KEYWORD_COLORS = [ + // Colors start with A + 'aliceblue', + 'antiquewhite', + 'aqua', + 'aquamarine', + 'azure', + // B + 'beige', + 'bisque', + 'black', + 'blanchedalmond', + 'blue', + 'blueviolet', + 'brown', + 'burlywood', + // C + 'cadetblue', + 'chartreuse', + 'chocolate', + 'coral', + 'cornflowerblue', + 'cornsilk', + 'crimson', + 'cyan', + // D + 'darkblue', + 'darkcyan', + 'darkgoldenrod', + 'darkgray', + 'darkgreen', + 'darkgrey', + 'darkkhaki', + 'darkmagenta', + 'darkolivegreen', + 'darkorange', + 'darkorchid', + 'darkred', + 'darksalmon', + 'darkseagreen', + 'darkslateblue', + 'darkslategray', + 'darkslategrey', + 'darkturquoise', + 'darkviolet', + 'deeppink', + 'deepskyblue', + 'dimgray', + 'dimgrey', + 'dodgerblue', + // F + 'firebrick', + 'floralwhite', + 'forestgreen', + 'fuchsia', + // G + 'gainsboro', + 'ghostwhite', + 'gold', + 'goldenrod', + 'gray', + 'green', + 'greenyellow', + 'grey', + // H + 'honeydew', + 'hotpink', + // I + 'indianred', + 'indigo', + 'ivory', + // K + 'khaki', + // L + 'lavender', + 'lavenderblush', + 'lawngreen', + 'lemonchiffon', + 'lightblue', + 'lightcoral', + 'lightcyan', + 'lightgoldenrodyellow', + 'lightgray', + 'lightgreen', + 'lightgrey', + 'lightpink', + 'lightsalmon', + 'lightseagreen', + 'lightskyblue', + 'lightslategray', + 'lightslategrey', + 'lightsteelblue', + 'lightyellow', + 'lime', + 'limegreen', + 'linen', + // M + 'magenta', + 'maroon', + 'mediumaquamarine', + 'mediumblue', + 'mediumorchid', + 'mediumpurple', + 'mediumseagreen', + 'mediumslateblue', + 'mediumspringgreen', + 'mediumturquoise', + 'mediumvioletred', + 'midnightblue', + 'mintcream', + 'mistyrose', + 'moccasin', + // N + 'navajowhite', + 'navy', + // O + 'oldlace', + 'olive', + 'olivedrab', + 'orange', + 'orangered', + 'orchid', + // P + 'palegoldenrod', + 'palegreen', + 'paleturquoise', + 'palevioletred', + 'papayawhip', + 'peachpuff', + 'peru', + 'pink', + 'plum', + 'powderblue', + 'purple', + // R + 'red', + 'rosybrown', + 'royalblue', + // S + 'saddlebrown', + 'salmon', + 'sandybrown', + 'seagreen', + 'seashell', + 'sienna', + 'silver', + 'skyblue', + 'slateblue', + 'slategray', + 'slategrey', + 'snow', + 'springgreen', + 'steelblue', + // T + 'tan', + 'teal', + 'thistle', + 'tomato', + 'transparent', + 'turquoise', + // V + 'violet', + // W + 'wheat', + 'white', + 'whitesmoke', + // Y + 'yellow', + 'yellowgreen', + ]; + var hex = function (value) { + return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(value); + }; + var hsl = function (value) { + return /^hsl\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(value); + }; + var hsla = function (value) { + return /^hsla\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(value); + }; + var keyword = function (value) { + return KEYWORD_COLORS.indexOf(value) >= 0; + }; + var rgb = function (value) { + return (/^rgb\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){2}(\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*)\)$/.test(value) || /^rgb\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(value)); + }; + var rgba = function (value) { + return (/^rgba\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(value) || + /^rgba\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(value)); + }; + return { + /** + * Return true if the input value is a valid color + * @returns {boolean} + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var types = typeof input.options.type === 'string' + ? input.options.type.toString().replace(/s/g, '').split(',') + : input.options.type || SUPPORTED_TYPES; + for (var _i = 0, types_1 = types; _i < types_1.length; _i++) { + var type = types_1[_i]; + var tpe = type.toLowerCase(); + if (SUPPORTED_TYPES.indexOf(tpe) === -1) { + continue; + } + var result = true; + switch (tpe) { + case 'hex': + result = hex(input.value); + break; + case 'hsl': + result = hsl(input.value); + break; + case 'hsla': + result = hsla(input.value); + break; + case 'keyword': + result = keyword(input.value); + break; + case 'rgb': + result = rgb(input.value); + break; + case 'rgba': + result = rgba(input.value); + break; + } + if (result) { + return { valid: true }; + } + } + return { valid: false }; + }, + }; + } + + return color; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js new file mode 100644 index 0000000..0551e27 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-color + * @version 2.4.0 + */ + +!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.color=r())}(this,(function(){"use strict";return function(){var e=["hex","rgb","rgba","hsl","hsla","keyword"],r=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","transparent","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],a=function(e){return/^hsl\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(e)},l=function(e){return/^hsla\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(e)},i=function(e){return r.indexOf(e)>=0},t=function(e){return/^rgb\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){2}(\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*)\)$/.test(e)||/^rgb\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(e)},n=function(e){return/^rgba\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(e)||/^rgba\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(e)};return{validate:function(r){if(""===r.value)return{valid:!0};for(var o,s=0,d="string"==typeof r.options.type?r.options.type.toString().replace(/s/g,"").split(","):r.options.type||e;s + */ + var luhn = core.algorithms.luhn; + var CREDIT_CARD_TYPES = { + AMERICAN_EXPRESS: { + length: [15], + prefix: ['34', '37'], + }, + DANKORT: { + length: [16], + prefix: ['5019'], + }, + DINERS_CLUB: { + length: [14], + prefix: ['300', '301', '302', '303', '304', '305', '36'], + }, + DINERS_CLUB_US: { + length: [16], + prefix: ['54', '55'], + }, + DISCOVER: { + length: [16], + prefix: [ + '6011', + '622126', + '622127', + '622128', + '622129', + '62213', + '62214', + '62215', + '62216', + '62217', + '62218', + '62219', + '6222', + '6223', + '6224', + '6225', + '6226', + '6227', + '6228', + '62290', + '62291', + '622920', + '622921', + '622922', + '622923', + '622924', + '622925', + '644', + '645', + '646', + '647', + '648', + '649', + '65', + ], + }, + ELO: { + length: [16], + prefix: [ + '4011', + '4312', + '4389', + '4514', + '4573', + '4576', + '5041', + '5066', + '5067', + '509', + '6277', + '6362', + '6363', + '650', + '6516', + '6550', + ], + }, + FORBRUGSFORENINGEN: { + length: [16], + prefix: ['600722'], + }, + JCB: { + length: [16], + prefix: ['3528', '3529', '353', '354', '355', '356', '357', '358'], + }, + LASER: { + length: [16, 17, 18, 19], + prefix: ['6304', '6706', '6771', '6709'], + }, + MAESTRO: { + length: [12, 13, 14, 15, 16, 17, 18, 19], + prefix: ['5018', '5020', '5038', '5868', '6304', '6759', '6761', '6762', '6763', '6764', '6765', '6766'], + }, + MASTERCARD: { + length: [16], + prefix: ['51', '52', '53', '54', '55'], + }, + SOLO: { + length: [16, 18, 19], + prefix: ['6334', '6767'], + }, + UNIONPAY: { + length: [16, 17, 18, 19], + prefix: [ + '622126', + '622127', + '622128', + '622129', + '62213', + '62214', + '62215', + '62216', + '62217', + '62218', + '62219', + '6222', + '6223', + '6224', + '6225', + '6226', + '6227', + '6228', + '62290', + '62291', + '622920', + '622921', + '622922', + '622923', + '622924', + '622925', + ], + }, + VISA: { + length: [16], + prefix: ['4'], + }, + VISA_ELECTRON: { + length: [16], + prefix: ['4026', '417500', '4405', '4508', '4844', '4913', '4917'], + }, + }; + function creditCard() { + return { + /** + * Return true if the input value is valid credit card number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: { + type: null, + }, + valid: true, + }; + } + // Accept only digits, dashes or spaces + if (/[^0-9-\s]+/.test(input.value)) { + return { + meta: { + type: null, + }, + valid: false, + }; + } + var v = input.value.replace(/\D/g, ''); + if (!luhn(v)) { + return { + meta: { + type: null, + }, + valid: false, + }; + } + for (var _i = 0, _a = Object.keys(CREDIT_CARD_TYPES); _i < _a.length; _i++) { + var tpe = _a[_i]; + for (var i in CREDIT_CARD_TYPES[tpe].prefix) { + // Check the prefix and length + if (input.value.substr(0, CREDIT_CARD_TYPES[tpe].prefix[i].length) === + CREDIT_CARD_TYPES[tpe].prefix[i] && + CREDIT_CARD_TYPES[tpe].length.indexOf(v.length) !== -1) { + return { + meta: { + type: tpe, + }, + valid: true, + }; + } + } + } + return { + meta: { + type: null, + }, + valid: false, + }; + }, + }; + } + + return creditCard; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js new file mode 100644 index 0000000..62edc6d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-credit-card + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.creditCard=t(e.FormValidation))}(this,(function(e){"use strict";var t=e.algorithms.luhn,i={AMERICAN_EXPRESS:{length:[15],prefix:["34","37"]},DANKORT:{length:[16],prefix:["5019"]},DINERS_CLUB:{length:[14],prefix:["300","301","302","303","304","305","36"]},DINERS_CLUB_US:{length:[16],prefix:["54","55"]},DISCOVER:{length:[16],prefix:["6011","622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925","644","645","646","647","648","649","65"]},ELO:{length:[16],prefix:["4011","4312","4389","4514","4573","4576","5041","5066","5067","509","6277","6362","6363","650","6516","6550"]},FORBRUGSFORENINGEN:{length:[16],prefix:["600722"]},JCB:{length:[16],prefix:["3528","3529","353","354","355","356","357","358"]},LASER:{length:[16,17,18,19],prefix:["6304","6706","6771","6709"]},MAESTRO:{length:[12,13,14,15,16,17,18,19],prefix:["5018","5020","5038","5868","6304","6759","6761","6762","6763","6764","6765","6766"]},MASTERCARD:{length:[16],prefix:["51","52","53","54","55"]},SOLO:{length:[16,18,19],prefix:["6334","6767"]},UNIONPAY:{length:[16,17,18,19],prefix:["622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925"]},VISA:{length:[16],prefix:["4"]},VISA_ELECTRON:{length:[16],prefix:["4026","417500","4405","4508","4844","4913","4917"]}};return function(){return{validate:function(e){if(""===e.value)return{meta:{type:null},valid:!0};if(/[^0-9-\s]+/.test(e.value))return{meta:{type:null},valid:!1};var r=e.value.replace(/\D/g,"");if(!t(r))return{meta:{type:null},valid:!1};for(var l=0,n=Object.keys(i);l + */ + function cusip() { + return { + /** + * Validate a CUSIP number + * @see http://en.wikipedia.org/wiki/CUSIP + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var value = input.value.toUpperCase(); + // O, I aren't allowed + if (!/^[0123456789ABCDEFGHJKLMNPQRSTUVWXYZ*@#]{9}$/.test(value)) { + return { valid: false }; + } + // Get the last char + var chars = value.split(''); + var lastChar = chars.pop(); + var converted = chars.map(function (c) { + var code = c.charCodeAt(0); + switch (true) { + case c === '*': + return 36; + case c === '@': + return 37; + case c === '#': + return 38; + // Replace A, B, C, ..., Z with 10, 11, ..., 35 + case code >= 'A'.charCodeAt(0) && code <= 'Z'.charCodeAt(0): + return code - 'A'.charCodeAt(0) + 10; + default: + return parseInt(c, 10); + } + }); + var sum = converted + .map(function (v, i) { + var double = i % 2 === 0 ? v : 2 * v; + return Math.floor(double / 10) + (double % 10); + }) + .reduce(function (a, b) { return a + b; }, 0); + var checkDigit = (10 - (sum % 10)) % 10; + return { valid: lastChar === "".concat(checkDigit) }; + }, + }; + } + + return cusip; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js new file mode 100644 index 0000000..3a1a8b6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-cusip + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.cusip=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var e=t.value.toUpperCase();if(!/^[0123456789ABCDEFGHJKLMNPQRSTUVWXYZ*@#]{9}$/.test(e))return{valid:!1};var r=e.split(""),a=r.pop(),n=r.map((function(t){var e=t.charCodeAt(0);switch(!0){case"*"===t:return 36;case"@"===t:return 37;case"#"===t:return 38;case e>="A".charCodeAt(0)&&e<="Z".charCodeAt(0):return e-"A".charCodeAt(0)+10;default:return parseInt(t,10)}})).map((function(t,e){var r=e%2==0?t:2*t;return Math.floor(r/10)+r%10})).reduce((function(t,e){return t+e}),0);return{valid:a==="".concat((10-n%10)%10)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js new file mode 100644 index 0000000..6633ebd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js @@ -0,0 +1,269 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.date = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, isValidDate = core.utils.isValidDate, removeUndefined = core.utils.removeUndefined; + /** + * Return a date object after parsing the date string + * + * @param {string} input The date to parse + * @param {string[]} inputFormat The date format + * The format can be: + * - date: Consist of DD, MM, YYYY parts which are separated by the separator option + * - date and time: The time can consist of h, m, s parts which are separated by : + * @param {string} separator The separator used to separate the date, month, and year + * @return {Date} + * @private + */ + var parseDate = function (input, inputFormat, separator) { + // Ensure that the format must consist of year, month and day patterns + var yearIndex = inputFormat.indexOf('YYYY'); + var monthIndex = inputFormat.indexOf('MM'); + var dayIndex = inputFormat.indexOf('DD'); + if (yearIndex === -1 || monthIndex === -1 || dayIndex === -1) { + return null; + } + var sections = input.split(' '); + var dateSection = sections[0].split(separator); + if (dateSection.length < 3) { + return null; + } + var d = new Date(parseInt(dateSection[yearIndex], 10), parseInt(dateSection[monthIndex], 10) - 1, parseInt(dateSection[dayIndex], 10)); + var amPmSection = sections.length > 2 ? sections[2] : null; + if (sections.length > 1) { + var timeSection = sections[1].split(':'); + var h = timeSection.length > 0 ? parseInt(timeSection[0], 10) : 0; + d.setHours(amPmSection && amPmSection.toUpperCase() === 'PM' && h < 12 ? h + 12 : h); + d.setMinutes(timeSection.length > 1 ? parseInt(timeSection[1], 10) : 0); + d.setSeconds(timeSection.length > 2 ? parseInt(timeSection[2], 10) : 0); + } + return d; + }; + /** + * Format date + * + * @param {Date} input The date object to format + * @param {string} inputFormat The date format + * The format can consist of the following tokens: + * d Day of the month without leading zeros (1 through 31) + * dd Day of the month with leading zeros (01 through 31) + * m Month without leading zeros (1 through 12) + * mm Month with leading zeros (01 through 12) + * yy Last two digits of year (for example: 14) + * yyyy Full four digits of year (for example: 2014) + * h Hours without leading zeros (1 through 12) + * hh Hours with leading zeros (01 through 12) + * H Hours without leading zeros (0 through 23) + * HH Hours with leading zeros (00 through 23) + * M Minutes without leading zeros (0 through 59) + * MM Minutes with leading zeros (00 through 59) + * s Seconds without leading zeros (0 through 59) + * ss Seconds with leading zeros (00 through 59) + * @return {string} + * @private + */ + var formatDate = function (input, inputFormat) { + var dateFormat = inputFormat + .replace(/Y/g, 'y') + .replace(/M/g, 'm') + .replace(/D/g, 'd') + .replace(/:m/g, ':M') + .replace(/:mm/g, ':MM') + .replace(/:S/, ':s') + .replace(/:SS/, ':ss'); + var d = input.getDate(); + var dd = d < 10 ? "0".concat(d) : d; + var m = input.getMonth() + 1; + var mm = m < 10 ? "0".concat(m) : m; + var yy = "".concat(input.getFullYear()).substr(2); + var yyyy = input.getFullYear(); + var h = input.getHours() % 12 || 12; + var hh = h < 10 ? "0".concat(h) : h; + var H = input.getHours(); + var HH = H < 10 ? "0".concat(H) : H; + var M = input.getMinutes(); + var MM = M < 10 ? "0".concat(M) : M; + var s = input.getSeconds(); + var ss = s < 10 ? "0".concat(s) : s; + var replacer = { + H: "".concat(H), + HH: "".concat(HH), + M: "".concat(M), + MM: "".concat(MM), + d: "".concat(d), + dd: "".concat(dd), + h: "".concat(h), + hh: "".concat(hh), + m: "".concat(m), + mm: "".concat(mm), + s: "".concat(s), + ss: "".concat(ss), + yy: "".concat(yy), + yyyy: "".concat(yyyy), + }; + return dateFormat.replace(/d{1,4}|m{1,4}|yy(?:yy)?|([HhMs])\1?|"[^"]*"|'[^']*'/g, function (match) { + return replacer[match] ? replacer[match] : match.slice(1, match.length - 1); + }); + }; + var date = function () { + return { + validate: function (input) { + if (input.value === '') { + return { + meta: { + date: null, + }, + valid: true, + }; + } + var opts = Object.assign({}, { + // Force the format to `YYYY-MM-DD` as the default browser behaviour when using type="date" attribute + format: input.element && input.element.getAttribute('type') === 'date' ? 'YYYY-MM-DD' : 'MM/DD/YYYY', + message: '', + }, removeUndefined(input.options)); + var message = input.l10n ? input.l10n.date.default : opts.message; + var invalidResult = { + message: "".concat(message), + meta: { + date: null, + }, + valid: false, + }; + var formats = opts.format.split(' '); + var timeFormat = formats.length > 1 ? formats[1] : null; + var amOrPm = formats.length > 2 ? formats[2] : null; + var sections = input.value.split(' '); + var dateSection = sections[0]; + var timeSection = sections.length > 1 ? sections[1] : null; + var amPmSection = sections.length > 2 ? sections[2] : null; + if (formats.length !== sections.length) { + return invalidResult; + } + // Determine the separator + var separator = opts.separator || + (dateSection.indexOf('/') !== -1 + ? '/' + : dateSection.indexOf('-') !== -1 + ? '-' + : dateSection.indexOf('.') !== -1 + ? '.' + : '/'); + if (separator === null || dateSection.indexOf(separator) === -1) { + return invalidResult; + } + // Determine the date + var dateStr = dateSection.split(separator); + var dateFormat = formats[0].split(separator); + if (dateStr.length !== dateFormat.length) { + return invalidResult; + } + var yearStr = dateStr[dateFormat.indexOf('YYYY')]; + var monthStr = dateStr[dateFormat.indexOf('MM')]; + var dayStr = dateStr[dateFormat.indexOf('DD')]; + if (!/^\d+$/.test(yearStr) || + !/^\d+$/.test(monthStr) || + !/^\d+$/.test(dayStr) || + yearStr.length > 4 || + monthStr.length > 2 || + dayStr.length > 2) { + return invalidResult; + } + var year = parseInt(yearStr, 10); + var month = parseInt(monthStr, 10); + var day = parseInt(dayStr, 10); + if (!isValidDate(year, month, day)) { + return invalidResult; + } + // Determine the time + var d = new Date(year, month - 1, day); + if (timeFormat) { + var hms = timeSection.split(':'); + if (timeFormat.split(':').length !== hms.length) { + return invalidResult; + } + var h = hms.length > 0 ? (hms[0].length <= 2 && /^\d+$/.test(hms[0]) ? parseInt(hms[0], 10) : -1) : 0; + var m = hms.length > 1 ? (hms[1].length <= 2 && /^\d+$/.test(hms[1]) ? parseInt(hms[1], 10) : -1) : 0; + var s = hms.length > 2 ? (hms[2].length <= 2 && /^\d+$/.test(hms[2]) ? parseInt(hms[2], 10) : -1) : 0; + if (h === -1 || m === -1 || s === -1) { + return invalidResult; + } + // Validate seconds + if (s < 0 || s > 60) { + return invalidResult; + } + // Validate hours + if (h < 0 || h >= 24 || (amOrPm && h > 12)) { + return invalidResult; + } + // Validate minutes + if (m < 0 || m > 59) { + return invalidResult; + } + d.setHours(amPmSection && amPmSection.toUpperCase() === 'PM' && h < 12 ? h + 12 : h); + d.setMinutes(m); + d.setSeconds(s); + } + // Validate day, month, and year + var minOption = typeof opts.min === 'function' ? opts.min() : opts.min; + var min = minOption instanceof Date + ? minOption + : minOption + ? parseDate(minOption, dateFormat, separator) + : d; + var maxOption = typeof opts.max === 'function' ? opts.max() : opts.max; + var max = maxOption instanceof Date + ? maxOption + : maxOption + ? parseDate(maxOption, dateFormat, separator) + : d; + // In order to avoid displaying a date string like "Mon Dec 08 2014 19:14:12 GMT+0000 (WET)" + var minOptionStr = minOption instanceof Date ? formatDate(min, opts.format) : minOption; + var maxOptionStr = maxOption instanceof Date ? formatDate(max, opts.format) : maxOption; + switch (true) { + case !!minOptionStr && !maxOptionStr: + return { + message: format(input.l10n ? input.l10n.date.min : message, minOptionStr), + meta: { + date: d, + }, + valid: d.getTime() >= min.getTime(), + }; + case !!maxOptionStr && !minOptionStr: + return { + message: format(input.l10n ? input.l10n.date.max : message, maxOptionStr), + meta: { + date: d, + }, + valid: d.getTime() <= max.getTime(), + }; + case !!maxOptionStr && !!minOptionStr: + return { + message: format(input.l10n ? input.l10n.date.range : message, [minOptionStr, maxOptionStr]), + meta: { + date: d, + }, + valid: d.getTime() <= max.getTime() && d.getTime() >= min.getTime(), + }; + default: + return { + message: "".concat(message), + meta: { + date: d, + }, + valid: true, + }; + } + }, + }; + }; + + return date; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js new file mode 100644 index 0000000..6871d5c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-date + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.date=t(e.FormValidation))}(this,(function(e){"use strict";var t=e.utils.format,n=e.utils.isValidDate,a=e.utils.removeUndefined,r=function(e,t,n){var a=t.indexOf("YYYY"),r=t.indexOf("MM"),l=t.indexOf("DD");if(-1===a||-1===r||-1===l)return null;var i=e.split(" "),s=i[0].split(n);if(s.length<3)return null;var o=new Date(parseInt(s[a],10),parseInt(s[r],10)-1,parseInt(s[l],10)),c=i.length>2?i[2]:null;if(i.length>1){var d=i[1].split(":"),u=d.length>0?parseInt(d[0],10):0;o.setHours(c&&"PM"===c.toUpperCase()&&u<12?u+12:u),o.setMinutes(d.length>1?parseInt(d[1],10):0),o.setSeconds(d.length>2?parseInt(d[2],10):0)}return o},l=function(e,t){var n=t.replace(/Y/g,"y").replace(/M/g,"m").replace(/D/g,"d").replace(/:m/g,":M").replace(/:mm/g,":MM").replace(/:S/,":s").replace(/:SS/,":ss"),a=e.getDate(),r=a<10?"0".concat(a):a,l=e.getMonth()+1,i=l<10?"0".concat(l):l,s="".concat(e.getFullYear()).substr(2),o=e.getFullYear(),c=e.getHours()%12||12,d=c<10?"0".concat(c):c,u=e.getHours(),f=u<10?"0".concat(u):u,g=e.getMinutes(),m=g<10?"0".concat(g):g,p=e.getSeconds(),h=p<10?"0".concat(p):p,v={H:"".concat(u),HH:"".concat(f),M:"".concat(g),MM:"".concat(m),d:"".concat(a),dd:"".concat(r),h:"".concat(c),hh:"".concat(d),m:"".concat(l),mm:"".concat(i),s:"".concat(p),ss:"".concat(h),yy:"".concat(s),yyyy:"".concat(o)};return n.replace(/d{1,4}|m{1,4}|yy(?:yy)?|([HhMs])\1?|"[^"]*"|'[^']*'/g,(function(e){return v[e]?v[e]:e.slice(1,e.length-1)}))};return function(){return{validate:function(e){if(""===e.value)return{meta:{date:null},valid:!0};var i=Object.assign({},{format:e.element&&"date"===e.element.getAttribute("type")?"YYYY-MM-DD":"MM/DD/YYYY",message:""},a(e.options)),s=e.l10n?e.l10n.date.default:i.message,o={message:"".concat(s),meta:{date:null},valid:!1},c=i.format.split(" "),d=c.length>1?c[1]:null,u=c.length>2?c[2]:null,f=e.value.split(" "),g=f[0],m=f.length>1?f[1]:null,p=f.length>2?f[2]:null;if(c.length!==f.length)return o;var h=i.separator||(-1!==g.indexOf("/")?"/":-1!==g.indexOf("-")?"-":-1!==g.indexOf(".")?".":"/");if(null===h||-1===g.indexOf(h))return o;var v=g.split(h),M=c[0].split(h);if(v.length!==M.length)return o;var Y=v[M.indexOf("YYYY")],y=v[M.indexOf("MM")],D=v[M.indexOf("DD")];if(!/^\d+$/.test(Y)||!/^\d+$/.test(y)||!/^\d+$/.test(D)||Y.length>4||y.length>2||D.length>2)return o;var x=parseInt(Y,10),I=parseInt(y,10),O=parseInt(D,10);if(!n(x,I,O))return o;var T=new Date(x,I-1,O);if(d){var F=m.split(":");if(d.split(":").length!==F.length)return o;var H=F.length>0?F[0].length<=2&&/^\d+$/.test(F[0])?parseInt(F[0],10):-1:0,V=F.length>1?F[1].length<=2&&/^\d+$/.test(F[1])?parseInt(F[1],10):-1:0,b=F.length>2?F[2].length<=2&&/^\d+$/.test(F[2])?parseInt(F[2],10):-1:0;if(-1===H||-1===V||-1===b)return o;if(b<0||b>60)return o;if(H<0||H>=24||u&&H>12)return o;if(V<0||V>59)return o;T.setHours(p&&"PM"===p.toUpperCase()&&H<12?H+12:H),T.setMinutes(V),T.setSeconds(b)}var S="function"==typeof i.min?i.min():i.min,$=S instanceof Date?S:S?r(S,M,h):T,w="function"==typeof i.max?i.max():i.max,U=w instanceof Date?w:w?r(w,M,h):T,j=S instanceof Date?l($,i.format):S,C=w instanceof Date?l(U,i.format):w;switch(!0){case!!j&&!C:return{message:t(e.l10n?e.l10n.date.min:s,j),meta:{date:T},valid:T.getTime()>=$.getTime()};case!!C&&!j:return{message:t(e.l10n?e.l10n.date.max:s,C),meta:{date:T},valid:T.getTime()<=U.getTime()};case!!C&&!!j:return{message:t(e.l10n?e.l10n.date.range:s,[j,C]),meta:{date:T},valid:T.getTime()<=U.getTime()&&T.getTime()>=$.getTime()};default:return{message:"".concat(s),meta:{date:T},valid:!0}}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js new file mode 100644 index 0000000..b9b71be --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.different = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function different() { + return { + validate: function (input) { + var compareWith = 'function' === typeof input.options.compare + ? input.options.compare.call(this) + : input.options.compare; + return { + valid: compareWith === '' || input.value !== compareWith, + }; + }, + }; + } + + return different; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js new file mode 100644 index 0000000..3dae084 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-different + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.different=i())}(this,(function(){"use strict";return function(){return{validate:function(o){var i="function"==typeof o.options.compare?o.options.compare.call(this):o.options.compare;return{valid:""===i||o.value!==i}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js new file mode 100644 index 0000000..b295488 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js @@ -0,0 +1,25 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.digits = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function digits() { + return { + /** + * Return true if the input value contains digits only + */ + validate: function (input) { + return { valid: input.value === '' || /^\d+$/.test(input.value) }; + }, + }; + } + + return digits; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js new file mode 100644 index 0000000..1c1927a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-digits + * @version 2.4.0 + */ + +!function(i,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.digits=t())}(this,(function(){"use strict";return function(){return{validate:function(i){return{valid:""===i.value||/^\d+$/.test(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js new file mode 100644 index 0000000..9e61b76 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js @@ -0,0 +1,39 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.ean = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function ean() { + return { + /** + * Validate EAN (International Article Number) + * @see http://en.wikipedia.org/wiki/European_Article_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + if (!/^(\d{8}|\d{12}|\d{13}|\d{14})$/.test(input.value)) { + return { valid: false }; + } + var length = input.value.length; + var sum = 0; + var weight = length === 8 ? [3, 1] : [1, 3]; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(input.value.charAt(i), 10) * weight[i % 2]; + } + sum = (10 - (sum % 10)) % 10; + return { valid: "".concat(sum) === input.value.charAt(length - 1) }; + }, + }; + } + + return ean; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js new file mode 100644 index 0000000..665be22 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ean + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.ean=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};if(!/^(\d{8}|\d{12}|\d{13}|\d{14})$/.test(e.value))return{valid:!1};for(var t=e.value.length,a=0,i=8===t?[3,1]:[1,3],n=0;n + */ + function ein() { + // The first two digits are called campus + // See http://en.wikipedia.org/wiki/Employer_Identification_Number + // http://www.irs.gov/Businesses/Small-Businesses-&-Self-Employed/How-EINs-are-Assigned-and-Valid-EIN-Prefixes + var CAMPUS = { + ANDOVER: ['10', '12'], + ATLANTA: ['60', '67'], + AUSTIN: ['50', '53'], + BROOKHAVEN: [ + '01', + '02', + '03', + '04', + '05', + '06', + '11', + '13', + '14', + '16', + '21', + '22', + '23', + '25', + '34', + '51', + '52', + '54', + '55', + '56', + '57', + '58', + '59', + '65', + ], + CINCINNATI: ['30', '32', '35', '36', '37', '38', '61'], + FRESNO: ['15', '24'], + INTERNET: ['20', '26', '27', '45', '46', '47'], + KANSAS_CITY: ['40', '44'], + MEMPHIS: ['94', '95'], + OGDEN: ['80', '90'], + PHILADELPHIA: [ + '33', + '39', + '41', + '42', + '43', + '48', + '62', + '63', + '64', + '66', + '68', + '71', + '72', + '73', + '74', + '75', + '76', + '77', + '81', + '82', + '83', + '84', + '85', + '86', + '87', + '88', + '91', + '92', + '93', + '98', + '99', + ], + SMALL_BUSINESS_ADMINISTRATION: ['31'], + }; + return { + /** + * Validate EIN (Employer Identification Number) which is also known as + * Federal Employer Identification Number (FEIN) or Federal Tax Identification Number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: null, + valid: true, + }; + } + if (!/^[0-9]{2}-?[0-9]{7}$/.test(input.value)) { + return { + meta: null, + valid: false, + }; + } + // Check the first two digits + var campus = "".concat(input.value.substr(0, 2)); + for (var key in CAMPUS) { + if (CAMPUS[key].indexOf(campus) !== -1) { + return { + meta: { + campus: key, + }, + valid: true, + }; + } + } + return { + meta: null, + valid: false, + }; + }, + }; + } + + return ein; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js new file mode 100644 index 0000000..ab9ef77 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ein + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.ein=i())}(this,(function(){"use strict";return function(){var e={ANDOVER:["10","12"],ATLANTA:["60","67"],AUSTIN:["50","53"],BROOKHAVEN:["01","02","03","04","05","06","11","13","14","16","21","22","23","25","34","51","52","54","55","56","57","58","59","65"],CINCINNATI:["30","32","35","36","37","38","61"],FRESNO:["15","24"],INTERNET:["20","26","27","45","46","47"],KANSAS_CITY:["40","44"],MEMPHIS:["94","95"],OGDEN:["80","90"],PHILADELPHIA:["33","39","41","42","43","48","62","63","64","66","68","71","72","73","74","75","76","77","81","82","83","84","85","86","87","88","91","92","93","98","99"],SMALL_BUSINESS_ADMINISTRATION:["31"]};return{validate:function(i){if(""===i.value)return{meta:null,valid:!0};if(!/^[0-9]{2}-?[0-9]{7}$/.test(i.value))return{meta:null,valid:!1};var t="".concat(i.value.substr(0,2));for(var a in e)if(-1!==e[a].indexOf(t))return{meta:{campus:a},valid:!0};return{meta:null,valid:!1}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js new file mode 100644 index 0000000..5f9f2e4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js @@ -0,0 +1,83 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.emailAddress = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + // Email address regular expression + // http://stackoverflow.com/questions/46155/validate-email-address-in-javascript + var GLOBAL_DOMAIN_OPTIONAL = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/; + var GLOBAL_DOMAIN_REQUIRED = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/; + function emailAddress() { + var splitEmailAddresses = function (emailAddresses, separator) { + var quotedFragments = emailAddresses.split(/"/); + var quotedFragmentCount = quotedFragments.length; + var emailAddressArray = []; + var nextEmailAddress = ''; + for (var i = 0; i < quotedFragmentCount; i++) { + if (i % 2 === 0) { + var splitEmailAddressFragments = quotedFragments[i].split(separator); + var splitEmailAddressFragmentCount = splitEmailAddressFragments.length; + if (splitEmailAddressFragmentCount === 1) { + nextEmailAddress += splitEmailAddressFragments[0]; + } + else { + emailAddressArray.push(nextEmailAddress + splitEmailAddressFragments[0]); + for (var j = 1; j < splitEmailAddressFragmentCount - 1; j++) { + emailAddressArray.push(splitEmailAddressFragments[j]); + } + nextEmailAddress = splitEmailAddressFragments[splitEmailAddressFragmentCount - 1]; + } + } + else { + nextEmailAddress += '"' + quotedFragments[i]; + if (i < quotedFragmentCount - 1) { + nextEmailAddress += '"'; + } + } + } + emailAddressArray.push(nextEmailAddress); + return emailAddressArray; + }; + return { + /** + * Return true if and only if the input value is a valid email address + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + multiple: false, + requireGlobalDomain: false, + separator: /[,;]/, + }, removeUndefined(input.options)); + var emailRegExp = opts.requireGlobalDomain ? GLOBAL_DOMAIN_REQUIRED : GLOBAL_DOMAIN_OPTIONAL; + var allowMultiple = opts.multiple === true || "".concat(opts.multiple) === 'true'; + if (allowMultiple) { + var separator = opts.separator || /[,;]/; + var addresses = splitEmailAddresses(input.value, separator); + var length_1 = addresses.length; + for (var i = 0; i < length_1; i++) { + if (!emailRegExp.test(addresses[i])) { + return { valid: false }; + } + } + return { valid: true }; + } + else { + return { valid: emailRegExp.test(input.value) }; + } + }, + }; + } + + return emailAddress; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js new file mode 100644 index 0000000..096a353 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-email-address + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.emailAddress=e(a.FormValidation))}(this,(function(a){"use strict";var e=a.utils.removeUndefined,i=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,t=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/;return function(){return{validate:function(a){if(""===a.value)return{valid:!0};var r=Object.assign({},{multiple:!1,requireGlobalDomain:!1,separator:/[,;]/},e(a.options)),o=r.requireGlobalDomain?t:i;if(!0===r.multiple||"true"==="".concat(r.multiple)){for(var l=r.separator||/[,;]/,n=function(a,e){for(var i=a.split(/"/),t=i.length,r=[],o="",l=0;l + */ + // Get the file name without extension + var getFileName = function (fileName) { + return fileName.indexOf('.') === -1 ? fileName : fileName.split('.').slice(0, -1).join('.'); + }; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function file() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var extension; + var name; + var extensions = input.options.extension + ? input.options.extension + .toLowerCase() + .split(',') + .map(function (item) { return item.trim(); }) + : []; + var types = input.options.type + ? input.options.type + .toLowerCase() + .split(',') + .map(function (item) { return item.trim(); }) + : []; + var html5 = window['File'] && window['FileList'] && window['FileReader']; + if (html5) { + // Get FileList instance + var files = input.element.files; + var total = files.length; + var allSize = 0; + // Check the maxFiles + if (input.options.maxFiles && total > parseInt("".concat(input.options.maxFiles), 10)) { + return { + meta: { error: 'INVALID_MAX_FILES' }, + valid: false, + }; + } + // Check the minFiles + if (input.options.minFiles && total < parseInt("".concat(input.options.minFiles), 10)) { + return { + meta: { error: 'INVALID_MIN_FILES' }, + valid: false, + }; + } + var metaData = {}; + for (var i = 0; i < total; i++) { + allSize += files[i].size; + extension = files[i].name.substr(files[i].name.lastIndexOf('.') + 1); + metaData = { + ext: extension, + file: files[i], + size: files[i].size, + type: files[i].type, + }; + // Check the minSize + if (input.options.minSize && files[i].size < parseInt("".concat(input.options.minSize), 10)) { + return { + meta: Object.assign({}, { error: 'INVALID_MIN_SIZE' }, metaData), + valid: false, + }; + } + // Check the maxSize + if (input.options.maxSize && files[i].size > parseInt("".concat(input.options.maxSize), 10)) { + return { + meta: Object.assign({}, { error: 'INVALID_MAX_SIZE' }, metaData), + valid: false, + }; + } + // Check file extension + if (extensions.length > 0 && extensions.indexOf(extension.toLowerCase()) === -1) { + return { + meta: Object.assign({}, { error: 'INVALID_EXTENSION' }, metaData), + valid: false, + }; + } + // Check file type + if (types.length > 0 && files[i].type && types.indexOf(files[i].type.toLowerCase()) === -1) { + return { + meta: Object.assign({}, { error: 'INVALID_TYPE' }, metaData), + valid: false, + }; + } + // Check file name + if (input.options.validateFileName && !input.options.validateFileName(getFileName(files[i].name))) { + return { + meta: Object.assign({}, { error: 'INVALID_NAME' }, metaData), + valid: false, + }; + } + } + // Check the maxTotalSize + if (input.options.maxTotalSize && allSize > parseInt("".concat(input.options.maxTotalSize), 10)) { + return { + meta: Object.assign({}, { + error: 'INVALID_MAX_TOTAL_SIZE', + totalSize: allSize, + }, metaData), + valid: false, + }; + } + // Check the minTotalSize + if (input.options.minTotalSize && allSize < parseInt("".concat(input.options.minTotalSize), 10)) { + return { + meta: Object.assign({}, { + error: 'INVALID_MIN_TOTAL_SIZE', + totalSize: allSize, + }, metaData), + valid: false, + }; + } + } + else { + // Check file extension + extension = input.value.substr(input.value.lastIndexOf('.') + 1); + if (extensions.length > 0 && extensions.indexOf(extension.toLowerCase()) === -1) { + return { + meta: { + error: 'INVALID_EXTENSION', + ext: extension, + }, + valid: false, + }; + } + // Check file name + name = getFileName(input.value); + if (input.options.validateFileName && !input.options.validateFileName(name)) { + return { + meta: { + error: 'INVALID_NAME', + name: name, + }, + valid: false, + }; + } + } + return { valid: true }; + }, + }; + } + + return file; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js new file mode 100644 index 0000000..8a9131a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-file + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.file=i())}(this,(function(){"use strict";var e=function(e){return-1===e.indexOf(".")?e:e.split(".").slice(0,-1).join(".")};return function(){return{validate:function(i){if(""===i.value)return{valid:!0};var t,n,o=i.options.extension?i.options.extension.toLowerCase().split(",").map((function(e){return e.trim()})):[],a=i.options.type?i.options.type.toLowerCase().split(",").map((function(e){return e.trim()})):[];if(window.File&&window.FileList&&window.FileReader){var r=i.element.files,s=r.length,l=0;if(i.options.maxFiles&&s>parseInt("".concat(i.options.maxFiles),10))return{meta:{error:"INVALID_MAX_FILES"},valid:!1};if(i.options.minFiles&&sparseInt("".concat(i.options.maxSize),10))return{meta:Object.assign({},{error:"INVALID_MAX_SIZE"},d),valid:!1};if(o.length>0&&-1===o.indexOf(t.toLowerCase()))return{meta:Object.assign({},{error:"INVALID_EXTENSION"},d),valid:!1};if(a.length>0&&r[m].type&&-1===a.indexOf(r[m].type.toLowerCase()))return{meta:Object.assign({},{error:"INVALID_TYPE"},d),valid:!1};if(i.options.validateFileName&&!i.options.validateFileName(e(r[m].name)))return{meta:Object.assign({},{error:"INVALID_NAME"},d),valid:!1}}if(i.options.maxTotalSize&&l>parseInt("".concat(i.options.maxTotalSize),10))return{meta:Object.assign({},{error:"INVALID_MAX_TOTAL_SIZE",totalSize:l},d),valid:!1};if(i.options.minTotalSize&&l0&&-1===o.indexOf(t.toLowerCase()))return{meta:{error:"INVALID_EXTENSION",ext:t},valid:!1};if(n=e(i.value),i.options.validateFileName&&!i.options.validateFileName(n))return{meta:{error:"INVALID_NAME",name:n},valid:!1}}return{valid:!0}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js new file mode 100644 index 0000000..68342c2 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js @@ -0,0 +1,36 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.greaterThan = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function greaterThan() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { inclusive: true, message: '' }, removeUndefined(input.options)); + var minValue = parseFloat("".concat(opts.min).replace(',', '.')); + return opts.inclusive + ? { + message: format(input.l10n ? opts.message || input.l10n.greaterThan.default : opts.message, "".concat(minValue)), + valid: parseFloat(input.value) >= minValue, + } + : { + message: format(input.l10n ? opts.message || input.l10n.greaterThan.notInclusive : opts.message, "".concat(minValue)), + valid: parseFloat(input.value) > minValue, + }; + }, + }; + } + + return greaterThan; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js new file mode 100644 index 0000000..a0ca0f8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-greater-than + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.greaterThan=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,i=e.utils.removeUndefined;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var n=Object.assign({},{inclusive:!0,message:""},i(e.options)),o=parseFloat("".concat(n.min).replace(",","."));return n.inclusive?{message:a(e.l10n?n.message||e.l10n.greaterThan.default:n.message,"".concat(o)),valid:parseFloat(e.value)>=o}:{message:a(e.l10n?n.message||e.l10n.greaterThan.notInclusive:n.message,"".concat(o)),valid:parseFloat(e.value)>o}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js new file mode 100644 index 0000000..589079c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js @@ -0,0 +1,38 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.grid = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod37And36 = core.algorithms.mod37And36; + function grid() { + return { + /** + * Validate GRId (Global Release Identifier) + * @see http://en.wikipedia.org/wiki/Global_Release_Identifier + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value.toUpperCase(); + if (!/^[GRID:]*([0-9A-Z]{2})[-\s]*([0-9A-Z]{5})[-\s]*([0-9A-Z]{10})[-\s]*([0-9A-Z]{1})$/g.test(v)) { + return { valid: false }; + } + v = v.replace(/\s/g, '').replace(/-/g, ''); + if ('GRID:' === v.substr(0, 5)) { + v = v.substr(5); + } + return { valid: mod37And36(v) }; + }, + }; + } + + return grid; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js new file mode 100644 index 0000000..e873e09 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-grid + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.grid=o(i.FormValidation))}(this,(function(i){"use strict";var o=i.algorithms.mod37And36;return function(){return{validate:function(i){if(""===i.value)return{valid:!0};var e=i.value.toUpperCase();return/^[GRID:]*([0-9A-Z]{2})[-\s]*([0-9A-Z]{5})[-\s]*([0-9A-Z]{10})[-\s]*([0-9A-Z]{1})$/g.test(e)?("GRID:"===(e=e.replace(/\s/g,"").replace(/-/g,"")).substr(0,5)&&(e=e.substr(5)),{valid:o(e)}):{valid:!1}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js new file mode 100644 index 0000000..7c4a6aa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.hex = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function hex() { + return { + /** + * Return true if and only if the input value is a valid hexadecimal number + */ + validate: function (input) { + return { + valid: input.value === '' || /^[0-9a-fA-F]+$/.test(input.value), + }; + }, + }; + } + + return hex; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js new file mode 100644 index 0000000..1ba00e7 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-hex + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.hex=i())}(this,(function(){"use strict";return function(){return{validate:function(e){return{valid:""===e.value||/^[0-9a-fA-F]+$/.test(e.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js new file mode 100644 index 0000000..f068604 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js @@ -0,0 +1,202 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.iban = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function iban() { + // http://www.swift.com/dsp/resources/documents/IBAN_Registry.pdf + // http://en.wikipedia.org/wiki/International_Bank_Account_Number#IBAN_formats_by_country + var IBAN_PATTERNS = { + AD: 'AD[0-9]{2}[0-9]{4}[0-9]{4}[A-Z0-9]{12}', + AE: 'AE[0-9]{2}[0-9]{3}[0-9]{16}', + AL: 'AL[0-9]{2}[0-9]{8}[A-Z0-9]{16}', + AO: 'AO[0-9]{2}[0-9]{21}', + AT: 'AT[0-9]{2}[0-9]{5}[0-9]{11}', + AZ: 'AZ[0-9]{2}[A-Z]{4}[A-Z0-9]{20}', + BA: 'BA[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{8}[0-9]{2}', + BE: 'BE[0-9]{2}[0-9]{3}[0-9]{7}[0-9]{2}', + BF: 'BF[0-9]{2}[0-9]{23}', + BG: 'BG[0-9]{2}[A-Z]{4}[0-9]{4}[0-9]{2}[A-Z0-9]{8}', + BH: 'BH[0-9]{2}[A-Z]{4}[A-Z0-9]{14}', + BI: 'BI[0-9]{2}[0-9]{12}', + BJ: 'BJ[0-9]{2}[A-Z]{1}[0-9]{23}', + BR: 'BR[0-9]{2}[0-9]{8}[0-9]{5}[0-9]{10}[A-Z][A-Z0-9]', + CH: 'CH[0-9]{2}[0-9]{5}[A-Z0-9]{12}', + CI: 'CI[0-9]{2}[A-Z]{1}[0-9]{23}', + CM: 'CM[0-9]{2}[0-9]{23}', + CR: 'CR[0-9]{2}[0-9][0-9]{3}[0-9]{14}', + CV: 'CV[0-9]{2}[0-9]{21}', + CY: 'CY[0-9]{2}[0-9]{3}[0-9]{5}[A-Z0-9]{16}', + CZ: 'CZ[0-9]{2}[0-9]{20}', + DE: 'DE[0-9]{2}[0-9]{8}[0-9]{10}', + DK: 'DK[0-9]{2}[0-9]{14}', + DO: 'DO[0-9]{2}[A-Z0-9]{4}[0-9]{20}', + DZ: 'DZ[0-9]{2}[0-9]{20}', + EE: 'EE[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{11}[0-9]{1}', + ES: 'ES[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{1}[0-9]{1}[0-9]{10}', + FI: 'FI[0-9]{2}[0-9]{6}[0-9]{7}[0-9]{1}', + FO: 'FO[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}', + FR: 'FR[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}', + GB: 'GB[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}', + GE: 'GE[0-9]{2}[A-Z]{2}[0-9]{16}', + GI: 'GI[0-9]{2}[A-Z]{4}[A-Z0-9]{15}', + GL: 'GL[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}', + GR: 'GR[0-9]{2}[0-9]{3}[0-9]{4}[A-Z0-9]{16}', + GT: 'GT[0-9]{2}[A-Z0-9]{4}[A-Z0-9]{20}', + HR: 'HR[0-9]{2}[0-9]{7}[0-9]{10}', + HU: 'HU[0-9]{2}[0-9]{3}[0-9]{4}[0-9]{1}[0-9]{15}[0-9]{1}', + IE: 'IE[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}', + IL: 'IL[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{13}', + IR: 'IR[0-9]{2}[0-9]{22}', + IS: 'IS[0-9]{2}[0-9]{4}[0-9]{2}[0-9]{6}[0-9]{10}', + IT: 'IT[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}', + JO: 'JO[0-9]{2}[A-Z]{4}[0-9]{4}[0]{8}[A-Z0-9]{10}', + KW: 'KW[0-9]{2}[A-Z]{4}[0-9]{22}', + KZ: 'KZ[0-9]{2}[0-9]{3}[A-Z0-9]{13}', + LB: 'LB[0-9]{2}[0-9]{4}[A-Z0-9]{20}', + LI: 'LI[0-9]{2}[0-9]{5}[A-Z0-9]{12}', + LT: 'LT[0-9]{2}[0-9]{5}[0-9]{11}', + LU: 'LU[0-9]{2}[0-9]{3}[A-Z0-9]{13}', + LV: 'LV[0-9]{2}[A-Z]{4}[A-Z0-9]{13}', + MC: 'MC[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}', + MD: 'MD[0-9]{2}[A-Z0-9]{20}', + ME: 'ME[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}', + MG: 'MG[0-9]{2}[0-9]{23}', + MK: 'MK[0-9]{2}[0-9]{3}[A-Z0-9]{10}[0-9]{2}', + ML: 'ML[0-9]{2}[A-Z]{1}[0-9]{23}', + MR: 'MR13[0-9]{5}[0-9]{5}[0-9]{11}[0-9]{2}', + MT: 'MT[0-9]{2}[A-Z]{4}[0-9]{5}[A-Z0-9]{18}', + MU: 'MU[0-9]{2}[A-Z]{4}[0-9]{2}[0-9]{2}[0-9]{12}[0-9]{3}[A-Z]{3}', + MZ: 'MZ[0-9]{2}[0-9]{21}', + NL: 'NL[0-9]{2}[A-Z]{4}[0-9]{10}', + NO: 'NO[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{1}', + PK: 'PK[0-9]{2}[A-Z]{4}[A-Z0-9]{16}', + PL: 'PL[0-9]{2}[0-9]{8}[0-9]{16}', + PS: 'PS[0-9]{2}[A-Z]{4}[A-Z0-9]{21}', + PT: 'PT[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{11}[0-9]{2}', + QA: 'QA[0-9]{2}[A-Z]{4}[A-Z0-9]{21}', + RO: 'RO[0-9]{2}[A-Z]{4}[A-Z0-9]{16}', + RS: 'RS[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}', + SA: 'SA[0-9]{2}[0-9]{2}[A-Z0-9]{18}', + SE: 'SE[0-9]{2}[0-9]{3}[0-9]{16}[0-9]{1}', + SI: 'SI[0-9]{2}[0-9]{5}[0-9]{8}[0-9]{2}', + SK: 'SK[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{10}', + SM: 'SM[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}', + SN: 'SN[0-9]{2}[A-Z]{1}[0-9]{23}', + TL: 'TL38[0-9]{3}[0-9]{14}[0-9]{2}', + TN: 'TN59[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}', + TR: 'TR[0-9]{2}[0-9]{5}[A-Z0-9]{1}[A-Z0-9]{16}', + VG: 'VG[0-9]{2}[A-Z]{4}[0-9]{16}', + XK: 'XK[0-9]{2}[0-9]{4}[0-9]{10}[0-9]{2}', // Republic of Kosovo + }; + // List of SEPA country codes + var SEPA_COUNTRIES = [ + 'AT', + 'BE', + 'BG', + 'CH', + 'CY', + 'CZ', + 'DE', + 'DK', + 'EE', + 'ES', + 'FI', + 'FR', + 'GB', + 'GI', + 'GR', + 'HR', + 'HU', + 'IE', + 'IS', + 'IT', + 'LI', + 'LT', + 'LU', + 'LV', + 'MC', + 'MT', + 'NL', + 'NO', + 'PL', + 'PT', + 'RO', + 'SE', + 'SI', + 'SK', + 'SM', + ]; + return { + /** + * Validate an International Bank Account Number (IBAN) + * To test it, take the sample IBAN from + * http://www.nordea.com/Our+services/ + * International+products+and+services/Cash+Management/IBAN+countries/908462.html + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var v = input.value.replace(/[^a-zA-Z0-9]/g, '').toUpperCase(); + // TODO: `country` can be a dynamic option + var country = opts.country || v.substr(0, 2); + if (!IBAN_PATTERNS[country]) { + return { + message: opts.message, + valid: false, + }; + } + // Check whether or not the sepa option is enabled + if (opts.sepa !== undefined) { + var isSepaCountry = SEPA_COUNTRIES.indexOf(country) !== -1; + if (((opts.sepa === 'true' || opts.sepa === true) && !isSepaCountry) || + ((opts.sepa === 'false' || opts.sepa === false) && isSepaCountry)) { + return { + message: opts.message, + valid: false, + }; + } + } + var msg = format(input.l10n ? opts.message || input.l10n.iban.country : opts.message, input.l10n ? input.l10n.iban.countries[country] : country); + if (!new RegExp("^".concat(IBAN_PATTERNS[country], "$")).test(input.value)) { + return { + message: msg, + valid: false, + }; + } + v = "".concat(v.substr(4)).concat(v.substr(0, 4)); + v = v + .split('') + .map(function (n) { + var code = n.charCodeAt(0); + return code >= 'A'.charCodeAt(0) && code <= 'Z'.charCodeAt(0) + ? // Replace A, B, C, ..., Z with 10, 11, ..., 35 + code - 'A'.charCodeAt(0) + 10 + : n; + }) + .join(''); + var temp = parseInt(v.substr(0, 1), 10); + var length = v.length; + for (var i = 1; i < length; ++i) { + temp = (temp * 10 + parseInt(v.substr(i, 1), 10)) % 97; + } + return { + message: msg, + valid: temp === 1, + }; + }, + }; + } + + return iban; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js new file mode 100644 index 0000000..c1b013c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-iban + * @version 2.4.0 + */ + +!function(A,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((A="undefined"!=typeof globalThis?globalThis:A||self).FormValidation=A.FormValidation||{},A.FormValidation.validators=A.FormValidation.validators||{},A.FormValidation.validators.iban=e(A.FormValidation))}(this,(function(A){"use strict";var e=A.utils.format,a=A.utils.removeUndefined;return function(){var A={AD:"AD[0-9]{2}[0-9]{4}[0-9]{4}[A-Z0-9]{12}",AE:"AE[0-9]{2}[0-9]{3}[0-9]{16}",AL:"AL[0-9]{2}[0-9]{8}[A-Z0-9]{16}",AO:"AO[0-9]{2}[0-9]{21}",AT:"AT[0-9]{2}[0-9]{5}[0-9]{11}",AZ:"AZ[0-9]{2}[A-Z]{4}[A-Z0-9]{20}",BA:"BA[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{8}[0-9]{2}",BE:"BE[0-9]{2}[0-9]{3}[0-9]{7}[0-9]{2}",BF:"BF[0-9]{2}[0-9]{23}",BG:"BG[0-9]{2}[A-Z]{4}[0-9]{4}[0-9]{2}[A-Z0-9]{8}",BH:"BH[0-9]{2}[A-Z]{4}[A-Z0-9]{14}",BI:"BI[0-9]{2}[0-9]{12}",BJ:"BJ[0-9]{2}[A-Z]{1}[0-9]{23}",BR:"BR[0-9]{2}[0-9]{8}[0-9]{5}[0-9]{10}[A-Z][A-Z0-9]",CH:"CH[0-9]{2}[0-9]{5}[A-Z0-9]{12}",CI:"CI[0-9]{2}[A-Z]{1}[0-9]{23}",CM:"CM[0-9]{2}[0-9]{23}",CR:"CR[0-9]{2}[0-9][0-9]{3}[0-9]{14}",CV:"CV[0-9]{2}[0-9]{21}",CY:"CY[0-9]{2}[0-9]{3}[0-9]{5}[A-Z0-9]{16}",CZ:"CZ[0-9]{2}[0-9]{20}",DE:"DE[0-9]{2}[0-9]{8}[0-9]{10}",DK:"DK[0-9]{2}[0-9]{14}",DO:"DO[0-9]{2}[A-Z0-9]{4}[0-9]{20}",DZ:"DZ[0-9]{2}[0-9]{20}",EE:"EE[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{11}[0-9]{1}",ES:"ES[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{1}[0-9]{1}[0-9]{10}",FI:"FI[0-9]{2}[0-9]{6}[0-9]{7}[0-9]{1}",FO:"FO[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}",FR:"FR[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}",GB:"GB[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}",GE:"GE[0-9]{2}[A-Z]{2}[0-9]{16}",GI:"GI[0-9]{2}[A-Z]{4}[A-Z0-9]{15}",GL:"GL[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}",GR:"GR[0-9]{2}[0-9]{3}[0-9]{4}[A-Z0-9]{16}",GT:"GT[0-9]{2}[A-Z0-9]{4}[A-Z0-9]{20}",HR:"HR[0-9]{2}[0-9]{7}[0-9]{10}",HU:"HU[0-9]{2}[0-9]{3}[0-9]{4}[0-9]{1}[0-9]{15}[0-9]{1}",IE:"IE[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}",IL:"IL[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{13}",IR:"IR[0-9]{2}[0-9]{22}",IS:"IS[0-9]{2}[0-9]{4}[0-9]{2}[0-9]{6}[0-9]{10}",IT:"IT[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}",JO:"JO[0-9]{2}[A-Z]{4}[0-9]{4}[0]{8}[A-Z0-9]{10}",KW:"KW[0-9]{2}[A-Z]{4}[0-9]{22}",KZ:"KZ[0-9]{2}[0-9]{3}[A-Z0-9]{13}",LB:"LB[0-9]{2}[0-9]{4}[A-Z0-9]{20}",LI:"LI[0-9]{2}[0-9]{5}[A-Z0-9]{12}",LT:"LT[0-9]{2}[0-9]{5}[0-9]{11}",LU:"LU[0-9]{2}[0-9]{3}[A-Z0-9]{13}",LV:"LV[0-9]{2}[A-Z]{4}[A-Z0-9]{13}",MC:"MC[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}",MD:"MD[0-9]{2}[A-Z0-9]{20}",ME:"ME[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",MG:"MG[0-9]{2}[0-9]{23}",MK:"MK[0-9]{2}[0-9]{3}[A-Z0-9]{10}[0-9]{2}",ML:"ML[0-9]{2}[A-Z]{1}[0-9]{23}",MR:"MR13[0-9]{5}[0-9]{5}[0-9]{11}[0-9]{2}",MT:"MT[0-9]{2}[A-Z]{4}[0-9]{5}[A-Z0-9]{18}",MU:"MU[0-9]{2}[A-Z]{4}[0-9]{2}[0-9]{2}[0-9]{12}[0-9]{3}[A-Z]{3}",MZ:"MZ[0-9]{2}[0-9]{21}",NL:"NL[0-9]{2}[A-Z]{4}[0-9]{10}",NO:"NO[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{1}",PK:"PK[0-9]{2}[A-Z]{4}[A-Z0-9]{16}",PL:"PL[0-9]{2}[0-9]{8}[0-9]{16}",PS:"PS[0-9]{2}[A-Z]{4}[A-Z0-9]{21}",PT:"PT[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{11}[0-9]{2}",QA:"QA[0-9]{2}[A-Z]{4}[A-Z0-9]{21}",RO:"RO[0-9]{2}[A-Z]{4}[A-Z0-9]{16}",RS:"RS[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",SA:"SA[0-9]{2}[0-9]{2}[A-Z0-9]{18}",SE:"SE[0-9]{2}[0-9]{3}[0-9]{16}[0-9]{1}",SI:"SI[0-9]{2}[0-9]{5}[0-9]{8}[0-9]{2}",SK:"SK[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{10}",SM:"SM[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}",SN:"SN[0-9]{2}[A-Z]{1}[0-9]{23}",TL:"TL38[0-9]{3}[0-9]{14}[0-9]{2}",TN:"TN59[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",TR:"TR[0-9]{2}[0-9]{5}[A-Z0-9]{1}[A-Z0-9]{16}",VG:"VG[0-9]{2}[A-Z]{4}[0-9]{16}",XK:"XK[0-9]{2}[0-9]{4}[0-9]{10}[0-9]{2}"},Z=["AT","BE","BG","CH","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GI","GR","HR","HU","IE","IS","IT","LI","LT","LU","LV","MC","MT","NL","NO","PL","PT","RO","SE","SI","SK","SM"];return{validate:function(t){if(""===t.value)return{valid:!0};var r=Object.assign({},{message:""},a(t.options)),i=t.value.replace(/[^a-zA-Z0-9]/g,"").toUpperCase(),n=r.country||i.substr(0,2);if(!A[n])return{message:r.message,valid:!1};if(void 0!==r.sepa){var o=-1!==Z.indexOf(n);if(("true"===r.sepa||!0===r.sepa)&&!o||("false"===r.sepa||!1===r.sepa)&&o)return{message:r.message,valid:!1}}var s=e(t.l10n?r.message||t.l10n.iban.country:r.message,t.l10n?t.l10n.iban.countries[n]:n);if(!new RegExp("^".concat(A[n],"$")).test(t.value))return{message:s,valid:!1};i=(i="".concat(i.substr(4)).concat(i.substr(0,4))).split("").map((function(A){var e=A.charCodeAt(0);return e>="A".charCodeAt(0)&&e<="Z".charCodeAt(0)?e-"A".charCodeAt(0)+10:A})).join("");for(var l=parseInt(i.substr(0,1),10),d=i.length,u=1;u + */ + /** + * Validate Argentinian national identifiers + * + * @see https://en.wikipedia.org/wiki/Documento_Nacional_de_Identidad_(Argentina) + * @returns {ValidateResult} + */ + function arId(value) { + // Replace dot with empty space + var v = value.replace(/\./g, ''); + return { + meta: {}, + valid: /^\d{7,8}$/.test(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Unique Master Citizen Number which uses in + * - Bosnia and Herzegovina (country code: BA) + * - Macedonia (MK) + * - Montenegro (ME) + * - Serbia (RS) + * - Slovenia (SI) + * + * @see http://en.wikipedia.org/wiki/Unique_Master_Citizen_Number + * @returns {boolean} + */ + function jmbg(value, countryCode) { + if (!/^\d{13}$/.test(value)) { + return false; + } + var day = parseInt(value.substr(0, 2), 10); + var month = parseInt(value.substr(2, 2), 10); + // const year = parseInt(value.substr(4, 3), 10) + var rr = parseInt(value.substr(7, 2), 10); + var k = parseInt(value.substr(12, 1), 10); + // Validate date of birth + // FIXME: Validate the year of birth + if (day > 31 || month > 12) { + return false; + } + // Validate checksum + var sum = 0; + for (var i = 0; i < 6; i++) { + sum += (7 - i) * (parseInt(value.charAt(i), 10) + parseInt(value.charAt(i + 6), 10)); + } + sum = 11 - (sum % 11); + if (sum === 10 || sum === 11) { + sum = 0; + } + if (sum !== k) { + return false; + } + // Validate political region + // rr is the political region of birth, which can be in ranges: + // 10-19: Bosnia and Herzegovina + // 20-29: Montenegro + // 30-39: Croatia (not used anymore) + // 41-49: Macedonia + // 50-59: Slovenia (only 50 is used) + // 70-79: Central Serbia + // 80-89: Serbian province of Vojvodina + // 90-99: Kosovo + switch (countryCode.toUpperCase()) { + case 'BA': + return 10 <= rr && rr <= 19; + case 'MK': + return 41 <= rr && rr <= 49; + case 'ME': + return 20 <= rr && rr <= 29; + case 'RS': + return 70 <= rr && rr <= 99; + case 'SI': + return 50 <= rr && rr <= 59; + default: + return true; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function baId(value) { + return { + meta: {}, + valid: jmbg(value, 'BA'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$d = core.utils.isValidDate; + /** + * Validate Bulgarian national identification number (EGN) + * + * @see http://en.wikipedia.org/wiki/Uniform_civil_number + * @returns {ValidateResult} + */ + function bgId(value) { + if (!/^\d{10}$/.test(value) && !/^\d{6}\s\d{3}\s\d{1}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/\s/g, ''); + // Check the birth date + var year = parseInt(v.substr(0, 2), 10) + 1900; + var month = parseInt(v.substr(2, 2), 10); + var day = parseInt(v.substr(4, 2), 10); + if (month > 40) { + year += 100; + month -= 40; + } + else if (month > 20) { + year -= 100; + month -= 20; + } + if (!isValidDate$d(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var weight = [2, 4, 8, 5, 10, 9, 7, 3, 6]; + for (var i = 0; i < 9; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = (sum % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(9, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Brazilian national identification number (CPF) + * + * @see http://en.wikipedia.org/wiki/Cadastro_de_Pessoas_F%C3%ADsicas + * @returns {ValidateResult} + */ + function brId(value) { + var v = value.replace(/\D/g, ''); + if (!/^\d{11}$/.test(v) || /^1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11}|0{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var d1 = 0; + var i; + for (i = 0; i < 9; i++) { + d1 += (10 - i) * parseInt(v.charAt(i), 10); + } + d1 = 11 - (d1 % 11); + if (d1 === 10 || d1 === 11) { + d1 = 0; + } + if ("".concat(d1) !== v.charAt(9)) { + return { + meta: {}, + valid: false, + }; + } + var d2 = 0; + for (i = 0; i < 10; i++) { + d2 += (11 - i) * parseInt(v.charAt(i), 10); + } + d2 = 11 - (d2 % 11); + if (d2 === 10 || d2 === 11) { + d2 = 0; + } + return { + meta: {}, + valid: "".concat(d2) === v.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Swiss Social Security Number (AHV-Nr/No AVS) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Switzerland + * @see http://www.bsv.admin.ch/themen/ahv/00011/02185/index.html?lang=de + * @returns {ValidateResult} + */ + function chId(value) { + if (!/^756[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{2}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/\D/g, '').substr(3); + var length = v.length; + var weight = length === 8 ? [3, 1] : [1, 3]; + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i % 2]; + } + sum = 10 - (sum % 10); + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Chilean national identification number (RUN/RUT) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Chile + * @see https://palena.sii.cl/cvc/dte/ee_empresas_emisoras.html for samples + * @returns {ValidateResult} + */ + function clId(value) { + if (!/^\d{7,8}[-]{0,1}[0-9K]$/i.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + while (v.length < 9) { + v = "0".concat(v); + } + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + var cd = "".concat(sum); + if (sum === 11) { + cd = '0'; + } + else if (sum === 10) { + cd = 'K'; + } + return { + meta: {}, + valid: cd === v.charAt(8).toUpperCase(), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$c = core.utils.isValidDate; + /** + * Validate Chinese citizen identification number + * + * Rules: + * - For current 18-digit system (since 1st Oct 1999, defined by GB11643—1999 national standard): + * - Digit 0-5: Must be a valid administrative division code of China PR. + * - Digit 6-13: Must be a valid YYYYMMDD date of birth. A future date is tolerated. + * - Digit 14-16: Order code, any integer. + * - Digit 17: An ISO 7064:1983, MOD 11-2 checksum. + * Both upper/lower case of X are tolerated. + * - For deprecated 15-digit system: + * - Digit 0-5: Must be a valid administrative division code of China PR. + * - Digit 6-11: Must be a valid YYMMDD date of birth, indicating the year of 19XX. + * - Digit 12-14: Order code, any integer. + * Lists of valid administrative division codes of China PR can be seen here: + * + * Published and maintained by National Bureau of Statistics of China PR. + * NOTE: Current and deprecated codes MUST BOTH be considered valid. + * Many Chinese citizens born in once existed administrative divisions! + * + * @see http://en.wikipedia.org/wiki/Resident_Identity_Card#Identity_card_number + * @returns {ValidateResult} + */ + function cnId(value) { + // Basic format check (18 or 15 digits, considering X in checksum) + var v = value.trim(); + if (!/^\d{15}$/.test(v) && !/^\d{17}[\dXx]{1}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Check China PR Administrative division code + var adminDivisionCodes = { + 11: { + 0: [0], + 1: [ + [0, 9], + [11, 17], + ], + 2: [0, 28, 29], + }, + 12: { + 0: [0], + 1: [[0, 16]], + 2: [0, 21, 23, 25], + }, + 13: { + 0: [0], + 1: [[0, 5], 7, 8, 21, [23, 33], [81, 85]], + 2: [[0, 5], [7, 9], [23, 25], 27, 29, 30, 81, 83], + 3: [ + [0, 4], + [21, 24], + ], + 4: [[0, 4], 6, 21, [23, 35], 81], + 5: [[0, 3], [21, 35], 81, 82], + 6: [ + [0, 4], + [21, 38], + [81, 84], + ], + 7: [[0, 3], 5, 6, [21, 33]], + 8: [ + [0, 4], + [21, 28], + ], + 9: [ + [0, 3], + [21, 30], + [81, 84], + ], + 10: [[0, 3], [22, 26], 28, 81, 82], + 11: [[0, 2], [21, 28], 81, 82], + }, + 14: { + 0: [0], + 1: [0, 1, [5, 10], [21, 23], 81], + 2: [[0, 3], 11, 12, [21, 27]], + 3: [[0, 3], 11, 21, 22], + 4: [[0, 2], 11, 21, [23, 31], 81], + 5: [[0, 2], 21, 22, 24, 25, 81], + 6: [ + [0, 3], + [21, 24], + ], + 7: [[0, 2], [21, 29], 81], + 8: [[0, 2], [21, 30], 81, 82], + 9: [[0, 2], [21, 32], 81], + 10: [[0, 2], [21, 34], 81, 82], + 11: [[0, 2], [21, 30], 81, 82], + 23: [[0, 3], 22, 23, [25, 30], 32, 33], + }, + 15: { + 0: [0], + 1: [ + [0, 5], + [21, 25], + ], + 2: [ + [0, 7], + [21, 23], + ], + 3: [[0, 4]], + 4: [ + [0, 4], + [21, 26], + [28, 30], + ], + 5: [[0, 2], [21, 26], 81], + 6: [ + [0, 2], + [21, 27], + ], + 7: [ + [0, 3], + [21, 27], + [81, 85], + ], + 8: [ + [0, 2], + [21, 26], + ], + 9: [[0, 2], [21, 29], 81], + 22: [ + [0, 2], + [21, 24], + ], + 25: [ + [0, 2], + [22, 31], + ], + 26: [[0, 2], [24, 27], [29, 32], 34], + 28: [0, 1, [22, 27]], + 29: [0, [21, 23]], + }, + 21: { + 0: [0], + 1: [[0, 6], [11, 14], [22, 24], 81], + 2: [[0, 4], [11, 13], 24, [81, 83]], + 3: [[0, 4], 11, 21, 23, 81], + 4: [[0, 4], 11, [21, 23]], + 5: [[0, 5], 21, 22], + 6: [[0, 4], 24, 81, 82], + 7: [[0, 3], 11, 26, 27, 81, 82], + 8: [[0, 4], 11, 81, 82], + 9: [[0, 5], 11, 21, 22], + 10: [[0, 5], 11, 21, 81], + 11: [[0, 3], 21, 22], + 12: [[0, 2], 4, 21, 23, 24, 81, 82], + 13: [[0, 3], 21, 22, 24, 81, 82], + 14: [[0, 4], 21, 22, 81], + }, + 22: { + 0: [0], + 1: [[0, 6], 12, 22, [81, 83]], + 2: [[0, 4], 11, 21, [81, 84]], + 3: [[0, 3], 22, 23, 81, 82], + 4: [[0, 3], 21, 22], + 5: [[0, 3], 21, 23, 24, 81, 82], + 6: [[0, 2], 4, 5, [21, 23], 25, 81], + 7: [[0, 2], [21, 24], 81], + 8: [[0, 2], 21, 22, 81, 82], + 24: [[0, 6], 24, 26], + }, + 23: { + 0: [0], + 1: [[0, 12], 21, [23, 29], [81, 84]], + 2: [[0, 8], 21, [23, 25], 27, [29, 31], 81], + 3: [[0, 7], 21, 81, 82], + 4: [[0, 7], 21, 22], + 5: [[0, 3], 5, 6, [21, 24]], + 6: [ + [0, 6], + [21, 24], + ], + 7: [[0, 16], 22, 81], + 8: [[0, 5], 11, 22, 26, 28, 33, 81, 82], + 9: [[0, 4], 21], + 10: [[0, 5], 24, 25, 81, [83, 85]], + 11: [[0, 2], 21, 23, 24, 81, 82], + 12: [ + [0, 2], + [21, 26], + [81, 83], + ], + 27: [ + [0, 4], + [21, 23], + ], + }, + 31: { + 0: [0], + 1: [0, 1, [3, 10], [12, 20]], + 2: [0, 30], + }, + 32: { + 0: [0], + 1: [[0, 7], 11, [13, 18], 24, 25], + 2: [[0, 6], 11, 81, 82], + 3: [[0, 5], 11, 12, [21, 24], 81, 82], + 4: [[0, 2], 4, 5, 11, 12, 81, 82], + 5: [ + [0, 9], + [81, 85], + ], + 6: [[0, 2], 11, 12, 21, 23, [81, 84]], + 7: [0, 1, 3, 5, 6, [21, 24]], + 8: [[0, 4], 11, 26, [29, 31]], + 9: [[0, 3], [21, 25], 28, 81, 82], + 10: [[0, 3], 11, 12, 23, 81, 84, 88], + 11: [[0, 2], 11, 12, [81, 83]], + 12: [ + [0, 4], + [81, 84], + ], + 13: [[0, 2], 11, [21, 24]], + }, + 33: { + 0: [0], + 1: [[0, 6], [8, 10], 22, 27, 82, 83, 85], + 2: [0, 1, [3, 6], 11, 12, 25, 26, [81, 83]], + 3: [[0, 4], 22, 24, [26, 29], 81, 82], + 4: [[0, 2], 11, 21, 24, [81, 83]], + 5: [ + [0, 3], + [21, 23], + ], + 6: [[0, 2], 21, 24, [81, 83]], + 7: [[0, 3], 23, 26, 27, [81, 84]], + 8: [[0, 3], 22, 24, 25, 81], + 9: [[0, 3], 21, 22], + 10: [[0, 4], [21, 24], 81, 82], + 11: [[0, 2], [21, 27], 81], + }, + 34: { + 0: [0], + 1: [[0, 4], 11, [21, 24], 81], + 2: [[0, 4], 7, 8, [21, 23], 25], + 3: [[0, 4], 11, [21, 23]], + 4: [[0, 6], 21], + 5: [[0, 4], 6, [21, 23]], + 6: [[0, 4], 21], + 7: [[0, 3], 11, 21], + 8: [[0, 3], 11, [22, 28], 81], + 10: [ + [0, 4], + [21, 24], + ], + 11: [[0, 3], 22, [24, 26], 81, 82], + 12: [[0, 4], 21, 22, 25, 26, 82], + 13: [ + [0, 2], + [21, 24], + ], + 14: [ + [0, 2], + [21, 24], + ], + 15: [ + [0, 3], + [21, 25], + ], + 16: [ + [0, 2], + [21, 23], + ], + 17: [ + [0, 2], + [21, 23], + ], + 18: [[0, 2], [21, 25], 81], + }, + 35: { + 0: [0], + 1: [[0, 5], 11, [21, 25], 28, 81, 82], + 2: [ + [0, 6], + [11, 13], + ], + 3: [[0, 5], 22], + 4: [[0, 3], 21, [23, 30], 81], + 5: [[0, 5], 21, [24, 27], [81, 83]], + 6: [[0, 3], [22, 29], 81], + 7: [ + [0, 2], + [21, 25], + [81, 84], + ], + 8: [[0, 2], [21, 25], 81], + 9: [[0, 2], [21, 26], 81, 82], + }, + 36: { + 0: [0], + 1: [[0, 5], 11, [21, 24]], + 2: [[0, 3], 22, 81], + 3: [[0, 2], 13, [21, 23]], + 4: [[0, 3], 21, [23, 30], 81, 82], + 5: [[0, 2], 21], + 6: [[0, 2], 22, 81], + 7: [[0, 2], [21, 35], 81, 82], + 8: [[0, 3], [21, 30], 81], + 9: [ + [0, 2], + [21, 26], + [81, 83], + ], + 10: [ + [0, 2], + [21, 30], + ], + 11: [[0, 2], [21, 30], 81], + }, + 37: { + 0: [0], + 1: [[0, 5], 12, 13, [24, 26], 81], + 2: [[0, 3], 5, [11, 14], [81, 85]], + 3: [ + [0, 6], + [21, 23], + ], + 4: [[0, 6], 81], + 5: [ + [0, 3], + [21, 23], + ], + 6: [[0, 2], [11, 13], 34, [81, 87]], + 7: [[0, 5], 24, 25, [81, 86]], + 8: [[0, 2], 11, [26, 32], [81, 83]], + 9: [[0, 3], 11, 21, 23, 82, 83], + 10: [ + [0, 2], + [81, 83], + ], + 11: [[0, 3], 21, 22], + 12: [[0, 3]], + 13: [[0, 2], 11, 12, [21, 29]], + 14: [[0, 2], [21, 28], 81, 82], + 15: [[0, 2], [21, 26], 81], + 16: [ + [0, 2], + [21, 26], + ], + 17: [ + [0, 2], + [21, 28], + ], + }, + 41: { + 0: [0], + 1: [[0, 6], 8, 22, [81, 85]], + 2: [[0, 5], 11, [21, 25]], + 3: [[0, 7], 11, [22, 29], 81], + 4: [[0, 4], 11, [21, 23], 25, 81, 82], + 5: [[0, 3], 5, 6, 22, 23, 26, 27, 81], + 6: [[0, 3], 11, 21, 22], + 7: [[0, 4], 11, 21, [24, 28], 81, 82], + 8: [[0, 4], 11, [21, 23], 25, [81, 83]], + 9: [[0, 2], 22, 23, [26, 28]], + 10: [[0, 2], [23, 25], 81, 82], + 11: [ + [0, 4], + [21, 23], + ], + 12: [[0, 2], 21, 22, 24, 81, 82], + 13: [[0, 3], [21, 30], 81], + 14: [[0, 3], [21, 26], 81], + 15: [ + [0, 3], + [21, 28], + ], + 16: [[0, 2], [21, 28], 81], + 17: [ + [0, 2], + [21, 29], + ], + 90: [0, 1], + }, + 42: { + 0: [0], + 1: [ + [0, 7], + [11, 17], + ], + 2: [[0, 5], 22, 81], + 3: [[0, 3], [21, 25], 81], + 5: [ + [0, 6], + [25, 29], + [81, 83], + ], + 6: [[0, 2], 6, 7, [24, 26], [82, 84]], + 7: [[0, 4]], + 8: [[0, 2], 4, 21, 22, 81], + 9: [[0, 2], [21, 23], 81, 82, 84], + 10: [[0, 3], [22, 24], 81, 83, 87], + 11: [[0, 2], [21, 27], 81, 82], + 12: [[0, 2], [21, 24], 81], + 13: [[0, 3], 21, 81], + 28: [[0, 2], 22, 23, [25, 28]], + 90: [0, [4, 6], 21], + }, + 43: { + 0: [0], + 1: [[0, 5], 11, 12, 21, 22, 24, 81], + 2: [[0, 4], 11, 21, [23, 25], 81], + 3: [[0, 2], 4, 21, 81, 82], + 4: [0, 1, [5, 8], 12, [21, 24], 26, 81, 82], + 5: [[0, 3], 11, [21, 25], [27, 29], 81], + 6: [[0, 3], 11, 21, 23, 24, 26, 81, 82], + 7: [[0, 3], [21, 26], 81], + 8: [[0, 2], 11, 21, 22], + 9: [[0, 3], [21, 23], 81], + 10: [[0, 3], [21, 28], 81], + 11: [ + [0, 3], + [21, 29], + ], + 12: [[0, 2], [21, 30], 81], + 13: [[0, 2], 21, 22, 81, 82], + 31: [0, 1, [22, 27], 30], + }, + 44: { + 0: [0], + 1: [[0, 7], [11, 16], 83, 84], + 2: [[0, 5], 21, 22, 24, 29, 32, 33, 81, 82], + 3: [0, 1, [3, 8]], + 4: [[0, 4]], + 5: [0, 1, [6, 15], 23, 82, 83], + 6: [0, 1, [4, 8]], + 7: [0, 1, [3, 5], 81, [83, 85]], + 8: [[0, 4], 11, 23, 25, [81, 83]], + 9: [[0, 3], 23, [81, 83]], + 12: [[0, 3], [23, 26], 83, 84], + 13: [[0, 3], [22, 24], 81], + 14: [[0, 2], [21, 24], 26, 27, 81], + 15: [[0, 2], 21, 23, 81], + 16: [ + [0, 2], + [21, 25], + ], + 17: [[0, 2], 21, 23, 81], + 18: [[0, 3], 21, 23, [25, 27], 81, 82], + 19: [0], + 20: [0], + 51: [[0, 3], 21, 22], + 52: [[0, 3], 21, 22, 24, 81], + 53: [[0, 2], [21, 23], 81], + }, + 45: { + 0: [0], + 1: [ + [0, 9], + [21, 27], + ], + 2: [ + [0, 5], + [21, 26], + ], + 3: [[0, 5], 11, 12, [21, 32]], + 4: [0, 1, [3, 6], 11, [21, 23], 81], + 5: [[0, 3], 12, 21], + 6: [[0, 3], 21, 81], + 7: [[0, 3], 21, 22], + 8: [[0, 4], 21, 81], + 9: [[0, 3], [21, 24], 81], + 10: [ + [0, 2], + [21, 31], + ], + 11: [ + [0, 2], + [21, 23], + ], + 12: [[0, 2], [21, 29], 81], + 13: [[0, 2], [21, 24], 81], + 14: [[0, 2], [21, 25], 81], + }, + 46: { + 0: [0], + 1: [0, 1, [5, 8]], + 2: [0, 1], + 3: [0, [21, 23]], + 90: [ + [0, 3], + [5, 7], + [21, 39], + ], + }, + 50: { + 0: [0], + 1: [[0, 19]], + 2: [0, [22, 38], [40, 43]], + 3: [0, [81, 84]], + }, + 51: { + 0: [0], + 1: [0, 1, [4, 8], [12, 15], [21, 24], 29, 31, 32, [81, 84]], + 3: [[0, 4], 11, 21, 22], + 4: [[0, 3], 11, 21, 22], + 5: [[0, 4], 21, 22, 24, 25], + 6: [0, 1, 3, 23, 26, [81, 83]], + 7: [0, 1, 3, 4, [22, 27], 81], + 8: [[0, 2], 11, 12, [21, 24]], + 9: [ + [0, 4], + [21, 23], + ], + 10: [[0, 2], 11, 24, 25, 28], + 11: [[0, 2], [11, 13], 23, 24, 26, 29, 32, 33, 81], + 13: [[0, 4], [21, 25], 81], + 14: [ + [0, 2], + [21, 25], + ], + 15: [ + [0, 3], + [21, 29], + ], + 16: [[0, 3], [21, 23], 81], + 17: [[0, 3], [21, 25], 81], + 18: [ + [0, 3], + [21, 27], + ], + 19: [ + [0, 3], + [21, 23], + ], + 20: [[0, 2], 21, 22, 81], + 32: [0, [21, 33]], + 33: [0, [21, 38]], + 34: [0, 1, [22, 37]], + }, + 52: { + 0: [0], + 1: [[0, 3], [11, 15], [21, 23], 81], + 2: [0, 1, 3, 21, 22], + 3: [[0, 3], [21, 30], 81, 82], + 4: [ + [0, 2], + [21, 25], + ], + 5: [ + [0, 2], + [21, 27], + ], + 6: [ + [0, 3], + [21, 28], + ], + 22: [0, 1, [22, 30]], + 23: [0, 1, [22, 28]], + 24: [0, 1, [22, 28]], + 26: [0, 1, [22, 36]], + 27: [[0, 2], 22, 23, [25, 32]], + }, + 53: { + 0: [0], + 1: [[0, 3], [11, 14], 21, 22, [24, 29], 81], + 3: [[0, 2], [21, 26], 28, 81], + 4: [ + [0, 2], + [21, 28], + ], + 5: [ + [0, 2], + [21, 24], + ], + 6: [ + [0, 2], + [21, 30], + ], + 7: [ + [0, 2], + [21, 24], + ], + 8: [ + [0, 2], + [21, 29], + ], + 9: [ + [0, 2], + [21, 27], + ], + 23: [0, 1, [22, 29], 31], + 25: [ + [0, 4], + [22, 32], + ], + 26: [0, 1, [21, 28]], + 27: [0, 1, [22, 30]], + 28: [0, 1, 22, 23], + 29: [0, 1, [22, 32]], + 31: [0, 2, 3, [22, 24]], + 34: [0, [21, 23]], + 33: [0, 21, [23, 25]], + 35: [0, [21, 28]], + }, + 54: { + 0: [0], + 1: [ + [0, 2], + [21, 27], + ], + 21: [0, [21, 29], 32, 33], + 22: [0, [21, 29], [31, 33]], + 23: [0, 1, [22, 38]], + 24: [0, [21, 31]], + 25: [0, [21, 27]], + 26: [0, [21, 27]], + }, + 61: { + 0: [0], + 1: [[0, 4], [11, 16], 22, [24, 26]], + 2: [[0, 4], 22], + 3: [ + [0, 4], + [21, 24], + [26, 31], + ], + 4: [[0, 4], [22, 31], 81], + 5: [[0, 2], [21, 28], 81, 82], + 6: [ + [0, 2], + [21, 32], + ], + 7: [ + [0, 2], + [21, 30], + ], + 8: [ + [0, 2], + [21, 31], + ], + 9: [ + [0, 2], + [21, 29], + ], + 10: [ + [0, 2], + [21, 26], + ], + }, + 62: { + 0: [0], + 1: [[0, 5], 11, [21, 23]], + 2: [0, 1], + 3: [[0, 2], 21], + 4: [ + [0, 3], + [21, 23], + ], + 5: [ + [0, 3], + [21, 25], + ], + 6: [ + [0, 2], + [21, 23], + ], + 7: [ + [0, 2], + [21, 25], + ], + 8: [ + [0, 2], + [21, 26], + ], + 9: [[0, 2], [21, 24], 81, 82], + 10: [ + [0, 2], + [21, 27], + ], + 11: [ + [0, 2], + [21, 26], + ], + 12: [ + [0, 2], + [21, 28], + ], + 24: [0, 21, [24, 29]], + 26: [0, 21, [23, 30]], + 29: [0, 1, [21, 27]], + 30: [0, 1, [21, 27]], + }, + 63: { + 0: [0], + 1: [ + [0, 5], + [21, 23], + ], + 2: [0, 2, [21, 25]], + 21: [0, [21, 23], [26, 28]], + 22: [0, [21, 24]], + 23: [0, [21, 24]], + 25: [0, [21, 25]], + 26: [0, [21, 26]], + 27: [0, 1, [21, 26]], + 28: [ + [0, 2], + [21, 23], + ], + }, + 64: { + 0: [0], + 1: [0, 1, [4, 6], 21, 22, 81], + 2: [[0, 3], 5, [21, 23]], + 3: [[0, 3], [21, 24], 81], + 4: [ + [0, 2], + [21, 25], + ], + 5: [[0, 2], 21, 22], + }, + 65: { + 0: [0], + 1: [[0, 9], 21], + 2: [[0, 5]], + 21: [0, 1, 22, 23], + 22: [0, 1, 22, 23], + 23: [[0, 3], [23, 25], 27, 28], + 28: [0, 1, [22, 29]], + 29: [0, 1, [22, 29]], + 30: [0, 1, [22, 24]], + 31: [0, 1, [21, 31]], + 32: [0, 1, [21, 27]], + 40: [0, 2, 3, [21, 28]], + 42: [[0, 2], 21, [23, 26]], + 43: [0, 1, [21, 26]], + 90: [[0, 4]], + 27: [[0, 2], 22, 23], + }, + 71: { 0: [0] }, + 81: { 0: [0] }, + 82: { 0: [0] }, + }; + var provincial = parseInt(v.substr(0, 2), 10); + var prefectural = parseInt(v.substr(2, 2), 10); + var county = parseInt(v.substr(4, 2), 10); + if (!adminDivisionCodes[provincial] || !adminDivisionCodes[provincial][prefectural]) { + return { + meta: {}, + valid: false, + }; + } + var inRange = false; + var rangeDef = adminDivisionCodes[provincial][prefectural]; + var i; + for (i = 0; i < rangeDef.length; i++) { + if ((Array.isArray(rangeDef[i]) && rangeDef[i][0] <= county && county <= rangeDef[i][1]) || + (!Array.isArray(rangeDef[i]) && county === rangeDef[i])) { + inRange = true; + break; + } + } + if (!inRange) { + return { + meta: {}, + valid: false, + }; + } + // Check date of birth + var dob; + if (v.length === 18) { + dob = v.substr(6, 8); + } /* length == 15 */ + else { + dob = "19".concat(v.substr(6, 6)); + } + var year = parseInt(dob.substr(0, 4), 10); + var month = parseInt(dob.substr(4, 2), 10); + var day = parseInt(dob.substr(6, 2), 10); + if (!isValidDate$c(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check checksum (18-digit system only) + if (v.length === 18) { + var weight = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; + var sum = 0; + for (i = 0; i < 17; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = (12 - (sum % 11)) % 11; + var checksum = v.charAt(17).toUpperCase() !== 'X' ? parseInt(v.charAt(17), 10) : 10; + return { + meta: {}, + valid: checksum === sum, + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Colombian identification number (NIT) + * @see https://es.wikipedia.org/wiki/N%C3%BAmero_de_Identificaci%C3%B3n_Tributaria + * @returns {ValidateResult} + */ + function coId(value) { + var v = value.replace(/\./g, '').replace('-', ''); + if (!/^\d{8,16}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var weight = [3, 7, 13, 17, 19, 23, 29, 37, 41, 43, 47, 53, 59, 67, 71]; + var sum = 0; + for (var i = length - 2; i >= 0; i--) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum >= 2) { + sum = 11 - sum; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$b = core.utils.isValidDate; + /** + * Validate Czech national identification number (RC) + * + * @returns {ValidateResult} + */ + function czId(value) { + if (!/^\d{9,10}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var year = 1900 + parseInt(value.substr(0, 2), 10); + var month = (parseInt(value.substr(2, 2), 10) % 50) % 20; + var day = parseInt(value.substr(4, 2), 10); + if (value.length === 9) { + if (year >= 1980) { + year -= 100; + } + if (year > 1953) { + return { + meta: {}, + valid: false, + }; + } + } + else if (year < 1954) { + year += 100; + } + if (!isValidDate$b(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check that the birth date is not in the future + if (value.length === 10) { + var check = parseInt(value.substr(0, 9), 10) % 11; + if (year < 1985) { + check = check % 10; + } + return { + meta: {}, + valid: "".concat(check) === value.substr(9, 1), + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$a = core.utils.isValidDate; + /** + * Validate Danish Personal Identification number (CPR) + * + * @see https://en.wikipedia.org/wiki/Personal_identification_number_(Denmark) + * @returns {ValidateResult} + */ + function dkId(value) { + if (!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + switch (true) { + case '5678'.indexOf(v.charAt(6)) !== -1 && year >= 58: + year += 1800; + break; + case '0123'.indexOf(v.charAt(6)) !== -1: + case '49'.indexOf(v.charAt(6)) !== -1 && year >= 37: + year += 1900; + break; + default: + year += 2000; + break; + } + return { + meta: {}, + valid: isValidDate$a(year, month, day), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Spanish personal identity code (DNI) + * Support DNI (for Spanish citizens), NIE (for foreign people) and CIF (for legal entities) + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Spain + * @returns {ValidateResult} + */ + function esId(value) { + var isDNI = /^[0-9]{8}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(value); + var isNIE = /^[XYZ][-]{0,1}[0-9]{7}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(value); + var isCIF = /^[A-HNPQS][-]{0,1}[0-9]{7}[-]{0,1}[0-9A-J]$/.test(value); + if (!isDNI && !isNIE && !isCIF) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + var check; + var tpe; + var isValid = true; + if (isDNI || isNIE) { + tpe = 'DNI'; + var index = 'XYZ'.indexOf(v.charAt(0)); + if (index !== -1) { + // It is NIE number + v = index + v.substr(1) + ''; + tpe = 'NIE'; + } + check = parseInt(v.substr(0, 8), 10); + check = 'TRWAGMYFPDXBNJZSQVHLCKE'[check % 23]; + return { + meta: { + type: tpe, + }, + valid: check === v.substr(8, 1), + }; + } + else { + check = v.substr(1, 7); + tpe = 'CIF'; + var letter = v[0]; + var control = v.substr(-1); + var sum = 0; + // The digits in the even positions are added to the sum directly. + // The ones in the odd positions are multiplied by 2 and then added to the sum. + // If the result of multiplying by 2 is 10 or higher, add the two digits + // together and add that to the sum instead + for (var i = 0; i < check.length; i++) { + if (i % 2 !== 0) { + sum += parseInt(check[i], 10); + } + else { + var tmp = '' + parseInt(check[i], 10) * 2; + sum += parseInt(tmp[0], 10); + if (tmp.length === 2) { + sum += parseInt(tmp[1], 10); + } + } + } + // The control digit is calculated from the last digit of the sum. + // If that last digit is not 0, subtract it from 10 + var lastDigit = sum - Math.floor(sum / 10) * 10; + if (lastDigit !== 0) { + lastDigit = 10 - lastDigit; + } + if ('KQS'.indexOf(letter) !== -1) { + // If the CIF starts with a K, Q or S, the control digit must be a letter + isValid = control === 'JABCDEFGHI'[lastDigit]; + } + else if ('ABEH'.indexOf(letter) !== -1) { + // If it starts with A, B, E or H, it has to be a number + isValid = control === '' + lastDigit; + } + else { + // In any other case, it doesn't matter + isValid = control === '' + lastDigit || control === 'JABCDEFGHI'[lastDigit]; + } + return { + meta: { + type: tpe, + }, + valid: isValid, + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$9 = core.utils.isValidDate; + /** + * Validate Finnish Personal Identity Code (HETU) + * + * @returns {ValidateResult} + */ + function fiId(value) { + if (!/^[0-9]{6}[-+A][0-9]{3}[0-9ABCDEFHJKLMNPRSTUVWXY]$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var day = parseInt(value.substr(0, 2), 10); + var month = parseInt(value.substr(2, 2), 10); + var year = parseInt(value.substr(4, 2), 10); + var centuries = { + '+': 1800, + '-': 1900, + A: 2000, + }; + year = centuries[value.charAt(6)] + year; + if (!isValidDate$9(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + var individual = parseInt(value.substr(7, 3), 10); + if (individual < 2) { + return { + meta: {}, + valid: false, + }; + } + var n = parseInt(value.substr(0, 6) + value.substr(7, 3) + '', 10); + return { + meta: {}, + valid: '0123456789ABCDEFHJKLMNPRSTUVWXY'.charAt(n % 31) === value.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate French identification number (NIR) + * + * @see https://en.wikipedia.org/wiki/INSEE_code + * @see https://fr.wikipedia.org/wiki/Num%C3%A9ro_de_s%C3%A9curit%C3%A9_sociale_en_France + * @returns {ValidateResult} + */ + function frId(value) { + var v = value.toUpperCase(); + if (!/^(1|2)\d{2}\d{2}(\d{2}|\d[A-Z]|\d{3})\d{2,3}\d{3}\d{2}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // The COG group can be 2 digits or 2A or 2B + var cog = v.substr(5, 2); + switch (true) { + case /^\d{2}$/.test(cog): + v = value; + break; + case cog === '2A': + v = "".concat(value.substr(0, 5), "19").concat(value.substr(7)); + break; + case cog === '2B': + v = "".concat(value.substr(0, 5), "18").concat(value.substr(7)); + break; + default: + return { + meta: {}, + valid: false, + }; + } + var mod = 97 - (parseInt(v.substr(0, 13), 10) % 97); + var prefixWithZero = mod < 10 ? "0".concat(mod) : "".concat(mod); + return { + meta: {}, + valid: prefixWithZero === v.substr(13), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Hong Kong identity card number (HKID) + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Hong_Kong + * @returns {ValidateResult} + */ + function hkId(value) { + var v = value.toUpperCase(); + if (!/^[A-MP-Z]{1,2}[0-9]{6}[0-9A]$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; + var firstChar = v.charAt(0); + var secondChar = v.charAt(1); + var sum = 0; + var digitParts = v; + if (/^[A-Z]$/.test(secondChar)) { + sum += 9 * (10 + alphabet.indexOf(firstChar)); + sum += 8 * (10 + alphabet.indexOf(secondChar)); + digitParts = v.substr(2); + } + else { + sum += 9 * 36; + sum += 8 * (10 + alphabet.indexOf(firstChar)); + digitParts = v.substr(1); + } + var length = digitParts.length; + for (var i = 0; i < length - 1; i++) { + sum += (7 - i) * parseInt(digitParts.charAt(i), 10); + } + var remaining = sum % 11; + var checkDigit = remaining === 0 ? '0' : 11 - remaining === 10 ? 'A' : "".concat(11 - remaining); + return { + meta: {}, + valid: checkDigit === digitParts.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod11And10 = core.algorithms.mod11And10; + /** + * Validate Croatian personal identification number (OIB) + * + * @returns {ValidateResult} + */ + function hrId(value) { + return { + meta: {}, + valid: /^[0-9]{11}$/.test(value) && mod11And10(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var verhoeff = core.algorithms.verhoeff; + /** + * Validate Indian Aadhaar numbers + * @see https://en.wikipedia.org/wiki/Aadhaar + * @returns {ValidateResult} + */ + function idId(value) { + if (!/^[2-9]\d{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var converted = value.split('').map(function (item) { return parseInt(item, 10); }); + return { + meta: {}, + valid: verhoeff(converted), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Irish Personal Public Service Number (PPS) + * + * @see https://en.wikipedia.org/wiki/Personal_Public_Service_Number + * @returns {ValidateResult} + */ + function ieId(value) { + if (!/^\d{7}[A-W][AHWTX]?$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var getCheckDigit = function (v) { + var input = v; + while (input.length < 7) { + input = "0".concat(input); + } + var alphabet = 'WABCDEFGHIJKLMNOPQRSTUV'; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(input.charAt(i), 10) * (8 - i); + } + sum += 9 * alphabet.indexOf(input.substr(7)); + return alphabet[sum % 23]; + }; + // 2013 format + var isValid = value.length === 9 && ('A' === value.charAt(8) || 'H' === value.charAt(8)) + ? value.charAt(7) === getCheckDigit(value.substr(0, 7) + value.substr(8) + '') + : // The old format + value.charAt(7) === getCheckDigit(value.substr(0, 7)); + return { + meta: {}, + valid: isValid, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$2 = core.algorithms.luhn; + /** + * Validate Israeli identity number (Mispar Zehut) + * + * @see https://gist.github.com/freak4pc/6802be89d019bca57756a675d761c5a8 + * @see http://halemo.net/info/idcard/ + * @returns {ValidateResult} + */ + function ilId(value) { + if (!/^\d{1,9}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: luhn$2(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$8 = core.utils.isValidDate; + /** + * Validate Iceland national identification number (Kennitala) + * + * @see http://en.wikipedia.org/wiki/Kennitala + * @returns {ValidateResult} + */ + function isId(value) { + if (!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + var century = parseInt(v.charAt(9), 10); + year = century === 9 ? 1900 + year : (20 + century) * 100 + year; + if (!isValidDate$8(year, month, day, true)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the check digit + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + return { + meta: {}, + valid: "".concat(sum) === v.charAt(8), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$7 = core.utils.isValidDate; + /** + * Validate Korean registration number (RRN) + * + * @see https://en.wikipedia.org/wiki/Resident_registration_number + * @returns {ValidateResult} + */ + function krId(value) { + var v = value.replace('-', ''); + if (!/^\d{13}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Check the date of birth + var sDigit = v.charAt(6); + var year = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var day = parseInt(v.substr(4, 2), 10); + switch (sDigit) { + case '1': + case '2': + case '5': + case '6': + year += 1900; + break; + case '3': + case '4': + case '7': + case '8': + year += 2000; + break; + default: + year += 1800; + break; + } + if (!isValidDate$7(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Calculate the check digit + var weight = [2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5]; + var length = v.length; + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += weight[i] * parseInt(v.charAt(i), 10); + } + var checkDigit = (11 - (sum % 11)) % 10; + return { + meta: {}, + valid: "".concat(checkDigit) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$6 = core.utils.isValidDate; + /** + * Validate Lithuanian Personal Code (Asmens kodas) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Lithuania + * @see http://www.adomas.org/midi2007/pcode.html + * @returns {ValidateResult} + */ + function ltId(value) { + if (!/^[0-9]{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var gender = parseInt(value.charAt(0), 10); + var year = parseInt(value.substr(1, 2), 10); + var month = parseInt(value.substr(3, 2), 10); + var day = parseInt(value.substr(5, 2), 10); + var century = gender % 2 === 0 ? 17 + gender / 2 : 17 + (gender + 1) / 2; + year = century * 100 + year; + if (!isValidDate$6(year, month, day, true)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the check digit + var weight = [1, 2, 3, 4, 5, 6, 7, 8, 9, 1]; + var sum = 0; + var i; + for (i = 0; i < 10; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum !== 10) { + return { + meta: {}, + valid: "".concat(sum) === value.charAt(10), + }; + } + // Re-calculate the check digit + sum = 0; + weight = [3, 4, 5, 6, 7, 8, 9, 1, 2, 3]; + for (i = 0; i < 10; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === value.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$5 = core.utils.isValidDate; + /** + * Validate Latvian Personal Code (Personas kods) + * + * @see http://laacz.lv/2006/11/25/pk-parbaudes-algoritms/ + * @returns {ValidateResult} + */ + function lvId(value) { + if (!/^[0-9]{6}[-]{0,1}[0-9]{5}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/\D/g, ''); + // Check birth date + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + year = year + 1800 + parseInt(v.charAt(6), 10) * 100; + if (!isValidDate$5(year, month, day, true)) { + return { + meta: {}, + valid: false, + }; + } + // Check personal code + var sum = 0; + var weight = [10, 5, 8, 4, 2, 1, 6, 3, 7, 9]; + for (var i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = ((sum + 1) % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function meId(value) { + return { + meta: {}, + valid: jmbg(value, 'ME'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function mkId(value) { + return { + meta: {}, + valid: jmbg(value, 'MK'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$4 = core.utils.isValidDate; + /** + * Validate Mexican ID number (CURP) + * + * @see https://en.wikipedia.org/wiki/Unique_Population_Registry_Code + * @returns {ValidateResult} + */ + function mxId(value) { + var v = value.toUpperCase(); + if (!/^[A-Z]{4}\d{6}[A-Z]{6}[0-9A-Z]\d$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Check if the combination of initial names belongs to a back list + // See + // http://quemamadera.blogspot.com/2008/02/las-palabras-inconvenientes-del-curp.html + // https://www.reddit.com/r/mexico/comments/bo8cv/hoy_aprendi_que_existe_un_catalogo_de_palabras/ + var blacklistNames = [ + 'BACA', + 'BAKA', + 'BUEI', + 'BUEY', + 'CACA', + 'CACO', + 'CAGA', + 'CAGO', + 'CAKA', + 'CAKO', + 'COGE', + 'COGI', + 'COJA', + 'COJE', + 'COJI', + 'COJO', + 'COLA', + 'CULO', + 'FALO', + 'FETO', + 'GETA', + 'GUEI', + 'GUEY', + 'JETA', + 'JOTO', + 'KACA', + 'KACO', + 'KAGA', + 'KAGO', + 'KAKA', + 'KAKO', + 'KOGE', + 'KOGI', + 'KOJA', + 'KOJE', + 'KOJI', + 'KOJO', + 'KOLA', + 'KULO', + 'LILO', + 'LOCA', + 'LOCO', + 'LOKA', + 'LOKO', + 'MAME', + 'MAMO', + 'MEAR', + 'MEAS', + 'MEON', + 'MIAR', + 'MION', + 'MOCO', + 'MOKO', + 'MULA', + 'MULO', + 'NACA', + 'NACO', + 'PEDA', + 'PEDO', + 'PENE', + 'PIPI', + 'PITO', + 'POPO', + 'PUTA', + 'PUTO', + 'QULO', + 'RATA', + 'ROBA', + 'ROBE', + 'ROBO', + 'RUIN', + 'SENO', + 'TETA', + 'VACA', + 'VAGA', + 'VAGO', + 'VAKA', + 'VUEI', + 'VUEY', + 'WUEI', + 'WUEY', + ]; + var name = v.substr(0, 4); + if (blacklistNames.indexOf(name) >= 0) { + return { + meta: {}, + valid: false, + }; + } + // Check the date of birth + var year = parseInt(v.substr(4, 2), 10); + var month = parseInt(v.substr(6, 2), 10); + var day = parseInt(v.substr(6, 2), 10); + if (/^[0-9]$/.test(v.charAt(16))) { + year += 1900; + } + else { + year += 2000; + } + if (!isValidDate$4(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check the gender + var gender = v.charAt(10); + if (gender !== 'H' && gender !== 'M') { + // H for male, M for female + return { + meta: {}, + valid: false, + }; + } + // Check the state + var state = v.substr(11, 2); + var states = [ + 'AS', + 'BC', + 'BS', + 'CC', + 'CH', + 'CL', + 'CM', + 'CS', + 'DF', + 'DG', + 'GR', + 'GT', + 'HG', + 'JC', + 'MC', + 'MN', + 'MS', + 'NE', + 'NL', + 'NT', + 'OC', + 'PL', + 'QR', + 'QT', + 'SL', + 'SP', + 'SR', + 'TC', + 'TL', + 'TS', + 'VZ', + 'YN', + 'ZS', + ]; + if (states.indexOf(state) === -1) { + return { + meta: {}, + valid: false, + }; + } + // Calculate the check digit + var alphabet = '0123456789ABCDEFGHIJKLMN&OPQRSTUVWXYZ'; + var sum = 0; + var length = v.length; + for (var i = 0; i < length - 1; i++) { + sum += (18 - i) * alphabet.indexOf(v.charAt(i)); + } + sum = (10 - (sum % 10)) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$3 = core.utils.isValidDate; + /** + * Validate Malaysian identity card number + * + * @see https://en.wikipedia.org/wiki/Malaysian_identity_card + * @returns {ValidateResult} + */ + function myId(value) { + if (!/^\d{12}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + // Validate date of birth + var year = parseInt(value.substr(0, 2), 10); + var month = parseInt(value.substr(2, 2), 10); + var day = parseInt(value.substr(4, 2), 10); + if (!isValidDate$3(year + 1900, month, day) && !isValidDate$3(year + 2000, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Validate place of birth + var placeOfBirth = value.substr(6, 2); + var notAvailablePlaces = ['17', '18', '19', '20', '69', '70', '73', '80', '81', '94', '95', '96', '97']; + return { + meta: {}, + valid: notAvailablePlaces.indexOf(placeOfBirth) === -1, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Dutch national identification number (BSN) + * + * @see https://nl.wikipedia.org/wiki/Burgerservicenummer + * @returns {ValidateResult} + */ + function nlId(value) { + if (value.length < 8) { + return { + meta: {}, + valid: false, + }; + } + var v = value; + if (v.length === 8) { + v = "0".concat(v); + } + if (!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.replace(/\./g, ''); + if (parseInt(v, 10) === 0) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var length = v.length; + for (var i = 0; i < length - 1; i++) { + sum += (9 - i) * parseInt(v.charAt(i), 10); + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Norwegian identity number (Fødselsnummer) + * + * @see https://no.wikipedia.org/wiki/F%C3%B8dselsnummer + * @returns {ValidateResult} + */ + function noId(value) { + if (!/^\d{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + // Calculate the first check digit + var firstCd = function (v) { + var weight = [3, 7, 6, 1, 8, 9, 4, 5, 2]; + var sum = 0; + for (var i = 0; i < 9; i++) { + sum += weight[i] * parseInt(v.charAt(i), 10); + } + return 11 - (sum % 11); + }; + // Calculate the second check digit + var secondCd = function (v) { + var weight = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += weight[i] * parseInt(v.charAt(i), 10); + } + return 11 - (sum % 11); + }; + return { + meta: {}, + valid: "".concat(firstCd(value)) === value.substr(-2, 1) && "".concat(secondCd(value)) === value.substr(-1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Peruvian identity number (CUI) + * + * @see https://es.wikipedia.org/wiki/Documento_Nacional_de_Identidad_(Per%C3%BA) + * @returns {ValidateResult} + */ + function peId(value) { + if (!/^\d{8}[0-9A-Z]*$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + if (value.length === 8) { + return { + meta: {}, + valid: true, + }; + } + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += weight[i] * parseInt(value.charAt(i), 10); + } + var cd = sum % 11; + var checkDigit = [6, 5, 4, 3, 2, 1, 1, 0, 9, 8, 7][cd]; + var checkChar = 'KJIHGFEDCBA'.charAt(cd); + return { + meta: {}, + valid: value.charAt(8) === "".concat(checkDigit) || value.charAt(8) === checkChar, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Poland citizen number (PESEL) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Poland + * @see http://en.wikipedia.org/wiki/PESEL + * @returns {ValidateResult} + */ + function plId(value) { + if (!/^[0-9]{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var length = value.length; + var weight = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3, 7]; + for (var i = 0; i < length - 1; i++) { + sum += weight[i] * parseInt(value.charAt(i), 10); + } + sum = sum % 10; + if (sum === 0) { + sum = 10; + } + sum = 10 - sum; + return { + meta: {}, + valid: "".concat(sum) === value.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$2 = core.utils.isValidDate; + /** + * Validate Romanian numerical personal code (CNP) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Romania + * @returns {ValidateResult} + */ + function roId(value) { + if (!/^[0-9]{13}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var gender = parseInt(value.charAt(0), 10); + if (gender === 0 || gender === 7 || gender === 8) { + return { + meta: {}, + valid: false, + }; + } + // Determine the date of birth + var year = parseInt(value.substr(1, 2), 10); + var month = parseInt(value.substr(3, 2), 10); + var day = parseInt(value.substr(5, 2), 10); + // The year of date is determined base on the gender + var centuries = { + 1: 1900, + 2: 1900, + 3: 1800, + 4: 1800, + 5: 2000, + 6: 2000, // Female born after 2000 + }; + if (day > 31 && month > 12) { + return { + meta: {}, + valid: false, + }; + } + if (gender !== 9) { + year = centuries[gender + ''] + year; + if (!isValidDate$2(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + } + // Validate the check digit + var sum = 0; + var weight = [2, 7, 9, 1, 4, 6, 3, 5, 8, 2, 7, 9]; + var length = value.length; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum === 10) { + sum = 1; + } + return { + meta: {}, + valid: "".concat(sum) === value.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function rsId(value) { + return { + meta: {}, + valid: jmbg(value, 'RS'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$1 = core.algorithms.luhn; + var isValidDate$1 = core.utils.isValidDate; + /** + * Validate Swedish personal identity number (personnummer) + * + * @see http://en.wikipedia.org/wiki/Personal_identity_number_(Sweden) + * @returns {ValidateResult} + */ + function seId(value) { + if (!/^[0-9]{10}$/.test(value) && !/^[0-9]{6}[-|+][0-9]{4}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/[^0-9]/g, ''); + var year = parseInt(v.substr(0, 2), 10) + 1900; + var month = parseInt(v.substr(2, 2), 10); + var day = parseInt(v.substr(4, 2), 10); + if (!isValidDate$1(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the last check digit + return { + meta: {}, + valid: luhn$1(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function siId(value) { + return { + meta: {}, + valid: jmbg(value, 'SI'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate San Marino citizen number + * + * @see http://en.wikipedia.org/wiki/National_identification_number#San_Marino + * @returns {ValidateResult} + */ + function smId(value) { + return { + meta: {}, + valid: /^\d{5}$/.test(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Thailand citizen number + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Thailand + * @returns {ValidateResult} + */ + function thId(value) { + if (value.length !== 13) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + for (var i = 0; i < 12; i++) { + sum += parseInt(value.charAt(i), 10) * (13 - i); + } + return { + meta: {}, + valid: (11 - (sum % 11)) % 10 === parseInt(value.charAt(12), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Turkish Identification Number + * + * @see https://en.wikipedia.org/wiki/Turkish_Identification_Number + * @returns {ValidateResult} + */ + function trId(value) { + if (value.length !== 11) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += parseInt(value.charAt(i), 10); + } + return { + meta: {}, + valid: sum % 10 === parseInt(value.charAt(10), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Taiwan identity card number + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Taiwan + * @returns {ValidateResult} + */ + function twId(value) { + var v = value.toUpperCase(); + if (!/^[A-Z][12][0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var alphabet = 'ABCDEFGHJKLMNPQRSTUVXYWZIO'; + var letterIndex = alphabet.indexOf(v.charAt(0)) + 10; + var letterValue = Math.floor(letterIndex / 10) + (letterIndex % 10) * (length - 1); + var sum = 0; + for (var i = 1; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * (length - 1 - i); + } + return { + meta: {}, + valid: (letterValue + sum + parseInt(v.charAt(length - 1), 10)) % 10 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Uruguayan identity document + * + * @see https://en.wikipedia.org/wiki/Identity_document#Uruguay + * @returns {ValidateResult} + */ + function uyId(value) { + if (!/^\d{8}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [2, 9, 8, 7, 6, 3, 4]; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 10; + if (sum > 0) { + sum = 10 - sum; + } + return { + meta: {}, + valid: "".concat(sum) === value.charAt(7), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + var isValidDate = core.utils.isValidDate; + /** + * Validate South African ID + * + * @see http://en.wikipedia.org/wiki/National_identification_number#South_Africa + * @returns {ValidateResult} + */ + function zaId(value) { + if (!/^[0-9]{10}[0|1][8|9][0-9]$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var year = parseInt(value.substr(0, 2), 10); + var currentYear = new Date().getFullYear() % 100; + var month = parseInt(value.substr(2, 2), 10); + var day = parseInt(value.substr(4, 2), 10); + year = year >= currentYear ? year + 1900 : year + 2000; + if (!isValidDate(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the last check digit + return { + meta: {}, + valid: luhn(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function id() { + // Supported country codes + var COUNTRY_CODES = [ + 'AR', + 'BA', + 'BG', + 'BR', + 'CH', + 'CL', + 'CN', + 'CO', + 'CZ', + 'DK', + 'EE', + 'ES', + 'FI', + 'FR', + 'HK', + 'HR', + 'ID', + 'IE', + 'IL', + 'IS', + 'KR', + 'LT', + 'LV', + 'ME', + 'MK', + 'MX', + 'MY', + 'NL', + 'NO', + 'PE', + 'PL', + 'RO', + 'RS', + 'SE', + 'SI', + 'SK', + 'SM', + 'TH', + 'TR', + 'TW', + 'UY', + 'ZA', + ]; + return { + /** + * Validate identification number in different countries + * @see http://en.wikipedia.org/wiki/National_identification_number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var country = input.value.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (COUNTRY_CODES.indexOf(country) === -1) { + return { valid: true }; + } + var result = { + meta: {}, + valid: true, + }; + switch (country.toLowerCase()) { + case 'ar': + result = arId(input.value); + break; + case 'ba': + result = baId(input.value); + break; + case 'bg': + result = bgId(input.value); + break; + case 'br': + result = brId(input.value); + break; + case 'ch': + result = chId(input.value); + break; + case 'cl': + result = clId(input.value); + break; + case 'cn': + result = cnId(input.value); + break; + case 'co': + result = coId(input.value); + break; + case 'cz': + result = czId(input.value); + break; + case 'dk': + result = dkId(input.value); + break; + // Validate Estonian Personal Identification Code (isikukood) + // Use the same format as Lithuanian Personal Code + // See http://et.wikipedia.org/wiki/Isikukood + case 'ee': + result = ltId(input.value); + break; + case 'es': + result = esId(input.value); + break; + case 'fi': + result = fiId(input.value); + break; + case 'fr': + result = frId(input.value); + break; + case 'hk': + result = hkId(input.value); + break; + case 'hr': + result = hrId(input.value); + break; + case 'id': + result = idId(input.value); + break; + case 'ie': + result = ieId(input.value); + break; + case 'il': + result = ilId(input.value); + break; + case 'is': + result = isId(input.value); + break; + case 'kr': + result = krId(input.value); + break; + case 'lt': + result = ltId(input.value); + break; + case 'lv': + result = lvId(input.value); + break; + case 'me': + result = meId(input.value); + break; + case 'mk': + result = mkId(input.value); + break; + case 'mx': + result = mxId(input.value); + break; + case 'my': + result = myId(input.value); + break; + case 'nl': + result = nlId(input.value); + break; + case 'no': + result = noId(input.value); + break; + case 'pe': + result = peId(input.value); + break; + case 'pl': + result = plId(input.value); + break; + case 'ro': + result = roId(input.value); + break; + case 'rs': + result = rsId(input.value); + break; + case 'se': + result = seId(input.value); + break; + case 'si': + result = siId(input.value); + break; + // Validate Slovak national identifier number (RC) + // Slovakia uses the same format as Czech Republic + case 'sk': + result = czId(input.value); + break; + case 'sm': + result = smId(input.value); + break; + case 'th': + result = thId(input.value); + break; + case 'tr': + result = trId(input.value); + break; + case 'tw': + result = twId(input.value); + break; + case 'uy': + result = uyId(input.value); + break; + case 'za': + result = zaId(input.value); + break; + } + var message = format(input.l10n && input.l10n.id ? opts.message || input.l10n.id.country : opts.message, input.l10n && input.l10n.id && input.l10n.id.countries + ? input.l10n.id.countries[country.toUpperCase()] + : country.toUpperCase()); + return Object.assign({}, { message: message }, result); + }, + }; + } + + return id; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js new file mode 100644 index 0000000..c9181ea --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-id + * @version 2.4.0 + */ + +!function(a,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.id=t(a.FormValidation))}(this,(function(a){"use strict";function t(a,t){if(!/^\d{13}$/.test(a))return!1;var r=parseInt(a.substr(0,2),10),e=parseInt(a.substr(2,2),10),s=parseInt(a.substr(7,2),10),n=parseInt(a.substr(12,1),10);if(r>31||e>12)return!1;for(var i=0,u=0;u<6;u++)i+=(7-u)*(parseInt(a.charAt(u),10)+parseInt(a.charAt(u+6),10));if(10!==(i=11-i%11)&&11!==i||(i=0),i!==n)return!1;switch(t.toUpperCase()){case"BA":return 10<=s&&s<=19;case"MK":return 41<=s&&s<=49;case"ME":return 20<=s&&s<=29;case"RS":return 70<=s&&s<=99;case"SI":return 50<=s&&s<=59;default:return!0}}var r=a.utils.isValidDate;var e=a.utils.isValidDate;var s=a.utils.isValidDate;function n(a){if(!/^\d{9,10}$/.test(a))return{meta:{},valid:!1};var t=1900+parseInt(a.substr(0,2),10),r=parseInt(a.substr(2,2),10)%50%20,e=parseInt(a.substr(4,2),10);if(9===a.length){if(t>=1980&&(t-=100),t>1953)return{meta:{},valid:!1}}else t<1954&&(t+=100);if(!s(t,r,e))return{meta:{},valid:!1};if(10===a.length){var n=parseInt(a.substr(0,9),10)%11;return t<1985&&(n%=10),{meta:{},valid:"".concat(n)===a.substr(9,1)}}return{meta:{},valid:!0}}var i=a.utils.isValidDate;var u=a.utils.isValidDate;var c=a.algorithms.mod11And10;var l=a.algorithms.verhoeff;var v=a.algorithms.luhn;var d=a.utils.isValidDate;var f=a.utils.isValidDate;var o=a.utils.isValidDate;function A(a){if(!/^[0-9]{11}$/.test(a))return{meta:{},valid:!1};var t=parseInt(a.charAt(0),10),r=parseInt(a.substr(1,2),10),e=parseInt(a.substr(3,2),10),s=parseInt(a.substr(5,2),10);if(!o(r=100*(t%2==0?17+t/2:17+(t+1)/2)+r,e,s,!0))return{meta:{},valid:!1};var n,i=[1,2,3,4,5,6,7,8,9,1],u=0;for(n=0;n<10;n++)u+=parseInt(a.charAt(n),10)*i[n];if(10!==(u%=11))return{meta:{},valid:"".concat(u)===a.charAt(10)};for(u=0,i=[3,4,5,6,7,8,9,1,2,3],n=0;n<10;n++)u+=parseInt(a.charAt(n),10)*i[n];return 10===(u%=11)&&(u=0),{meta:{},valid:"".concat(u)===a.charAt(10)}}var p=a.utils.isValidDate;var b=a.utils.isValidDate;var m=a.utils.isValidDate;var I=a.utils.isValidDate;var h=a.algorithms.luhn,O=a.utils.isValidDate;var C=a.algorithms.luhn,k=a.utils.isValidDate;var g=a.utils.format,E=a.utils.removeUndefined;return function(){var a=["AR","BA","BG","BR","CH","CL","CN","CO","CZ","DK","EE","ES","FI","FR","HK","HR","ID","IE","IL","IS","KR","LT","LV","ME","MK","MX","MY","NL","NO","PE","PL","RO","RS","SE","SI","SK","SM","TH","TR","TW","UY","ZA"];return{validate:function(s){if(""===s.value)return{valid:!0};var o=Object.assign({},{message:""},E(s.options)),$=s.value.substr(0,2);if($="function"==typeof o.country?o.country.call(this):o.country,-1===a.indexOf($))return{valid:!0};var K,M,V={meta:{},valid:!0};switch($.toLowerCase()){case"ar":K=s.value,M=K.replace(/\./g,""),V={meta:{},valid:/^\d{7,8}$/.test(M)};break;case"ba":V=function(a){return{meta:{},valid:t(a,"BA")}}(s.value);break;case"bg":V=function(a){if(!/^\d{10}$/.test(a)&&!/^\d{6}\s\d{3}\s\d{1}$/.test(a))return{meta:{},valid:!1};var t=a.replace(/\s/g,""),e=parseInt(t.substr(0,2),10)+1900,s=parseInt(t.substr(2,2),10),n=parseInt(t.substr(4,2),10);if(s>40?(e+=100,s-=40):s>20&&(e-=100,s-=20),!r(e,s,n))return{meta:{},valid:!1};for(var i=0,u=[2,4,8,5,10,9,7,3,6],c=0;c<9;c++)i+=parseInt(t.charAt(c),10)*u[c];return{meta:{},valid:"".concat(i=i%11%10)===t.substr(9,1)}}(s.value);break;case"br":V=function(a){var t=a.replace(/\D/g,"");if(!/^\d{11}$/.test(t)||/^1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11}|0{11}$/.test(t))return{meta:{},valid:!1};var r,e=0;for(r=0;r<9;r++)e+=(10-r)*parseInt(t.charAt(r),10);if(10!=(e=11-e%11)&&11!==e||(e=0),"".concat(e)!==t.charAt(9))return{meta:{},valid:!1};var s=0;for(r=0;r<10;r++)s+=(11-r)*parseInt(t.charAt(r),10);return 10!=(s=11-s%11)&&11!==s||(s=0),{meta:{},valid:"".concat(s)===t.charAt(10)}}(s.value);break;case"ch":V=function(a){if(!/^756[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{2}$/.test(a))return{meta:{},valid:!1};for(var t=a.replace(/\D/g,"").substr(3),r=t.length,e=8===r?[3,1]:[1,3],s=0,n=0;n=0;n--)s+=parseInt(t.charAt(n),10)*e[n];return(s%=11)>=2&&(s=11-s),{meta:{},valid:"".concat(s)===t.substr(r-1)}}(s.value);break;case"cz":case"sk":V=n(s.value);break;case"dk":V=function(a){if(!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(a))return{meta:{},valid:!1};var t=a.replace(/-/g,""),r=parseInt(t.substr(0,2),10),e=parseInt(t.substr(2,2),10),s=parseInt(t.substr(4,2),10);switch(!0){case-1!=="5678".indexOf(t.charAt(6))&&s>=58:s+=1800;break;case-1!=="0123".indexOf(t.charAt(6)):case-1!=="49".indexOf(t.charAt(6))&&s>=37:s+=1900;break;default:s+=2e3}return{meta:{},valid:i(s,e,r)}}(s.value);break;case"ee":case"lt":V=A(s.value);break;case"es":V=function(a){var t=/^[0-9]{8}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(a),r=/^[XYZ][-]{0,1}[0-9]{7}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(a),e=/^[A-HNPQS][-]{0,1}[0-9]{7}[-]{0,1}[0-9A-J]$/.test(a);if(!t&&!r&&!e)return{meta:{},valid:!1};var s,n,i=a.replace(/-/g,"");if(t||r){n="DNI";var u="XYZ".indexOf(i.charAt(0));return-1!==u&&(i=u+i.substr(1)+"",n="NIE"),{meta:{type:n},valid:(s="TRWAGMYFPDXBNJZSQVHLCKE"[(s=parseInt(i.substr(0,8),10))%23])===i.substr(8,1)}}s=i.substr(1,7),n="CIF";for(var c=i[0],l=i.substr(-1),v=0,d=0;d=0)return{meta:{},valid:!1};var e=parseInt(t.substr(4,2),10),s=parseInt(t.substr(6,2),10),n=parseInt(t.substr(6,2),10);if(/^[0-9]$/.test(t.charAt(16))?e+=1900:e+=2e3,!b(e,s,n))return{meta:{},valid:!1};var i=t.charAt(10);if("H"!==i&&"M"!==i)return{meta:{},valid:!1};var u=t.substr(11,2);if(-1===["AS","BC","BS","CC","CH","CL","CM","CS","DF","DG","GR","GT","HG","JC","MC","MN","MS","NE","NL","NT","OC","PL","QR","QT","SL","SP","SR","TC","TL","TS","VZ","YN","ZS"].indexOf(u))return{meta:{},valid:!1};for(var c=0,l=t.length,v=0;v31&&e>12)return{meta:{},valid:!1};if(9!==t&&!I(r={1:1900,2:1900,3:1800,4:1800,5:2e3,6:2e3}[t+""]+r,e,s))return{meta:{},valid:!1};for(var n=0,i=[2,7,9,1,4,6,3,5,8,2,7,9],u=a.length,c=0;c0&&(r=10-r),{meta:{},valid:"".concat(r)===a.charAt(7)}}(s.value);break;case"za":V=function(a){if(!/^[0-9]{10}[0|1][8|9][0-9]$/.test(a))return{meta:{},valid:!1};var t=parseInt(a.substr(0,2),10),r=(new Date).getFullYear()%100,e=parseInt(a.substr(2,2),10),s=parseInt(a.substr(4,2),10);return k(t=t>=r?t+1900:t+2e3,e,s)?{meta:{},valid:C(a)}:{meta:{},valid:!1}}(s.value)}var D=g(s.l10n&&s.l10n.id?o.message||s.l10n.id.country:o.message,s.l10n&&s.l10n.id&&s.l10n.id.countries?s.l10n.id.countries[$.toUpperCase()]:$.toUpperCase());return Object.assign({},{message:D},V)}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js new file mode 100644 index 0000000..f136538 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.identical = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function identical() { + return { + validate: function (input) { + var compareWith = 'function' === typeof input.options.compare + ? input.options.compare.call(this) + : input.options.compare; + return { + valid: compareWith === '' || input.value === compareWith, + }; + }, + }; + } + + return identical; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js new file mode 100644 index 0000000..00404c8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-identical + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.identical=i())}(this,(function(){"use strict";return function(){return{validate:function(o){var i="function"==typeof o.options.compare?o.options.compare.call(this):o.options.compare;return{valid:""===i||o.value===i}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js new file mode 100644 index 0000000..c5c6a9a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js @@ -0,0 +1,42 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.imei = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + function imei() { + return { + /** + * Validate IMEI (International Mobile Station Equipment Identity) + * @see http://en.wikipedia.org/wiki/International_Mobile_Station_Equipment_Identity + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + switch (true) { + case /^\d{15}$/.test(input.value): + case /^\d{2}-\d{6}-\d{6}-\d{1}$/.test(input.value): + case /^\d{2}\s\d{6}\s\d{6}\s\d{1}$/.test(input.value): + return { valid: luhn(input.value.replace(/[^0-9]/g, '')) }; + case /^\d{14}$/.test(input.value): + case /^\d{16}$/.test(input.value): + case /^\d{2}-\d{6}-\d{6}(|-\d{2})$/.test(input.value): + case /^\d{2}\s\d{6}\s\d{6}(|\s\d{2})$/.test(input.value): + return { valid: true }; + default: + return { valid: false }; + } + }, + }; + } + + return imei; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js new file mode 100644 index 0000000..4f28bbb --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-imei + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.imei=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.algorithms.luhn;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};switch(!0){case/^\d{15}$/.test(e.value):case/^\d{2}-\d{6}-\d{6}-\d{1}$/.test(e.value):case/^\d{2}\s\d{6}\s\d{6}\s\d{1}$/.test(e.value):return{valid:a(e.value.replace(/[^0-9]/g,""))};case/^\d{14}$/.test(e.value):case/^\d{16}$/.test(e.value):case/^\d{2}-\d{6}-\d{6}(|-\d{2})$/.test(e.value):case/^\d{2}\s\d{6}\s\d{6}(|\s\d{2})$/.test(e.value):return{valid:!0};default:return{valid:!1}}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js new file mode 100644 index 0000000..1512cae --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js @@ -0,0 +1,38 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.imo = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function imo() { + return { + /** + * Validate IMO (International Maritime Organization) + * @see http://en.wikipedia.org/wiki/IMO_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + if (!/^IMO \d{7}$/i.test(input.value)) { + return { valid: false }; + } + // Grab just the digits + var digits = input.value.replace(/^.*(\d{7})$/, '$1'); + var sum = 0; + for (var i = 6; i >= 1; i--) { + sum += parseInt(digits.slice(6 - i, -i), 10) * (i + 1); + } + return { valid: sum % 10 === parseInt(digits.charAt(6), 10) }; + }, + }; + } + + return imo; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js new file mode 100644 index 0000000..b5e94f6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-imo + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.imo=i())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};if(!/^IMO \d{7}$/i.test(e.value))return{valid:!1};for(var i=e.value.replace(/^.*(\d{7})$/,"$1"),t=0,a=6;a>=1;a--)t+=parseInt(i.slice(6-a,-a),10)*(a+1);return{valid:t%10===parseInt(i.charAt(6),10)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js new file mode 100644 index 0000000..732b092 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js @@ -0,0 +1,47 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.integer = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function integer() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + decimalSeparator: '.', + thousandsSeparator: '', + }, removeUndefined(input.options)); + var decimalSeparator = opts.decimalSeparator === '.' ? '\\.' : opts.decimalSeparator; + var thousandsSeparator = opts.thousandsSeparator === '.' ? '\\.' : opts.thousandsSeparator; + var testRegexp = new RegExp("^-?[0-9]{1,3}(".concat(thousandsSeparator, "[0-9]{3})*(").concat(decimalSeparator, "[0-9]+)?$")); + var thousandsReplacer = new RegExp(thousandsSeparator, 'g'); + var v = "".concat(input.value); + if (!testRegexp.test(v)) { + return { valid: false }; + } + // Replace thousands separator with blank + if (thousandsSeparator) { + v = v.replace(thousandsReplacer, ''); + } + // Replace decimal separator with a dot + if (decimalSeparator) { + v = v.replace(decimalSeparator, '.'); + } + var n = parseFloat(v); + return { valid: !isNaN(n) && isFinite(n) && Math.floor(n) === n }; + }, + }; + } + + return integer; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js new file mode 100644 index 0000000..2cc9c1c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-integer + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.integer=e(a.FormValidation))}(this,(function(a){"use strict";var e=a.utils.removeUndefined;return function(){return{validate:function(a){if(""===a.value)return{valid:!0};var o=Object.assign({},{decimalSeparator:".",thousandsSeparator:""},e(a.options)),t="."===o.decimalSeparator?"\\.":o.decimalSeparator,i="."===o.thousandsSeparator?"\\.":o.thousandsSeparator,r=new RegExp("^-?[0-9]{1,3}(".concat(i,"[0-9]{3})*(").concat(t,"[0-9]+)?$")),n=new RegExp(i,"g"),d="".concat(a.value);if(!r.test(d))return{valid:!1};i&&(d=d.replace(n,"")),t&&(d=d.replace(t,"."));var l=parseFloat(d);return{valid:!isNaN(l)&&isFinite(l)&&Math.floor(l)===l}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js new file mode 100644 index 0000000..ea97c7c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js @@ -0,0 +1,52 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.ip = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function ip() { + return { + /** + * Return true if the input value is a IP address. + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + ipv4: true, + ipv6: true, + }, removeUndefined(input.options)); + var ipv4Regex = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/([0-9]|[1-2][0-9]|3[0-2]))?$/; + var ipv6Regex = /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*(\/(\d|\d\d|1[0-1]\d|12[0-8]))?$/; + switch (true) { + case opts.ipv4 && !opts.ipv6: + return { + message: input.l10n ? opts.message || input.l10n.ip.ipv4 : opts.message, + valid: ipv4Regex.test(input.value), + }; + case !opts.ipv4 && opts.ipv6: + return { + message: input.l10n ? opts.message || input.l10n.ip.ipv6 : opts.message, + valid: ipv6Regex.test(input.value), + }; + case opts.ipv4 && opts.ipv6: + default: + return { + message: input.l10n ? opts.message || input.l10n.ip.default : opts.message, + valid: ipv4Regex.test(input.value) || ipv6Regex.test(input.value), + }; + } + }, + }; + } + + return ip; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js new file mode 100644 index 0000000..704bfc3 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ip + * @version 2.4.0 + */ + +!function(d,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((d="undefined"!=typeof globalThis?globalThis:d||self).FormValidation=d.FormValidation||{},d.FormValidation.validators=d.FormValidation.validators||{},d.FormValidation.validators.ip=a(d.FormValidation))}(this,(function(d){"use strict";var a=d.utils.removeUndefined;return function(){return{validate:function(d){if(""===d.value)return{valid:!0};var e=Object.assign({},{ipv4:!0,ipv6:!0},a(d.options)),i=/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/([0-9]|[1-2][0-9]|3[0-2]))?$/,t=/^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*(\/(\d|\d\d|1[0-1]\d|12[0-8]))?$/;switch(!0){case e.ipv4&&!e.ipv6:return{message:d.l10n?e.message||d.l10n.ip.ipv4:e.message,valid:i.test(d.value)};case!e.ipv4&&e.ipv6:return{message:d.l10n?e.message||d.l10n.ip.ipv6:e.message,valid:t.test(d.value)};case e.ipv4&&e.ipv6:default:return{message:d.l10n?e.message||d.l10n.ip.default:e.message,valid:i.test(d.value)||t.test(d.value)}}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js new file mode 100644 index 0000000..5ed9279 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js @@ -0,0 +1,96 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.isbn = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function isbn() { + return { + /** + * Return true if the input value is a valid ISBN 10 or ISBN 13 number + * @see http://en.wikipedia.org/wiki/International_Standard_Book_Number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: { + type: null, + }, + valid: true, + }; + } + // http://en.wikipedia.org/wiki/International_Standard_Book_Number#Overview + // Groups are separated by a hyphen or a space + var tpe; + switch (true) { + case /^\d{9}[\dX]$/.test(input.value): + case input.value.length === 13 && /^(\d+)-(\d+)-(\d+)-([\dX])$/.test(input.value): + case input.value.length === 13 && /^(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(input.value): + tpe = 'ISBN10'; + break; + case /^(978|979)\d{9}[\dX]$/.test(input.value): + case input.value.length === 17 && /^(978|979)-(\d+)-(\d+)-(\d+)-([\dX])$/.test(input.value): + case input.value.length === 17 && /^(978|979)\s(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(input.value): + tpe = 'ISBN13'; + break; + default: + return { + meta: { + type: null, + }, + valid: false, + }; + } + // Replace all special characters except digits and X + var chars = input.value.replace(/[^0-9X]/gi, '').split(''); + var length = chars.length; + var sum = 0; + var i; + var checksum; + switch (tpe) { + case 'ISBN10': + sum = 0; + for (i = 0; i < length - 1; i++) { + sum += parseInt(chars[i], 10) * (10 - i); + } + checksum = 11 - (sum % 11); + if (checksum === 11) { + checksum = 0; + } + else if (checksum === 10) { + checksum = 'X'; + } + return { + meta: { + type: tpe, + }, + valid: "".concat(checksum) === chars[length - 1], + }; + case 'ISBN13': + sum = 0; + for (i = 0; i < length - 1; i++) { + sum += i % 2 === 0 ? parseInt(chars[i], 10) : parseInt(chars[i], 10) * 3; + } + checksum = 10 - (sum % 10); + if (checksum === 10) { + checksum = '0'; + } + return { + meta: { + type: tpe, + }, + valid: "".concat(checksum) === chars[length - 1], + }; + } + }, + }; + } + + return isbn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js new file mode 100644 index 0000000..8af70b6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-isbn + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.isbn=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{meta:{type:null},valid:!0};var t;switch(!0){case/^\d{9}[\dX]$/.test(e.value):case 13===e.value.length&&/^(\d+)-(\d+)-(\d+)-([\dX])$/.test(e.value):case 13===e.value.length&&/^(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(e.value):t="ISBN10";break;case/^(978|979)\d{9}[\dX]$/.test(e.value):case 17===e.value.length&&/^(978|979)-(\d+)-(\d+)-(\d+)-([\dX])$/.test(e.value):case 17===e.value.length&&/^(978|979)\s(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(e.value):t="ISBN13";break;default:return{meta:{type:null},valid:!1}}var a,d,l=e.value.replace(/[^0-9X]/gi,"").split(""),n=l.length,s=0;switch(t){case"ISBN10":for(s=0,a=0;a + */ + function isin() { + // Available country codes + // See http://isin.net/country-codes/ + var COUNTRY_CODES = 'AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|' + + 'BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CD|CK|CR|CI|HR|CU|CW|CY|CZ|DK|DJ|DM|DO|EC|EG|' + + 'SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|' + + 'IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KP|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|' + + 'MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|' + + 'PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|' + + 'SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|US|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|' + + 'YE|ZM|ZW'; + return { + /** + * Validate an ISIN (International Securities Identification Number) + * @see http://en.wikipedia.org/wiki/International_Securities_Identifying_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value.toUpperCase(); + var regex = new RegExp('^(' + COUNTRY_CODES + ')[0-9A-Z]{10}$'); + if (!regex.test(input.value)) { + return { valid: false }; + } + var length = v.length; + var converted = ''; + var i; + // Convert letters to number + for (i = 0; i < length - 1; i++) { + var c = v.charCodeAt(i); + converted += c > 57 ? (c - 55).toString() : v.charAt(i); + } + var digits = ''; + var n = converted.length; + var group = n % 2 !== 0 ? 0 : 1; + for (i = 0; i < n; i++) { + digits += parseInt(converted[i], 10) * (i % 2 === group ? 2 : 1) + ''; + } + var sum = 0; + for (i = 0; i < digits.length; i++) { + sum += parseInt(digits.charAt(i), 10); + } + sum = (10 - (sum % 10)) % 10; + return { valid: "".concat(sum) === v.charAt(length - 1) }; + }, + }; + } + + return isin; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js new file mode 100644 index 0000000..d0c0cd8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-isin + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.isin=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var e=t.value.toUpperCase();if(!new RegExp("^(AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CD|CK|CR|CI|HR|CU|CW|CY|CZ|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KP|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|US|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW)[0-9A-Z]{10}$").test(t.value))return{valid:!1};var a,M=e.length,r="";for(a=0;a57?(i-55).toString():e.charAt(a)}var n="",o=r.length,S=o%2!=0?0:1;for(a=0;a + */ + function ismn() { + return { + /** + * Validate ISMN (International Standard Music Number) + * @see http://en.wikipedia.org/wiki/International_Standard_Music_Number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: null, + valid: true, + }; + } + // Groups are separated by a hyphen or a space + var tpe; + switch (true) { + case /^M\d{9}$/.test(input.value): + case /^M-\d{4}-\d{4}-\d{1}$/.test(input.value): + case /^M\s\d{4}\s\d{4}\s\d{1}$/.test(input.value): + tpe = 'ISMN10'; + break; + case /^9790\d{9}$/.test(input.value): + case /^979-0-\d{4}-\d{4}-\d{1}$/.test(input.value): + case /^979\s0\s\d{4}\s\d{4}\s\d{1}$/.test(input.value): + tpe = 'ISMN13'; + break; + default: + return { + meta: null, + valid: false, + }; + } + var v = input.value; + if ('ISMN10' === tpe) { + v = "9790".concat(v.substr(1)); + } + // Replace all special characters except digits + v = v.replace(/[^0-9]/gi, ''); + var sum = 0; + var length = v.length; + var weight = [1, 3]; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i % 2]; + } + sum = (10 - (sum % 10)) % 10; + return { + meta: { + type: tpe, + }, + valid: "".concat(sum) === v.charAt(length - 1), + }; + }, + }; + } + + return ismn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js new file mode 100644 index 0000000..81b1a0b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ismn + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.ismn=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{meta:null,valid:!0};var t;switch(!0){case/^M\d{9}$/.test(e.value):case/^M-\d{4}-\d{4}-\d{1}$/.test(e.value):case/^M\s\d{4}\s\d{4}\s\d{1}$/.test(e.value):t="ISMN10";break;case/^9790\d{9}$/.test(e.value):case/^979-0-\d{4}-\d{4}-\d{1}$/.test(e.value):case/^979\s0\s\d{4}\s\d{4}\s\d{1}$/.test(e.value):t="ISMN13";break;default:return{meta:null,valid:!1}}var a=e.value;"ISMN10"===t&&(a="9790".concat(a.substr(1)));for(var d=0,i=(a=a.replace(/[^0-9]/gi,"")).length,s=[1,3],l=0;l + */ + function issn() { + return { + /** + * Validate ISSN (International Standard Serial Number) + * @see http://en.wikipedia.org/wiki/International_Standard_Serial_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + // Groups are separated by a hyphen or a space + if (!/^\d{4}-\d{3}[\dX]$/.test(input.value)) { + return { valid: false }; + } + // Replace all special characters except digits and X + var chars = input.value.replace(/[^0-9X]/gi, '').split(''); + var length = chars.length; + var sum = 0; + if (chars[7] === 'X') { + chars[7] = '10'; + } + for (var i = 0; i < length; i++) { + sum += parseInt(chars[i], 10) * (8 - i); + } + return { valid: sum % 11 === 0 }; + }, + }; + } + + return issn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js new file mode 100644 index 0000000..b8a80d1 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-issn + * @version 2.4.0 + */ + +!function(i,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.issn=e())}(this,(function(){"use strict";return function(){return{validate:function(i){if(""===i.value)return{valid:!0};if(!/^\d{4}-\d{3}[\dX]$/.test(i.value))return{valid:!1};var e=i.value.replace(/[^0-9X]/gi,"").split(""),t=e.length,a=0;"X"===e[7]&&(e[7]="10");for(var n=0;n + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function lessThan() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { inclusive: true, message: '' }, removeUndefined(input.options)); + var maxValue = parseFloat("".concat(opts.max).replace(',', '.')); + return opts.inclusive + ? { + message: format(input.l10n ? opts.message || input.l10n.lessThan.default : opts.message, "".concat(maxValue)), + valid: parseFloat(input.value) <= maxValue, + } + : { + message: format(input.l10n ? opts.message || input.l10n.lessThan.notInclusive : opts.message, "".concat(maxValue)), + valid: parseFloat(input.value) < maxValue, + }; + }, + }; + } + + return lessThan; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js new file mode 100644 index 0000000..68cce42 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-less-than + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.lessThan=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,i=e.utils.removeUndefined;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var o=Object.assign({},{inclusive:!0,message:""},i(e.options)),n=parseFloat("".concat(o.max).replace(",","."));return o.inclusive?{message:a(e.l10n?o.message||e.l10n.lessThan.default:o.message,"".concat(n)),valid:parseFloat(e.value)<=n}:{message:a(e.l10n?o.message||e.l10n.lessThan.notInclusive:o.message,"".concat(n)),valid:parseFloat(e.value) + */ + function mac() { + return { + /** + * Return true if the input value is a MAC address. + */ + validate: function (input) { + return { + valid: input.value === '' || + /^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/.test(input.value) || + /^([0-9A-Fa-f]{4}\.){2}([0-9A-Fa-f]{4})$/.test(input.value), + }; + }, + }; + } + + return mac; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js new file mode 100644 index 0000000..551abb5 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-mac + * @version 2.4.0 + */ + +!function(t,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a():"function"==typeof define&&define.amd?define(a):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.mac=a())}(this,(function(){"use strict";return function(){return{validate:function(t){return{valid:""===t.value||/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/.test(t.value)||/^([0-9A-Fa-f]{4}\.){2}([0-9A-Fa-f]{4})$/.test(t.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js new file mode 100644 index 0000000..b384246 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js @@ -0,0 +1,64 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.meid = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + function meid() { + return { + /** + * Validate MEID (Mobile Equipment Identifier) + * @see http://en.wikipedia.org/wiki/Mobile_equipment_identifier + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value; + if (/^[0-9A-F]{15}$/i.test(v) || + /^[0-9A-F]{2}[- ][0-9A-F]{6}[- ][0-9A-F]{6}[- ][0-9A-F]$/i.test(v) || + /^\d{19}$/.test(v) || + /^\d{5}[- ]\d{5}[- ]\d{4}[- ]\d{4}[- ]\d$/.test(v)) { + var cd = v.charAt(v.length - 1).toUpperCase(); + v = v.replace(/[- ]/g, ''); + if (v.match(/^\d*$/i)) { + return { valid: luhn(v) }; + } + v = v.slice(0, -1); + var checkDigit = ''; + var i = void 0; + for (i = 1; i <= 13; i += 2) { + checkDigit += (parseInt(v.charAt(i), 16) * 2).toString(16); + } + var sum = 0; + for (i = 0; i < checkDigit.length; i++) { + sum += parseInt(checkDigit.charAt(i), 16); + } + return { + valid: sum % 10 === 0 + ? cd === '0' + : // Subtract it from the next highest 10s number (64 goes to 70) and subtract the sum + // Double it and turn it into a hex char + cd === ((Math.floor((sum + 10) / 10) * 10 - sum) * 2).toString(16).toUpperCase(), + }; + } + if (/^[0-9A-F]{14}$/i.test(v) || + /^[0-9A-F]{2}[- ][0-9A-F]{6}[- ][0-9A-F]{6}$/i.test(v) || + /^\d{18}$/.test(v) || + /^\d{5}[- ]\d{5}[- ]\d{4}[- ]\d{4}$/.test(v)) { + return { valid: true }; + } + return { valid: false }; + }, + }; + } + + return meid; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js new file mode 100644 index 0000000..506cf6e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-meid + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.meid=e(t.FormValidation))}(this,(function(t){"use strict";var e=t.algorithms.luhn;return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var i=t.value;if(/^[0-9A-F]{15}$/i.test(i)||/^[0-9A-F]{2}[- ][0-9A-F]{6}[- ][0-9A-F]{6}[- ][0-9A-F]$/i.test(i)||/^\d{19}$/.test(i)||/^\d{5}[- ]\d{5}[- ]\d{4}[- ]\d{4}[- ]\d$/.test(i)){var a=i.charAt(i.length-1).toUpperCase();if((i=i.replace(/[- ]/g,"")).match(/^\d*$/i))return{valid:e(i)};i=i.slice(0,-1);var r="",o=void 0;for(o=1;o<=13;o+=2)r+=(2*parseInt(i.charAt(o),16)).toString(16);var d=0;for(o=0;o + */ + function notEmpty() { + return { + validate: function (input) { + var trim = !!input.options && !!input.options.trim; + var value = input.value; + return { + valid: (!trim && value !== '') || (trim && value !== '' && value.trim() !== ''), + }; + }, + }; + } + + return notEmpty; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js new file mode 100644 index 0000000..79d9042 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-not-empty + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.notEmpty=i())}(this,(function(){"use strict";return function(){return{validate:function(o){var i=!!o.options&&!!o.options.trim,t=o.value;return{valid:!i&&""!==t||i&&""!==t&&""!==t.trim()}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js new file mode 100644 index 0000000..9fac922 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js @@ -0,0 +1,54 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.numeric = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function numeric() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + decimalSeparator: '.', + thousandsSeparator: '', + }, removeUndefined(input.options)); + var v = "".concat(input.value); + // Support preceding zero numbers such as .5, -.5 + if (v.substr(0, 1) === opts.decimalSeparator) { + v = "0".concat(opts.decimalSeparator).concat(v.substr(1)); + } + else if (v.substr(0, 2) === "-".concat(opts.decimalSeparator)) { + v = "-0".concat(opts.decimalSeparator).concat(v.substr(2)); + } + var decimalSeparator = opts.decimalSeparator === '.' ? '\\.' : opts.decimalSeparator; + var thousandsSeparator = opts.thousandsSeparator === '.' ? '\\.' : opts.thousandsSeparator; + var testRegexp = new RegExp("^-?[0-9]{1,3}(".concat(thousandsSeparator, "[0-9]{3})*(").concat(decimalSeparator, "[0-9]+)?$")); + var thousandsReplacer = new RegExp(thousandsSeparator, 'g'); + if (!testRegexp.test(v)) { + return { valid: false }; + } + // Replace thousands separator with blank + if (thousandsSeparator) { + v = v.replace(thousandsReplacer, ''); + } + // Replace decimal separator with a dot + if (decimalSeparator) { + v = v.replace(decimalSeparator, '.'); + } + var n = parseFloat(v); + return { valid: !isNaN(n) && isFinite(n) }; + }, + }; + } + + return numeric; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js new file mode 100644 index 0000000..5ad968e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-numeric + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.numeric=e(a.FormValidation))}(this,(function(a){"use strict";var e=a.utils.removeUndefined;return function(){return{validate:function(a){if(""===a.value)return{valid:!0};var t=Object.assign({},{decimalSeparator:".",thousandsSeparator:""},e(a.options)),o="".concat(a.value);o.substr(0,1)===t.decimalSeparator?o="0".concat(t.decimalSeparator).concat(o.substr(1)):o.substr(0,2)==="-".concat(t.decimalSeparator)&&(o="-0".concat(t.decimalSeparator).concat(o.substr(2)));var r="."===t.decimalSeparator?"\\.":t.decimalSeparator,i="."===t.thousandsSeparator?"\\.":t.thousandsSeparator,n=new RegExp("^-?[0-9]{1,3}(".concat(i,"[0-9]{3})*(").concat(r,"[0-9]+)?$")),d=new RegExp(i,"g");if(!n.test(o))return{valid:!1};i&&(o=o.replace(d,"")),r&&(o=o.replace(r,"."));var c=parseFloat(o);return{valid:!isNaN(c)&&isFinite(c)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js new file mode 100644 index 0000000..166096a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js @@ -0,0 +1,188 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.phone = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function phone() { + // The supported countries + var COUNTRY_CODES = [ + 'AE', + 'BG', + 'BR', + 'CN', + 'CZ', + 'DE', + 'DK', + 'ES', + 'FR', + 'GB', + 'IN', + 'MA', + 'NL', + 'PK', + 'RO', + 'RU', + 'SK', + 'TH', + 'US', + 'VE', + ]; + return { + /** + * Return true if the input value contains a valid phone number for the country + * selected in the options + */ + validate: function (input) { + if (input.value === '') { + return { + valid: true, + }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var v = input.value.trim(); + var country = v.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (!country || COUNTRY_CODES.indexOf(country.toUpperCase()) === -1) { + return { + valid: true, + }; + } + var isValid = true; + switch (country.toUpperCase()) { + case 'AE': + // http://regexr.com/39tak + isValid = + /^(((\+|00)?971[\s.-]?(\(0\)[\s.-]?)?|0)(\(5(0|2|5|6)\)|5(0|2|5|6)|2|3|4|6|7|9)|60)([\s.-]?[0-9]){7}$/.test(v); + break; + case 'BG': + // https://regex101.com/r/yE6vN4/1 + // See http://en.wikipedia.org/wiki/Telephone_numbers_in_Bulgaria + isValid = + /^(0|359|00)(((700|900)[0-9]{5}|((800)[0-9]{5}|(800)[0-9]{4}))|(87|88|89)([0-9]{7})|((2[0-9]{7})|(([3-9][0-9])(([0-9]{6})|([0-9]{5})))))$/.test(v.replace(/\+|\s|-|\/|\(|\)/gi, '')); + break; + case 'BR': + // http://regexr.com/399m1 + isValid = + /^(([\d]{4}[-.\s]{1}[\d]{2,3}[-.\s]{1}[\d]{2}[-.\s]{1}[\d]{2})|([\d]{4}[-.\s]{1}[\d]{3}[-.\s]{1}[\d]{4})|((\(?\+?[0-9]{2}\)?\s?)?(\(?\d{2}\)?\s?)?\d{4,5}[-.\s]?\d{4}))$/.test(v); + break; + case 'CN': + // http://regexr.com/39dq4 + isValid = + /^((00|\+)?(86(?:-| )))?((\d{11})|(\d{3}[- ]{1}\d{4}[- ]{1}\d{4})|((\d{2,4}[- ]){1}(\d{7,8}|(\d{3,4}[- ]{1}\d{4}))([- ]{1}\d{1,4})?))$/.test(v); + break; + case 'CZ': + // http://regexr.com/39hhl + isValid = /^(((00)([- ]?)|\+)(420)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(v); + break; + case 'DE': + // http://regexr.com/39pkg + isValid = + /^(((((((00|\+)49[ \-/]?)|0)[1-9][0-9]{1,4})[ \-/]?)|((((00|\+)49\()|\(0)[1-9][0-9]{1,4}\)[ \-/]?))[0-9]{1,7}([ \-/]?[0-9]{1,5})?)$/.test(v); + break; + case 'DK': + // Mathing DK phone numbers with country code in 1 of 3 formats and an + // 8 digit phone number not starting with a 0 or 1. Can have 1 space + // between each character except inside the country code. + // http://regex101.com/r/sS8fO4/1 + isValid = /^(\+45|0045|\(45\))?\s?[2-9](\s?\d){7}$/.test(v); + break; + case 'ES': + // http://regex101.com/r/rB9mA9/1 + // Telephone numbers in Spain go like this: + // 9: Landline phones and special prefixes. + // 6, 7: Mobile phones. + // 5: VoIP lines. + // 8: Premium-rate services. + // There are also special 5-digit and 3-digit numbers, but + // maybe it would be overkill to include them all. + isValid = /^(?:(?:(?:\+|00)34\D?))?(?:5|6|7|8|9)(?:\d\D?){8}$/.test(v); + break; + case 'FR': + // http://regexr.com/39a2p + isValid = /^(?:(?:(?:\+|00)33[ ]?(?:\(0\)[ ]?)?)|0){1}[1-9]{1}([ .-]?)(?:\d{2}\1?){3}\d{2}$/.test(v); + break; + case 'GB': + // http://aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers#Match_GB_telephone_number_in_any_format + // http://regexr.com/38uhv + isValid = + /^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|#)\d+)?)$/.test(v); + break; + case 'IN': + // http://stackoverflow.com/questions/18351553/regular-expression-validation-for-indian-phone-number-and-mobile-number + // http://regex101.com/r/qL6eZ5/1 + // May begin with +91. Supports mobile and land line numbers + isValid = /((\+?)((0[ -]+)*|(91 )*)(\d{12}|\d{10}))|\d{5}([- ]*)\d{6}/.test(v); + break; + case 'MA': + // http://en.wikipedia.org/wiki/Telephone_numbers_in_Morocco + // http://regexr.com/399n8 + isValid = + /^(?:(?:(?:\+|00)212[\s]?(?:[\s]?\(0\)[\s]?)?)|0){1}(?:5[\s.-]?[2-3]|6[\s.-]?[13-9]){1}[0-9]{1}(?:[\s.-]?\d{2}){3}$/.test(v); + break; + case 'NL': + // http://en.wikipedia.org/wiki/Telephone_numbers_in_the_Netherlands + // http://regexr.com/3aevr + isValid = + /^((\+|00(\s|\s?-\s?)?)31(\s|\s?-\s?)?(\(0\)[-\s]?)?|0)[1-9]((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]$/gm.test(v); + break; + case 'PK': + // http://regex101.com/r/yH8aV9/2 + isValid = /^0?3[0-9]{2}[0-9]{7}$/.test(v); + break; + case 'RO': + // All mobile network and land line + // http://regexr.com/39fv1 + isValid = + /^(\+4|)?(07[0-8]{1}[0-9]{1}|02[0-9]{2}|03[0-9]{2}){1}?(\s|\.|-)?([0-9]{3}(\s|\.|-|)){2}$/g.test(v); + break; + case 'RU': + // http://regex101.com/r/gW7yT5/5 + isValid = /^((8|\+7|007)[-./ ]?)?([(/.]?\d{3}[)/.]?[-./ ]?)?[\d\-./ ]{7,10}$/g.test(v); + break; + case 'SK': + // http://regexr.com/3a95f + isValid = /^(((00)([- ]?)|\+)(421)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(v); + break; + case 'TH': + // http://regex101.com/r/vM5mZ4/2 + isValid = /^0\(?([6|8-9]{2})*-([0-9]{3})*-([0-9]{4})$/.test(v); + break; + case 'VE': + // http://regex101.com/r/eM2yY0/6 + isValid = + /^0(?:2(?:12|4[0-9]|5[1-9]|6[0-9]|7[0-8]|8[1-35-8]|9[1-5]|3[45789])|4(?:1[246]|2[46]))\d{7}$/.test(v); + break; + case 'US': + default: + // Make sure US phone numbers have 10 digits + // May start with 1, +1, or 1-; should discard + // Area code may be delimited with (), & sections may be delimited with . or - + // http://regexr.com/38mqi + isValid = /^(?:(1-?)|(\+1 ?))?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$/.test(v); + break; + } + return { + message: format(input.l10n && input.l10n.phone ? opts.message || input.l10n.phone.country : opts.message, input.l10n && input.l10n.phone && input.l10n.phone.countries + ? input.l10n.phone.countries[country] + : country), + valid: isValid, + }; + }, + }; + } + + return phone; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js new file mode 100644 index 0000000..7092692 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-phone + * @version 2.4.0 + */ + +!function(s,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((s="undefined"!=typeof globalThis?globalThis:s||self).FormValidation=s.FormValidation||{},s.FormValidation.validators=s.FormValidation.validators||{},s.FormValidation.validators.phone=e(s.FormValidation))}(this,(function(s){"use strict";var e=s.utils.format,t=s.utils.removeUndefined;return function(){var s=["AE","BG","BR","CN","CZ","DE","DK","ES","FR","GB","IN","MA","NL","PK","RO","RU","SK","TH","US","VE"];return{validate:function(a){if(""===a.value)return{valid:!0};var d=Object.assign({},{message:""},t(a.options)),r=a.value.trim(),o=r.substr(0,2);if(!(o="function"==typeof d.country?d.country.call(this):d.country)||-1===s.indexOf(o.toUpperCase()))return{valid:!0};var n=!0;switch(o.toUpperCase()){case"AE":n=/^(((\+|00)?971[\s.-]?(\(0\)[\s.-]?)?|0)(\(5(0|2|5|6)\)|5(0|2|5|6)|2|3|4|6|7|9)|60)([\s.-]?[0-9]){7}$/.test(r);break;case"BG":n=/^(0|359|00)(((700|900)[0-9]{5}|((800)[0-9]{5}|(800)[0-9]{4}))|(87|88|89)([0-9]{7})|((2[0-9]{7})|(([3-9][0-9])(([0-9]{6})|([0-9]{5})))))$/.test(r.replace(/\+|\s|-|\/|\(|\)/gi,""));break;case"BR":n=/^(([\d]{4}[-.\s]{1}[\d]{2,3}[-.\s]{1}[\d]{2}[-.\s]{1}[\d]{2})|([\d]{4}[-.\s]{1}[\d]{3}[-.\s]{1}[\d]{4})|((\(?\+?[0-9]{2}\)?\s?)?(\(?\d{2}\)?\s?)?\d{4,5}[-.\s]?\d{4}))$/.test(r);break;case"CN":n=/^((00|\+)?(86(?:-| )))?((\d{11})|(\d{3}[- ]{1}\d{4}[- ]{1}\d{4})|((\d{2,4}[- ]){1}(\d{7,8}|(\d{3,4}[- ]{1}\d{4}))([- ]{1}\d{1,4})?))$/.test(r);break;case"CZ":n=/^(((00)([- ]?)|\+)(420)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(r);break;case"DE":n=/^(((((((00|\+)49[ \-/]?)|0)[1-9][0-9]{1,4})[ \-/]?)|((((00|\+)49\()|\(0)[1-9][0-9]{1,4}\)[ \-/]?))[0-9]{1,7}([ \-/]?[0-9]{1,5})?)$/.test(r);break;case"DK":n=/^(\+45|0045|\(45\))?\s?[2-9](\s?\d){7}$/.test(r);break;case"ES":n=/^(?:(?:(?:\+|00)34\D?))?(?:5|6|7|8|9)(?:\d\D?){8}$/.test(r);break;case"FR":n=/^(?:(?:(?:\+|00)33[ ]?(?:\(0\)[ ]?)?)|0){1}[1-9]{1}([ .-]?)(?:\d{2}\1?){3}\d{2}$/.test(r);break;case"GB":n=/^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|#)\d+)?)$/.test(r);break;case"IN":n=/((\+?)((0[ -]+)*|(91 )*)(\d{12}|\d{10}))|\d{5}([- ]*)\d{6}/.test(r);break;case"MA":n=/^(?:(?:(?:\+|00)212[\s]?(?:[\s]?\(0\)[\s]?)?)|0){1}(?:5[\s.-]?[2-3]|6[\s.-]?[13-9]){1}[0-9]{1}(?:[\s.-]?\d{2}){3}$/.test(r);break;case"NL":n=/^((\+|00(\s|\s?-\s?)?)31(\s|\s?-\s?)?(\(0\)[-\s]?)?|0)[1-9]((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]$/gm.test(r);break;case"PK":n=/^0?3[0-9]{2}[0-9]{7}$/.test(r);break;case"RO":n=/^(\+4|)?(07[0-8]{1}[0-9]{1}|02[0-9]{2}|03[0-9]{2}){1}?(\s|\.|-)?([0-9]{3}(\s|\.|-|)){2}$/g.test(r);break;case"RU":n=/^((8|\+7|007)[-./ ]?)?([(/.]?\d{3}[)/.]?[-./ ]?)?[\d\-./ ]{7,10}$/g.test(r);break;case"SK":n=/^(((00)([- ]?)|\+)(421)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(r);break;case"TH":n=/^0\(?([6|8-9]{2})*-([0-9]{3})*-([0-9]{4})$/.test(r);break;case"VE":n=/^0(?:2(?:12|4[0-9]|5[1-9]|6[0-9]|7[0-8]|8[1-35-8]|9[1-5]|3[45789])|4(?:1[246]|2[46]))\d{7}$/.test(r);break;default:n=/^(?:(1-?)|(\+1 ?))?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$/.test(r)}return{message:e(a.l10n&&a.l10n.phone?d.message||a.l10n.phone.country:d.message,a.l10n&&a.l10n.phone&&a.l10n.phone.countries?a.l10n.phone.countries[o]:o),valid:n}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js new file mode 100644 index 0000000..92eb568 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js @@ -0,0 +1,51 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.promise = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var call = core.utils.call; + function promise() { + return { + /** + * The following example demonstrates how to use a promise validator to requires both width and height + * of an image to be less than 300 px + * ``` + * const p = new Promise((resolve, reject) => { + * const img = new Image() + * img.addEventListener('load', function() { + * const w = this.width + * const h = this.height + * resolve({ + * valid: w <= 300 && h <= 300 + * meta: { + * source: img.src // So, you can reuse it later if you want + * } + * }) + * }) + * img.addEventListener('error', function() { + * reject({ + * valid: false, + * message: Please choose an image + * }) + * }) + * }) + * ``` + * + * @param input + * @return {Promise} + */ + validate: function (input) { + return call(input.options.promise, [input]); + }, + }; + } + + return promise; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js new file mode 100644 index 0000000..ce2e4ca --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-promise + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.promise=i(o.FormValidation))}(this,(function(o){"use strict";var i=o.utils.call;return function(){return{validate:function(o){return i(o.options.promise,[o])}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js new file mode 100644 index 0000000..f3a2985 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js @@ -0,0 +1,36 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.regexp = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function regexp() { + return { + /** + * Check if the element value matches given regular expression + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var reg = input.options.regexp; + if (reg instanceof RegExp) { + return { valid: reg.test(input.value) }; + } + else { + var pattern = reg.toString(); + var exp = input.options.flags ? new RegExp(pattern, input.options.flags) : new RegExp(pattern); + return { valid: exp.test(input.value) }; + } + }, + }; + } + + return regexp; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js new file mode 100644 index 0000000..958390a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-regexp + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.regexp=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var t=e.options.regexp;if(t instanceof RegExp)return{valid:t.test(e.value)};var i=t.toString();return{valid:(e.options.flags?new RegExp(i,e.options.flags):new RegExp(i)).test(e.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js new file mode 100644 index 0000000..b462584 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js @@ -0,0 +1,67 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.remote = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + function remote() { + var DEFAULT_OPTIONS = { + crossDomain: false, + data: {}, + headers: {}, + method: 'GET', + validKey: 'valid', + }; + return { + validate: function (input) { + if (input.value === '') { + return Promise.resolve({ + valid: true, + }); + } + var opts = Object.assign({}, DEFAULT_OPTIONS, removeUndefined(input.options)); + var data = opts.data; + // Support dynamic data + if ('function' === typeof opts.data) { + data = opts.data.call(this, input); + } + // Parse string data from HTML5 attribute + if ('string' === typeof data) { + data = JSON.parse(data); + } + data[opts.name || input.field] = input.value; + // Support dynamic url + var url = 'function' === typeof opts.url + ? opts.url.call(this, input) + : opts.url; + return fetch(url, { + crossDomain: opts.crossDomain, + headers: opts.headers, + method: opts.method, + params: data, + }) + .then(function (response) { + return Promise.resolve({ + message: response['message'], + meta: response, + valid: "".concat(response[opts.validKey]) === 'true', + }); + }) + .catch(function (_reason) { + return Promise.reject({ + valid: false, + }); + }); + }, + }; + } + + return remote; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js new file mode 100644 index 0000000..4b12e01 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-remote + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.remote=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.fetch,o=e.utils.removeUndefined;return function(){var e={crossDomain:!1,data:{},headers:{},method:"GET",validKey:"valid"};return{validate:function(t){if(""===t.value)return Promise.resolve({valid:!0});var i=Object.assign({},e,o(t.options)),r=i.data;"function"==typeof i.data&&(r=i.data.call(this,t)),"string"==typeof r&&(r=JSON.parse(r)),r[i.name||t.field]=t.value;var n="function"==typeof i.url?i.url.call(this,t):i.url;return a(n,{crossDomain:i.crossDomain,headers:i.headers,method:i.method,params:r}).then((function(e){return Promise.resolve({message:e.message,meta:e,valid:"true"==="".concat(e[i.validKey])})})).catch((function(e){return Promise.reject({valid:!1})}))}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js new file mode 100644 index 0000000..e66683e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js @@ -0,0 +1,39 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.rtn = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function rtn() { + return { + /** + * Validate a RTN (Routing transit number) + * @see http://en.wikipedia.org/wiki/Routing_transit_number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + if (!/^\d{9}$/.test(input.value)) { + return { valid: false }; + } + var sum = 0; + for (var i = 0; i < input.value.length; i += 3) { + sum += + parseInt(input.value.charAt(i), 10) * 3 + + parseInt(input.value.charAt(i + 1), 10) * 7 + + parseInt(input.value.charAt(i + 2), 10); + } + return { valid: sum !== 0 && sum % 10 === 0 }; + }, + }; + } + + return rtn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js new file mode 100644 index 0000000..08c658a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-rtn + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.rtn=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};if(!/^\d{9}$/.test(t.value))return{valid:!1};for(var e=0,a=0;a + */ + function sedol() { + return { + /** + * Validate a SEDOL (Stock Exchange Daily Official List) + * @see http://en.wikipedia.org/wiki/SEDOL + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value.toUpperCase(); + if (!/^[0-9A-Z]{7}$/.test(v)) { + return { valid: false }; + } + var weight = [1, 3, 1, 7, 3, 9, 1]; + var length = v.length; + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += weight[i] * parseInt(v.charAt(i), 36); + } + sum = (10 - (sum % 10)) % 10; + return { valid: "".concat(sum) === v.charAt(length - 1) }; + }, + }; + } + + return sedol; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js new file mode 100644 index 0000000..a091f21 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-sedol + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.sedol=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var e=t.value.toUpperCase();if(!/^[0-9A-Z]{7}$/.test(e))return{valid:!1};for(var a=[1,3,1,7,3,9,1],i=e.length,o=0,n=0;n + */ + var luhn = core.algorithms.luhn; + function siren() { + return { + /** + * Check if a string is a siren number + */ + validate: function (input) { + return { + valid: input.value === '' || (/^\d{9}$/.test(input.value) && luhn(input.value)), + }; + }, + }; + } + + return siren; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js new file mode 100644 index 0000000..f33155d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-siren + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.siren=o(i.FormValidation))}(this,(function(i){"use strict";var o=i.algorithms.luhn;return function(){return{validate:function(i){return{valid:""===i.value||/^\d{9}$/.test(i.value)&&o(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js new file mode 100644 index 0000000..a53b9c1 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js @@ -0,0 +1,41 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.siret = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function siret() { + return { + /** + * Check if a string is a siret number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var length = input.value.length; + var sum = 0; + var tmp; + for (var i = 0; i < length; i++) { + tmp = parseInt(input.value.charAt(i), 10); + if (i % 2 === 0) { + tmp = tmp * 2; + if (tmp > 9) { + tmp -= 9; + } + } + sum += tmp; + } + return { valid: sum % 10 === 0 }; + }, + }; + } + + return siret; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js new file mode 100644 index 0000000..c94ec84 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-siret + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.siret=i())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};for(var i,t=e.value.length,o=0,a=0;a9&&(i-=9),o+=i;return{valid:o%10==0}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js new file mode 100644 index 0000000..f3fa0cd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js @@ -0,0 +1,66 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.step = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format; + function step() { + var round = function (input, precision) { + var m = Math.pow(10, precision); + var x = input * m; + var sign; + switch (true) { + case x === 0: + sign = 0; + break; + case x > 0: + sign = 1; + break; + case x < 0: + sign = -1; + break; + } + var isHalf = x % 1 === 0.5 * sign; + return isHalf ? (Math.floor(x) + (sign > 0 ? 1 : 0)) / m : Math.round(x) / m; + }; + var floatMod = function (x, y) { + if (y === 0.0) { + return 1.0; + } + var dotX = "".concat(x).split('.'); + var dotY = "".concat(y).split('.'); + var precision = (dotX.length === 1 ? 0 : dotX[1].length) + (dotY.length === 1 ? 0 : dotY[1].length); + return round(x - y * Math.floor(x / y), precision); + }; + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = parseFloat(input.value); + if (isNaN(v) || !isFinite(v)) { + return { valid: false }; + } + var opts = Object.assign({}, { + baseValue: 0, + message: '', + step: 1, + }, input.options); + var mod = floatMod(v - opts.baseValue, opts.step); + return { + message: format(input.l10n ? opts.message || input.l10n.step.default : opts.message, "".concat(opts.step)), + valid: mod === 0.0 || mod === opts.step, + }; + }, + }; + } + + return step; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js new file mode 100644 index 0000000..2efa3fe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-step + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.step=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format;return function(){var e=function(e,a){if(0===a)return 1;var t="".concat(e).split("."),i="".concat(a).split("."),o=(1===t.length?0:t[1].length)+(1===i.length?0:i[1].length);return function(e,a){var t,i=Math.pow(10,a),o=e*i;switch(!0){case 0===o:t=0;break;case o>0:t=1;break;case o<0:t=-1}return o%1==.5*t?(Math.floor(o)+(t>0?1:0))/i:Math.round(o)/i}(e-a*Math.floor(e/a),o)};return{validate:function(t){if(""===t.value)return{valid:!0};var i=parseFloat(t.value);if(isNaN(i)||!isFinite(i))return{valid:!1};var o=Object.assign({},{baseValue:0,message:"",step:1},t.options),n=e(i-o.baseValue,o.step);return{message:a(t.l10n?o.message||t.l10n.step.default:o.message,"".concat(o.step)),valid:0===n||n===o.step}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js new file mode 100644 index 0000000..e7cc68e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js @@ -0,0 +1,41 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.stringCase = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function stringCase() { + return { + /** + * Check if a string is a lower or upper case one + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { case: 'lower' }, removeUndefined(input.options)); + var caseOpt = (opts.case || 'lower').toLowerCase(); + return { + message: opts.message || + (input.l10n + ? 'upper' === caseOpt + ? input.l10n.stringCase.upper + : input.l10n.stringCase.default + : opts.message), + valid: 'upper' === caseOpt + ? input.value === input.value.toUpperCase() + : input.value === input.value.toLowerCase(), + }; + }, + }; + } + + return stringCase; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js new file mode 100644 index 0000000..c1af24b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-string-case + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.stringCase=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.removeUndefined;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var o=Object.assign({},{case:"lower"},a(e.options)),i=(o.case||"lower").toLowerCase();return{message:o.message||(e.l10n?"upper"===i?e.l10n.stringCase.upper:e.l10n.stringCase.default:o.message),valid:"upper"===i?e.value===e.value.toUpperCase():e.value===e.value.toLowerCase()}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js new file mode 100644 index 0000000..47a10ac --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js @@ -0,0 +1,78 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.stringLength = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + // Credit to http://stackoverflow.com/a/23329386 (@lovasoa) for UTF-8 byte length code + var utf8Length = function (str) { + var s = str.length; + for (var i = str.length - 1; i >= 0; i--) { + var code = str.charCodeAt(i); + if (code > 0x7f && code <= 0x7ff) { + s++; + } + else if (code > 0x7ff && code <= 0xffff) { + s += 2; + } + if (code >= 0xdc00 && code <= 0xdfff) { + i--; + } + } + return s; + }; + function stringLength() { + return { + /** + * Check if the length of element value is less or more than given number + */ + validate: function (input) { + var opts = Object.assign({}, { + message: '', + trim: false, + utf8Bytes: false, + }, removeUndefined(input.options)); + var v = opts.trim === true || "".concat(opts.trim) === 'true' ? input.value.trim() : input.value; + if (v === '') { + return { valid: true }; + } + // TODO: `min`, `max` can be dynamic options + var min = opts.min ? "".concat(opts.min) : ''; + var max = opts.max ? "".concat(opts.max) : ''; + var length = opts.utf8Bytes ? utf8Length(v) : v.length; + var isValid = true; + var msg = input.l10n ? opts.message || input.l10n.stringLength.default : opts.message; + if ((min && length < parseInt(min, 10)) || (max && length > parseInt(max, 10))) { + isValid = false; + } + switch (true) { + case !!min && !!max: + msg = format(input.l10n ? opts.message || input.l10n.stringLength.between : opts.message, [ + min, + max, + ]); + break; + case !!min: + msg = format(input.l10n ? opts.message || input.l10n.stringLength.more : opts.message, "".concat(parseInt(min, 10))); + break; + case !!max: + msg = format(input.l10n ? opts.message || input.l10n.stringLength.less : opts.message, "".concat(parseInt(max, 10))); + break; + } + return { + message: msg, + valid: isValid, + }; + }, + }; + } + + return stringLength; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js new file mode 100644 index 0000000..e074e8d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-string-length + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.stringLength=t(e.FormValidation))}(this,(function(e){"use strict";var t=e.utils.format,n=e.utils.removeUndefined;return function(){return{validate:function(e){var a=Object.assign({},{message:"",trim:!1,utf8Bytes:!1},n(e.options)),i=!0===a.trim||"true"==="".concat(a.trim)?e.value.trim():e.value;if(""===i)return{valid:!0};var r=a.min?"".concat(a.min):"",s=a.max?"".concat(a.max):"",o=a.utf8Bytes?function(e){for(var t=e.length,n=e.length-1;n>=0;n--){var a=e.charCodeAt(n);a>127&&a<=2047?t++:a>2047&&a<=65535&&(t+=2),a>=56320&&a<=57343&&n--}return t}(i):i.length,l=!0,m=e.l10n?a.message||e.l10n.stringLength.default:a.message;switch((r&&oparseInt(s,10))&&(l=!1),!0){case!!r&&!!s:m=t(e.l10n?a.message||e.l10n.stringLength.between:a.message,[r,s]);break;case!!r:m=t(e.l10n?a.message||e.l10n.stringLength.more:a.message,"".concat(parseInt(r,10)));break;case!!s:m=t(e.l10n?a.message||e.l10n.stringLength.less:a.message,"".concat(parseInt(s,10)))}return{message:m,valid:l}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js new file mode 100644 index 0000000..4142740 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js @@ -0,0 +1,110 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.uri = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function uri() { + var DEFAULT_OPTIONS = { + allowEmptyProtocol: false, + allowLocal: false, + protocol: 'http, https, ftp', + }; + return { + /** + * Return true if the input value is a valid URL + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, DEFAULT_OPTIONS, removeUndefined(input.options)); + // Credit to https://gist.github.com/dperini/729294 + // + // Regular Expression for URL validation + // + // Author: Diego Perini + // Updated: 2010/12/05 + // + // the regular expression composed & commented + // could be easily tweaked for RFC compliance, + // it was expressly modified to fit & satisfy + // these test for an URL shortener: + // + // http://mathiasbynens.be/demo/url-regex + // + // Notes on possible differences from a standard/generic validation: + // + // - utf-8 char class take in consideration the full Unicode range + // - TLDs are mandatory unless `allowLocal` is true + // - protocols have been restricted to ftp, http and https only as requested + // + // Changes: + // + // - IP address dotted notation validation, range: 1.0.0.0 - 223.255.255.255 + // first and last IP address of each class is considered invalid + // (since they are broadcast/network addresses) + // + // - Added exclusion of private, reserved and/or local networks ranges + // unless `allowLocal` is true + // + // - Added possibility of choosing a custom protocol + // + // - Add option to validate without protocol + // + var allowLocal = opts.allowLocal === true || "".concat(opts.allowLocal) === 'true'; + var allowEmptyProtocol = opts.allowEmptyProtocol === true || "".concat(opts.allowEmptyProtocol) === 'true'; + var protocol = opts.protocol.split(',').join('|').replace(/\s/g, ''); + var urlExp = new RegExp('^' + + // protocol identifier + '(?:(?:' + + protocol + + ')://)' + + // allow empty protocol + (allowEmptyProtocol ? '?' : '') + + // user:pass authentication + '(?:\\S+(?::\\S*)?@)?' + + '(?:' + + // IP address exclusion + // private & local networks + (allowLocal + ? '' + : '(?!(?:10|127)(?:\\.\\d{1,3}){3})' + + '(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})' + + '(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})') + + // IP address dotted notation octets + // excludes loopback network 0.0.0.0 + // excludes reserved space >= 224.0.0.0 + // excludes network & broadcast addresses + // (first & last IP address of each class) + '(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])' + + '(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}' + + '(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))' + + '|' + + // host name + '(?:(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9]+)' + + // domain name + '(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9])*' + + // TLD identifier + '(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))' + + // Allow intranet sites (no TLD) if `allowLocal` is true + (allowLocal ? '?' : '') + + ')' + + // port number + '(?::\\d{2,5})?' + + // resource path + '(?:/[^\\s]*)?$', 'i'); + return { valid: urlExp.test(input.value) }; + }, + }; + } + + return uri; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js new file mode 100644 index 0000000..affcb92 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-uri + * @version 2.4.0 + */ + +!function(o,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.uri=a(o.FormValidation))}(this,(function(o){"use strict";var a=o.utils.removeUndefined;return function(){var o={allowEmptyProtocol:!1,allowLocal:!1,protocol:"http, https, ftp"};return{validate:function(t){if(""===t.value)return{valid:!0};var i=Object.assign({},o,a(t.options)),l=!0===i.allowLocal||"true"==="".concat(i.allowLocal),e=!0===i.allowEmptyProtocol||"true"==="".concat(i.allowEmptyProtocol),d=i.protocol.split(",").join("|").replace(/\s/g,"");return{valid:new RegExp("^(?:(?:"+d+")://)"+(e?"?":"")+"(?:\\S+(?::\\S*)?@)?(?:"+(l?"":"(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})")+"(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9])*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))"+(l?"?":"")+")(?::\\d{2,5})?(?:/[^\\s]*)?$","i").test(t.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js new file mode 100644 index 0000000..e0a0bfc --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js @@ -0,0 +1,46 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.uuid = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function uuid() { + return { + /** + * Return true if and only if the input value is a valid UUID string + * @see http://en.wikipedia.org/wiki/Universally_unique_identifier + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + // See the format at http://en.wikipedia.org/wiki/Universally_unique_identifier#Variants_and_versions + var patterns = { + 3: /^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i, + 4: /^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, + 5: /^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, + all: /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i, + }; + var version = opts.version ? "".concat(opts.version) : 'all'; + return { + message: opts.version + ? format(input.l10n ? opts.message || input.l10n.uuid.version : opts.message, opts.version) + : input.l10n + ? input.l10n.uuid.default + : opts.message, + valid: null === patterns[version] ? true : patterns[version].test(input.value), + }; + }, + }; + } + + return uuid; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js new file mode 100644 index 0000000..e64c159 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-uuid + * @version 2.4.0 + */ + +!function(i,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.uuid=e(i.FormValidation))}(this,(function(i){"use strict";var e=i.utils.format,o=i.utils.removeUndefined;return function(){return{validate:function(i){if(""===i.value)return{valid:!0};var a=Object.assign({},{message:""},o(i.options)),n={3:/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,4:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,5:/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i},t=a.version?"".concat(a.version):"all";return{message:a.version?e(i.l10n?a.message||i.l10n.uuid.version:a.message,a.version):i.l10n?i.l10n.uuid.default:a.message,valid:null===n[t]||n[t].test(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js new file mode 100644 index 0000000..25b8fdd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js @@ -0,0 +1,1908 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.vat = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Argentinian VAT number + * + * @see https://es.wikipedia.org/wiki/Clave_%C3%9Anica_de_Identificaci%C3%B3n_Tributaria + * @returns {ValidateResult} + */ + function arVat(value) { + // Replace `-` with empty + var v = value.replace('-', ''); + if (/^AR[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 11) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Austrian VAT number + * + * @returns {ValidateResult} + */ + function atVat(value) { + var v = value; + if (/^ATU[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^U[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.substr(1); + var weight = [1, 2, 1, 2, 1, 2, 1]; + var sum = 0; + var temp = 0; + for (var i = 0; i < 7; i++) { + temp = parseInt(v.charAt(i), 10) * weight[i]; + if (temp > 9) { + temp = Math.floor(temp / 10) + (temp % 10); + } + sum += temp; + } + sum = 10 - ((sum + 4) % 10); + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(7, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Belgian VAT number + * + * @returns {ValidateResult} + */ + function beVat(value) { + var v = value; + if (/^BE[0]?[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0]?[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (v.length === 9) { + v = "0".concat(v); + } + if (v.substr(1, 1) === '0') { + return { + meta: {}, + valid: false, + }; + } + var sum = parseInt(v.substr(0, 8), 10) + parseInt(v.substr(8, 2), 10); + return { + meta: {}, + valid: sum % 97 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$2 = core.utils.isValidDate; + /** + * Validate Bulgarian VAT number + * + * @returns {ValidateResult} + */ + function bgVat(value) { + var v = value; + if (/^BG[0-9]{9,10}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9,10}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var i = 0; + // Legal entities + if (v.length === 9) { + for (i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * (i + 1); + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + for (i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * (i + 3); + } + sum = sum % 11; + } + sum = sum % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(8), + }; + } + else { + // Physical persons, foreigners and others + // Validate Bulgarian national identification numbers + var isEgn = function (input) { + // Check the birth date + var year = parseInt(input.substr(0, 2), 10) + 1900; + var month = parseInt(input.substr(2, 2), 10); + var day = parseInt(input.substr(4, 2), 10); + if (month > 40) { + year += 100; + month -= 40; + } + else if (month > 20) { + year -= 100; + month -= 20; + } + if (!isValidDate$2(year, month, day)) { + return false; + } + var weight = [2, 4, 8, 5, 10, 9, 7, 3, 6]; + var s = 0; + for (var j = 0; j < 9; j++) { + s += parseInt(input.charAt(j), 10) * weight[j]; + } + s = (s % 11) % 10; + return "".concat(s) === input.substr(9, 1); + }; + // Validate Bulgarian personal number of a foreigner + var isPnf = function (input) { + var weight = [21, 19, 17, 13, 11, 9, 7, 3, 1]; + var s = 0; + for (var j = 0; j < 9; j++) { + s += parseInt(input.charAt(j), 10) * weight[j]; + } + s = s % 10; + return "".concat(s) === input.substr(9, 1); + }; + // Finally, consider it as a VAT number + var isVat = function (input) { + var weight = [4, 3, 2, 7, 6, 5, 4, 3, 2]; + var s = 0; + for (var j = 0; j < 9; j++) { + s += parseInt(input.charAt(j), 10) * weight[j]; + } + s = 11 - (s % 11); + if (s === 10) { + return false; + } + if (s === 11) { + s = 0; + } + return "".concat(s) === input.substr(9, 1); + }; + return { + meta: {}, + valid: isEgn(v) || isPnf(v) || isVat(v), + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Brazilian VAT number (CNPJ) + * + * @returns {ValidateResult} + */ + function brVat(value) { + if (value === '') { + return { + meta: {}, + valid: true, + }; + } + var cnpj = value.replace(/[^\d]+/g, ''); + if (cnpj === '' || cnpj.length !== 14) { + return { + meta: {}, + valid: false, + }; + } + // Remove invalids CNPJs + if (cnpj === '00000000000000' || + cnpj === '11111111111111' || + cnpj === '22222222222222' || + cnpj === '33333333333333' || + cnpj === '44444444444444' || + cnpj === '55555555555555' || + cnpj === '66666666666666' || + cnpj === '77777777777777' || + cnpj === '88888888888888' || + cnpj === '99999999999999') { + return { + meta: {}, + valid: false, + }; + } + // Validate verification digits + var length = cnpj.length - 2; + var numbers = cnpj.substring(0, length); + var digits = cnpj.substring(length); + var sum = 0; + var pos = length - 7; + var i; + for (i = length; i >= 1; i--) { + sum += parseInt(numbers.charAt(length - i), 10) * pos--; + if (pos < 2) { + pos = 9; + } + } + var result = sum % 11 < 2 ? 0 : 11 - (sum % 11); + if (result !== parseInt(digits.charAt(0), 10)) { + return { + meta: {}, + valid: false, + }; + } + length = length + 1; + numbers = cnpj.substring(0, length); + sum = 0; + pos = length - 7; + for (i = length; i >= 1; i--) { + sum += parseInt(numbers.charAt(length - i), 10) * pos--; + if (pos < 2) { + pos = 9; + } + } + result = sum % 11 < 2 ? 0 : 11 - (sum % 11); + return { + meta: {}, + valid: result === parseInt(digits.charAt(1), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Swiss VAT number + * + * @returns {ValidateResult} + */ + function chVat(value) { + var v = value; + if (/^CHE[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(v)) { + v = v.substr(2); + } + if (!/^E[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.substr(1); + var weight = [5, 4, 3, 2, 7, 6, 5, 4]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 10) { + return { + meta: {}, + valid: false, + }; + } + if (sum === 11) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Cypriot VAT number + * + * @returns {ValidateResult} + */ + function cyVat(value) { + var v = value; + if (/^CY[0-5|9][0-9]{7}[A-Z]$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-5|9][0-9]{7}[A-Z]$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Do not allow to start with "12" + if (v.substr(0, 2) === '12') { + return { + meta: {}, + valid: false, + }; + } + // Extract the next digit and multiply by the counter. + var sum = 0; + var translation = { + 0: 1, + 1: 0, + 2: 5, + 3: 7, + 4: 9, + 5: 13, + 6: 15, + 7: 17, + 8: 19, + 9: 21, + }; + for (var i = 0; i < 8; i++) { + var temp = parseInt(v.charAt(i), 10); + if (i % 2 === 0) { + temp = translation["".concat(temp)]; + } + sum += temp; + } + return { + meta: {}, + valid: "".concat('ABCDEFGHIJKLMNOPQRSTUVWXYZ'[sum % 26]) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$1 = core.utils.isValidDate; + /** + * Validate Czech Republic VAT number + * + * @returns {ValidateResult} + */ + function czVat(value) { + var v = value; + if (/^CZ[0-9]{8,10}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8,10}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var i = 0; + if (v.length === 8) { + // Do not allow to start with '9' + if ("".concat(v.charAt(0)) === '9') { + return { + meta: {}, + valid: false, + }; + } + sum = 0; + for (i = 0; i < 7; i++) { + sum += parseInt(v.charAt(i), 10) * (8 - i); + } + sum = 11 - (sum % 11); + if (sum === 10) { + sum = 0; + } + if (sum === 11) { + sum = 1; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(7, 1), + }; + } + else if (v.length === 9 && "".concat(v.charAt(0)) === '6') { + sum = 0; + // Skip the first (which is 6) + for (i = 0; i < 7; i++) { + sum += parseInt(v.charAt(i + 1), 10) * (8 - i); + } + sum = 11 - (sum % 11); + if (sum === 10) { + sum = 0; + } + if (sum === 11) { + sum = 1; + } + sum = [8, 7, 6, 5, 4, 3, 2, 1, 0, 9, 10][sum - 1]; + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + else if (v.length === 9 || v.length === 10) { + // Validate Czech birth number (Rodné číslo), which is also national identifier + var year = 1900 + parseInt(v.substr(0, 2), 10); + var month = (parseInt(v.substr(2, 2), 10) % 50) % 20; + var day = parseInt(v.substr(4, 2), 10); + if (v.length === 9) { + if (year >= 1980) { + year -= 100; + } + if (year > 1953) { + return { + meta: {}, + valid: false, + }; + } + } + else if (year < 1954) { + year += 100; + } + if (!isValidDate$1(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check that the birth date is not in the future + if (v.length === 10) { + var check = parseInt(v.substr(0, 9), 10) % 11; + if (year < 1985) { + check = check % 10; + } + return { + meta: {}, + valid: "".concat(check) === v.substr(9, 1), + }; + } + return { + meta: {}, + valid: true, + }; + } + return { + meta: {}, + valid: false, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod11And10$1 = core.algorithms.mod11And10; + /** + * Validate German VAT number + * + * @returns {ValidateResult} + */ + function deVat(value) { + var v = value; + if (/^DE[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[1-9][0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: mod11And10$1(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Danish VAT number + * + * @returns {ValidateResult} + */ + function dkVat(value) { + var v = value; + if (/^DK[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var weight = [2, 7, 6, 5, 4, 3, 2, 1]; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Estonian VAT number + * + * @returns {ValidateResult} + */ + function eeVat(value) { + var v = value; + if (/^EE[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var weight = [3, 7, 1, 3, 7, 1, 3, 7, 1]; + for (var i = 0; i < 9; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 10 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Spanish VAT number (NIF - Número de Identificación Fiscal) + * Can be: + * i) DNI (Documento nacional de identidad), for Spaniards + * ii) NIE (Número de Identificación de Extranjeros), for foreigners + * iii) CIF (Certificado de Identificación Fiscal), for legal entities and others + * + * @returns {ValidateResult} + */ + function esVat(value) { + var v = value; + if (/^ES[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var dni = function (input) { + var check = parseInt(input.substr(0, 8), 10); + return "".concat('TRWAGMYFPDXBNJZSQVHLCKE'[check % 23]) === input.substr(8, 1); + }; + var nie = function (input) { + var check = ['XYZ'.indexOf(input.charAt(0)), input.substr(1)].join(''); + var cd = 'TRWAGMYFPDXBNJZSQVHLCKE'[parseInt(check, 10) % 23]; + return "".concat(cd) === input.substr(8, 1); + }; + var cif = function (input) { + var firstChar = input.charAt(0); + var check; + if ('KLM'.indexOf(firstChar) !== -1) { + // K: Spanish younger than 14 year old + // L: Spanish living outside Spain without DNI + // M: Granted the tax to foreigners who have no NIE + check = parseInt(input.substr(1, 8), 10); + check = 'TRWAGMYFPDXBNJZSQVHLCKE'[check % 23]; + return "".concat(check) === input.substr(8, 1); + } + else if ('ABCDEFGHJNPQRSUVW'.indexOf(firstChar) !== -1) { + var weight = [2, 1, 2, 1, 2, 1, 2]; + var sum = 0; + var temp = 0; + for (var i = 0; i < 7; i++) { + temp = parseInt(input.charAt(i + 1), 10) * weight[i]; + if (temp > 9) { + temp = Math.floor(temp / 10) + (temp % 10); + } + sum += temp; + } + sum = 10 - (sum % 10); + if (sum === 10) { + sum = 0; + } + return "".concat(sum) === input.substr(8, 1) || 'JABCDEFGHI'[sum] === input.substr(8, 1); + } + return false; + }; + var first = v.charAt(0); + if (/^[0-9]$/.test(first)) { + return { + meta: { + type: 'DNI', + }, + valid: dni(v), + }; + } + else if (/^[XYZ]$/.test(first)) { + return { + meta: { + type: 'NIE', + }, + valid: nie(v), + }; + } + else { + return { + meta: { + type: 'CIF', + }, + valid: cif(v), + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Finnish VAT number + * + * @returns {ValidateResult} + */ + function fiVat(value) { + var v = value; + if (/^FI[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [7, 9, 10, 5, 8, 4, 2, 1]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$2 = core.algorithms.luhn; + /** + * Validate French VAT number (TVA - taxe sur la valeur ajoutée) + * It's constructed by a SIREN number, prefixed by two characters. + * + * @returns {ValidateResult} + */ + function frVat(value) { + var v = value; + if (/^FR[0-9A-Z]{2}[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9A-Z]{2}[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (v.substr(2, 4) !== '000') { + return { + meta: {}, + valid: luhn$2(v.substr(2)), + }; + } + if (/^[0-9]{2}$/.test(v.substr(0, 2))) { + // First two characters are digits + return { + meta: {}, + valid: v.substr(0, 2) === "".concat(parseInt(v.substr(2) + '12', 10) % 97), + }; + } + else { + // The first characters cann't be O and I + var alphabet = '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ'; + var check = void 0; + // First one is digit + if (/^[0-9]$/.test(v.charAt(0))) { + check = alphabet.indexOf(v.charAt(0)) * 24 + alphabet.indexOf(v.charAt(1)) - 10; + } + else { + check = alphabet.indexOf(v.charAt(0)) * 34 + alphabet.indexOf(v.charAt(1)) - 100; + } + return { + meta: {}, + valid: (parseInt(v.substr(2), 10) + 1 + Math.floor(check / 11)) % 11 === check % 11, + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate United Kingdom VAT number + * + * @returns {ValidateResult} + */ + function gbVat(value) { + var v = value; + if (/^GB[0-9]{9}$/.test(v) /* Standard */ || + /^GB[0-9]{12}$/.test(v) /* Branches */ || + /^GBGD[0-9]{3}$/.test(v) /* Government department */ || + /^GBHA[0-9]{3}$/.test(v) /* Health authority */ || + /^GB(GD|HA)8888[0-9]{5}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v) && + !/^[0-9]{12}$/.test(v) && + !/^GD[0-9]{3}$/.test(v) && + !/^HA[0-9]{3}$/.test(v) && + !/^(GD|HA)8888[0-9]{5}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + if (length === 5) { + var firstTwo = v.substr(0, 2); + var lastThree = parseInt(v.substr(2), 10); + return { + meta: {}, + valid: ('GD' === firstTwo && lastThree < 500) || ('HA' === firstTwo && lastThree >= 500), + }; + } + else if (length === 11 && ('GD8888' === v.substr(0, 6) || 'HA8888' === v.substr(0, 6))) { + if (('GD' === v.substr(0, 2) && parseInt(v.substr(6, 3), 10) >= 500) || + ('HA' === v.substr(0, 2) && parseInt(v.substr(6, 3), 10) < 500)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: parseInt(v.substr(6, 3), 10) % 97 === parseInt(v.substr(9, 2), 10), + }; + } + else if (length === 9 || length === 12) { + var weight = [8, 7, 6, 5, 4, 3, 2, 10, 1]; + var sum = 0; + for (var i = 0; i < 9; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 97; + var isValid = parseInt(v.substr(0, 3), 10) >= 100 ? sum === 0 || sum === 42 || sum === 55 : sum === 0; + return { + meta: {}, + valid: isValid, + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Greek VAT number + * + * @returns {ValidateResult} + */ + function grVat(value) { + var v = value; + if (/^(GR|EL)[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (v.length === 8) { + v = "0".concat(v); + } + var weight = [256, 128, 64, 32, 16, 8, 4, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = (sum % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod11And10 = core.algorithms.mod11And10; + /** + * Validate Croatian VAT number + * + * @returns {ValidateResult} + */ + function hrVat(value) { + var v = value; + if (/^HR[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: mod11And10(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Hungarian VAT number + * + * @returns {ValidateResult} + */ + function huVat(value) { + var v = value; + if (/^HU[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [9, 7, 3, 1, 9, 7, 3, 1]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 10 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Irish VAT number + * + * @returns {ValidateResult} + */ + function ieVat(value) { + var v = value; + if (/^IE[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var getCheckDigit = function (inp) { + var input = inp; + while (input.length < 7) { + input = "0".concat(input); + } + var alphabet = 'WABCDEFGHIJKLMNOPQRSTUV'; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(input.charAt(i), 10) * (8 - i); + } + sum += 9 * alphabet.indexOf(input.substr(7)); + return alphabet[sum % 23]; + }; + // The first 7 characters are digits + if (/^[0-9]+$/.test(v.substr(0, 7))) { + // New system + return { + meta: {}, + valid: v.charAt(7) === getCheckDigit("".concat(v.substr(0, 7)).concat(v.substr(8))), + }; + } + else if ('ABCDEFGHIJKLMNOPQRSTUVWXYZ+*'.indexOf(v.charAt(1)) !== -1) { + // Old system + return { + meta: {}, + valid: v.charAt(7) === getCheckDigit("".concat(v.substr(2, 5)).concat(v.substr(0, 1))), + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Icelandic VAT (VSK) number + * + * @returns {ValidateResult} + */ + function isVat(value) { + var v = value; + if (/^IS[0-9]{5,6}$/.test(v)) { + v = v.substr(2); + } + return { + meta: {}, + valid: /^[0-9]{5,6}$/.test(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$1 = core.algorithms.luhn; + /** + * Validate Italian VAT number, which consists of 11 digits. + * - First 7 digits are a company identifier + * - Next 3 are the province of residence + * - The last one is a check digit + * + * @returns {ValidateResult} + */ + function itVat(value) { + var v = value; + if (/^IT[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (parseInt(v.substr(0, 7), 10) === 0) { + return { + meta: {}, + valid: false, + }; + } + var lastThree = parseInt(v.substr(7, 3), 10); + if (lastThree < 1 || (lastThree > 201 && lastThree !== 999 && lastThree !== 888)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: luhn$1(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Lithuanian VAT number + * It can be: + * - 9 digits, for legal entities + * - 12 digits, for temporarily registered taxpayers + * + * @returns {ValidateResult} + */ + function ltVat(value) { + var v = value; + if (/^LT([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(v)) { + v = v.substr(2); + } + if (!/^([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var sum = 0; + var i; + for (i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * (1 + (i % 9)); + } + var check = sum % 11; + if (check === 10) { + // FIXME: Why we need calculation because `sum` isn't used anymore + sum = 0; + for (i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * (1 + ((i + 2) % 9)); + } + } + check = (check % 11) % 10; + return { + meta: {}, + valid: "".concat(check) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Luxembourg VAT number + * + * @returns {ValidateResult} + */ + function luVat(value) { + var v = value; + if (/^LU[0-9]{8}$/.test(v)) { + v = v.substring(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: parseInt(v.substring(0, 6), 10) % 89 === parseInt(v.substring(6, 8), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate = core.utils.isValidDate; + /** + * Validate Latvian VAT number + * + * @returns {ValidateResult} + */ + function lvVat(value) { + var v = value; + if (/^LV[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var first = parseInt(v.charAt(0), 10); + var length = v.length; + var sum = 0; + var weight = []; + var i; + if (first > 3) { + // Legal entity + sum = 0; + weight = [9, 1, 4, 8, 3, 10, 2, 5, 7, 6, 1]; + for (i = 0; i < length; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + return { + meta: {}, + valid: sum === 3, + }; + } + else { + // Check birth date + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + year = year + 1800 + parseInt(v.charAt(6), 10) * 100; + if (!isValidDate(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check personal code + sum = 0; + weight = [10, 5, 8, 4, 2, 1, 6, 3, 7, 9]; + for (i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = ((sum + 1) % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Maltese VAT number + * + * @returns {ValidateResult} + */ + function mtVat(value) { + var v = value; + if (/^MT[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [3, 4, 6, 7, 8, 9, 10, 1]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 37 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod97And10 = core.algorithms.mod97And10; + /** + * Validate Dutch national identification number (BSN) + * + * @see https://nl.wikipedia.org/wiki/Burgerservicenummer + * @returns {ValidateResult} + */ + function nlId(value) { + if (value.length < 8) { + return { + meta: {}, + valid: false, + }; + } + var v = value; + if (v.length === 8) { + v = "0".concat(v); + } + if (!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.replace(/\./g, ''); + if (parseInt(v, 10) === 0) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var length = v.length; + for (var i = 0; i < length - 1; i++) { + sum += (9 - i) * parseInt(v.charAt(i), 10); + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + /** + * Validate Dutch VAT number + * + * @returns {ValidateResult} + */ + function nlVat(value) { + var v = value; + if (/^NL[0-9]{9}B[0-9]{2}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}B[0-9]{2}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var id = v.substr(0, 9); + return { + meta: {}, + valid: nlId(id).valid || mod97And10("NL".concat(v)), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Norwegian VAT number + * + * @see http://www.brreg.no/english/coordination/number.html + * @returns {ValidateResult} + */ + function noVat(value) { + var v = value; + if (/^NO[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 11) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Polish VAT number + * + * @returns {ValidateResult} + */ + function plVat(value) { + var v = value; + if (/^PL[0-9]{10}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{10}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [6, 5, 7, 2, 3, 4, 5, 6, 7, -1]; + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Portuguese VAT number + * + * @returns {ValidateResult} + */ + function ptVat(value) { + var v = value; + if (/^PT[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [9, 8, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum > 9) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Romanian VAT number + * + * @returns {ValidateResult} + */ + function roVat(value) { + var v = value; + if (/^RO[1-9][0-9]{1,9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[1-9][0-9]{1,9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var weight = [7, 5, 3, 2, 1, 7, 5, 3, 2].slice(10 - length); + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = ((10 * sum) % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(length - 1, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Serbian VAT number + * + * @returns {ValidateResult} + */ + function rsVat(value) { + var v = value; + if (/^RS[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 10; + var temp = 0; + for (var i = 0; i < 8; i++) { + temp = (parseInt(v.charAt(i), 10) + sum) % 10; + if (temp === 0) { + temp = 10; + } + sum = (2 * temp) % 11; + } + return { + meta: {}, + valid: (sum + parseInt(v.substr(8, 1), 10)) % 10 === 1, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Russian VAT number (Taxpayer Identification Number - INN) + * + * @returns {ValidateResult} + */ + function ruVat(value) { + var v = value; + if (/^RU([0-9]{10}|[0-9]{12})$/.test(v)) { + v = v.substr(2); + } + if (!/^([0-9]{10}|[0-9]{12})$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var i = 0; + if (v.length === 10) { + var weight = [2, 4, 10, 3, 5, 9, 4, 6, 8, 0]; + var sum = 0; + for (i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum > 9) { + sum = sum % 10; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(9, 1), + }; + } + else if (v.length === 12) { + var weight1 = [7, 2, 4, 10, 3, 5, 9, 4, 6, 8, 0]; + var weight2 = [3, 7, 2, 4, 10, 3, 5, 9, 4, 6, 8, 0]; + var sum1 = 0; + var sum2 = 0; + for (i = 0; i < 11; i++) { + sum1 += parseInt(v.charAt(i), 10) * weight1[i]; + sum2 += parseInt(v.charAt(i), 10) * weight2[i]; + } + sum1 = sum1 % 11; + if (sum1 > 9) { + sum1 = sum1 % 10; + } + sum2 = sum2 % 11; + if (sum2 > 9) { + sum2 = sum2 % 10; + } + return { + meta: {}, + valid: "".concat(sum1) === v.substr(10, 1) && "".concat(sum2) === v.substr(11, 1), + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + /** + * Validate Swiss VAT number + * + * @returns {ValidateResult} + */ + function seVat(value) { + var v = value; + if (/^SE[0-9]{10}01$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{10}01$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.substr(0, 10); + return { + meta: {}, + valid: luhn(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Slovenian VAT number + * + * @returns {ValidateResult} + */ + function siVat(value) { + // The Slovenian VAT numbers don't start with zero + var res = value.match(/^(SI)?([1-9][0-9]{7})$/); + if (!res) { + return { + meta: {}, + valid: false, + }; + } + var v = res[1] ? value.substr(2) : value; + var weight = [8, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(7, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Slovak VAT number + * + * @returns {ValidateResult} + */ + function skVat(value) { + var v = value; + if (/^SK[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(v)) { + v = v.substr(2); + } + if (!/^[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: parseInt(v, 10) % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Venezuelan VAT number (RIF) + * + * @returns {ValidateResult} + */ + function veVat(value) { + var v = value; + if (/^VE[VEJPG][0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[VEJPG][0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var types = { + E: 8, + G: 20, + J: 12, + P: 16, + V: 4, + }; + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = types[v.charAt(0)]; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i + 1), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 11 || sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(9, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate South African VAT number + * + * @returns {ValidateResult} + */ + function zaVat(value) { + var v = value; + if (/^ZA4[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + return { + meta: {}, + valid: /^4[0-9]{9}$/.test(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function vat() { + // Supported country codes + var COUNTRY_CODES = [ + 'AR', + 'AT', + 'BE', + 'BG', + 'BR', + 'CH', + 'CY', + 'CZ', + 'DE', + 'DK', + 'EE', + 'EL', + 'ES', + 'FI', + 'FR', + 'GB', + 'GR', + 'HR', + 'HU', + 'IE', + 'IS', + 'IT', + 'LT', + 'LU', + 'LV', + 'MT', + 'NL', + 'NO', + 'PL', + 'PT', + 'RO', + 'RU', + 'RS', + 'SE', + 'SK', + 'SI', + 'VE', + 'ZA', + ]; + return { + /** + * Validate an European VAT number + */ + validate: function (input) { + var value = input.value; + if (value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var country = value.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (COUNTRY_CODES.indexOf(country) === -1) { + return { valid: true }; + } + var result = { + meta: {}, + valid: true, + }; + switch (country.toLowerCase()) { + case 'ar': + result = arVat(value); + break; + case 'at': + result = atVat(value); + break; + case 'be': + result = beVat(value); + break; + case 'bg': + result = bgVat(value); + break; + case 'br': + result = brVat(value); + break; + case 'ch': + result = chVat(value); + break; + case 'cy': + result = cyVat(value); + break; + case 'cz': + result = czVat(value); + break; + case 'de': + result = deVat(value); + break; + case 'dk': + result = dkVat(value); + break; + case 'ee': + result = eeVat(value); + break; + // EL is traditionally prefix of Greek VAT numbers + case 'el': + result = grVat(value); + break; + case 'es': + result = esVat(value); + break; + case 'fi': + result = fiVat(value); + break; + case 'fr': + result = frVat(value); + break; + case 'gb': + result = gbVat(value); + break; + case 'gr': + result = grVat(value); + break; + case 'hr': + result = hrVat(value); + break; + case 'hu': + result = huVat(value); + break; + case 'ie': + result = ieVat(value); + break; + case 'is': + result = isVat(value); + break; + case 'it': + result = itVat(value); + break; + case 'lt': + result = ltVat(value); + break; + case 'lu': + result = luVat(value); + break; + case 'lv': + result = lvVat(value); + break; + case 'mt': + result = mtVat(value); + break; + case 'nl': + result = nlVat(value); + break; + case 'no': + result = noVat(value); + break; + case 'pl': + result = plVat(value); + break; + case 'pt': + result = ptVat(value); + break; + case 'ro': + result = roVat(value); + break; + case 'rs': + result = rsVat(value); + break; + case 'ru': + result = ruVat(value); + break; + case 'se': + result = seVat(value); + break; + case 'si': + result = siVat(value); + break; + case 'sk': + result = skVat(value); + break; + case 've': + result = veVat(value); + break; + case 'za': + result = zaVat(value); + break; + } + var message = format(input.l10n && input.l10n.vat ? opts.message || input.l10n.vat.country : opts.message, input.l10n && input.l10n.vat && input.l10n.vat.countries + ? input.l10n.vat.countries[country.toUpperCase()] + : country.toUpperCase()); + return Object.assign({}, { message: message }, result); + }, + }; + } + + return vat; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js new file mode 100644 index 0000000..e1755c4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-vat + * @version 2.4.0 + */ + +!function(t,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],r):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.vat=r(t.FormValidation))}(this,(function(t){"use strict";var r=t.utils.isValidDate;var a=t.utils.isValidDate;var e=t.algorithms.mod11And10;var s=t.algorithms.luhn;function n(t){var r=t;if(/^(GR|EL)[0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{9}$/.test(r))return{meta:{},valid:!1};8===r.length&&(r="0".concat(r));for(var a=[256,128,64,32,16,8,4,2],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return{meta:{},valid:"".concat(e=e%11%10)===r.substr(8,1)}}var i=t.algorithms.mod11And10;var u=t.algorithms.luhn;var c=t.utils.isValidDate;var v=t.algorithms.mod97And10;function o(t){if(t.length<8)return{meta:{},valid:!1};var r=t;if(8===r.length&&(r="0".concat(r)),!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(r))return{meta:{},valid:!1};if(r=r.replace(/\./g,""),0===parseInt(r,10))return{meta:{},valid:!1};for(var a=0,e=r.length,s=0;s9&&(s=Math.floor(s/10)+s%10),e+=s;return 10==(e=10-(e+4)%10)&&(e=0),{meta:{},valid:"".concat(e)===r.substr(7,1)}}(m);break;case"be":p=function(t){var r=t;return/^BE[0]?[0-9]{9}$/.test(r)&&(r=r.substr(2)),/^[0]?[0-9]{9}$/.test(r)?(9===r.length&&(r="0".concat(r)),"0"===r.substr(1,1)?{meta:{},valid:!1}:{meta:{},valid:(parseInt(r.substr(0,8),10)+parseInt(r.substr(8,2),10))%97==0}):{meta:{},valid:!1}}(m);break;case"bg":p=function(t){var a=t;if(/^BG[0-9]{9,10}$/.test(a)&&(a=a.substr(2)),!/^[0-9]{9,10}$/.test(a))return{meta:{},valid:!1};var e=0,s=0;if(9===a.length){for(s=0;s<8;s++)e+=parseInt(a.charAt(s),10)*(s+1);if(10==(e%=11)){for(e=0,s=0;s<8;s++)e+=parseInt(a.charAt(s),10)*(s+3);e%=11}return{meta:{},valid:"".concat(e%=10)===a.substr(8)}}return{meta:{},valid:function(t){var a=parseInt(t.substr(0,2),10)+1900,e=parseInt(t.substr(2,2),10),s=parseInt(t.substr(4,2),10);if(e>40?(a+=100,e-=40):e>20&&(a-=100,e-=20),!r(a,e,s))return!1;for(var n=[2,4,8,5,10,9,7,3,6],i=0,u=0;u<9;u++)i+=parseInt(t.charAt(u),10)*n[u];return"".concat(i=i%11%10)===t.substr(9,1)}(a)||function(t){for(var r=[21,19,17,13,11,9,7,3,1],a=0,e=0;e<9;e++)a+=parseInt(t.charAt(e),10)*r[e];return"".concat(a%=10)===t.substr(9,1)}(a)||function(t){for(var r=[4,3,2,7,6,5,4,3,2],a=0,e=0;e<9;e++)a+=parseInt(t.charAt(e),10)*r[e];return 10!=(a=11-a%11)&&(11===a&&(a=0),"".concat(a)===t.substr(9,1))}(a)}}(m);break;case"br":p=function(t){if(""===t)return{meta:{},valid:!0};var r=t.replace(/[^\d]+/g,"");if(""===r||14!==r.length)return{meta:{},valid:!1};if("00000000000000"===r||"11111111111111"===r||"22222222222222"===r||"33333333333333"===r||"44444444444444"===r||"55555555555555"===r||"66666666666666"===r||"77777777777777"===r||"88888888888888"===r||"99999999999999"===r)return{meta:{},valid:!1};var a,e=r.length-2,s=r.substring(0,e),n=r.substring(e),i=0,u=e-7;for(a=e;a>=1;a--)i+=parseInt(s.charAt(e-a),10)*u--,u<2&&(u=9);var c=i%11<2?0:11-i%11;if(c!==parseInt(n.charAt(0),10))return{meta:{},valid:!1};for(e+=1,s=r.substring(0,e),i=0,u=e-7,a=e;a>=1;a--)i+=parseInt(s.charAt(e-a),10)*u--,u<2&&(u=9);return{meta:{},valid:(c=i%11<2?0:11-i%11)===parseInt(n.charAt(1),10)}}(m);break;case"ch":p=function(t){var r=t;if(/^CHE[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(r)&&(r=r.substr(2)),!/^E[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(r))return{meta:{},valid:!1};r=r.substr(1);for(var a=[5,4,3,2,7,6,5,4],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return 10==(e=11-e%11)?{meta:{},valid:!1}:(11===e&&(e=0),{meta:{},valid:"".concat(e)===r.substr(8,1)})}(m);break;case"cy":p=function(t){var r=t;if(/^CY[0-5|9][0-9]{7}[A-Z]$/.test(r)&&(r=r.substr(2)),!/^[0-5|9][0-9]{7}[A-Z]$/.test(r))return{meta:{},valid:!1};if("12"===r.substr(0,2))return{meta:{},valid:!1};for(var a=0,e={0:1,1:0,2:5,3:7,4:9,5:13,6:15,7:17,8:19,9:21},s=0;s<8;s++){var n=parseInt(r.charAt(s),10);s%2==0&&(n=e["".concat(n)]),a+=n}return{meta:{},valid:"".concat("ABCDEFGHIJKLMNOPQRSTUVWXYZ"[a%26])===r.substr(8,1)}}(m);break;case"cz":p=function(t){var r=t;if(/^CZ[0-9]{8,10}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8,10}$/.test(r))return{meta:{},valid:!1};var e=0,s=0;if(8===r.length){if("9"==="".concat(r.charAt(0)))return{meta:{},valid:!1};for(e=0,s=0;s<7;s++)e+=parseInt(r.charAt(s),10)*(8-s);return 10==(e=11-e%11)&&(e=0),11===e&&(e=1),{meta:{},valid:"".concat(e)===r.substr(7,1)}}if(9===r.length&&"6"==="".concat(r.charAt(0))){for(e=0,s=0;s<7;s++)e+=parseInt(r.charAt(s+1),10)*(8-s);return 10==(e=11-e%11)&&(e=0),11===e&&(e=1),{meta:{},valid:"".concat(e=[8,7,6,5,4,3,2,1,0,9,10][e-1])===r.substr(8,1)}}if(9===r.length||10===r.length){var n=1900+parseInt(r.substr(0,2),10),i=parseInt(r.substr(2,2),10)%50%20,u=parseInt(r.substr(4,2),10);if(9===r.length){if(n>=1980&&(n-=100),n>1953)return{meta:{},valid:!1}}else n<1954&&(n+=100);if(!a(n,i,u))return{meta:{},valid:!1};if(10===r.length){var c=parseInt(r.substr(0,9),10)%11;return n<1985&&(c%=10),{meta:{},valid:"".concat(c)===r.substr(9,1)}}return{meta:{},valid:!0}}return{meta:{},valid:!1}}(m);break;case"de":p=function(t){var r=t;return/^DE[0-9]{9}$/.test(r)&&(r=r.substr(2)),/^[1-9][0-9]{8}$/.test(r)?{meta:{},valid:e(r)}:{meta:{},valid:!1}}(m);break;case"dk":p=function(t){var r=t;if(/^DK[0-9]{8}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8}$/.test(r))return{meta:{},valid:!1};for(var a=0,e=[2,7,6,5,4,3,2,1],s=0;s<8;s++)a+=parseInt(r.charAt(s),10)*e[s];return{meta:{},valid:a%11==0}}(m);break;case"ee":p=function(t){var r=t;if(/^EE[0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{9}$/.test(r))return{meta:{},valid:!1};for(var a=0,e=[3,7,1,3,7,1,3,7,1],s=0;s<9;s++)a+=parseInt(r.charAt(s),10)*e[s];return{meta:{},valid:a%10==0}}(m);break;case"el":case"gr":p=n(m);break;case"es":p=function(t){var r=t;if(/^ES[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(r)&&(r=r.substr(2)),!/^[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(r))return{meta:{},valid:!1};var a,e,s=r.charAt(0);return/^[0-9]$/.test(s)?{meta:{type:"DNI"},valid:(a=r,e=parseInt(a.substr(0,8),10),"".concat("TRWAGMYFPDXBNJZSQVHLCKE"[e%23])===a.substr(8,1))}:/^[XYZ]$/.test(s)?{meta:{type:"NIE"},valid:function(t){var r=["XYZ".indexOf(t.charAt(0)),t.substr(1)].join(""),a="TRWAGMYFPDXBNJZSQVHLCKE"[parseInt(r,10)%23];return"".concat(a)===t.substr(8,1)}(r)}:{meta:{type:"CIF"},valid:function(t){var r,a=t.charAt(0);if(-1!=="KLM".indexOf(a))return r=parseInt(t.substr(1,8),10),"".concat(r="TRWAGMYFPDXBNJZSQVHLCKE"[r%23])===t.substr(8,1);if(-1!=="ABCDEFGHJNPQRSUVW".indexOf(a)){for(var e=[2,1,2,1,2,1,2],s=0,n=0,i=0;i<7;i++)(n=parseInt(t.charAt(i+1),10)*e[i])>9&&(n=Math.floor(n/10)+n%10),s+=n;return 10==(s=10-s%10)&&(s=0),"".concat(s)===t.substr(8,1)||"JABCDEFGHI"[s]===t.substr(8,1)}return!1}(r)}}(m);break;case"fi":p=function(t){var r=t;if(/^FI[0-9]{8}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8}$/.test(r))return{meta:{},valid:!1};for(var a=[7,9,10,5,8,4,2,1],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return{meta:{},valid:e%11==0}}(m);break;case"fr":p=function(t){var r=t;if(/^FR[0-9A-Z]{2}[0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[0-9A-Z]{2}[0-9]{9}$/.test(r))return{meta:{},valid:!1};if("000"!==r.substr(2,4))return{meta:{},valid:s(r.substr(2))};if(/^[0-9]{2}$/.test(r.substr(0,2)))return{meta:{},valid:r.substr(0,2)==="".concat(parseInt(r.substr(2)+"12",10)%97)};var a="0123456789ABCDEFGHJKLMNPQRSTUVWXYZ",e=void 0;return e=/^[0-9]$/.test(r.charAt(0))?24*a.indexOf(r.charAt(0))+a.indexOf(r.charAt(1))-10:34*a.indexOf(r.charAt(0))+a.indexOf(r.charAt(1))-100,{meta:{},valid:(parseInt(r.substr(2),10)+1+Math.floor(e/11))%11==e%11}}(m);break;case"gb":p=function(t){var r=t;if((/^GB[0-9]{9}$/.test(r)||/^GB[0-9]{12}$/.test(r)||/^GBGD[0-9]{3}$/.test(r)||/^GBHA[0-9]{3}$/.test(r)||/^GB(GD|HA)8888[0-9]{5}$/.test(r))&&(r=r.substr(2)),!(/^[0-9]{9}$/.test(r)||/^[0-9]{12}$/.test(r)||/^GD[0-9]{3}$/.test(r)||/^HA[0-9]{3}$/.test(r)||/^(GD|HA)8888[0-9]{5}$/.test(r)))return{meta:{},valid:!1};var a=r.length;if(5===a){var e=r.substr(0,2),s=parseInt(r.substr(2),10);return{meta:{},valid:"GD"===e&&s<500||"HA"===e&&s>=500}}if(11===a&&("GD8888"===r.substr(0,6)||"HA8888"===r.substr(0,6)))return"GD"===r.substr(0,2)&&parseInt(r.substr(6,3),10)>=500||"HA"===r.substr(0,2)&&parseInt(r.substr(6,3),10)<500?{meta:{},valid:!1}:{meta:{},valid:parseInt(r.substr(6,3),10)%97===parseInt(r.substr(9,2),10)};if(9===a||12===a){for(var n=[8,7,6,5,4,3,2,10,1],i=0,u=0;u<9;u++)i+=parseInt(r.charAt(u),10)*n[u];return i%=97,{meta:{},valid:parseInt(r.substr(0,3),10)>=100?0===i||42===i||55===i:0===i}}return{meta:{},valid:!0}}(m);break;case"hr":p=function(t){var r=t;return/^HR[0-9]{11}$/.test(r)&&(r=r.substr(2)),/^[0-9]{11}$/.test(r)?{meta:{},valid:i(r)}:{meta:{},valid:!1}}(m);break;case"hu":p=function(t){var r=t;if(/^HU[0-9]{8}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8}$/.test(r))return{meta:{},valid:!1};for(var a=[9,7,3,1,9,7,3,1],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return{meta:{},valid:e%10==0}}(m);break;case"ie":p=function(t){var r=t;if(/^IE[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(r)&&(r=r.substr(2)),!/^[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(r))return{meta:{},valid:!1};var a=function(t){for(var r=t;r.length<7;)r="0".concat(r);for(var a="WABCDEFGHIJKLMNOPQRSTUV",e=0,s=0;s<7;s++)e+=parseInt(r.charAt(s),10)*(8-s);return e+=9*a.indexOf(r.substr(7)),a[e%23]};return/^[0-9]+$/.test(r.substr(0,7))?{meta:{},valid:r.charAt(7)===a("".concat(r.substr(0,7)).concat(r.substr(8)))}:-1!=="ABCDEFGHIJKLMNOPQRSTUVWXYZ+*".indexOf(r.charAt(1))?{meta:{},valid:r.charAt(7)===a("".concat(r.substr(2,5)).concat(r.substr(0,1)))}:{meta:{},valid:!0}}(m);break;case"is":p=function(t){var r=t;return/^IS[0-9]{5,6}$/.test(r)&&(r=r.substr(2)),{meta:{},valid:/^[0-9]{5,6}$/.test(r)}}(m);break;case"it":p=function(t){var r=t;if(/^IT[0-9]{11}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{11}$/.test(r))return{meta:{},valid:!1};if(0===parseInt(r.substr(0,7),10))return{meta:{},valid:!1};var a=parseInt(r.substr(7,3),10);return a<1||a>201&&999!==a&&888!==a?{meta:{},valid:!1}:{meta:{},valid:u(r)}}(m);break;case"lt":p=function(t){var r=t;if(/^LT([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(r)&&(r=r.substr(2)),!/^([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(r))return{meta:{},valid:!1};var a,e=r.length,s=0;for(a=0;a3){for(n=0,i=[9,1,4,8,3,10,2,5,7,6,1],a=0;a9&&(e=0),{meta:{},valid:"".concat(e)===r.substr(8,1)}}(m);break;case"ro":p=function(t){var r=t;if(/^RO[1-9][0-9]{1,9}$/.test(r)&&(r=r.substr(2)),!/^[1-9][0-9]{1,9}$/.test(r))return{meta:{},valid:!1};for(var a=r.length,e=[7,5,3,2,1,7,5,3,2].slice(10-a),s=0,n=0;n9&&(s%=10),{meta:{},valid:"".concat(s)===r.substr(9,1)}}if(12===r.length){var n=[7,2,4,10,3,5,9,4,6,8,0],i=[3,7,2,4,10,3,5,9,4,6,8,0],u=0,c=0;for(a=0;a<11;a++)u+=parseInt(r.charAt(a),10)*n[a],c+=parseInt(r.charAt(a),10)*i[a];return(u%=11)>9&&(u%=10),(c%=11)>9&&(c%=10),{meta:{},valid:"".concat(u)===r.substr(10,1)&&"".concat(c)===r.substr(11,1)}}return{meta:{},valid:!0}}(m);break;case"se":p=function(t){var r=t;return/^SE[0-9]{10}01$/.test(r)&&(r=r.substr(2)),/^[0-9]{10}01$/.test(r)?(r=r.substr(0,10),{meta:{},valid:l(r)}):{meta:{},valid:!1}}(m);break;case"si":p=function(t){var r=t.match(/^(SI)?([1-9][0-9]{7})$/);if(!r)return{meta:{},valid:!1};for(var a=r[1]?t.substr(2):t,e=[8,7,6,5,4,3,2],s=0,n=0;n<7;n++)s+=parseInt(a.charAt(n),10)*e[n];return 10==(s=11-s%11)&&(s=0),{meta:{},valid:"".concat(s)===a.substr(7,1)}}(m);break;case"sk":p=function(t){var r=t;return/^SK[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(r)&&(r=r.substr(2)),/^[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(r)?{meta:{},valid:parseInt(r,10)%11==0}:{meta:{},valid:!1}}(m);break;case"ve":p=function(t){var r=t;if(/^VE[VEJPG][0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[VEJPG][0-9]{9}$/.test(r))return{meta:{},valid:!1};for(var a=[3,2,7,6,5,4,3,2],e={E:8,G:20,J:12,P:16,V:4}[r.charAt(0)],s=0;s<8;s++)e+=parseInt(r.charAt(s+1),10)*a[s];return 11!=(e=11-e%11)&&10!==e||(e=0),{meta:{},valid:"".concat(e)===r.substr(9,1)}}(m);break;case"za":p=function(t){var r=t;return/^ZA4[0-9]{9}$/.test(r)&&(r=r.substr(2)),{meta:{},valid:/^4[0-9]{9}$/.test(r)}}(m)}var I=f(d.l10n&&d.l10n.vat?h.message||d.l10n.vat.country:h.message,d.l10n&&d.l10n.vat&&d.l10n.vat.countries?d.l10n.vat.countries[A.toUpperCase()]:A.toUpperCase());return Object.assign({},{message:I},p)}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js new file mode 100644 index 0000000..49b8dfa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js @@ -0,0 +1,78 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.vin = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function vin() { + return { + /** + * Validate an US VIN (Vehicle Identification Number) + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + // Don't accept I, O, Q characters + if (!/^[a-hj-npr-z0-9]{8}[0-9xX][a-hj-npr-z0-9]{8}$/i.test(input.value)) { + return { valid: false }; + } + var v = input.value.toUpperCase(); + var chars = { + A: 1, + B: 2, + C: 3, + D: 4, + E: 5, + F: 6, + G: 7, + H: 8, + J: 1, + K: 2, + L: 3, + M: 4, + N: 5, + P: 7, + R: 9, + S: 2, + T: 3, + U: 4, + V: 5, + W: 6, + X: 7, + Y: 8, + Z: 9, + 0: 0, + 1: 1, + 2: 2, + 3: 3, + 4: 4, + 5: 5, + 6: 6, + 7: 7, + 8: 8, + 9: 9, + }; + var weights = [8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2]; + var length = v.length; + var sum = 0; + for (var i = 0; i < length; i++) { + sum += chars["".concat(v.charAt(i))] * weights[i]; + } + var reminder = "".concat(sum % 11); + if (reminder === '10') { + reminder = 'X'; + } + return { valid: reminder === v.charAt(8) }; + }, + }; + } + + return vin; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js new file mode 100644 index 0000000..362997b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-vin + * @version 2.4.0 + */ + +!function(t,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a():"function"==typeof define&&define.amd?define(a):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.vin=a())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};if(!/^[a-hj-npr-z0-9]{8}[0-9xX][a-hj-npr-z0-9]{8}$/i.test(t.value))return{valid:!1};for(var a=t.value.toUpperCase(),i={A:1,B:2,C:3,D:4,E:5,F:6,G:7,H:8,J:1,K:2,L:3,M:4,N:5,P:7,R:9,S:2,T:3,U:4,V:5,W:6,X:7,Y:8,Z:9,0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],n=a.length,o=0,r=0;r + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function zipCode() { + var COUNTRY_CODES = [ + 'AT', + 'BG', + 'BR', + 'CA', + 'CH', + 'CZ', + 'DE', + 'DK', + 'ES', + 'FR', + 'GB', + 'IE', + 'IN', + 'IT', + 'MA', + 'NL', + 'PL', + 'PT', + 'RO', + 'RU', + 'SE', + 'SG', + 'SK', + 'US', + ]; + /** + * Validate United Kingdom postcode + * @returns {boolean} + */ + var gb = function (value) { + var firstChar = '[ABCDEFGHIJKLMNOPRSTUWYZ]'; // Does not accept QVX + var secondChar = '[ABCDEFGHKLMNOPQRSTUVWXY]'; // Does not accept IJZ + var thirdChar = '[ABCDEFGHJKPMNRSTUVWXY]'; + var fourthChar = '[ABEHMNPRVWXY]'; + var fifthChar = '[ABDEFGHJLNPQRSTUWXYZ]'; + var regexps = [ + // AN NAA, ANN NAA, AAN NAA, AANN NAA format + new RegExp("^(".concat(firstChar, "{1}").concat(secondChar, "?[0-9]{1,2})(\\s*)([0-9]{1}").concat(fifthChar, "{2})$"), 'i'), + // ANA NAA + new RegExp("^(".concat(firstChar, "{1}[0-9]{1}").concat(thirdChar, "{1})(\\s*)([0-9]{1}").concat(fifthChar, "{2})$"), 'i'), + // AANA NAA + new RegExp("^(".concat(firstChar, "{1}").concat(secondChar, "{1}?[0-9]{1}").concat(fourthChar, "{1})(\\s*)([0-9]{1}").concat(fifthChar, "{2})$"), 'i'), + // BFPO postcodes + new RegExp('^(BF1)(\\s*)([0-6]{1}[ABDEFGHJLNPQRST]{1}[ABDEFGHJLNPQRSTUWZYZ]{1})$', 'i'), + /^(GIR)(\s*)(0AA)$/i, + /^(BFPO)(\s*)([0-9]{1,4})$/i, + /^(BFPO)(\s*)(c\/o\s*[0-9]{1,3})$/i, + /^([A-Z]{4})(\s*)(1ZZ)$/i, + /^(AI-2640)$/i, // Anguilla + ]; + for (var _i = 0, regexps_1 = regexps; _i < regexps_1.length; _i++) { + var reg = regexps_1[_i]; + if (reg.test(value)) { + return true; + } + } + return false; + }; + return { + /** + * Return true if and only if the input value is a valid country zip code + */ + validate: function (input) { + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + if (input.value === '' || !opts.country) { + return { valid: true }; + } + var country = input.value.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (!country || COUNTRY_CODES.indexOf(country.toUpperCase()) === -1) { + return { valid: true }; + } + var isValid = false; + country = country.toUpperCase(); + switch (country) { + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Austria + case 'AT': + isValid = /^([1-9]{1})(\d{3})$/.test(input.value); + break; + case 'BG': + isValid = /^([1-9]{1}[0-9]{3})$/.test(input.value); + break; + case 'BR': + isValid = /^(\d{2})([.]?)(\d{3})([-]?)(\d{3})$/.test(input.value); + break; + case 'CA': + isValid = + /^(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|X|Y){1}[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}\s?[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}[0-9]{1}$/i.test(input.value); + break; + case 'CH': + isValid = /^([1-9]{1})(\d{3})$/.test(input.value); + break; + case 'CZ': + // Test: http://regexr.com/39hhr + isValid = /^(\d{3})([ ]?)(\d{2})$/.test(input.value); + break; + // http://stackoverflow.com/questions/7926687/regular-expression-german-zip-codes + case 'DE': + isValid = /^(?!01000|99999)(0[1-9]\d{3}|[1-9]\d{4})$/.test(input.value); + break; + case 'DK': + isValid = /^(DK(-|\s)?)?\d{4}$/i.test(input.value); + break; + // Zip codes in Spain go from 01XXX to 52XXX. + // Test: http://refiddle.com/1ufo + case 'ES': + isValid = /^(?:0[1-9]|[1-4][0-9]|5[0-2])\d{3}$/.test(input.value); + break; + // http://en.wikipedia.org/wiki/Postal_codes_in_France + case 'FR': + isValid = /^[0-9]{5}$/i.test(input.value); + break; + case 'GB': + isValid = gb(input.value); + break; + // Indian PIN (Postal Index Number) validation + // http://en.wikipedia.org/wiki/Postal_Index_Number + // Test: http://regex101.com/r/kV0vH3/1 + case 'IN': + isValid = /^\d{3}\s?\d{3}$/.test(input.value); + break; + // http://www.eircode.ie/docs/default-source/Common/ + // prepare-your-business-for-eircode---published-v2.pdf?sfvrsn=2 + // Test: http://refiddle.com/1kpl + case 'IE': + isValid = /^(D6W|[ACDEFHKNPRTVWXY]\d{2})\s[0-9ACDEFHKNPRTVWXY]{4}$/.test(input.value); + break; + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Italy + case 'IT': + isValid = /^(I-|IT-)?\d{5}$/i.test(input.value); + break; + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Morocco + case 'MA': + isValid = /^[1-9][0-9]{4}$/i.test(input.value); + break; + // http://en.wikipedia.org/wiki/Postal_codes_in_the_Netherlands + case 'NL': + isValid = /^[1-9][0-9]{3} ?(?!sa|sd|ss)[a-z]{2}$/i.test(input.value); + break; + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Poland + case 'PL': + isValid = /^[0-9]{2}-[0-9]{3}$/.test(input.value); + break; + // Test: http://refiddle.com/1l2t + case 'PT': + isValid = /^[1-9]\d{3}-\d{3}$/.test(input.value); + break; + case 'RO': + isValid = /^(0[1-8]{1}|[1-9]{1}[0-5]{1})?[0-9]{4}$/i.test(input.value); + break; + case 'RU': + isValid = /^[0-9]{6}$/i.test(input.value); + break; + case 'SE': + isValid = /^(S-)?\d{3}\s?\d{2}$/i.test(input.value); + break; + case 'SG': + isValid = /^([0][1-9]|[1-6][0-9]|[7]([0-3]|[5-9])|[8][0-2])(\d{4})$/i.test(input.value); + break; + case 'SK': + // Test: http://regexr.com/39hhr + isValid = /^(\d{3})([ ]?)(\d{2})$/.test(input.value); + break; + case 'US': + default: + isValid = /^\d{4,5}([-]?\d{4})?$/.test(input.value); + break; + } + return { + message: format(input.l10n && input.l10n.zipCode ? opts.message || input.l10n.zipCode.country : opts.message, input.l10n && input.l10n.zipCode && input.l10n.zipCode.countries + ? input.l10n.zipCode.countries[country] + : country), + valid: isValid, + }; + }, + }; + } + + return zipCode; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js new file mode 100644 index 0000000..01d8236 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-zip-code + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.zipCode=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,t=e.utils.removeUndefined;return function(){var e=["AT","BG","BR","CA","CH","CZ","DE","DK","ES","FR","GB","IE","IN","IT","MA","NL","PL","PT","RO","RU","SE","SG","SK","US"];return{validate:function(s){var i=Object.assign({},{message:""},t(s.options));if(""===s.value||!i.country)return{valid:!0};var r=s.value.substr(0,2);if(!(r="function"==typeof i.country?i.country.call(this):i.country)||-1===e.indexOf(r.toUpperCase()))return{valid:!0};var o=!1;switch(r=r.toUpperCase()){case"AT":case"CH":o=/^([1-9]{1})(\d{3})$/.test(s.value);break;case"BG":o=/^([1-9]{1}[0-9]{3})$/.test(s.value);break;case"BR":o=/^(\d{2})([.]?)(\d{3})([-]?)(\d{3})$/.test(s.value);break;case"CA":o=/^(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|X|Y){1}[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}\s?[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}[0-9]{1}$/i.test(s.value);break;case"CZ":case"SK":o=/^(\d{3})([ ]?)(\d{2})$/.test(s.value);break;case"DE":o=/^(?!01000|99999)(0[1-9]\d{3}|[1-9]\d{4})$/.test(s.value);break;case"DK":o=/^(DK(-|\s)?)?\d{4}$/i.test(s.value);break;case"ES":o=/^(?:0[1-9]|[1-4][0-9]|5[0-2])\d{3}$/.test(s.value);break;case"FR":o=/^[0-9]{5}$/i.test(s.value);break;case"GB":o=function(e){for(var a="[ABCDEFGHIJKLMNOPRSTUWYZ]",t="[ABCDEFGHKLMNOPQRSTUVWXY]",s="[ABDEFGHJLNPQRSTUWXYZ]",i=0,r=[new RegExp("^(".concat(a,"{1}").concat(t,"?[0-9]{1,2})(\\s*)([0-9]{1}").concat(s,"{2})$"),"i"),new RegExp("^(".concat(a,"{1}[0-9]{1}").concat("[ABCDEFGHJKPMNRSTUVWXY]","{1})(\\s*)([0-9]{1}").concat(s,"{2})$"),"i"),new RegExp("^(".concat(a,"{1}").concat(t,"{1}?[0-9]{1}").concat("[ABEHMNPRVWXY]","{1})(\\s*)([0-9]{1}").concat(s,"{2})$"),"i"),new RegExp("^(BF1)(\\s*)([0-6]{1}[ABDEFGHJLNPQRST]{1}[ABDEFGHJLNPQRSTUWZYZ]{1})$","i"),/^(GIR)(\s*)(0AA)$/i,/^(BFPO)(\s*)([0-9]{1,4})$/i,/^(BFPO)(\s*)(c\/o\s*[0-9]{1,3})$/i,/^([A-Z]{4})(\s*)(1ZZ)$/i,/^(AI-2640)$/i];i
+ +@push('scripts') + +@endpush \ No newline at end of file diff --git a/resources/views/livewire/permission/role-list.blade.php b/resources/views/livewire/permission/role-list.blade.php new file mode 100644 index 0000000..b6f5182 --- /dev/null +++ b/resources/views/livewire/permission/role-list.blade.php @@ -0,0 +1,77 @@ +
+ @foreach($roles as $role) + +
+ +
+ +
+ +
+

{{ ucwords($role->name) }}

+
+ +
+ + +
+ +
Total users with this role: {{ $role->users->count() }}
+ + +
+ @foreach($role->permissions->shuffle()->take(5) ?? [] as $permission) +
+ {{ ucfirst($permission->name) }}
+ @endforeach + @if($role->permissions->count() > 5) +
+ + and {{ $role->permissions->count()-5 }} more... +
+ @endif + @if($role->permissions->count() ===0) +
+ + No permissions given... +
+ @endif +
+ +
+ + + + +
+ +
+ + @endforeach + + +
+ +
+ +
+ + + +
+ +
+ +
+ +
diff --git a/resources/views/livewire/permission/role-modal.blade.php b/resources/views/livewire/permission/role-modal.blade.php new file mode 100644 index 0000000..98bcba2 --- /dev/null +++ b/resources/views/livewire/permission/role-modal.blade.php @@ -0,0 +1,133 @@ + + +@push('scripts') + +@endpush \ No newline at end of file diff --git a/resources/views/livewire/user/add-user-modal.blade.php b/resources/views/livewire/user/add-user-modal.blade.php new file mode 100644 index 0000000..ca03d0a --- /dev/null +++ b/resources/views/livewire/user/add-user-modal.blade.php @@ -0,0 +1,160 @@ + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/permissions/columns/_actions.blade.php b/resources/views/pages/apps/user-management/permissions/columns/_actions.blade.php new file mode 100644 index 0000000..c91cacb --- /dev/null +++ b/resources/views/pages/apps/user-management/permissions/columns/_actions.blade.php @@ -0,0 +1,6 @@ + + diff --git a/resources/views/pages/apps/user-management/permissions/columns/_assign-to.blade.php b/resources/views/pages/apps/user-management/permissions/columns/_assign-to.blade.php new file mode 100644 index 0000000..d4f33b2 --- /dev/null +++ b/resources/views/pages/apps/user-management/permissions/columns/_assign-to.blade.php @@ -0,0 +1,5 @@ +@foreach($roles as $role) + + {{ $role->name }} + +@endforeach diff --git a/resources/views/pages/apps/user-management/permissions/columns/_draw-scripts.js b/resources/views/pages/apps/user-management/permissions/columns/_draw-scripts.js new file mode 100644 index 0000000..ef7aaad --- /dev/null +++ b/resources/views/pages/apps/user-management/permissions/columns/_draw-scripts.js @@ -0,0 +1,21 @@ +// Add click event listener to delete buttons +document.querySelectorAll('[data-kt-action="delete_row"]').forEach(function (element) { + element.addEventListener('click', function (e) { + Swal.fire({ + text: 'Are you sure you want to remove?', + icon: 'warning', + buttonsStyling: false, + showCancelButton: true, + confirmButtonText: 'Yes', + cancelButtonText: 'No', + customClass: { + confirmButton: 'btn btn-danger', + cancelButton: 'btn btn-secondary', + } + }).then((result) => { + if (result.isConfirmed) { + Livewire.emit('delete_permission', this.getAttribute('data-permission-id')); + } + }); + }); +}); diff --git a/resources/views/pages/apps/user-management/permissions/list.blade.php b/resources/views/pages/apps/user-management/permissions/list.blade.php new file mode 100644 index 0000000..bcc01b5 --- /dev/null +++ b/resources/views/pages/apps/user-management/permissions/list.blade.php @@ -0,0 +1,85 @@ + + + @section('title') + Permissions + @endsection + + @section('breadcrumbs') + {{ Breadcrumbs::render('user-management.permissions.index') }} + @endsection + +
+ +
+ +
+ +
+ {!! getIcon('magnifier','fs-3 position-absolute ms-5') !!} + +
+ +
+ + + +
+ +
+ +
+ + + +
+
+ + Selected +
+ + +
+ + + + + +
+ +
+ + + +
+ +
+ {{ $dataTable->table() }} +
+ +
+ +
+ + + + @push('scripts') + {{ $dataTable->scripts() }} + + @endpush + +
diff --git a/resources/views/pages/apps/user-management/roles/columns/_actions.blade.php b/resources/views/pages/apps/user-management/roles/columns/_actions.blade.php new file mode 100644 index 0000000..0136150 --- /dev/null +++ b/resources/views/pages/apps/user-management/roles/columns/_actions.blade.php @@ -0,0 +1,23 @@ + + Actions + + + + + diff --git a/resources/views/pages/apps/user-management/roles/columns/_draw-scripts.js b/resources/views/pages/apps/user-management/roles/columns/_draw-scripts.js new file mode 100644 index 0000000..504726c --- /dev/null +++ b/resources/views/pages/apps/user-management/roles/columns/_draw-scripts.js @@ -0,0 +1,24 @@ +// Initialize KTMenu +KTMenu.init(); + +// Add click event listener to delete buttons +document.querySelectorAll('[data-kt-action="delete_row"]').forEach(function (element) { + element.addEventListener('click', function () { + if (confirm('Are you sure you want to remove?')) { + Livewire.emit('delete_user', this.getAttribute('data-kt-user-id')); + } + }); +}); + +// Add click event listener to update buttons +document.querySelectorAll('[data-kt-action="update_row"]').forEach(function (element) { + element.addEventListener('click', function () { + Livewire.emit('update_user', this.getAttribute('data-kt-user-id')); + }); +}); + +// Listen for 'success' event emitted by Livewire +Livewire.on('success', (message) => { + // Reload the users-table datatable + LaravelDataTables['users-table'].ajax.reload(); +}); diff --git a/resources/views/pages/apps/user-management/roles/columns/_user.blade.php b/resources/views/pages/apps/user-management/roles/columns/_user.blade.php new file mode 100644 index 0000000..e0d4e7d --- /dev/null +++ b/resources/views/pages/apps/user-management/roles/columns/_user.blade.php @@ -0,0 +1,23 @@ + + + + +
+ + {{ $user->name }} + + {{ $user->email }} +
+ diff --git a/resources/views/pages/apps/user-management/roles/list.blade.php b/resources/views/pages/apps/user-management/roles/list.blade.php new file mode 100644 index 0000000..c46aa5d --- /dev/null +++ b/resources/views/pages/apps/user-management/roles/list.blade.php @@ -0,0 +1,21 @@ + + + @section('title') + Roles + @endsection + + @section('breadcrumbs') + {{ Breadcrumbs::render('user-management.roles.index') }} + @endsection + + +
+ +
+ + + + + + +
diff --git a/resources/views/pages/apps/user-management/roles/show.blade.php b/resources/views/pages/apps/user-management/roles/show.blade.php new file mode 100644 index 0000000..f9d2f8b --- /dev/null +++ b/resources/views/pages/apps/user-management/roles/show.blade.php @@ -0,0 +1,108 @@ + + + @section('title') + Roles + @endsection + + @section('breadcrumbs') + {{ Breadcrumbs::render('user-management.roles.show', $role) }} + @endsection + + +
+ +
+ +
+ +
+ +
+ +
+

{{ ucwords($role->name) }}

+
+ +
+ + +
+ +
+ @foreach($role->permissions->shuffle()->take(5) as $permission) +
+ + {{ ucfirst($permission->name) }} +
+ @endforeach + @if($role->permissions->count() > 5) +
+ + and {{ $role->permissions->count()-5 }} more... +
+ @endif + @if($role->permissions->count() ===0) +
+ + No permissions given... +
+ @endif +
+ +
+ + + + +
+ +
+ + +
+ +
+ +
+ +
+

Users Assigned + ({{ $role->users->count() }}) +

+
+ + +
+
+ +
+ + +
+ +
+ {{ $dataTable->table() }} +
+ +
+ +
+ +
+ +
+ +
+ + + + + + + @push('scripts') + {{ $dataTable->scripts() }} + @endpush + +
diff --git a/resources/views/pages/apps/user-management/users/columns/_actions.blade.php b/resources/views/pages/apps/user-management/users/columns/_actions.blade.php new file mode 100644 index 0000000..3dabd1d --- /dev/null +++ b/resources/views/pages/apps/user-management/users/columns/_actions.blade.php @@ -0,0 +1,31 @@ + + Actions + + + + + diff --git a/resources/views/pages/apps/user-management/users/columns/_draw-scripts.js b/resources/views/pages/apps/user-management/users/columns/_draw-scripts.js new file mode 100644 index 0000000..993ce6a --- /dev/null +++ b/resources/views/pages/apps/user-management/users/columns/_draw-scripts.js @@ -0,0 +1,37 @@ +// Initialize KTMenu +KTMenu.init(); + +// Add click event listener to delete buttons +document.querySelectorAll('[data-kt-action="delete_row"]').forEach(function (element) { + element.addEventListener('click', function () { + Swal.fire({ + text: 'Are you sure you want to remove?', + icon: 'warning', + buttonsStyling: false, + showCancelButton: true, + confirmButtonText: 'Yes', + cancelButtonText: 'No', + customClass: { + confirmButton: 'btn btn-danger', + cancelButton: 'btn btn-secondary', + } + }).then((result) => { + if (result.isConfirmed) { + Livewire.emit('delete_user', this.getAttribute('data-kt-user-id')); + } + }); + }); +}); + +// Add click event listener to update buttons +document.querySelectorAll('[data-kt-action="update_row"]').forEach(function (element) { + element.addEventListener('click', function () { + Livewire.emit('update_user', this.getAttribute('data-kt-user-id')); + }); +}); + +// Listen for 'success' event emitted by Livewire +Livewire.on('success', (message) => { + // Reload the users-table datatable + LaravelDataTables['users-table'].ajax.reload(); +}); diff --git a/resources/views/pages/apps/user-management/users/columns/_user.blade.php b/resources/views/pages/apps/user-management/users/columns/_user.blade.php new file mode 100644 index 0000000..e0d4e7d --- /dev/null +++ b/resources/views/pages/apps/user-management/users/columns/_user.blade.php @@ -0,0 +1,23 @@ + + + + +
+ + {{ $user->name }} + + {{ $user->email }} +
+ diff --git a/resources/views/pages/apps/user-management/users/list.blade.php b/resources/views/pages/apps/user-management/users/list.blade.php new file mode 100644 index 0000000..307a61b --- /dev/null +++ b/resources/views/pages/apps/user-management/users/list.blade.php @@ -0,0 +1,72 @@ + + + @section('title') + Users + @endsection + + @section('breadcrumbs') + {{ Breadcrumbs::render('user-management.users.index') }} + @endsection + +
+ +
+ +
+ +
+ {!! getIcon('magnifier', 'fs-3 position-absolute ms-5') !!} + +
+ +
+ + + +
+ +
+ + + +
+ + + + + +
+ +
+ + + +
+ +
+ {{ $dataTable->table() }} +
+ +
+ +
+ + @push('scripts') + {{ $dataTable->scripts() }} + + @endpush + +
diff --git a/resources/views/pages/apps/user-management/users/modals/_add-auth-app.blade.php b/resources/views/pages/apps/user-management/users/modals/_add-auth-app.blade.php new file mode 100644 index 0000000..978bec1 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_add-auth-app.blade.php @@ -0,0 +1,58 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_add-one-time-password.blade.php b/resources/views/pages/apps/user-management/users/modals/_add-one-time-password.blade.php new file mode 100644 index 0000000..a94cb88 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_add-one-time-password.blade.php @@ -0,0 +1,92 @@ + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_add-schedule.blade.php b/resources/views/pages/apps/user-management/users/modals/_add-schedule.blade.php new file mode 100644 index 0000000..0ae7fbc --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_add-schedule.blade.php @@ -0,0 +1,93 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_add-task.blade.php b/resources/views/pages/apps/user-management/users/modals/_add-task.blade.php new file mode 100644 index 0000000..d420ea7 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_add-task.blade.php @@ -0,0 +1,83 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_update-details.blade.php b/resources/views/pages/apps/user-management/users/modals/_update-details.blade.php new file mode 100644 index 0000000..ec500fd --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_update-details.blade.php @@ -0,0 +1,539 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_update-email.blade.php b/resources/views/pages/apps/user-management/users/modals/_update-email.blade.php new file mode 100644 index 0000000..53c5213 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_update-email.blade.php @@ -0,0 +1,78 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_update-password.blade.php b/resources/views/pages/apps/user-management/users/modals/_update-password.blade.php new file mode 100644 index 0000000..cb03e77 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_update-password.blade.php @@ -0,0 +1,96 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/modals/_update-role.blade.php b/resources/views/pages/apps/user-management/users/modals/_update-role.blade.php new file mode 100644 index 0000000..6409902 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/modals/_update-role.blade.php @@ -0,0 +1,164 @@ + + \ No newline at end of file diff --git a/resources/views/pages/apps/user-management/users/show.blade.php b/resources/views/pages/apps/user-management/users/show.blade.php new file mode 100644 index 0000000..bc16e53 --- /dev/null +++ b/resources/views/pages/apps/user-management/users/show.blade.php @@ -0,0 +1,2761 @@ + + + @section('title') + Users + @endsection + + @section('breadcrumbs') + {{ Breadcrumbs::render('user-management.users.show', $user) }} + @endsection + + +
+ +
+ +
+ +
+ + +
+ +
+ @if($user->profile_photo_url) + image + @else +
+ {{ substr($user->name, 0, 1) }} +
+ @endif +
+ + + {{ $user->name }} + + +
+ @foreach($user->roles as $role) + +
{{ ucwords($role->name) }}
+ + @endforeach +
+ + + +
Assigned Tickets + + + + + + + +
+ +
+ +
+
+ 243 + + + + +
+
Total
+
+ + +
+
+ 56 + + + + +
+
Solved
+
+ + +
+
+ 188 + + + + +
+
Open
+
+ +
+ +
+ + + +
+ + + Edit + +
+ +
+ +
+
+ +
Account ID
+
ID-45453423
+ + +
Email
+ + + +
Address
+
101 Collin Street, +
Melbourne 3000 VIC +
Australia +
+ + +
Language
+
English
+ + +
Last Login
+
05 May 2023, 9:23 pm
+ +
+
+ +
+ +
+ + +
+ +
+
+

Connected Accounts

+
+
+ + +
+ +
+ + + + +
+ +
+
By connecting an account, you hereby agree to our + privacy policyand + terms of use. +
+
+ +
+ +
+ + +
+ +
+
+ +
+ Google +
Plan properly your workflow
+
+
+
+ + + +
+
+ +
+ +
+
+ +
+ Github +
Keep eye on on your Repositories
+
+
+
+ + + +
+
+ +
+ +
+
+ +
+ Slack +
Integrate Projects Discussions
+
+
+
+ + + +
+
+ +
+ +
+ + + + +
+ +
+ + +
+ + + + +
+ +
+ +
+ +
+ +
+

User's Schedule

+
2 upcoming meetings
+
+ + +
+ +
+ +
+ + +
+ + + + +
+ +
+ +
+ +
+ + +
+ +
13:00 - 14:00 + pm +
+ + + Committee Review Approvals + + +
Lead by + David Stevenson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Weekly Team Stand-Up + + +
Lead by + Yannis Gloverson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + Creative Content Initiative + + +
Lead by + Bob Harris +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + 9 Degree Project Estimation Meeting + + +
Lead by + Karina Clarke +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Committee Review Approvals + + +
Lead by + David Stevenson +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + 9 Degree Project Estimation Meeting + + +
Lead by + Caleb Donaldson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + 9 Degree Project Estimation Meeting + + +
Lead by + Michael Walters +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Dashboard UI/UX Design Review + + +
Lead by + Sean Bean +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
16:30 - 17:30 + pm +
+ + + 9 Degree Project Estimation Meeting + + +
Lead by + Kendell Trevor +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Project Review & Testing + + +
Lead by + Walter White +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + Project Review & Testing + + +
Lead by + Mark Randall +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Committee Review Approvals + + +
Lead by + Terry Robins +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Team Backlog Grooming Session + + +
Lead by + Yannis Gloverson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
10:00 - 11:00 + am +
+ + + Project Review & Testing + + +
Lead by + Yannis Gloverson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Sales Pitch Proposal + + +
Lead by + Terry Robins +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
13:00 - 14:00 + pm +
+ + + Lunch & Learn Catch Up + + +
Lead by + Kendell Trevor +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
16:30 - 17:30 + pm +
+ + + Sales Pitch Proposal + + +
Lead by + Naomi Hayabusa +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
16:30 - 17:30 + pm +
+ + + Team Backlog Grooming Session + + +
Lead by + Naomi Hayabusa +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
13:00 - 14:00 + pm +
+ + + Committee Review Approvals + + +
Lead by + Caleb Donaldson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
13:00 - 14:00 + pm +
+ + + Sales Pitch Proposal + + +
Lead by + Terry Robins +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Creative Content Initiative + + +
Lead by + Sean Bean +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Dashboard UI/UX Design Review + + +
Lead by + Walter White +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Dashboard UI/UX Design Review + + +
Lead by + Peter Marcus +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + Dashboard UI/UX Design Review + + +
Lead by + Caleb Donaldson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Project Review & Testing + + +
Lead by + Michael Walters +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + 9 Degree Project Estimation Meeting + + +
Lead by + Mark Randall +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Creative Content Initiative + + +
Lead by + Peter Marcus +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Weekly Team Stand-Up + + +
Lead by + Caleb Donaldson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Development Team Capacity Review + + +
Lead by + Caleb Donaldson +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
13:00 - 14:00 + pm +
+ + + Marketing Campaign Discussion + + +
Lead by + Karina Clarke +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Lunch & Learn Catch Up + + +
Lead by + Walter White +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Committee Review Approvals + + +
Lead by + Kendell Trevor +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + Dashboard UI/UX Design Review + + +
Lead by + Sean Bean +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
12:00 - 13:00 + pm +
+ + + Project Review & Testing + + +
Lead by + Michael Walters +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Sales Pitch Proposal + + +
Lead by + Terry Robins +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Dashboard UI/UX Design Review + + +
Lead by + David Stevenson +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Marketing Campaign Discussion + + +
Lead by + Bob Harris +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Creative Content Initiative + + +
Lead by + Kendell Trevor +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
9:00 - 10:00 + am +
+ + + Committee Review Approvals + + +
Lead by + Kendell Trevor +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
16:30 - 17:30 + pm +
+ + + Lunch & Learn Catch Up + + +
Lead by + Terry Robins +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Committee Review Approvals + + +
Lead by + Walter White +
+ +
+ + + View + +
+ +
+ + +
+ +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Marketing Campaign Discussion + + +
Lead by + Peter Marcus +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
11:00 - 11:45 + am +
+ + + Creative Content Initiative + + +
Lead by + Sean Bean +
+ +
+ + + View + +
+ + +
+ +
+ + +
+ +
14:30 - 15:30 + pm +
+ + + Project Review & Testing + + +
Lead by + Michael Walters +
+ +
+ + + View + +
+ +
+ +
+ +
+ +
+ + +
+ +
+ +
+

User's Tasks

+
Total 25 tasks in backlog
+
+ + +
+ +
+ +
+ + +
+ +
+ +
+ + +
+ Create FureStibe branding logo + +
Due in 1 day + Karina Clark +
+ +
+ + + + + + + +
+ + +
+ +
+ + + + + + + + + + +
+ + +
+ +
+ + +
+ 9 Degree Project Estimation + +
Due in 1 week + Neil Owen +
+ +
+ + + + + + + +
+ + +
+ +
+ + +
+ Dashboard UI & UX for Leafr CRM + +
Due in 1 week + Olivia Wild +
+ +
+ + + + + + + +
+ + +
+ +
+ + +
+ Mivy App R&D, Meeting with clients + +
Due in 2 weeks + Sean Bean +
+ +
+ + + + + + + +
+ +
+ +
+ +
+ + +
+ +
+ +
+ +
+

Profile

+
+ +
+ + +
+ +
+ + + + + + + + + + + + + + + + + + + +
Emailsmith@kpmg.com + +
Password****** + +
RoleAdministrator + +
+ +
+ +
+ +
+ + +
+ +
+ +
+

Two Step Authentication

+
Keep your account extra secure with a second authentication step.
+
+ + +
+ + + + + + +
+ +
+ + +
+ +
+ +
+ SMS + +61 412 345 678 +
+ + +
+ + + + + + +
+ +
+ + +
+ + +
If you lose your mobile device or security key, you can + generate a backup codeto sign in to your account. +
+ +
+ +
+ + +
+ +
+ +
+

Email Notifications

+
Choose what messages you’d like to receive for each of your accounts.
+
+ +
+ + +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ +
+ +
+ +
+ + + + + + +
+ +
+ + +
+ + + + + + +
+ +
+ +
+ + + +
+ +
+ + +
+ +
+ +
+ +
+

Login Sessions

+
+ + +
+ + + +
+ +
+ + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LocationDeviceIP AddressTimeActions
AustraliaChome - Windows207.20.21.29523 seconds agoCurrent session
AustraliaSafari - iOS207.15.21.723 days ago + Sign out +
AustraliaChrome - Windows207.10.28.325last weekExpired
+ +
+ +
+ +
+ + +
+ +
+ +
+

Logs

+
+ + +
+ + + +
+ +
+ + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
500 ERR
+
POST /v1/invoice/in_6877_1633/invalid22 Sep 2023, 6:05 pm
+
500 ERR
+
POST /v1/invoice/in_6877_1633/invalid25 Oct 2023, 11:30 am
+
200 OK
+
POST /v1/invoices/in_5648_7203/payment15 Apr 2023, 6:43 am
+
500 ERR
+
POST /v1/invoice/in_6877_1633/invalid25 Oct 2023, 8:43 pm
+
200 OK
+
POST /v1/invoices/in_1431_5657/payment21 Feb 2023, 11:05 am
+ +
+ +
+ +
+ + +
+ +
+ +
+

Events

+
+ + +
+ + + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Melody Macyhas made payment to + #XRS-45670 + 10 Mar 2023, 5:30 pm
Invoice + #SEP-45656status has changed from + Pendingto + In Progress + 10 Nov 2023, 5:30 pm
+ Max Smithhas made payment to + #SDK-45670 + 10 Mar 2023, 11:30 am
+ Brian Coxhas made payment to + #OLP-45690 + 10 Nov 2023, 11:05 am
+ Melody Macyhas made payment to + #XRS-45670 + 20 Jun 2023, 6:43 am
Invoice + #LOP-45640has been + Declined + 25 Jul 2023, 5:30 pm
Invoice + #SEP-45656status has changed from + Pendingto + In Progress + 21 Feb 2023, 8:43 pm
Invoice + #DER-45645status has changed from + In Progressto + In Transit + 25 Jul 2023, 10:10 pm
+ Brian Coxhas made payment to + #OLP-45690 + 10 Nov 2023, 9:23 pm
+ Melody Macyhas made payment to + #XRS-45670 + 25 Oct 2023, 11:30 am
+ +
+ +
+ +
+ +
+ +
+ +
+ + + + @include('pages.apps/user-management/users/modals/_update-details') + + + @include('pages.apps/user-management/users/modals/_add-schedule') + + + @include('pages.apps/user-management/users/modals/_add-one-time-password') + + + @include('pages.apps/user-management/users/modals/_update-email') + + + @include('pages.apps/user-management/users/modals/_update-password') + + + @include('pages.apps/user-management/users/modals/_update-role') + + + @include('pages.apps/user-management/users/modals/_add-auth-app') + + + @include('pages.apps/user-management/users/modals/_add-task') + + +
diff --git a/resources/views/pages/auth/confirm-password.blade.php b/resources/views/pages/auth/confirm-password.blade.php new file mode 100644 index 0000000..71f8bfe --- /dev/null +++ b/resources/views/pages/auth/confirm-password.blade.php @@ -0,0 +1,34 @@ + + +
+ @csrf + + +
+ +

Confirm Password

+ + +
This is a secure area of the application. Please confirm your password before continuing.
+ +
+ + +
+ + + +
+ +
+ + Cancel +
+ +
+
+ + +
diff --git a/resources/views/pages/auth/forgot-password.blade.php b/resources/views/pages/auth/forgot-password.blade.php new file mode 100644 index 0000000..a69c5ff --- /dev/null +++ b/resources/views/pages/auth/forgot-password.blade.php @@ -0,0 +1,41 @@ + + + +
+ @csrf + +
+ +

+ Forgot Password ? +

+ + + +
+ Enter your email to reset your password. +
+ +
+ + + +
+ + + +
+ + +
+ + + Cancel +
+ +
+ + +
diff --git a/resources/views/pages/auth/login.blade.php b/resources/views/pages/auth/login.blade.php new file mode 100644 index 0000000..fb6aae0 --- /dev/null +++ b/resources/views/pages/auth/login.blade.php @@ -0,0 +1,102 @@ + + + +
+ @csrf + +
+ +

+ Sign In +

+ + + +
+ Your Social Campaigns +
+ +
+ + + + + + + +
+ Or with email +
+ + + +
+ + + +
+ + +
+ + + +
+ + + + + + + +
+ +
+ + + +
+ Not a Member yet? + + + Sign up + +
+ +
+ + +
diff --git a/resources/views/pages/auth/register.blade.php b/resources/views/pages/auth/register.blade.php new file mode 100644 index 0000000..b4ab66a --- /dev/null +++ b/resources/views/pages/auth/register.blade.php @@ -0,0 +1,145 @@ + + + +
+ @csrf + +
+ +

+ Sign Up +

+ + + +
+ Your Social Campaigns +
+ +
+ + + + + + + +
+ Or with email +
+ + + +
+ + + +
+ + +
+ + + +
+ + +
+ +
+ +
+ + + + + + +
+ + + +
+
+
+
+
+
+ +
+ + + +
+ Use 8 or more characters with a mix of letters, numbers & symbols. +
+ +
+ + + +
+ + + +
+ + + +
+
+ + + +
+
+ + + +
+ +
+ + + +
+ Already have an Account? + + + Sign in + +
+ +
+ + +
diff --git a/resources/views/pages/auth/reset-password.blade.php b/resources/views/pages/auth/reset-password.blade.php new file mode 100644 index 0000000..a04eca4 --- /dev/null +++ b/resources/views/pages/auth/reset-password.blade.php @@ -0,0 +1,95 @@ + + + +
+ @csrf + + + + + + +
+ +

+ New Password +

+ + + +
+ Enter your new password. +
+ +
+ + + +
+ +
+ +
+ + + + + + +
+ + + +
+
+
+
+
+
+ +
+ + + +
+ Use 8 or more characters with a mix of letters, numbers & symbols. +
+ +
+ + + +
+ + + +
+ + + +
+
+ + + +
+
+ + + +
+ + + Cancel +
+ +
+ + +
diff --git a/resources/views/pages/auth/verify-email.blade.php b/resources/views/pages/auth/verify-email.blade.php new file mode 100644 index 0000000..9b007f9 --- /dev/null +++ b/resources/views/pages/auth/verify-email.blade.php @@ -0,0 +1,39 @@ + + +
+ +
+ +

Verify Email

+ + +
Thanks for signing up! Before getting started, could you verify your email address by clicking on the link we just emailed to you? If you didn\'t receive the email, we will gladly send you another
+ + + + @if (session('status') === 'verification-link-sent') +

+ {{ __('A new verification link has been sent to the email address you provided during registration.') }} +

+ @endif + +
+ + +
+ +
+ @csrf + +
+ +
+ @csrf + +
+
+ +
+ + +
diff --git a/resources/views/vendor/breadcrumbs/bootstrap5.blade.php b/resources/views/vendor/breadcrumbs/bootstrap5.blade.php new file mode 100644 index 0000000..8048d00 --- /dev/null +++ b/resources/views/vendor/breadcrumbs/bootstrap5.blade.php @@ -0,0 +1,26 @@ +@unless ($breadcrumbs->isEmpty()) + +@endunless diff --git a/routes/auth.php b/routes/auth.php new file mode 100644 index 0000000..54c9ae1 --- /dev/null +++ b/routes/auth.php @@ -0,0 +1,56 @@ +group(function () { + Route::get('register', [RegisteredUserController::class, 'create']) + ->name('register'); + + Route::post('register', [RegisteredUserController::class, 'store']); + + Route::get('login', [AuthenticatedSessionController::class, 'create']) + ->name('login'); + + Route::post('login', [AuthenticatedSessionController::class, 'store']); + + Route::get('forgot-password', [PasswordResetLinkController::class, 'create']) + ->name('password.request'); + + Route::post('forgot-password', [PasswordResetLinkController::class, 'store']) + ->name('password.email'); + + Route::get('reset-password/{token}', [NewPasswordController::class, 'create']) + ->name('password.reset'); + + Route::post('reset-password', [NewPasswordController::class, 'store']) + ->name('password.update'); +}); + +Route::middleware('auth')->group(function () { + Route::get('verify-email', [EmailVerificationPromptController::class, '__invoke']) + ->name('verification.notice'); + + Route::get('verify-email/{id}/{hash}', [VerifyEmailController::class, '__invoke']) + ->middleware(['signed', 'throttle:6,1']) + ->name('verification.verify'); + + Route::post('email/verification-notification', [EmailVerificationNotificationController::class, 'store']) + ->middleware('throttle:6,1') + ->name('verification.send'); + + Route::get('confirm-password', [ConfirmablePasswordController::class, 'show']) + ->name('password.confirm'); + + Route::post('confirm-password', [ConfirmablePasswordController::class, 'store']); + + Route::post('logout', [AuthenticatedSessionController::class, 'destroy']) + ->name('logout'); +}); diff --git a/routes/breadcrumbs.php b/routes/breadcrumbs.php new file mode 100644 index 0000000..e6553d0 --- /dev/null +++ b/routes/breadcrumbs.php @@ -0,0 +1,53 @@ +push('Home', route('dashboard')); +}); + +// Home > Dashboard +Breadcrumbs::for('dashboard', function (BreadcrumbTrail $trail) { + $trail->parent('home'); + $trail->push('Dashboard', route('dashboard')); +}); + +// Home > Dashboard > User Management +Breadcrumbs::for('user-management.index', function (BreadcrumbTrail $trail) { + $trail->parent('dashboard'); + $trail->push('User Management', route('user-management.users.index')); +}); + +// Home > Dashboard > User Management > Users +Breadcrumbs::for('user-management.users.index', function (BreadcrumbTrail $trail) { + $trail->parent('user-management.index'); + $trail->push('Users', route('user-management.users.index')); +}); + +// Home > Dashboard > User Management > Users > [User] +Breadcrumbs::for('user-management.users.show', function (BreadcrumbTrail $trail, User $user) { + $trail->parent('user-management.users.index'); + $trail->push(ucwords($user->name), route('user-management.users.show', $user)); +}); + +// Home > Dashboard > User Management > Roles +Breadcrumbs::for('user-management.roles.index', function (BreadcrumbTrail $trail) { + $trail->parent('user-management.index'); + $trail->push('Roles', route('user-management.roles.index')); +}); + +// Home > Dashboard > User Management > Roles > [Role] +Breadcrumbs::for('user-management.roles.show', function (BreadcrumbTrail $trail, Role $role) { + $trail->parent('user-management.roles.index'); + $trail->push(ucwords($role->name), route('user-management.roles.show', $role)); +}); + +// Home > Dashboard > User Management > Permission +Breadcrumbs::for('user-management.permissions.index', function (BreadcrumbTrail $trail) { + $trail->parent('user-management.index'); + $trail->push('Permissions', route('user-management.permissions.index')); +});