From e823610f64a36270ce3209757d8f13ed058a8a5a Mon Sep 17 00:00:00 2001 From: smilerz Date: Wed, 9 Jun 2021 20:41:40 -0500 Subject: [PATCH] Squashed commit of the following: commit afd82c31d7451d5709e29c61440ce4479a58df6d Author: smilerz Date: Wed Jun 9 20:40:08 2021 -0500 yarn build commit 1ba5ebcc71595a89690356c60050c996dfed69a8 Author: smilerz Date: Wed Jun 9 20:34:58 2021 -0500 minor fixes commit 3bc045e8e4bd8d3802607f9d5202b67a2159c0c0 Author: smilerz Date: Wed Jun 9 20:05:27 2021 -0500 undelete manage.py commit b5ddcb4f81dc860405d849fa6fea33af381415d8 Author: smilerz Date: Wed Jun 9 19:54:59 2021 -0500 flake8 cleanup commit 84e611c0d6633ca5eede8e55f0a0d42dce12a938 Merge: c52cd359 52fea8b3 Author: smilerz Date: Wed Jun 9 19:54:44 2021 -0500 Merge branch 'working_with_keywords' into vue_keywords commit 52fea8b3736621c8b0a960c5cdd5bc2702654763 Author: smilerz Date: Wed Jun 9 19:34:46 2021 -0500 minor edit commit bccbd52f64e76be085390bec9c7d08cd79611536 Author: smilerz Date: Wed Jun 9 18:53:43 2021 -0500 refactored using openapi and updated tests commit be86145884035a7daf266816a2aa6678f679530d Author: smilerz Date: Wed Jun 9 07:19:31 2021 -0500 update migrations commit 034402054ca08196f6fd1f5b6c49cd210bbf35c5 Author: smilerz Date: Tue Jun 8 17:21:04 2021 -0500 fix migrations commit 4c5c93a7c1e079b3205aea5625e77a3757d639c6 Author: smilerz Date: Tue Jun 8 17:07:00 2021 -0500 Fix after rebase commit 80087b5a99cd8bafa2c0f9ffa0a8e476abb511fc Author: smilerz Date: Tue Jun 8 12:41:24 2021 -0500 fix ingredient missing commit 432577bfd8c196148dcec71afb816bb8ac9025de Author: smilerz Date: Tue Jun 8 12:33:04 2021 -0500 test for tree and root keyword parameters commit abc969f923e9cc30f3a33786b8d7d217458aab15 Author: smilerz Date: Tue Jun 8 10:39:49 2021 -0500 refactored move and merge APIs commit 28d2dc18e8713279815a7955779af953592203c5 Author: smilerz Date: Mon Jun 7 10:49:48 2021 -0500 fix from rebase commit 4f5225c1e52e83e87cc3955ebefd3d57acb4014f Author: smilerz Date: Sun Jun 6 17:14:48 2021 -0500 fix after rebase commit 36fd3578af585b0dd60ebd6a55f5c4c3da3498dd Author: smilerz Date: Sun Jun 6 16:54:16 2021 -0500 fix migrations commit 437b2b23207e118c3887fc31caa12f798d394dc7 Author: smilerz Date: Sun Jun 6 16:19:38 2021 -0500 Fix after rebase commit 55ccaf8d05262490d1050ca1a48afe430deb8b80 Author: smilerz Date: Sun Jun 6 15:45:08 2021 -0500 fix nginx config commit 20bee3318bfac32cf57ec9053406a0ef831f897b Author: smilerz Date: Thu May 20 16:48:07 2021 -0500 WIP commit 73154ec00e8e81fe42e89e9f34762cb0e0ada92b Author: smilerz Date: Thu May 20 16:47:43 2021 -0500 WIP commit 2a585624f9315bd82bc79b6ff4541a74000746a6 Author: smilerz Date: Thu May 20 16:27:42 2021 -0500 WIP commit 2d9de4aed0783c0ae1c8b38c3f00c0ab0b12324a Author: smilerz Date: Thu May 20 15:37:51 2021 -0500 WIP commit a259d285889e38d914d937443238c25a1e2b8a6a Author: smilerz Date: Thu May 20 08:25:20 2021 -0500 WIP commit 35c25befab067a8e50f0d01d89ecbc739cc84bfe Author: smilerz Date: Tue May 11 13:26:07 2021 -0500 delete old keyword tree list commit 2aab22667ce273ef6ffaee34374aa6c63d66ba70 Author: smilerz Date: Mon May 10 14:30:31 2021 -0500 view recipes in keyword view commit 1247eda4e2565894c89638b13beea5f3603c9d36 Author: smilerz Date: Sun May 9 19:46:30 2021 -0500 finished drag and drop actions commit 7468bc551865e64af67a97cf78e7e87f8198e2bf Author: smilerz Date: Thu May 6 15:48:57 2021 -0500 stubbed out drag and drop actions commit 3cf7709eedee02372ffceff2045bb95b10bbf332 Author: smilerz Date: Wed May 5 21:01:45 2021 -0500 stubbed out drag-and-drop actions commit 72976645730ec0130ea7c228247baf1a3b5298a0 Author: smilerz Date: Tue May 4 10:30:31 2021 -0500 fix recipe pages commit e79e947af572bcb1ffae7e936e8356dc34f0611c Author: smilerz Date: Tue May 4 10:21:08 2021 -0500 WIP commit 3b9a2dcff12eb9cfbe7d5f26f70e891a10d3284a Author: smilerz Date: Sun May 2 20:31:06 2021 -0500 Fix after rebase commit d2b7734d491b7d1eaecbc486ff914ebeb2e903d1 Author: smilerz Date: Sat May 1 15:50:15 2021 -0500 added infinite scroll commit 1efb8c8938bd4bea954f7fb5802d218f7e779913 Author: smilerz Date: Sat May 1 07:45:23 2021 -0500 WIP commit 0aa55fbb33886bd9e8f26feb322a63d2776917f5 Author: smilerz Date: Sat May 1 07:24:50 2021 -0500 cleanup after rebase commit a0c31868ca2f45fd3d664180a0d9bc93c9dcfb8d Author: smilerz Date: Fri Apr 30 15:11:53 2021 -0500 stubbed out move keyword commit fb62ae0ac8a577405f429da99c73f0b9d65bfc00 Author: smilerz Date: Thu Apr 29 14:52:22 2021 -0500 WIP commit c3d88adf9c1fae5a5d1e368d7099cf3ba77cb725 Author: smilerz Date: Wed Apr 28 19:11:32 2021 -0500 new and edit keyword modals commit 5ab1fc33ab9859f53993db5dac516936532c56d8 Author: smilerz Date: Wed Apr 28 12:06:46 2021 -0500 removed conficting migration commit 7016ef7bd40f48a91191c66f131ff8afb1c58816 Author: smilerz Date: Wed Apr 28 11:42:43 2021 -0500 added new keyword modal commit 6676b442068e240b9a6a81d9bb88f7c7af53bc5c Author: smilerz Date: Tue Apr 27 12:42:17 2021 -0500 added delete modal commit da9bb141030ba01914278819436365a568f6e903 Author: smilerz Date: Mon Apr 26 11:30:31 2021 -0500 keyword card layout commit f802908ec466c7eee07b4b508172f23d153ab1e7 Author: smilerz Date: Mon Apr 26 08:33:32 2021 -0500 WIP commit cdce84b66b7750bc25cbe21d036c3e45eb47648f Author: smilerz Date: Sun Apr 25 20:26:55 2021 -0500 filter by keyword commit ae68ce02c99ae27769f8dd2299337870e3aaef2f Author: smilerz Date: Sun Apr 25 19:54:00 2021 -0500 Squashed commit of the following: commit 33d084f201502377f672bfa78e334069bfadab29 Author: smilerz Date: Sun Apr 25 19:50:51 2021 -0500 add trigrams to full text search commit 199a75d4b0ab924f896e8e53a5e5e55917c2a540 Author: smilerz Date: Sun Apr 25 19:35:17 2021 -0500 add unaccent to full text search vectors commit db13383614700f60f29d80ff24a71f4aaeb3f200 Author: smilerz Date: Sun Apr 25 19:09:54 2021 -0500 WIP commit ca06f6cf7936df0bdc633f1bbf9c2a5cfa84066d Author: smilerz Date: Wed Apr 21 19:01:20 2021 -0500 add trigrams to search rank commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit c573dc7d2f4db1011392199a004708f0dfdd2b31 Author: smilerz Date: Sun Apr 25 18:03:37 2021 -0500 WIP commit 41605f391265f2d928a8d4a684842bda3e54b3f6 Author: smilerz Date: Sun Apr 25 17:47:38 2021 -0500 stubbed out Keyword Card commit f86abee5674dae063d9de8fbaf96136292a874b2 Author: smilerz Date: Fri Apr 23 17:16:23 2021 -0500 create split screen for keywords commit b972f28379645bc40619c1da1a531f04db2943b9 Author: smilerz Date: Fri Apr 23 15:29:23 2021 -0500 stubbed out new keyword view commit e81b99cdcaac0a52b248911762f0ba9ff69446ed Author: smilerz Date: Fri Apr 23 15:28:48 2021 -0500 enhanced keyword api to include child/parent capability commit dd2855f05e8dac2714775a2a1ae604405b03914b Author: smilerz Date: Fri Apr 23 12:00:47 2021 -0500 removed space from keyword form commit 8c5f572e5a2eca3cdd4e904f88fbff3265e49fc9 Author: smilerz Date: Fri Apr 23 11:09:38 2021 -0500 expanded keyword tests and fixed failures commit e22975e4656f6663e2e278ca6362d1abeacdd407 Author: smilerz Date: Thu Apr 22 18:02:15 2021 -0500 moved get_or_create to keyword model commit 328a833c1022ac6e17c383e328bf1aa10f6e67c0 Author: smilerz Date: Thu Apr 22 16:35:42 2021 -0500 squash keyword commit 75d8d078e0922f8761ac426b9d775f900d76fc8f Author: smilerz Date: Thu Apr 22 16:35:31 2021 -0500 Squashed commit of the following: commit e766d4de6825efad3ec55823196f2872fab025c5 Author: smilerz Date: Tue Apr 6 14:39:57 2021 -0500 updated migrate commit cb94109a31d3c63dc22c7f22ac7a990a11e39f33 Merge: d16ad58 0862c0f Author: smilerz Date: Tue Apr 6 14:37:54 2021 -0500 Merge branch 'main_fork' into keywords commit d16ad58ed60c75077a0e8cce0295c4fb3e241493 Author: smilerz Date: Wed Mar 31 20:12:59 2021 -0500 fixed keyword serializer to pass tests commit 189c2fc647702dca4f6744df85eda3cf287cdbe5 Author: smilerz Date: Wed Mar 31 18:03:23 2021 -0500 updated keyword test to create tree nodes commit f716a20549f706f7427b9162ace6fab1a28e85c9 Author: smilerz Date: Wed Mar 31 14:46:57 2021 -0500 fixed api to accept all fields commit 1677042993dc74cca412a1ebb89648d5581f6eef Author: smilerz Date: Wed Mar 31 09:45:17 2021 -0500 restore delete in keyword api commit 3f08cb33195aeeaf1c731f959c57975deb84b9f0 Author: smilerz Date: Wed Mar 31 09:41:19 2021 -0500 allow delete of keyword parent commit 74a842a283729ad11f7177476920ff1bb472bde5 Author: smilerz Date: Wed Mar 31 09:37:26 2021 -0500 scopes and MP_Node work together on keywords commit 145dff4e096537d06524dab9f745ab600222766c Author: smilerz Date: Wed Mar 31 09:36:48 2021 -0500 safely delete keyword parent commit 69eb2481f57e18ceb499a73d26f8f9220eb575f8 Author: smilerz Date: Wed Mar 31 09:36:26 2021 -0500 cosmetic updates commit 6925ef3333bfee8c8e59ac6d2324e84dd1d2533d Author: smilerz Date: Tue Mar 30 16:46:36 2021 -0500 removed space from Keyword commit e029ecd18501817f4f6350cb98793628fba049c8 Author: smilerz Date: Tue Mar 30 16:25:02 2021 -0500 fixed sort order commit 2b47da0c92f8d813e93d6e65c5a26d06f5b60582 Author: smilerz Date: Tue Mar 30 14:39:59 2021 -0500 delete migrations commit 20492167298c7f284f9df0d7308a75cc93fd4c6d Author: smilerz Date: Tue Mar 30 14:39:43 2021 -0500 recreate keywored migration commit ff71eb857683abc2db088ced5ca8890e3e313b5e Author: smilerz Date: Tue Mar 30 12:52:37 2021 -0500 db migration for keyword tree commit 071b3e0650bede75c73a5dd198c5ccdcbd0f483b Author: smilerz Date: Tue Mar 30 12:38:45 2021 -0500 initial attempt at merge with upstream commit 6b7c9b4287413841681ebc630036e587cf10a813 Merge: 7078994 d16d77f Author: smilerz Date: Tue Mar 30 12:36:06 2021 -0500 Merge branch 'main_fork' into keywords commit 70789940520e220f0c2e168b0ec295e412b42462 Author: smilerz Date: Wed Mar 3 09:57:36 2021 -0600 finished tree_template commit 8dd2e7da9e99c4005de19ad6d16dcce02154d2dc Author: smilerz Date: Mon Mar 1 16:25:15 2021 -0600 added tests for move_keyword api commit 5d52e3bff0504f6ce596d38e15fdad67b294321b Author: smilerz Date: Mon Mar 1 14:47:28 2021 -0600 added api to move keyword nodes commit 0f13ba84b957ff9f9eb7e95b921a607c6138b700 Author: smilerz Date: Mon Mar 1 11:31:39 2021 -0600 convert Keyword from list to tree commit 05b9a85371613a31e53d7f2742f863edff8b1f43 Author: smilerz Date: Wed Feb 24 16:57:20 2021 -0600 update tests to reflect changes in Keyword commit c833a8b0928ce4f84b072c75de1d4b2c0ab057bd Author: smilerz Date: Wed Feb 24 16:56:55 2021 -0600 remove DELETE method from keyword API commit a4136dc849227a6c7b60db120778eb618e8501dc Author: smilerz Date: Wed Feb 24 12:09:55 2021 -0600 fixed adding keyword in new recipe form commit 17c5b6bf92b95e63ae671dd107bae6d2d0c7f503 Author: smilerz Date: Wed Feb 24 11:59:54 2021 -0600 fixed adding keyword during recipe import commit 0bf05da863de4bf86d886d3e757c7a712da0948a Author: smilerz Date: Thu Apr 22 16:08:52 2021 -0500 new branch commit 1f50bec6d146f93426fa740948e34a7e9b38cdc7 Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit ff131ffcef751a393a7831c584443d298951fdca Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit a568c474b30a62d1e73b0fc06820ff3c2f2ee772 Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit 597563bfa1c9bdf70e0c7f2839a87b01d50b09b0 Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit b65800f0004dd6609b7a2be5c55d4d3b7117b9a8 Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit 0445cbe081df1741ab1f550149eecdd2dd645580 Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit 7c0b19472eb7c2092fc33ef2a686628b1cafe8d2 Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit d358ced6d108592739a54142fc93f5b3b9f2f88b Author: smilerz Date: Tue Apr 20 12:21:58 2021 -0500 changed hardlink markdown link to reverse commit 30e0eb2ea8b01a2739cc0180cc7475c3e608e3fd Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit add9c5196a0ec6e61d80c3c2bef6b34ee6074d36 Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit 3d425c6b4011c058b2a9c9c56faf97fc0741e1be Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit 70f2d5287ec16a09b440353980ab2fe8f4d2cb68 Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit 366f3e4a5028b8345bb857d04090ac5508a03f5c Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit 7343886b0128b2d0f178b0bcd3fdf1768822d52e Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit e82152cba25b38839303d055e7b5b138a8fad23b Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit b94e540f480ec2daf71e6463a79b0d0c5a874b53 Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit c3d823105be6f5a57961c7ae16f21600ff1ef268 Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit 885770d86d39d8730918f40489ada92b27f8247c Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit 2813d906b088fb90de58f51b5deb8301fbc6c873 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit c4c78eb55ad081a007e4f1061a29f704a6601f6a Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit e72766a597c09c1f9bf454b37998da54a79d9b7d Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit 30e2396984d7d9d07fa930bc8a284546dae3db4f Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit 7479c7b065cafaa1a1ebaeab36b9e5ab8097b2bc Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit 6e7288be0a18ea1258e7a88894cc22aa7f1d921d Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit a78327bd719a5eedc6d19e0af3e4823187133ac6 Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit 00051709e824f61eab984f01df677cc93470f0e1 Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit 39e3d28e46e3aeb22f2b1ef22acc7490cd2c0e32 Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit 1c6a428e20cab13bf08f062e6673a1f143d90511 Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit e8cd814ddae3b69d457e085e5522b1dcbb2e5a91 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 95652d98008eca6ad5c79b928b02f98176846a4e Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 27b7f58c2548f634aba5d2dc2422cc321b0b2cca Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 6f61d1309f1bfd143a4b723e120054d0aea62e82 Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit 30d54770561ddf1d9e88409574d92cb5799e6961 Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 007c66d9b13edba49bd441e95c4b480837c074c7 Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit 13cdc8f9befef484b66208c54531b97a6aac81e2 Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit b16b8231f0a02a70ecd04fa62118af988c3bb171 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 18dd32e13ec07426fd9891ee582d1fbf58a51ffa Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 696d43467054463267da1f7eb2b7692505b28496 Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 83b87d9c948bbda67bbfe03aaedc5d26587d49ed Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit be7279ea24209847e83a0d8ccc4a4a841862ae76 Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit 9424ee823a3f02368ab4893efcac1977dde12230 Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit 58b0abfcb931aad2bff9839b335b5bba65198fa7 Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit 2297f02adb56e74e66fc5d4aa07a9f16284e0967 Author: smilerz Date: Thu Apr 15 16:03:56 2021 -0500 handle text cook times on import commit 8a2e05113311c4596b89d0bf28a1abf0b330e003 Author: smilerz Date: Thu Apr 15 14:45:34 2021 -0500 convert servings to number on import commit 285bdb637cf7691eee9a93f7b5cd3e1e902b781b Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit 04bdba9d2114131b8e5e380ad80bba1a1a4e8430 Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit e836e04b9cf179deda426741103db7fce94f2259 Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit af7265559151b17446736aa200273f528a5dff41 Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit eb7a5ea614bf2bc7fad78721b21c4c1e76189404 Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit b4f4e8af09ca04feffdd4d668f439ccae10e2425 Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit 360548219e75b8bcc57437c71d72e38b1eea20d0 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit c2a66e8f7cf7f3167a2c11f4b71c02b4ee781584 Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit fe1c9f78c8915942ec0f7d650dca981941196165 Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit 75e8953f27587101feb8a19457d5274dbbb08235 Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit edcf0c9562038994704f4b7a4ecefa3eefc116eb Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit eeeef897817afb31cde1f38d664b65e7766d4ca8 Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit 9e82189d2120007d645d26acfa2a258b1ddbf12f Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit 84ed96619100aa0a312599177bf2185b66652183 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit 27ef76216e1445c015b0e809e17fb372e944594b Author: smilerz Date: Wed Apr 14 13:44:03 2021 -0500 fixed workflow commit e53fa20f7abcd812c26a5db510ebb0bf22df6be5 Author: smilerz Date: Wed Apr 14 13:42:00 2021 -0500 fixed branch reference commit d02154a7f77250c86f70ab9b4d2196c9209cb4db Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit aa0fd608336a497238e6e4199f034eb198a919d5 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 335098b0013142b68daef596d93afe4960955565 Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 9ad84264605e1c0715071f90e9484b42a0743a0a Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 70902047eb6423519fda8a829ec8a82ff4b21d6e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 62dc60381b29cc0d3ebc4f958342bf2de9f70274 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit 9cc62d1b5c9f304af14c989bc236eb175e059829 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 18ed196db0a19a35b78b84858a30e1fb12cfbdb4 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bf2ac5de86b1dec1db013371ad30406cf9617c57 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 61c0f2608b5a75f688a98f470a020881ed86babb Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 1d7f83e70fffbd63ac813f0bc9911c15acf4977e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit f8c579cd70a402d154efdb3a1e383f4935027884 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit f442ae8a39b38c3555971b9de2f3286ad5cc9e46 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 1b491fa1f06693c9e356af4f1c07372ffcd4417d Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 1caeddcb4ea9321d1c92480118be5cff77caaa76 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 7450842baeb2d1db1406e0a34f5b4fb8ca01112c Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit af2259639ed86eabd88c0f09eec254f9cdac2eed Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit d477f11b9152cc86372e7b0403fff135d1f4dd00 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 3159a97e53d91c1b8cd388d9c86faa2af8669110 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit b5f535b1b17b85c88b3a312360cb83d1c253bfad Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 7e15525bc4b1710da3c9d3a7606276c0c39456e3 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 240f4008efe2cd7f5d4738bcf02700234aca5d20 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit acab9b6268b56592be5ceacefda7d1503f3a6253 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 18bab0dd498b0413f272e305799eea2eb06da697 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit dcb791ec1b47e958dcf26d0eb3e761a8e6f68d2b Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 5e4bdc1dd095d39e4df2e80921e4f7be2f50b80e Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 11e05fc5c30ee842896b1766d9ff50e559e743cc Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 80d8657d551cdb7393631cf6af2171ad48288b22 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit ecc74ebab163afa7e1a15bbcc16e46e35dbb3bea Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit d4f85f3440bd047dd8abdc19af37905d1b4c6dd2 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 7563b104d271c8aadea77781bc617122dc7d6308 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 2429cc097d00f1ebc64f53dce85ac9889954c82d Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 079a2fdf2abef9bb168b7bd6e27c534f589725cf Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit d51ec991133eccf62a1f81ab4f3fbe943b2bb1e8 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 2f4e7f17479e631f49929a02a7cd2def5918bd8a Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 77bc53016b1495ba514cfdb789587891ded8c525 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit de62ea8159eca98f296cc160654d63c601654730 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 43b09efd17f9bc1028f020857711d356a8fc950c Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 5e97533a792627c639113e57f7ca30ea691287a7 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit c0bd70f9cc0e9e0f4e18288dea2fe099300e5533 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 663ee33835e086182cbe3aa1af07937b754136b6 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 24971705b434f50586e48a4f238b2755f61bf21b Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1a2fcb28a7dd281c6892d7287eba6710dd18acb0 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e3bddd5025234676fcea18c585088b22034f7ada Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit a1cbeb15374a5d7cf38bc9e204f1aff3056daf3e Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 49a0b66d9cb9a65d824d9479776d23c7bf88d066 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit e3901d4946122b43143e26200459234289f6bb75 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 8728a74700a79b94840368e3f7f90bed699de7a3 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 22c1f205d5e56404e98192fb964801c59bb6f6ed Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit d99972a9341bddeac937b92f1a79e85f3bec4d9d Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 1b02262f29065c9e16b7fa51f5deca2082aa6104 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit b969e5ac8091bab00d1b9ce163d41c1350cfc229 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit b2e735eeee503b099689370d2b0e667795f45c4c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 26beec9ddef729954cd7684923fc526aa8bc753f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit bc503b211d589eca00a5cbe599995f39ae4368f1 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 73cd61e826155e3eff75f4cc435af21150df988d Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 70b20681089a34005d6b44f1733908395bb79483 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 0c1336cbd36d32699a9b48cbe18177134cf4428d Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 22630f95b0bffdfc53c791379560ee044e9e1459 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 6ef12e1cd244ee062b33980758e0a1e72e8ff88b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 1093cb07647f06434fea0bee68057679f4347b01 Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit 960ccf509450df025d060fed81b9ba66642b792a Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 585bb0fb8fdaa61efa92c73d1ff2a39cb5ca0162 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit c57e8d9ee0f8498945d014b1a5039db3e8e7f086 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit 38a4bd82816aab44cbb35c9e1b96a559bd9b9810 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit e1594fe6f4543810185deee24d9fc2f66f060d8b Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit b30a1622c845ef5c18c228983ba157c514093905 Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit d220e169c115285088a5df67a89ad5a50f7da852 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit 30998dbb768ef3487176954b43cb9bfaa26c0543 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit 542e5eabfcf954945b3c6db83b0d42b5176fe066 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit 0b74753a55aee05611105e5b4405f8cdc55d4620 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 3a3c2c090be5098f49700501ca320feadb5ba224 Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit abfa622cc04be3b9db001cc3230088c0ac644e59 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 569289c8af9810a0b719876d532bee05c3c97f1e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 3500edb71bddaabebfe9f17a3beb2360067fb30b Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 9c4e41cd6645b1a42056e075caa2f02a8f1476ec Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 52ea9b0aebbda4145932c3e40b5d682c5b0d2cfc Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 55deb77f5fccbf45178de0bd057272167c1b05e5 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 313af2771ba4e201ebf2a08885e660e67a4a4114 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 4e50afd0b91d4c959ec637df6edef91b02b6296b Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 437090adb418cde0e8206e2e81b520706ffca73e Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 6089303155edfc1e944664935af7827daaa2af42 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 708d0e9e7b930db49e3105efcc43ec2cec0212ce Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 67450189ae88798140746e7459cc26a25e7e4e7c Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f51d6bb8a1fc1cb0dd884af8dbb1b6686c7fcad7 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 66488a16c18a87747a396ada20dcfd4d9b55b332 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit b12239dd2586505a805fe65d4b2c58435c8aa240 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 82a0fd041e773872ff14b4fee9c9c516e0b6fd19 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 5fc1d6139bd771e567ab82bcc3e776b735e75b18 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 5fdc7a7cbb613a4213276170cb25f5a6ee7815b0 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6fa1dda1006b1a4b2dc88369321935f7b943468c Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit c59bc6ad2cd339478878d1f589decba19e257bc7 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit b59cbe0d2f3fbb5d2d04ddff34eb63102ff2e156 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit add4f2eb6871f91537b88efeb99c886422ced7b9 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 85f04976e897f6c0118478f07c89f67b7144c9bf Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 1883f48cc90ac1454a576030ccf23eca4b4bb12c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit b05819944dea3291c960bdf8651f200f17cb8126 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 5a8317579624c3732983d3f9971dc4a6c5203297 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit ffc2913017f6624a162cf4a36b6301e739cdb855 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit b190c50967f99835f79979dc364042945e127b2d Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 24db6e9bafdd4d3f6138ee5cb37ca0eb9e299291 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 31e92c211c682829fd695f07b15e1ea76b3868eb Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit e840cfd3d19570748b1431725c4e8f409da2dfd2 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit adc5104a1c712a104543af425fd3a3833c659a54 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit e007cbfc35032fd2c3813f545bb2f5d3646ab529 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit e4aa407bdcbd2c19ceed7897ea4e0c0603cf898f Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 59de87f184ba87ee4fd5a44e42afe7f497f7efc9 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit ff8f7e1fb2c87478919b8c38d2e80e8bcc53be2a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 80d8900eb5cfaf5f34093cc846120db257cbecca Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 56fcb1f078f9ad6361dc03521f05bc14503c86ea Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit e54bd52df2b1ab8a84968a79c00f6d78b718965f Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 061272e43cf09e6c487540921d7c9a11d580af77 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 4c0069d6441bd1910c4fd0592c7615174a759c3f Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 48a247ee5483f44ce85ca064d68ef6fb05b68fba Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 2ec0be18bd9c1d44d900b4d810da6499eb66fc19 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2cad7302913ad33e663083fe2fdbd5624a8a6cc6 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 94c4968b1a9c9a8496283d08cd2505f87e54a905 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 0ef791b22332713d26410a0eaa0d9bad3e508d1d Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 875d587237ad9ffa568f4f69f7993b72376b24f7 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 9c9e6c7d558d11d59b65934755708ba5c1531144 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 47151a379eecfd7b76655a4d89759600ce23a37f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 95ad3a7dbfa4dece076ec8767f9a5ee2582bba14 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 3445c5d2c29d3ccb78df2c23279caf029b0e09ec Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit a4ef6b328e8acb0226ea4be87939a200718b2319 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit df48db7b9976cf4bc25c7bd84890ae08acab8cc9 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit d70f7be6d18019c9458ba5c7c4e205424610fb7e Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 1dd814e8eb8f2ef8fe5e0a21d8662df3af2474f9 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit dddd25fb577fbba14c104d25203b49387088b87d Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 4f2ddbfd37d3d6826a4b48186f7f47065e2b09c3 Author: smilerz Date: Fri Apr 30 16:22:34 2021 -0500 cleanup after rebase commit 1febc42cc9628fae70ceef1149449103a4558f0a Author: smilerz Date: Fri Apr 30 16:03:30 2021 -0500 Fix after rebase commit 8fb38a4351a0b40329897a2fb166254f13640e0b Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit 2b2bbad8a6075270bf9757d1e978052074801b7e Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit 038a371a73712695cc0ca564ded11b70fba31e01 Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit 50eba1d40115f5012b767c82c6b655e4e612178e Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit dcba8100a64031a699bcfdd0673d2af0df03493b Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit aa13db2e38f7e3f0a1e80f2bca4556f8743245a1 Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit d1547f2cefdd63cf31da2384e4cfb412751807bb Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 6449d13d0ab79276f3ebab880ff07d07da68143c Author: smilerz Date: Tue Apr 20 12:21:58 2021 -0500 changed hardlink markdown link to reverse commit ddca1a77f80a9e773415049dadd97c97f95ea00a Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit f4e7f04bd79d87d09ada225e16e3ef23de23832c Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit 0e8ae902bf0e4d0aae703e84ec5e24579bc169a8 Author: smilerz Date: Mon Apr 19 17:34:43 2021 -0500 strip spaces from units, keywords and food commit a1e6b24c42b21eb608c64bd946762267a6d98f1d Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit 03fb725b6e3679efa7276475c33f8e5f855db8ed Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit c90abcf7c4a188990ed4b623b1b058c71ee4615a Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit 58e97b0f18b2d1cc53e7a5d9ef47e2bacc45a95c Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 10fff576a1bf3f8801ec6919f348665c2c3e6319 Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit 9ccf4ed92ca27fa892ed16b2e5ddc5d50a1afdfd Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit 3eef0a783ac66478ad0aafce605c16de84c09296 Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit a9477230689c92454c74aa5eba5c3a0d4111eb67 Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit 130c56fa6611e7d46e703daab25834b65aaa3670 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit 1622268e4470734e1445de2a6981696d0e61622c Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit 54b906c44e3251bfca2c31bbf3f61f20a64fd40d Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit 64ef82123c7bbb1983fd2081a82441495e5280b6 Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit cff93fd4abc7e4b96025921d02ba4e41be554b65 Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit 87c968decdfe0b0974d1e3a4e5ce94cfac818fc1 Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 6f6ea0bbab9e62907e10b9a359b1b97e0d86487e Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit 8cb55aa7986021435de4baaad85344cbc8569adb Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit 62fe7f323db80c57b8c3c02c7cf31bed7b197368 Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit d38ba8c146e55162bba9ad012ac082ccbd76789c Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit 614acd578a31f421594d7b5486de0a0462e1cce0 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 79932c2b5772dea2a06af31bb2aff34585f23b98 Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit b75a143f5394daf967ee599768f460937169a74f Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 50e3fd062f99ba26860fa7dc27e59c9db25b4dc0 Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit f7b91e697d48c1a82ced60b1b48514b2d99d975f Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 8dfab43ceb6d63b9e2dfc02d91f4034420eeb03e Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit 5c9c2e51028a494c4f33dbedfd6974d0f87116d1 Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 2972b23ad88365c4c00856fe570dc630a5656022 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit af88e35c0446997e9b1f71ce742acc6776f286d6 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 7a177d55ff2e8aa5aa15ba73a594cefdb71024ad Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 78b71014daf001aeede02dae30522b530af4e1a6 Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit a66466f75f4dc014e23694e18f6d97fbeaafc364 Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit c94f55d058e7512854d30f7992825d041a90f7a7 Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit cfb1f83a766f64bd30c2dfe95407c651e4dd6122 Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit 0689b7faefb2abae3735bb6fe04ca1b3ca41bfd2 Author: smilerz Date: Thu Apr 15 16:03:56 2021 -0500 handle text cook times on import commit a734e9e4f54ad36721e7d3445d5a630fd8ff165b Author: smilerz Date: Thu Apr 15 14:45:34 2021 -0500 convert servings to number on import commit 1bc89a791a7bc58e3c47ee8c10a27bed60bc9f91 Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit 1950c47f3d280a2ee2ed27c53c8733b48a629337 Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit 4c0366667396059cb0e76389dce3d9373f818e0b Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit dd2934a7752c4de55de6632f588fa4e36d1815bf Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit 7a3a1febefbcebb0dbc648025da77ddc52eb5e20 Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit ac367fe4d99a74e04e632a112891c0fba3951580 Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit 8327c425f195573e27de274b084717cdbd393387 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit 0bd7879e05b71e428d32bc103fe6e6cf81fc4e41 Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit adead0cd112e1d43e1a245aa8cfa88cf85bd311b Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit bfb9ff8f6df7f9f2783922e4b54e5b349e6eb18e Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit 0869e65f9461935bcaffd0df38b9a41458006a27 Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit 40270945ed1b5d33f5c1b19c9577204ac5b521da Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit 9226eba7126c55c6c4c835d807cbec43d6765904 Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit 61ff736c5c2c5a4e81dd609c08ba24d05d08af49 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit 0ed57e77673e8f84df1d63dccae98ff8ec107eef Author: smilerz Date: Wed Apr 14 13:44:03 2021 -0500 fixed workflow commit 5f0b2fc62cb12fb0bea5c24f60753191ebe6bc47 Author: smilerz Date: Wed Apr 14 13:42:00 2021 -0500 fixed branch reference commit e61fa241240140fe4d371b3bbcb9b55683dbfd0c Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit ccdb251103468d903fcd07c1885f4466dac736b8 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 1ba63ad5a06545d8f93bf7eceab7d7c6628eeedb Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 0796f957a690c43515fb77a7c5f2153e02687810 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 7e3a3a80e60de0a529e88ed50a129873cf8bba6b Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 9803d869bc532fef1119880ac9da41ae3d60c3a3 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f99e58f588d662b5a31982057b134ee02cd9ec1a Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 74d82b7048fa948e01c8a217ffa8e19b22bb8920 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 893b037d7f03871f390d17156cd9119ebef1e76c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 139152a82a3a06b9a28ae80e1c408d7be32d3b5a Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit b733b716df5d0f22938acc0ccb34ace7da82512e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 3a9968a33c3d4aa3377e572f6b7aa4e61a75a821 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 1ddace4a235fdaa9c29830c85254a8b28cda7e8e Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d82dfb19a30f508250acf52d65d0e04cb41867ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit d1a318cae1849f8aae06c5064671f262a5efbf2e Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cdf5dc8052e2313a3144a1b6f523df1248930fe1 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 52ad8d20e10230ddfa4ee8035f541094c6ae165f Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 81fbef7f32da9145764ca0992e19c04bdc0207c2 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 437098f6858a01c8bb4ebaaa47eaadf9b174da59 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 3f303a828349e1bd1e7473a703c15b2c4d66eaf2 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 9b98257e59fe7f727bd03d4cda24169a5b15cf5d Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 19a009bf270aacc5a8e972e8f31b945e95de4afb Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 82a7334e325578b1c32d3b77d5795fcf5a456bcb Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit f37ddbf06254c93f0b717f29f3ea535f1d2e627d Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 2c2e0144cfd75abb1937da68988d76101ea3668a Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 75fa67829787606c27a184e240c1a101b40fddd1 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 9f567c663724359ac47798e27dd1ff1cd3d6f2db Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit e5955d19ade00be2f9cbdcd23fbf705d71fd3e0f Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 1335a276c7ad498edad91f79157a17d67f8afc6e Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 717768ac8a82de879c1eab3934c32173e9d24318 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 93756911199dbc3c7e32ffa81d43d594ceb51090 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 41c69b885636941ca0a3291e7d2277ba9eae9880 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit b30f4531db075488c21ff7cdfece3f35f0c79c40 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 6faa2a4e161c2b34e4bf647513cd1039320dc80a Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit eaef2b899d31b3f75b35347822a7d6a12cc83ccd Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 1bdfccbca1913334290e3e67b8daa04089c17b70 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 9e315b4ac40042b4e615ffece30077dda6bfd29a Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 83f39292b569f335fa1d8a7016b0c74c8cd7d467 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit f8f78a8d4eba11b1523f520eb74adf079d8758e7 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit ba7852e92bc8ed2f0ccd3a4555c9f53407c1d747 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit f0a3708c0dbe3ecf2c677967e6e66223a5a7d53a Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit a23da56b25d4bc7a72546ea4ee9223202a3419ea Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit dcc6507d5f01b456b000dbafb740505eea7f5bff Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 4a56df8c61d8e4cbe24acd81f9acafef7f149734 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit be63a59e164233d1c69197c1d2ef8f4c622c4de3 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit f35be1b107ae298fc4f0d585c4b88e6848bec1bd Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit eb66f2a0a68ee909e3441ab9aa296d5dea2654f0 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 9a68e1fc5b5e2db6242fd50f83699e3f40de0403 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit bd5f6cafe748bd399eb2a378403cb5f08e29cc69 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 934d50dce099ee944c5da475de1e91539c9f84ea Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 5dce44686bce133669081d5ad41df62884315250 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 978b746c18a3378dce8481c4a562884aff2e6da0 Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bb6495f055fcfed5d33df6812089f70b7a310fa8 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 826027a1bd80742304d19b5a6848606367d1b6dc Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 54f8048bd3dceafe96b80c20c78869db2df04863 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit c4df69439b00728a7d7a799792f4247a4241a48c Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 29c9fc2dc2b88249433eae8287f6af58a1edffff Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 6bced1a0a4833fcdf4933b97c4a9427e1c329066 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 393204663e34ec221ec2d017b3ca252a0efce704 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit ff995f6a034648dc780f52deb4a325646da42946 Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit a9b6eb2aa3a8c6493cc9b1d6776737a2b5354453 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit c82255196903f237fd9c122125b6e3f4c8a5a3ee Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit 689582f4ac5d1d3d358d43f471968b24abaf378d Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit 108c29a98975f50668407a5c0dd64f98ee2f2ffc Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit 5177c56d0332701064f464696ccdc8b8c4c34c30 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit 03063e8d1ef723c4ab277678f31f72b496626ff8 Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 0a9d244c0da3e5425927e1d4a6c388bf8ca84970 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit 120359572b6ee9b54ec64a91d141d3d189e487dc Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit b429dbccdf351c10a8dc02b270f4d88c29fb03fc Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit f85f5504966d24372604a19b24081aa8469f7f53 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 13e306db07656f171bbca4ddb8d95694fe509874 Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 600dc8e6f07584b4082a0d723bf79aebff6bb459 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit af5bc725d228b616389f9bfe164d0a5adbae2a94 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit a925992f0a7b02d807cb51d287452f0448efcc58 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit def989768f70767428908ba7e0f50ec93df4af30 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 0f6b176049fc17ad9536f660506a57f225b1d303 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 17e2bcfe9cb3d8ce14a8b9d30ab82f0dc5f6943d Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit f0db2d152ee58733267443e485e5b831d0735d59 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 49ea06736f804152ce44fbc5608421c7837bdbe4 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0320163b7ee3b59a516572f25bf2e01c72e9998f Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 45739616a9aa294a085e6666517d1463667ed4f0 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 4fc2571e808e13abd32d2864bb884ae4af1f463c Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit ea7b0d7189fc4eb73236c319530a59a1cdf7384e Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit d0460e7dcbe9f9f480e29fbb4847e193a7263ebc Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit d9dfe905c14b16478e4bb48148767f26cd096ec5 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 8125252bad982397ff74c6a790decc3155e0924c Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit fa769d4d97ec4d0a878ecdf961d5f4f369647d9d Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit decd0cfa7b11ab809c70873832da1a7226db115b Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit c7a66f9b68495a41608207a6814fe5a32c3a7afd Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 0041c833d31f1ca7ba3aba55c7a0831a1be6cb26 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ef47962ca5589385ddaec52c9e1a1ff9f1c4d7f6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 4dea0f084093f69f26954dfffeba815dd9c65e3c Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 24395662584987ba7136ac07ba16c741cf000f6c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit c2e1fd4396a09f8d3d3776c292d32a2dc61788da Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit a10643ed8a7131fa316b627e93c4fda34bdd7d40 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6108f9592e920df3041ea7904d240f16ca7d6db9 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit e96ece021ab8cf561f290f43e3aca856eca12692 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 0479eb23c281fbe4608a43f0e937bc8cde54e742 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 42ea46a482fdd5445e8f5e375d6f6f93e897b13c Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 430c99343ba5a91d261592663c8eb6249c6ebe25 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 3c71cf95aa0f0af00b54e93435a9448d6f3a10c4 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 0a9db4503c48cd046ab33f0ac1433a5617bcd431 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit a0d1c01d1e2747a9c9f25fb6d8a63eed06884a1f Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit e848a03edcec3cc97612964f4b0a9c7cff74300c Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit a753fe81b2f854d30969dcf441b6c73e03ebb231 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit afdfd82b367239e41a0a8f00d91ab7f048e829c3 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 03baed508e81bd95bcdb70f82d01bf64b8f593da Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit ba6d15a2b0d1590fa5a24b31713d250acd263c80 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 324d1b646ede9a6922795b9b02341ea32750fd81 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit dc92ab34bdb3837c258734b9af66937295bd3175 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit fff25209c5f00f1489e9f365c47f8a095397c60f Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 7c3c22aad790a653f697b58d0bde90a3e500830f Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit cc15f4ca29f57c262855878e435f27f406da6b6d Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 243d725ac572fc2be4e5a9dca5ef92a4f43f3b2f Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 5407de28b48c156f5ab5e534c253b25bf87ba551 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 62750f299e9109c9f95b2e7b1bd85e95caf04dc4 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit e555713d08fc0c0a9c1c809b6bec83aa8cfe918b Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 546d6941768907f96db912af9281cfe2180e5a97 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 84e555bd5c59d1a31de58a8ed6210d9c07e099dc Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit e12519cd1fabbdd43a1947432166d93502ad62a5 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit be8171ccd45441706e1309d3b380a2adfb2fa6f9 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit b7215e85021d3b81c003ec908c782897ced63849 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit ba893f2e89d44fbea781b3a38075c68029f028ca Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 3cb135a643cc780055c39540e168598fd902af05 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 88dc078a01919d7057aef6791279f2f8bacde8b4 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 6427a63985c67906e97b980c0d13dda1ea7f49c9 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit d832d071a8683c18652733ac8ba29a1e96c420f2 Author: smilerz Date: Fri Apr 30 15:11:53 2021 -0500 stubbed out move keyword commit 798167329e55ee8e9e7f7ff317eebfa60c08389f Author: smilerz Date: Thu Apr 29 14:52:22 2021 -0500 WIP commit b7a4c27569a25ea71b80503666728e5f9bca2171 Author: smilerz Date: Wed Apr 28 19:11:32 2021 -0500 new and edit keyword modals commit dca6fdc659576072de85ec3e7dbda9b292c480ab Author: smilerz Date: Wed Apr 28 12:06:46 2021 -0500 removed conficting migration commit 1b0746241fb4f9bc02aac6c66b4d3e8c4f7c51d0 Author: smilerz Date: Wed Apr 28 11:42:43 2021 -0500 added new keyword modal commit d67410f6f02bccdec27e8846addcdb12e93c56c3 Author: smilerz Date: Tue Apr 27 12:42:17 2021 -0500 added delete modal commit a625b4676e0ac16426dfbc93f6960950e613e4a6 Author: smilerz Date: Mon Apr 26 11:30:31 2021 -0500 keyword card layout commit d4ab2638c1aed8f9d1b50765424e10e34dc0cc80 Author: smilerz Date: Mon Apr 26 08:33:32 2021 -0500 WIP commit e8a7a120eb55dbb733f852305c177722b90e4aba Author: smilerz Date: Sun Apr 25 20:26:55 2021 -0500 filter by keyword commit b51baf50b4bbb4984e8d8ddbd569d338e221e967 Author: smilerz Date: Sun Apr 25 19:54:00 2021 -0500 Squashed commit of the following: commit 33d084f201502377f672bfa78e334069bfadab29 Author: smilerz Date: Sun Apr 25 19:50:51 2021 -0500 add trigrams to full text search commit 199a75d4b0ab924f896e8e53a5e5e55917c2a540 Author: smilerz Date: Sun Apr 25 19:35:17 2021 -0500 add unaccent to full text search vectors commit db13383614700f60f29d80ff24a71f4aaeb3f200 Author: smilerz Date: Sun Apr 25 19:09:54 2021 -0500 WIP commit ca06f6cf7936df0bdc633f1bbf9c2a5cfa84066d Author: smilerz Date: Wed Apr 21 19:01:20 2021 -0500 add trigrams to search rank commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 88f546bd2ebb607ec737c59f514b85ce8c3dc0db Author: smilerz Date: Sun Apr 25 18:03:37 2021 -0500 WIP commit b85dedae0ed410ba86249fb43b6361b8c8be8eeb Author: smilerz Date: Sun Apr 25 17:47:38 2021 -0500 stubbed out Keyword Card commit d31cb7d736976b8d8e67a85db7515ac6b03dff4a Author: smilerz Date: Fri Apr 23 17:16:23 2021 -0500 create split screen for keywords commit fe9b4f6f162797adabf63191a53bcb8b08f23804 Author: smilerz Date: Fri Apr 23 15:29:23 2021 -0500 stubbed out new keyword view commit 37dd46bf478115bc968fc3a530ac60f1ea568aa1 Author: smilerz Date: Fri Apr 23 15:28:48 2021 -0500 enhanced keyword api to include child/parent capability commit 495937aefd0d94e475563dfa9a08dab511dfccd2 Author: smilerz Date: Fri Apr 23 12:00:47 2021 -0500 removed space from keyword form commit 6fd14c2a0e6ae3efcdbc7c1d8ff3ef7c749f13e6 Author: smilerz Date: Fri Apr 23 11:09:38 2021 -0500 expanded keyword tests and fixed failures commit 8a11e8ea7c0440407ef02446dcbdba6e1028905c Author: smilerz Date: Thu Apr 22 18:02:15 2021 -0500 moved get_or_create to keyword model commit 499ffdc72c7d1b749039cb5cc8101570767d4eed Author: smilerz Date: Thu Apr 22 16:35:42 2021 -0500 squash keyword commit d15e6095484b7282176b73a8a0b4e1f8d3b833eb Author: smilerz Date: Thu Apr 22 16:35:31 2021 -0500 Squashed commit of the following: commit e766d4de6825efad3ec55823196f2872fab025c5 Author: smilerz Date: Tue Apr 6 14:39:57 2021 -0500 updated migrate commit cb94109a31d3c63dc22c7f22ac7a990a11e39f33 Merge: d16ad58 0862c0f Author: smilerz Date: Tue Apr 6 14:37:54 2021 -0500 Merge branch 'main_fork' into keywords commit d16ad58ed60c75077a0e8cce0295c4fb3e241493 Author: smilerz Date: Wed Mar 31 20:12:59 2021 -0500 fixed keyword serializer to pass tests commit 189c2fc647702dca4f6744df85eda3cf287cdbe5 Author: smilerz Date: Wed Mar 31 18:03:23 2021 -0500 updated keyword test to create tree nodes commit f716a20549f706f7427b9162ace6fab1a28e85c9 Author: smilerz Date: Wed Mar 31 14:46:57 2021 -0500 fixed api to accept all fields commit 1677042993dc74cca412a1ebb89648d5581f6eef Author: smilerz Date: Wed Mar 31 09:45:17 2021 -0500 restore delete in keyword api commit 3f08cb33195aeeaf1c731f959c57975deb84b9f0 Author: smilerz Date: Wed Mar 31 09:41:19 2021 -0500 allow delete of keyword parent commit 74a842a283729ad11f7177476920ff1bb472bde5 Author: smilerz Date: Wed Mar 31 09:37:26 2021 -0500 scopes and MP_Node work together on keywords commit 145dff4e096537d06524dab9f745ab600222766c Author: smilerz Date: Wed Mar 31 09:36:48 2021 -0500 safely delete keyword parent commit 69eb2481f57e18ceb499a73d26f8f9220eb575f8 Author: smilerz Date: Wed Mar 31 09:36:26 2021 -0500 cosmetic updates commit 6925ef3333bfee8c8e59ac6d2324e84dd1d2533d Author: smilerz Date: Tue Mar 30 16:46:36 2021 -0500 removed space from Keyword commit e029ecd18501817f4f6350cb98793628fba049c8 Author: smilerz Date: Tue Mar 30 16:25:02 2021 -0500 fixed sort order commit 2b47da0c92f8d813e93d6e65c5a26d06f5b60582 Author: smilerz Date: Tue Mar 30 14:39:59 2021 -0500 delete migrations commit 20492167298c7f284f9df0d7308a75cc93fd4c6d Author: smilerz Date: Tue Mar 30 14:39:43 2021 -0500 recreate keywored migration commit ff71eb857683abc2db088ced5ca8890e3e313b5e Author: smilerz Date: Tue Mar 30 12:52:37 2021 -0500 db migration for keyword tree commit 071b3e0650bede75c73a5dd198c5ccdcbd0f483b Author: smilerz Date: Tue Mar 30 12:38:45 2021 -0500 initial attempt at merge with upstream commit 6b7c9b4287413841681ebc630036e587cf10a813 Merge: 7078994 d16d77f Author: smilerz Date: Tue Mar 30 12:36:06 2021 -0500 Merge branch 'main_fork' into keywords commit 70789940520e220f0c2e168b0ec295e412b42462 Author: smilerz Date: Wed Mar 3 09:57:36 2021 -0600 finished tree_template commit 8dd2e7da9e99c4005de19ad6d16dcce02154d2dc Author: smilerz Date: Mon Mar 1 16:25:15 2021 -0600 added tests for move_keyword api commit 5d52e3bff0504f6ce596d38e15fdad67b294321b Author: smilerz Date: Mon Mar 1 14:47:28 2021 -0600 added api to move keyword nodes commit 0f13ba84b957ff9f9eb7e95b921a607c6138b700 Author: smilerz Date: Mon Mar 1 11:31:39 2021 -0600 convert Keyword from list to tree commit 05b9a85371613a31e53d7f2742f863edff8b1f43 Author: smilerz Date: Wed Feb 24 16:57:20 2021 -0600 update tests to reflect changes in Keyword commit c833a8b0928ce4f84b072c75de1d4b2c0ab057bd Author: smilerz Date: Wed Feb 24 16:56:55 2021 -0600 remove DELETE method from keyword API commit a4136dc849227a6c7b60db120778eb618e8501dc Author: smilerz Date: Wed Feb 24 12:09:55 2021 -0600 fixed adding keyword in new recipe form commit 17c5b6bf92b95e63ae671dd107bae6d2d0c7f503 Author: smilerz Date: Wed Feb 24 11:59:54 2021 -0600 fixed adding keyword during recipe import commit 3ade4c6412f1b86b9c8a04d260d954f9307794d5 Author: smilerz Date: Thu Apr 22 16:08:52 2021 -0500 new branch commit 281002958a605162b1ed3625dce9fd30532b85b0 Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit 520967220debf9fd53c74aa7fe236262e9e7b776 Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit f7cb11ec6484ad28e2b6e602f19331cc1b694e14 Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit a2370ac8a998f002a2c036c980893e0cb95c5f9d Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 81a4e106d37030111beb1852737df05b5e7b1bfc Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit 0b8572e3eda9c7cab267f946ff0c704bc8f816db Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit 7bae185a3f6f459824e1da3a276f96dca6144262 Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit f79faf30b555ee31ea579b33be5906e8f13cd877 Author: smilerz Date: Tue Apr 20 12:21:58 2021 -0500 changed hardlink markdown link to reverse commit e106b58d2a8fbf20d15c4ced1cfcefd95cfb84f5 Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit d475ad8d75e6edf1677d8bd180a3e1b479130ebd Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit 50bf8a8a992137a84b419f5d24f71d6275b7f848 Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit 0d7d03120c3bb7bf5460c3287ce382ece5f4d083 Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit 3b3efd4984323d54d666d829cb23ea060aa4f6a1 Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit 53ff2ca424e6419368d1e1d4331fde6958429673 Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 37ebbeb4f9ec9fe008a5ecaaad0d31d724256ff4 Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit b3c0589e3b52c89cce4a87abe681a4bbec761bce Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit b4d05ef7580f4e72dc305f8423324f3eb8edef10 Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit a559a8c22c2d2e88d06fb390e1ca9f52e6df1b08 Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit ce7f1f16c0c4a3eca206b00058dce947b7d67c33 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit 72d023f5a9351471dc1a15ddf1e12ce76b879e3d Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit bd8ea4a0406c0abbdec763705db58ef268ca7557 Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit 22e8564e40fbf00b82d7418c888009e953eec5a8 Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit 21ee14c42b97fb17c736232a4564b5598524d68b Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit fe50bf3e2d6ea4d7cdc654f2b0182fdb0e1263a5 Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 721dbda1cc7f7cf8fec39d149a3788ea3eecedd9 Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit d746e0326f2316d7c5edf0a17d2bf0f72f5728eb Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit 49a8eb7032a3d45f54111fe395d01ce987518671 Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit e6f865d4438900d22bd5e0c40caccedbe690b87e Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit b023044ece62bc85e99b893c00615c611f933f88 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 8117f646343fb3b8c26050e8ed1c07eca62dd148 Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit ec15998c0be0068f3c521554fdb57833ac7e407d Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 04ead0e273786b1692867d7b68391c41e3f6d2e7 Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit 641cb4cb0d41ec065a25aee26d6a213976b560e4 Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 45b366fac5f8ae78ecde10261ec088067b9f45d4 Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit 305402566d12a8715df1aa2ef826de25ed1c205d Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit b1aba669e6e06d3b5d677f8210f88a64eaa2bafc Author: smilerz Date: Fri Apr 16 17:40:57 2021 -0500 Squashed commit of the following: commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 6d72b000157ff5892853ce5fb554e368f4024c8f Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 4e51b434c36f59a3034bd7012e4bea20a3b158c0 Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit b7183219816558bd6f01b2aec0b47b5ad30ae056 Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit 2e57675c530aadb0ddef9918e967b165280f136c Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit 375167db80aa96a95850cafab77f4f7f872b3954 Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit 2acf95fe08399c5eab75140d8ebbddb5cf139943 Author: smilerz Date: Thu Apr 15 16:03:56 2021 -0500 handle text cook times on import commit ef88b0ccce9960e04bee92dc53839fb514051c05 Author: smilerz Date: Thu Apr 15 14:45:34 2021 -0500 convert servings to number on import commit 6a414904f35208aa4dccbf14176d373ab158791f Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit 041829764fc10aeb914bbb47098ad721b3e642fd Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit c148665f09effd84bd2a9fec868a8e36cdd1d8bc Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit 2f92d804e2bd955e4f3e52e9484e0538a9aac74c Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit f67955281a2cbacae3bb1bb4091e56daf45831f2 Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit 2b2bb77576c7d96ab74d1bfadb96e18e69214ee7 Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit da8acf52b75d19e87454e2ea5261da0ee77dcbe6 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit 178f9664200959941609abb051e0c49a540ee626 Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit a13bbca21babf0d725e085ebcd768b75df5a386c Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit 6431e4db1782322994c54acc18f31e3d57495bac Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit e06d41aa16ea53ff5d10f68ebddcf8e8018e4b8f Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit d39e39408c781a153b6693985dbbd5de63e15bc3 Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit f58e71b30a8c7575e4853e54c9e9f91450aab748 Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit 9002cff57ebdf6ee797b8fcc4f2daded61d52bd5 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit a9ac3a6f634a48deb123845665c110d08e2df03a Author: smilerz Date: Wed Apr 14 13:44:03 2021 -0500 fixed workflow commit 2bf5623d716f5dbbea63fc9a519c15e0aa581ff8 Author: smilerz Date: Wed Apr 14 13:42:00 2021 -0500 fixed branch reference commit 119df621a7d4d6074e1ed3888329500dc1fc984c Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit 93a31e67290ca6e8fbc36c3a09ea8ad7f7d321c0 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 0e0a5766d55bf44f613d7c917c26061d0ce9552e Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 94399927cd8ea5cc634ab079a6d9647025f68a2e Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit a0065edd2d3f7a73be5b3aa43ab2b2b7f84d3340 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit af8f80c5f604ebed1f7fbb295fce268e6402eed8 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit c05f3e88f056a3f8e6d2b510c647bf61a5a1da2b Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 60c76ac947272abb0761f2d6a5e0e98ce2ab2147 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 999fae645728250cf7148902d976f8f00ae7f6d8 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 73f04880ad9062fff7b54cbd5bb6cdf40ad0957e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 31864814d76d747b8d92c6193f0c90ce78e42658 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 5eb6b17669e9cc95210430a9f040a4697d06631a Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit bb7d09e38ea7dea329c8595ca023bb64431055e3 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 971c96d7b8c6695fef501006eaded4d5807b7d57 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit afa3a144df5f8334392d0f9975d4790f08a4bcc9 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 2b8c716f76c17e290f4a0527583887a7bf0d3ded Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 8437d880b122c972bbbb04edf12c8d1d58faeccb Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 4f534e2914e179cf0dedaba06168ce1002f56ef2 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit ff6ec5ddaff7ab0bde1e7ab8c186f167cddc3ceb Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit b664a9739a8e63c8b51714a20a73f6be14aeb26e Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c2897825036a6d7adb0e0f4c57593840bac0f005 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit c2b828b1ccac5a1147792f29e041927467649eab Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 79caba5f0697a5458f3c4a969260df193be7fb65 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 105eed6919f8bf2762d0f0140d2486bfa86732c7 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 617ab4675046575fa7382d93d9fa89f03b35a5c4 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 97da19e2953a6609fa2ad3042e29744348a83f83 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit cae3ddd0c47459e5cf42dc60834f8ed0f7fd1924 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit a8593f4e040f1e99683f92b19f312fe2a8df2a1c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 4afe6804b40e9b61a6930898de9f53c94971a0d3 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 79f7faa28f645b1677a70370fcb0c98e16cebea9 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit d1c58b9070ac66acf510029646f2ea25ea8859e4 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 0bc17fdb9106e113c94eaa9844bef4e24cc524e9 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 367f821193f7f10469e2456cacc4b0688d68b155 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit db59a9c029d5c425d1a2ab9388463fa76f4705eb Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit ab143527dd463f12fe6a6d81e91f7d0dd6cda7d5 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit e4ecf94a521a3cdb7f629fac141406e25213c70d Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9554509c202e5c3f9e54f0ab90578d49016cd931 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit d481785c8e83ae2ba261939f2e6f0baeb4a60612 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit ff6b550f763c8676cd801b27461699ff3f4c1b09 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 71402c67598050fd2ac3c4436f2438788eacdbfd Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit ddf8b024b50097414574e7a60a7d2284f01f9f0f Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 0b370319fff856ba60d6456740bb0b380d83654e Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2f5637ce52a058b5425fea423068693440ab79ed Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 5b71f0e7a10fe027b227603f778f17d919db0da4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 3a5d564897db31e82d923a9b82a3261528b3683d Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 2a14ac03d8c851cb53e94988e73150e9aefa5898 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit b6360591dff02bac8099750719729659ca751ff6 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 5802f4983172abdcb74ae154be30761a77ed7c6a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 8f5e93fa06ed07c98c959108d9b6f68527aad798 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b59d1be03e92a8917acd40de849fe8af2c9c30e9 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 541136bf10c7961b51f5c7b18ac72e35aec835ef Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit db0125e272a90d15c5daad1b99888407e7b3da7f Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 4b2c6582244bdc29b77708162720dc1ef53807a9 Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit c39b706adc995e75d1471ba416c166389737d434 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 6d8d64a808657ccdbe2f668f72b573a4556f779a Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 2bf65f60d8c1a9907a770dbd010afd17b83f9902 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 0ef17801308621da4759bf73996e2185a99efa8c Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit ed1a82d78bec4a2250d287e6857e4eee1e6b1287 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 34757d32ccb49dc998a5522c677304ef54f1ecae Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 77f4f613c6d758e6760689646650ad5b59751fdd Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 09a4134e5a676706ff7f17fed091a34d92adaaa9 Author: smilerz Date: Sun May 2 19:57:30 2021 -0500 rebase commit 1b1d88b9818811baba1e15f234ea436044c0837a Author: smilerz Date: Fri Apr 30 16:22:34 2021 -0500 cleanup after rebase commit dab6b660d75b9ec7c4b728c5ab38c1062a763630 Author: smilerz Date: Fri Apr 30 16:03:30 2021 -0500 Fix after rebase commit 2c782b75ef53b307254cd9a837efe1a5bce4e847 Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit 7a1dbf1868c5acacb7619fc83ea77d43d5738e82 Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit 05143c7ad0f994d536e208da9c112bbc139d4cf5 Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit 59a718e28960c9ed288dd294832f7f70877123cd Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 0979d828968680f24268268bcce7a5b31a7c71b5 Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit 31a713362934a8cce13f7ae9f986582967d26b6a Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit f32749cb2dc8a391332930eedf3ce4a32c450a12 Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit cb30aec8126dc37e066fbfb5f5f6500f4eafc698 Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit 2ce674432cd8b82109171d7bc007498303cbaa81 Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit 26733a6f68a6c805fc32a85e176a6e776d6739e6 Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit eed8a38f1e617eb8d1b910b76a079cf409bc29aa Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit 349926f6c529d470e21f63a67fe80745b770881d Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit b562f3d69481b40cab405ac2810620cc9919e75b Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit d9fea7de66d9b438a8546f65f64e66e114655f03 Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit fb9275958e6649df3f5b27d6dba58d164a90ec88 Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit d54528f05d204f52cecb3fdd91e28563f28898dd Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit 5c07010f77e40209734e1619e57040553744ca55 Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit f95655a8037727a4a8eb73ee2f0ad70b2a5d0ba4 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit 3efd0fd58245887abd6c6e70f78d38740b3da8b8 Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit 2b8ce75f14c802cff545054eaa3eddc72fb9afd0 Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit 6c4c2711744f7662d5236c103fc579dd076c1597 Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit d3fdc835be0134bbbaa44f72992983b9d453619f Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit 395778caa00132c6f4b19805979b3d80c9b1220f Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 93b7845d68073e81415e5a42076d9b7c336c0f99 Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit 6c9f9839ba3769fd37b0256561f266f930158a67 Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit 5013f257342dd83b484090f71b4068ab5893a565 Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit c4714456d675a0f865cf1769c7ba58206a7055e4 Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit 626e79ecdc219906bce42ea8591f6022dcd9f4a6 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 647263ed079f29d41a584767efcf6114a8832e75 Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 3e0adeb46e003abebfa79c9891629195025fdce1 Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 45ae7cc99e77275b59f683daee11b0a440df4cc0 Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit f255d8af768c328922c04ba04fedc84b99b63d1a Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 1fa9644fffd5a7c97eea403d4c08519acfb37052 Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit 99050976c6f0da5fcaaf76bab01ddb7ef46bc8f2 Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit f3b2682817b02f105f92f2d55ed3d4937add2432 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 1bdf1534abea68382b8d0cf3dfe3dc6eda551368 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit e9ed1c59362d274f22259b85499a3311468cdbd7 Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit b702f71e8aac114d195412ec1a8b5b20943537ea Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit 2cb024c02a21bb0e57ae9f02acf3acfc6f8d347e Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit 4134a8a7825d3fcb4b35cc60fa962dce1ac4e086 Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit 28e1d2ed2152aba3468bd7788b529ad94c15044b Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit 58e34509ce8df7dea130ee948cb1acd3e3add0e9 Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit 3540e42933eb683cf42ca0eff3d8dccef9e17f19 Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit 659d68e7ff477ccb3360caf3f9023c071887fdb5 Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit 0fd31e348d424a39a2811c8441e674aa26e51a28 Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit 89ee36fa3172a7faa9cc250b5b030da35816fd20 Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit 9862becff6df48a1a7239cba76c3528e777a4e2f Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit 478dd3f054bf73eec2e80dedc4354f9c23b9c6a2 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit 1eb523b7fde950fc5135baa02c977ef51bc5d1cf Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit 12df29813d606f38c3f299402d17e91e192059c8 Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit cde1f9763ddf194df082f77150e1f52f751268e6 Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit 868a114f9a67fbc7326beb9bd44d356ea2493c5d Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit 35485e3991dcd56b34f911805d0389e7148769cf Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit 91c79b037cb276f22740bb0b9d968aef05eb347d Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit 9de174215bfa4d8bdf2bc06e71141b7ead61f296 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit 8ecacca4978567dc193fc1c67c29f173f9d33931 Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit be4eaee03f426dedfb0a60c6b6c9dba39d8a3b68 Author: smilerz Date: Thu May 20 14:11:36 2021 -0500 Fix after rebase commit cfb877dea3b8137488e87424e923f60080100cb0 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit b86e6446175ba27faf4889c9cf7b01bf45b24f1c Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 82fdc060da4b53c5ee8344dff32421c0ded09a60 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit f9cdbf3cde9db58abcd3acd1c2d19d33d2a41617 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7fed3c755c9de6bf4f9743f58cab9414813e4925 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e428c770631f9238ba3610ca0f1826ab40e890b6 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 39c70406ccd4b4be2e4c24ea761da6feafd2f04c Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit c31fd681ce9f99ae81d146a3402c2381e9dbf677 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 38dd33837859e2e278ef5326d0e2ea31cb13d87a Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 21e44f5b42fbbac7dfaeecc489f054131b6dfdce Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 0d5e8de3b666a036b967349224dcce3cd3680982 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 4f54ca64b63d536624d313dcbe04a7552c3cfc15 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7aeea3ec582a0ac69435e0be575aedcbe0e37372 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 7f3ff32903ab9a2faa977fc4db429d46e1dba2e7 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 77e452fcab96ee56c2427bda87b1f3d70e392286 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit eb60ae7c6c25b2736f2ed86e6f08c154fbb509f9 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0bfd301c62c2942ef3c2e4ea159e0d4842f96ed6 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 0d705a7f0eea619883eb2c6dda6036064ffa8847 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit b4d6be7db0c4730093f6125ad4261647175ee450 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 339fc5aa99ad1642608a99928b6eafcfc3c9d37b Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 38d234e65de21fc5241e52f6022512398d807f6f Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit c3b504e2c71ed451a1f19ccd457f54ac38732ce1 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 2106d2d02d713cca42b0b0356cb50935ec6fe3b9 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3b379b2a2c2b8022ffb67d40db7529b9b2f0fe8e Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit effca3baa762fb11be12c22de0f42f804df8ac2b Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 98efcc20d20bd88b90a6211dbec4edbcaac59624 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 0941e7dadcb7ad459acc53dd3dd4ce2518ba589e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 7ebd47695c7e5089700def9afec31ad1887a4b41 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit da113693d59751626332dff1a4dadccadb7175d1 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit ebb7d28eb140099fd0b732919783189dab380c7e Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit b1845e86ed35b3bba5e8e4fa3c32068ec176abfa Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 66862e0d5bee2eddb9b7076b2e727c02bce076da Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit bc1def67205624b0eeb6de8d5ea7403b7e0d4545 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 1ec18cf76b701d7c201d800b87cc6f64a2c5ee19 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 3a1069dfc25bb9be0c86bf3632a72090cb56f425 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 5f88b2199df429cede066203b29b952addf0e105 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 38617985b0a3787fbf144485947579b4013e4446 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 9e535186efbb7ec3d504a773f272853792a55bd2 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 2a4fb41ceef26cf17cc64e0fe274df12bf2733e9 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 731225ab8822a7706115d2705320180db76f0663 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 0129b9e3baa4362dcec2da95b86c7463c66b0896 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 0be58da5787d8ec61ea324869b344cc2235cadf5 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit aa730cbf56ab95fda7755e31065cc74638a4b309 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit b52347751870da2002860b2dbb80abdb29eafd4b Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit f9defbae0088216e45a8990105e6c20dc8cfdefe Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit d4fc776aa967faa68b8a7b4b1ebbae832bd1827a Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 6aff9d0390cb0ac0e406aba1a2dbe5e9d8075717 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit a798447097270ed36037da5e463f7067216ddf6b Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 53af0e1d80b6f05b0ce43d355efaafb1da974290 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit d752d9d13415d1a0b1d154094138d507f4f43879 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 6990d8f3d912c6b1d8979e55a0db0dce7609a4fc Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 6cbd5852d80a4f7177c41cdac5a1ff5be2c8994f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit d99d36c994051f64c7c9d805fa8374f72537e479 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 7eef1d7e933e535db271956aa9a8bc01c4ad16ed Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e8793be4f715feab0503fc39b3bb38229b7cd9cb Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 97f266f5ca1a8f0e7a7c21e1fdf5061fd8b0f6cb Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 5f5a2fe6d838f02a77479ce3fc54eafb6bf08681 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 5518d25f2d380051659ba490db0d6223ad596846 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 1ed2a4fa28462698f8353d52e52a180f3a3a6322 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 50e6fcdd8ce593608b0b409ea15edd2c18f20503 Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit 1dfd8ec2258e0b5b7bf4e743321e82815466d7a8 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 30e59ff7e33e6032f416843adfe93c599cdbc35b Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit 535642ce0a176f6132936e30cf64ba4a9ed2d369 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit 69de2cb9e71cd02edfa316a13f21b32a058a9156 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit 2e9d0733649336e5d441ec92d366994750203f8d Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit 069a0bde837993359c1eb845e0e1bc6d9d9a1923 Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit cd5d8f292911ff6440308769ebf2d55a0d9ee967 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit 3aaa5e073f8b634114a00352639b4f1266f473f2 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit 8aa569896fec0c13cadd21b3d2b9721de7be4b84 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit d6d8d495b22a70cdb5b10a7ae1fdc497d6a4c3b0 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 7c1bf4293431a20377fc5bcf871616142c2ae486 Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 7b81c92d2b478d0103c43e604efc1967d330cf73 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit feb62f93ce5d4f80bbed321f9ec295a3ad394495 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit e0995fcec6cb94b47434cbbbd3cef7a4fc4e061a Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 7c7e532a03d0ff39a9faea49f5208042d0534067 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit c7f91b46c72e9a36367a13bcea7e37b6bbdfe3e0 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit dcc61d52b4c59512ea9e91f026f7517272fe258d Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 8f9d5deb27a2708e47ffaa77e131dfed5dc72b83 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7190c9d4a45fea25a3a879e118c86bfb35220fc6 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7d7a9aad6513355de21c438730b5ee407e5ef3e4 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c327236b37441fc5ec553e3618e29f0ef8c3d2a9 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit aee6f3f4e56a80e4500e73fe716d6e592740b122 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 5811d1312af4570e34a093a725e691eb3a162edf Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit cae45dcb60ef9a149e07ed1e21375d931311ec3d Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 459c18a7443147ecb4342ee221f3efb442f13720 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit a397d617493aafb37edea240591948871b99f3f3 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 13956f2e9d9ad54bbcb5359761e299bc3e61c787 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit d5fb40ff9d0bd4f8af79187b63682b8256c787fa Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 056343bec1876aa848828fcf97758fd721977f9c Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 1bb0f9458a3479dc6bb4d5eda7870ac492a40e49 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 818aeb9d456e05b93c0e5aad4ec72551646a9835 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 34ace104c441061c6773647a4ff35566eaa11059 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit b65bbef395365c675bb799c029924a4ae5fdec23 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a64074da85dacecd9dc8d9e4fd8fda2e8244ad8b Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 1c163bb97ccefa53481722cbb446690adf308aab Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 1333ff67a2232f1482537572cda6d6c27830e87f Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit cee34e001d28d0054c7f2d04664cb95573dd9a2f Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 1100fda34dd46b1eed0b2f4e432543c62e75b8e4 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit a345d6f53a82233f7f9ffa9347a9509a232a0fd8 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 682164b95d87f5c16faff134aee53601f9944fbb Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit ce14b39cfd30dac7c7a104093668672cef786d82 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit ad9a7a52d530a656178f47259016fcc449a22747 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit cb83c1e3800d31381394a657457b313cc6d4df34 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 04ae072fdb315c41b7dbff8ece6e7f0d45c9646e Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 90045028e18405f6953abe4d7dd5250c3e499159 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 40d0f0c6cd4dbc7f9bb4bf6ab90b849d2f0a5567 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 2acd7f906be1d239ef03709746b70c01a75815d0 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 8ecd0de77899e0c3cd515a348c9de176eb408036 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit df751eafb15fce5f2debd3615e37bb85b4925ec2 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit a7d4daffff20ba81ddde6301d99330b8ae4fdbda Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 309f0c0f4b09aecd0ea1cd419dcd5454853942af Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit f7f4834d2d07a7617765b5cb951172636cbb0f96 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 956a8b9540aa3f870bd7f19508c697cee3e82b61 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit d0816ae03cc08b2a065893413af60ab6339ad636 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 470225a087f8909e2e5355c9b94ff4b04e6b9d28 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit fd6cf0520faac736e34ab06f55663df46bb0bc68 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit fdb3dab81579f24f54c7b96a94c4ecefa391feb9 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 1af239bbb7d8bd9a6e2638f344484f836433f97c Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 2b3ae1cb291b2bdb69fe04b6eaa8dae1771ae2a3 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 8e687638130e143654670ef7d16f356c764907c7 Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 976f6cf451370c7c40b3c98fa097f621611a0a66 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 70746f391afafa1d6ea7cfd0a92e21946e1dd415 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit c0b322a0af566ce8dc1d2a5861fb5a641df06170 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 28faf4a5287e6f3d83742cbc8e187f27aef46d05 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit c09690a018366174202ead88a77cc6d2bc717ea5 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0dde49ff98b7a7064e7bd53384717ac3eb9a1b9 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 06f14ad12576278d5abb3c25d6cd47bd40880faf Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 203f23135d2fc1855add272393da077e7ba3fe90 Author: smilerz Date: Thu May 20 10:16:17 2021 -0500 Fix after rebase commit e1c4da58548bec97ddcdce38d9e6eeffff00f89a Author: smilerz Date: Thu May 20 08:33:09 2021 -0500 Fix after rebase commit bba7ad9b66fb40d996c2272f00de45ac4c0e8efe Author: smilerz Date: Wed May 5 08:01:06 2021 -0500 Update README.md commit 5dcc92edd782ba832705c2c73872d7432f10e353 Author: smilerz Date: Tue May 4 10:33:47 2021 -0500 recompile commit fad7c60dfe1377dd4ee4231d1e5518c4b8d71eda Author: smilerz Date: Mon May 3 08:39:19 2021 -0500 minor bug fix commit a19b0a3325ba8a2dc0d7f56a958ac74ac84d6161 Author: smilerz Date: Sun May 2 19:57:30 2021 -0500 rebase commit 2fa3b3b91d212b35c98d59c1504984fe7d807671 Author: smilerz Date: Fri Apr 30 16:22:34 2021 -0500 cleanup after rebase commit b834cfaf59208dec192cb2a223fbfa275c4e3e09 Author: smilerz Date: Fri Apr 30 16:03:30 2021 -0500 Fix after rebase commit 6d23ef61c01d0e3dbccc036b8dc6686348972a36 Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit 291c853d3473da2be44d94976624a6c2978d7d44 Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit 957c21692c6fd8d0c4825e11a0605f3fe86fe9f5 Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit 89da501dc381a160c1314f3f2409549f15c9f554 Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 95563d6424cb29f172ef54247e3862ba37f020f5 Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit f46852c34739f821a4f435d0c9aef014dc647885 Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit 6083a58e43a3cda45ce5c2830935703d10c2425d Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 0cf4b0d7fabfcb0af8e21828f26f5f9ba0109036 Author: smilerz Date: Tue Apr 20 12:21:58 2021 -0500 changed hardlink markdown link to reverse commit e34c5100299ee1e6c16d96295299d6b49e735f98 Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit 6475953a683014cc654b71ae4c22b4a6b37567b2 Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit 0122bc864d252a483b7e356be6c5ebd39b2933ca Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit 7b8e3b931ac8671db2139e95d1f6e79fb088bb23 Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit 0d2acc6fc19260f3b023d2fb2ac875b9ad957544 Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit f6943d677ae98640653e13505e45d7ec41009234 Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit db2eb599f2f81ed8169d108d817c43166b5448b5 Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit cf84f954caa7f21ff5783df49bc040100903a98c Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit d88568bcf615af4a2099cdf2bbd4b82f73c60724 Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit 184f36eb37da19bd3cda58bc3653916b9b2cf74d Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit 606997c598c2fcc02bf98cd8b8164a1de47fd150 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit 5f7bf2376b6910e84abace66384f5307cc906d4a Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit f28845753eca3f829607bd0162a0fec9d54c4354 Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit 2f02fb660d179e60780c09216646d1a91ad69461 Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit 9f1e3534fdba1f88c75204996e0a2ffc58af2bad Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit d9b79bcdce32312a4a34b9306507c10fb9cb3f4d Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit d448f5ac3f6211dc7d8f14a68082198a7e4e7d4a Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit ec5c67b766e08bf5b65c938189a3e2f34e4e3fe1 Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit eab4ead9196c8e262bc41920b59e539666d6ba8f Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit 11c9658f356b578ebabab8799e7a5ab8e7a86862 Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit 532d780e6f6711a632eef9b21558cd15aac95c19 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit ebba3d4ec18697d14b7d1de3cf1eef88e55c7683 Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit dfa777e23bdbb3aeb2f2d376a4c096f4e16177b4 Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 8e452455a48c2b2dd86cc4077b87fabb9e51986b Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit 494d469a6bef55a50e627be3360834e857bb2916 Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit bab00343380661e4d5fbe616ba23de0c07ebeb90 Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit 9747754720dab757e6156c121b867df5ecf1a66d Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 5a66a1de24118e832e15d5bedb7d9b484db79ec9 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 69bbdc90e5076420e74341b7358b1a73dfa63c58 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 731d80b31f84f5bfd0603606572649026bd04311 Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 2fa4dbabdcbc4103c4fb9535678192aadc79c6be Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit 2410f57781140b5ac0f45e9bacb37dcdb09b4db0 Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit fb235473139c8e08f0c63026b442a30b108e89a7 Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit f44ec3ee9a3a9bba67e623ae5c49cf52edcfb6a0 Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit dd54dbfd5c691fee092f1c0bd4689cfa85d85414 Author: smilerz Date: Thu Apr 15 16:03:56 2021 -0500 handle text cook times on import commit 17405e88eb7216c9b67923a23f211bd7164363f7 Author: smilerz Date: Thu Apr 15 14:45:34 2021 -0500 convert servings to number on import commit 024ad86dfc0e86937a1001c813ee50f917fb944b Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit fabe9b0b5e4080dd0a8a1a81c336a17a3af2c2d0 Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit e7678bad9cb8dcf8f0c49e5933c42c9f66edb76a Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit 7ba62f38249e1ced4d03f98db5805768f05f3f79 Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit d16fa3a5d2bd9d28ceaeb05216e05c5e26efdd48 Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit 04cc8de27261a96d56c005976f8c59f01dbbea88 Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit 3ba781ae07591521ad5a963066791a153fe90b36 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit 0b5106f89305d043c9ecea4dfeb8b3a28fc87463 Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit 928aa59c0480ce894288008d21fcddd290fd0be9 Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit e38aa0071778001710d1dfab4ffa4403318f1933 Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit 4a01d3ab0a2ab8722453035fff5ca69989481253 Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit fe33e93e1d0f6b87944216189716084bb2f48425 Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit 16f46b44f564fe1a9ece1e9595776312465b6e1e Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit f14ecfe2434b67e5ebad6e7d20fc7eb046343100 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit 095da0121cd1e5f9466df4da3f74b09118f111df Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit 5efd7c1938c95bd920a776b45efe10daf0a0e07d Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit c3b156f454d79370f7e51ec05115d849cfa53a0e Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 9c073348590e8e418f3106e3214e5f839afa94e5 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 70f72d54f6108f4ccac31b740bfd77144602fa36 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 028f4be842d3ff5577718ff79fc999cbcde21acb Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit accccbdf6924c7584ca6d45d9e6efff5e4009b0c Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 398282d8d73e3c4c737f2eaa15e1b1060951561b Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 6ab508577b9fff90c05f301206260e0d6f718f7f Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 86e79e2389418694d420409e8d6f3078c93cd09a Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 322a54b437ea0f68c5badf738d4679870eb3d7d5 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit a06ffcdf7c2d1469f3a9ebb0c0f45deafda06d4c Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 6c9b9005b96dda483e8efce3205a8101c509288c Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 8892512f13f3f2636eec7e4efff7b213cd565d92 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 937acde9942e4d1a58065b7c0fda0f59391c007e Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 564215b47fec522dd8bcdd33bfc20d7cb8c7a4cc Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 761af4a0947ea4a7b4ec75a983fabf6bd6dd6ae3 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit b15f9393a4e212c608115499509e853a605bc1ad Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 35fd251fc6cd63a66b30f7577049276dc8e6d30d Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 671ae2aa182938d6920fbe3c27c56714711ad258 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit fb024c36139508b34caca42b7b6b11931c713ada Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit d2e8b92b75361858bfc0599fc0d0951257b21dac Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit db6a058f9a5412ef1d4227dc0662ab0f52bfb15d Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit c6a6454e6029a87e55548321de21303d12b0f90d Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 41684a3f0a0f168e9cd6ef31ee7148a1993a8471 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 6847232f07e7033ebb88e73a09eb45e349b29ed4 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 8155c46a138209f78c75ccd5b622a72ae3eb3431 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 217839b2a2f2a38f6510fe3ba418564c0bd7bf56 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 65d8ce913d0d2db300d016cc6cbb508f86daf25f Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 59ce02eab25444a0f640e0354a4cec3e263a16a7 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit ff80939eb0d01d24e0958d2f0d8cbbf605477e0a Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit e9a0abe42f93a4efc6329f2b425366470b539d64 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 2551d22f00422f4e3dbe13dc236af0232db838cd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 6fb931b7ae5f7a2b3dd7748446a2127648a2cdd9 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 82f81a085a1ab772e9653c97a54a559cd2281095 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 3f8f2d0943b36e5583611cedc53264554891d628 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit d1449fb90e51e03fa1ab91216f1b6f3f7a91c8f0 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 1a83be752e16f4aec4d1ad1a6b7b6d3130b09dda Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit f0b1bf38ddd1b8a4e543cabd1c69a1bdc9a6edc3 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit df1e1557b41d42ec06391ee7ba1d0af1a67b9140 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit fb42466b82a2157207a05c647335bcc81fa22ac2 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit b74ecfb8c30a23fded300a67706e078dde9b9808 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 9533360b9153c68abc2e75457ca07237ee1cc98c Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 0bc25d0eff950a097ee1ec056513129a37bd9b82 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 319ca270d011b9e98e37b5a87b4ad531311f13a2 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit f35f6d3d263b5b011984f3aec839b8a2767c8b16 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 982279738493d2a565278fa9675332730de4b0ed Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 0246069ee7e5bc40adfcd82fa6cf9bc2c6aea352 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 35303df77fe38c3ab5dd1ecca4ab20c2b828547c Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 3064a4974fbd0b798d60419b8db4489eea83a417 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7762ed3cd70020d102c124c6f11134f95a773246 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit d318eae41d559ef1b8a40ae07429683b0656da12 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit a4aef418590c003f43710ed1908574b9148bf5de Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 6984d4da02fe1e9ee0f613a848839c2103542588 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 1f59df7c4faba48da0b94aadca3723f162bed67c Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 60979173c4680cc2ff9e4230e17a9f736aa419c6 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 4ce804e2c9d5e617a8a6c2cbff8a4a9ca6e49878 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 4f371c4f4ac2e8f2b50195bfd15fefd7bfc71626 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 9718a047b1cb3a8e697c130bd2ae5675ecb29777 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 54d4a2fa6d3feaea6466a259d1d25a16ff9494b6 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 3d9bd3596a6bf8de908b6864744ccb87d4f434ef Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit ff930fb3662c8c78d9a64fbe43c115514d48315b Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 2d8f833871cde8ff179c19010d895ed82bbc8e8b Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit c2d5c358caeff0d213b12fcb34101c5edf2c28d2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit 7dcd2003905b286cb2db67e9f5cebeacdebd2919 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit cf6c6f290331c1a29ab6c74b51bda35fbfdba07b Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit 37be78bad179f4c1629f151d98c26ce8c14e8627 Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 519b89c3529d904a9ffc89ee5e3bb938de9665aa Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit adcdbda755dd0560a03aa02f29312e97c82ca900 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit 55d772d7a834a5306f08be8f19df9c5ed9283d3e Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit ce73b708f2de796e00cd67a7e157c7afbf5d03d7 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 451020d8c6004f060beb43f12f76b246ab8a3937 Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 1326d946d0287ff3eb1cbf5f5080b4f53359e803 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit cde02139cd463e0bad05f496c924951cac2e2e00 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 5534b8ab2bb1914b09e0357252fffc3551ba67c2 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 4395230cce0cc6644033f9273177e94dfd23443e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d927b99da96c21894481c2805d374291b7e3188e Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 5d989bef091d49aa1c596c37aaa387a382b2d380 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 13381b71d61a2f3999f6d6ca150e6efdbc786098 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit dac72715d3ed3114bb0cd7afe3e41f2652f11cf9 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 5bed0a76407be2802b7893877b84496fb83105aa Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c5e5b1466dc73e87fc7096616fe0493315f18433 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 5c9da351b40bd8954169f9293ec604f4449aafc0 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 0701381dffaffcc0171bfcabc233a0275cb053a0 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit dadfad8f4ba80d9f231fb73145773f3e36315c3f Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit a7b01cd9bb0310eb63f7de20e15cc3c157ecbbfb Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 713918858666b1be3a9daccb78ff58b3a79e189b Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit bd89afa171357af2fd5e1a30020dcf037505120d Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 158c1bc22549232f1cededddd4bf734748a6bce4 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 55ec2db3d6c2223909b36147eeaa9e6be767e4ef Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 5f506309812d195d7ec9556d7f5835de2bcf1de4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit cd7da19ac58cc7c6a218b779c17e80c07bbd9db9 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fb9103c333452225a017aa8476bfc5f80365ecbf Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit a5ef5be23f28005e044fa3f5c3955e6c4c3cb2d4 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 5c005780ad34676e7ddf37e8bba77d001fcb6e5b Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit f59cfc32afa60b0ce0d3ee9c7d5e9ab6ae662ce0 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f7f3f1fd416f87383f72c1eb5d9309581809d878 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 2627b87d2498f5aa6b242970bcfbca4e9e735c34 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 32911f2d67f97e727f7243df02d8f20a6637800d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 000e05cc6c31a570b5b38642dfa740387cecf2e8 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 46a4001eb62dea4207ee32ced25481a999200e64 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit e8361887029c956c92b2e203accab7168f9b89a4 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 010036034619c31012113a89160b15678e4bfef1 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 8f33f37a23ec68fd160292f040d5123bf6b1dde4 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 15fe8eeac8ae124acb1659f6546b1311f9c9035d Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 3e3304e5090d3db09bd49aab5bde70bacb4aa9cf Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 06cc26e5594d54a87b78ec6c7f86e40edbcdd1be Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4b41ec2f9e554bd5748ceade817caf23a69f4c3e Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit b9c4b10f5a8f2074cea455f4cafd6c5bccb2c8c4 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 442df551e2a4c5f4497bb28cd6452785cdb72d86 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 50c40863073e3939359b5df947c12e766f0ff27e Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 37a2bb0ddd5431a275b43849b92ed2cbc8912858 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit c8b4a424c3b473cc69a310123ac3ed1637a49783 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 7b1739ef6a95ded725b9db7214e48ce2e80de3ff Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a5ce5efb0965774ad31c3bf8555c8fb29cf0602e Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 62a34ace7200a6a5ce74af523af141cc46e0a370 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit a4646a63d679c8e78b9670bf421bbe4c1472eff7 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit d526450e9c945f0133352632bf9435d1ca05c42b Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 9d7e3a4eb6e4d2db59c66c7387a5452f5363c7fb Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 4b39af00e8a0fc120a9040079d96af9074abdf23 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit b550753c45694874ae0ab198a13e98a0b1cf50fc Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit b072d7d23390ad35f4bd02b09eb86deeb1eb7ff6 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit bb68b5dfde2f5f08bc12c93b5fa1f9cc71d20e4e Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit c0703db653d054f74fce60e43762d552e8659b8c Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit d62dbe5da83ac03492d1632b42e6d9d2227dc0a4 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 96f0cefe7a632eb6f12e265b965b53e8b503fcde Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 4aab83d9359ea01e1bb02b213acbfedc90ff1ecc Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 4b5bdca51e8f76587a3cb06d84cf50606803457c Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 1ad7fdf10aabfade87662e98c2f9bab1a6597bde Author: smilerz Date: Sun Jun 6 15:37:57 2021 -0500 fix migrations commit b7bbf26fdc19a3610edb889c48b72cca92ec18af Author: smilerz Date: Sun Jun 6 15:17:11 2021 -0500 yarn build commit edca7a7b3ab961c3d56de8eeedc993c8ec9dccec Author: smilerz Date: Sun Jun 6 15:16:07 2021 -0500 Fix after rebase commit 8c6b91ac61ed36ac50368e817d230a0956f871ef Author: smilerz Date: Mon May 24 12:20:52 2021 -0500 yarn build commit b2a6d0f114fcf8657542679aa3d50a70def45568 Author: smilerz Date: Mon May 24 12:03:27 2021 -0500 WIP commit 56064eb050960dd63bed7d9e261835d84b438e9f Author: smilerz Date: Mon May 24 11:51:54 2021 -0500 send search results to console commit 1ed1b9071931d718cb6a9384c87c7232bf96526d Author: smilerz Date: Mon May 24 11:36:23 2021 -0500 debounce search commit cd9a0b7bd364568df7a37c68c56e27d556e1def0 Author: smilerz Date: Thu May 20 15:38:32 2021 -0500 updated signal commit 94748f41b75bec8e0d2e505ec36e85156ac137a4 Author: smilerz Date: Thu May 20 15:19:02 2021 -0500 WIP commit 085aeda61a7981e0a5163865724cd270a128c743 Author: smilerz Date: Thu May 20 15:02:49 2021 -0500 WIP commit 54b20419576d16bae1239dc4278b02787bc065b5 Author: smilerz Date: Thu May 20 10:16:17 2021 -0500 Fix after rebase commit f6a19670d8980cbae8ae889042f3cc5a772a1b7a Author: smilerz Date: Thu May 20 08:33:09 2021 -0500 Fix after rebase commit 4f515990330e98ab6bb072d19a7ca7626e1686b3 Author: smilerz Date: Wed May 5 08:01:06 2021 -0500 Update README.md commit f20e8e1b08f2fe0617cd1f1bf56188e27c3905d7 Author: smilerz Date: Tue May 4 10:33:47 2021 -0500 recompile commit 34e263ca0f855c5a0412f18d61d1f7c0b6d1de0b Author: smilerz Date: Mon May 3 08:39:19 2021 -0500 minor bug fix commit 7e1f8f5634551bd034fc3afe697a5daa878ee4dd Author: smilerz Date: Sun May 2 19:57:30 2021 -0500 rebase commit 479cf2b9d42134de341e9576cef5ffca8fbdb699 Author: smilerz Date: Fri Apr 30 16:22:34 2021 -0500 cleanup after rebase commit efb5f1b93755a25090513d7445b02f2114045f0a Author: smilerz Date: Fri Apr 30 16:03:30 2021 -0500 Fix after rebase commit 953a24e701fc983d83c714f0c15c004342079b94 Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit 54cd993e4f96c4620de5ef2504784205cb67df1b Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit 71149c8c7791120199b9d65acda5eacfb82096b4 Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit 735ddae1da95c03346072e4135d8209903b6676b Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 93130eeb694e2389079b88facb5cee9acb4ba9b2 Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit 14a9b47fba4f57d7faa00e88573c29416b24c1ae Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit c54f98ab6f98603db6a35af9f45f59e032824b55 Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit a20e7762b37d9fd88b8f8c989b36f71ea764509b Author: smilerz Date: Tue Apr 20 12:21:58 2021 -0500 changed hardlink markdown link to reverse commit df9b571d5d9c24017e392d0de5fb6b4e9dd0fcff Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit 143e38dcdd1ccf2e9bd53e1095be76747022c201 Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit ec6251ebbeb4d7daafd8093385c943979d6e8df8 Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit 65d44e6612635f9cf99c57543cdad529e3f2cefd Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit 945d84fbcc271432b1d14e550e19c2cb098c2b2c Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit 0e1ac970643c1ebe6202a8140927f9b3da123cc7 Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit a88e7d07343fd8906e5f7cdeb1bea7de2ebb7aac Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit 573db7f254816109905343985319da4abb1c3ab7 Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit 606d4b004cf36baa51b35c3f957bf523e28ccf0e Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit bb9a2872f48a067b402703d9876d597c2edc9891 Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit ee9cbdb6ae9f1ddef50d57d25ae258b6d7b42fe7 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit af21ca5c013c11d57b4a5ac080f5b6e61923d39f Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit a988143559d200dc1c6821c1a5620681090fde8b Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit bfb0b71ce6a7f5fa9e9eef8f79d140da653523a5 Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit 0f2469221db1ecc8d51682e622f4c4ad3550a96a Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit d1434f9b8408885b7c16d5b003353811e8cdbd37 Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit fec66eeda119e7d46e58702cc1991e22c142e702 Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit d82b7ccd61d2ded528d01fc0d0de3ab5aca19f00 Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit 595891038785c4f7895ceba755429f006994997a Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit b8c4568cd33265c564c9615d4b8f1772a951e237 Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit 55004f0074e2c8256fffc7583f680511415d9064 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 61d1fabc379d6775544d5b0628909133915c7e14 Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 8ec98cf658da1242010809bf4167e8f7fa4ac3b0 Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 0b496d3bf48a151646961132fa2a834f9c2cad3f Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit 48122cafeadfb55f21940c996dbb62f75ce5bb64 Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit ecb299b7e58ff2f0ab1c6ee14aeb768444800dd5 Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit fe880b172dc8c75bc1b841cd32651e3d543ea329 Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit a5b5e0d16cefc29cbec33574acc872d8216e464e Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 690e213939f94cf7ee7f4991687c95ea57155118 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 3b2001dde0051ae32aa9f615dcdd6f256e0b1816 Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 2361570854d88cc30b32f2405ef4b011606fcf1b Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit 4bb75fe03a4abbc291377278b94fa3fa0c5d41b9 Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit 7a9998f67f4c0a04ea44165924e9dca15f44c750 Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit fc9408dab2bd3e37d729086bb792b0ebe14aef06 Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit a56b4fc77ad31b509807c017f19c2e65e59ace26 Author: smilerz Date: Thu Apr 15 16:03:56 2021 -0500 handle text cook times on import commit ec40f925d62be43c98dbf889d729d664b498b258 Author: smilerz Date: Thu Apr 15 14:45:34 2021 -0500 convert servings to number on import commit 6d0ec1ac0b0267fa0959fe13cdbdb971d9a491fa Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit 6ba6bd1942b5705d3e938beae48fdc9c257f3f71 Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit be519152048bab1e37c171b3b7b439773e805071 Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit 3743626f5596bc9fc1a8845e2e244459e117acdf Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit e01bc5cb58caaa207992be94315ada6bb737dc60 Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit 0f3c69813011d1b88d483c29fc156494a40df97c Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit 186ad152b44a03b1485d5209accc5b43d8b48f08 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit a3b4621087d336e0ae17a510b3e868859724e86c Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit 96404ab2cbb04cca654145144def3f520d332afd Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit bb965e9e54059f009d591e85db2fc09ec018d501 Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit 4d065e1045b684234c94cf26155f4242a49c15ad Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit f591d5eb3b45fe8aef4b3401ccc5cbd8a96f4719 Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit 26daaf24236a9dedd96d248a571a669cb11d4970 Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit b82897f90e768f0785dfc0d6178cac11795b4d66 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit 730ff0d826e7c28a6d97c462d9e8021489c66c87 Author: smilerz Date: Wed Apr 14 13:44:03 2021 -0500 fixed workflow commit 362a01f983fdd3275a562a253d7543affc777eb4 Author: smilerz Date: Wed Apr 14 13:42:00 2021 -0500 fixed branch reference commit 3464a23309beb7e76668f397f05ace099a6d0b32 Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit 779418fe93856212c30a48297457dc95ebaf7871 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 28c04c605c31d1ec8b437506d4cd30593bcff2b4 Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 33200e9d1ec649775efefc635a1c488d5b992793 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 66f5422a948e78149284413dca88797749ae2682 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit e11bb16b1f8801c47814fc458909854e90783a59 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit 9c37d9b474f49b0b7118adc553aaa513fab8744f Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit d50a70524e787d1d1b6d2d930f80dfcc0f59daa4 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit aabade4c9d5c42a6c942afe49c79190f6955a82f Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 82854085e6aba2e136297c78e1c0f1b8c0ed58d9 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 80332c7d871888ff5f19286289028632780c4361 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit cf08828e6ac3aa217599c4ca6156eb0f1bbab7da Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 21f525a840cbbc379391216d7fed81c51e234da3 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 5c9fe04899e867406e467374722a423680e0dcb7 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6f0cc35901bb00cfcb0a9a8d69baf860427618bb Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit c75b33d33b74e46024736ab14df24299d260ac79 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 1ad9e68d1fcbb429a06b91601b8317189ca77ec7 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit ecf71c3af1b864f2a9583b86dcfadd713d7695a3 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit e0b4630f4910b566dbd2b8e6e5aac5109b1c257f Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 968a1903c6e85e65f161d67067d5849ca97253b9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 3540f469bb53ce0ad54d08c4b8188c060f8d2646 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 0ddb608cb9770c53cf6fe3415dcbd17642ab9cb8 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit ecdb56a25b0aa3dfde4132ed5816e29bf8a57a1d Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 40de81d0e5f3a1622b44371e1c4c3e7766260d92 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 9ee9f5595e8c37e335da8c0d3aa9af295dbb571a Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit b99ea1fb5f9711320fbf34540d02bbcf8baa80c2 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit bb88d0e624635a209e55c6568242e9759f204802 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9d7658a4c87bf7b9b9b9560eec3b36daaedd08d0 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 64c2b09339bbcc88415b7f24d44602e6e5b0f73f Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit eed7377905cb798f5e380a2ac28c7b363b8ccde9 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 9be6b597845cbfdbf7da55e22639fa8e889fbd44 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 7380ab36af556562f5c810a6705aa691aa4ca21b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 8758cd254ee845eba07fa1b8fc1317c8a4e1546e Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit f878f96267e17b17df7903b8981e446fa386e298 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 04f56a864df2c1f515d6407bb2226a18e58787aa Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit c6e9c8e5ee2bc35391ae1da88ea651a7fdacf82c Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 8f1677536efdb78b80173ca8f81d0c03f410d3c7 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 4d79a26c790462209e7bf599ac70d2618047ee7d Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit a4855a40d9417739fd222d41dec6464567e6618f Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 00e4d51038ab50d0342261ec24904e9b3299fd2d Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 2632443cabe11832a6c50933bdb4f23725c69df6 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 26f0b0e411a581ae2490e0c1832629ffbe9f5e8e Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 19aa5b4f4eafb523227aee3d3085e4c2ee7d52e2 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 1ec080aaf3d44ae700e9de2132fe4895f38d17e6 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit c7c6515585f5f05c8ecceef58f9da3af2a687b1c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit a1cade20bd21916d87543eefeb1f42ef77240b24 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 99f23a0bbd202cdd1c9b37335a6b04230b1cdb02 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 4fbdc74570e11bbaa6b727577b3d0459f47b35ec Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit ee4b1ff6436a95785248e3216473092620bf7c23 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit a07dd8aa227f607b38a45942e2d4f718fc67a2d3 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 4306423b6368a5173c214f7768a37947a4df7936 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit c9b6205aff7da16a46e825e42919bd4c544cdf48 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 053bbc88250871d4bdfcfac9d5bfaeceeafb13f8 Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 2248c54ef980661cf5705fa9881cc1814960833b Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit e0d19b7b5798b7c2b4915d5efe9ed93ca975ea43 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit d9b15f1153f043da725db51eb94baaf8e4ca0242 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit b42c730013227a04631425521ad931e943eacace Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 10683b5bcd0a55481bdc35369c471d8b876f5f18 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 7ecca2c3ed7a99c93987a38446af58fa48ced658 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 228b26f566124123b101e638b351f651dcb2db68 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 6c780758a6e0318f486b9edb05f10df12749b9b5 Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit cbca5d4d22a470449207f2e208dca9cecc9c35b9 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit d7b6c05b24d632668495e0efcd39248e310c9830 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit 8d6a2bf3e6564a09e91e701261b44952a48f2bf6 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit cae53a22f2568d34ea09cbdbe346ebf5ca1e1ef1 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit e23b1168c39b104632734270f3aa7c5b872d7ab1 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit 630d7a7570c42627ca33515f365a7e0a3ddf7034 Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 89e0c552c5c02ca4514fc8e91d8c357650c69f0a Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit 34b5f7940341fc8bf18140e7ce82ea64561661c3 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit faf172b8daff00ddc3aef26b0af3f4ab1d68570b Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit c918bf123d66f2b8f62ec89c10515de0485f0f4a Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 2b413415166f50ebaf6b747bc46449ca700e78a3 Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 873d7bee5807595e1616605958d22c35f829e99d Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 2b2f906fdbdcb0fb87f6e7bf2fab2991208799e1 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit a11ecb8fec0fe7096e219fbcee2fb264bb7bdb27 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 66d2c5c75ea0d2b40de26796ff2cd9634d23bca5 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 0171a65bc6331ff760559d1326cb52c60aaa7c5a Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit d97f5cd7e96cb0ca6a8b14900a47dd83ab088a59 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit a4f85e1ac1c70d1b63bba4c9284d36a925246a52 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit e534c41b2ca81187c4b97c5df8ff5ea9cf1d244e Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit d4d4a6a834c7b022caebc72d1b4de975b82b6754 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit a08ef25e5f23e3036ae3c37cf9de3f20cd61f329 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 1a26d3243cd3295756d268b56df7a6acf3c6d4b1 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 52519cfc44ad2e9a79ee1cae772db5724242efeb Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 0e3e8cc3d8360d8815b9f4cdf2ff07601fa2446d Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit a150502bbdd0b64c34cfe1c582c9bae426f41655 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 11580d17360b4d78c59d7ec29fceb07459703ac2 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 4b84caaeb7059c913a477173cbc1edf5d15f0902 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 0c79b6f0dc12c36ce93c14fde94d5a5d69dcde83 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 613a11a20aeb7aec7594b928df1053e4ed62d87b Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 1fb29193e72db672824f712dcbdbf39a0a109149 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 2b512e6d6e5158a082655cba665b9b69b01ab11d Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 5e0bfd0197d83ff734895a0cf7d71f734863d817 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit af093397b27cac111846b65b3df03e041c8cfb44 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 06c3a477cc127e4348bae2968b3a4469a903b63e Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 4281c20b11317a092897c54e2c026f5b45bb8edc Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 987d3f0731f7d4af1d762e8d831373c0c76572ef Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3bfb99179173e1e189f37278a7296cab246e942 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 0a198fe0c93e4f133598deb32f19253444bd6b54 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4b216a59fd94196299659e91ed81f9f3c136f99e Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 04bbffa695dc36c33e2147c63676b220f6ad5247 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit e9436d96bd0932c3c17a8ef88cebeec092045936 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 3456dac997e4c228e0b274f787ccb364d47aa392 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit e32b6beee026b68d730c0ea672e14efd50f95668 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 79d8d150831cb900f296d03cc284e956979e91c3 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 8c3a897ca22580c09ce9f1ba82d50f76605f5e71 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit e2dbde8fe0f4588e216580db2963031c76daed39 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 269d687ffb5208b8dcd092e09de60165253adfe2 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit fd4d16b8c04b030c6c23be70406a699a178fac24 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit d1f483fc3660244ac4e09fb604f1d113b63c4d48 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 20d3d5d8a11ec929ab799e24d94568c8bc1947cb Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit f57cef441574130b68770f58ed43efc4ff7fd72c Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 63a3bdf2cd382a51777a1b1e339b554a29ecd6cf Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 873e61367563e744c5f014f4706a36e6903b6d39 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 02c866d922ca8a315f2d8b17387f4dbd7426bf97 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit df3d58ceeb27090ef2c1c0cdacc43afe69a1180d Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 49c08c8e56fa027f4d5fca1d02cfa7af5b065579 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit c7460cc5caa3cad8e5ba41519b0d75bc24aa40c1 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 8ae52d350a6cd6607a5fe49e9ca697ad446786e1 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit de39b470493d5a1ca6e0ff19eae19cfe3572e7c3 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 3cc0b6827289230e89848c9256416d87176b9e27 Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 1e647ed7c768b22199d22097cdc886356ce4922a Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 5787ff769f91697e34696be52597e7f5d83618e4 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 0ea86c1012ec94c99a94e1f26e134b7af8110df4 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 7358745bd2085e7f1293d64fb2459abd025d866f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit fcbcb7fff2b10062b831c32ba8344204be81eb50 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 2abe787709ce6db7d4125d5c15b2e161bb4892a6 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 5af2305eae8c0c47da3d1ab97b4c397e0910aad8 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 615201c92d0c13b1ad41fb0683eb0fe505bcd478 Author: smilerz Date: Sun Jun 6 14:58:16 2021 -0500 fixed migrations commit 19034056f9d65ea48be331451ac958bf4698749e Author: smilerz Date: Sun Jun 6 14:25:14 2021 -0500 Fix after rebase commit 26ce37c47c1f7223ece73487ccf49efba28ac5e1 Author: smilerz Date: Sun Jun 6 14:12:19 2021 -0500 fuzzy match on lookups commit 9b31c174acb6da38bcb32307a4cdaa7cafa9e877 Author: smilerz Date: Sat Jun 5 17:56:48 2021 -0500 link to search settings in recipe search commit 7dad701ee4d2beaf460b13cce4e5090d6e3385ce Author: smilerz Date: Sat Jun 5 17:43:48 2021 -0500 search form and help doc commit bb7d05bd85695a957c6cb29c15d4abec1d6050f7 Author: smilerz Date: Fri Jun 4 13:33:02 2021 -0500 search preference settings commit db1d70c5d97fd8207fe9c732f3fd76ace036c8d5 Author: smilerz Date: Sun May 30 08:57:09 2021 -0500 create indexes commit 7ead157bfe0d0df69a5b5b2702ae5afddaa2c098 Author: smilerz Date: Sat May 29 20:14:35 2021 -0500 foundation for user configurable search paramaters commit fc2d19562d5bd20997983649de1a72d2a588b67d Author: smilerz Date: Fri May 28 11:37:16 2021 -0500 WIP commit 0c08826cc81830d3654bc15e1e384bf663153181 Author: smilerz Date: Fri May 28 11:37:07 2021 -0500 split search vectors for recipe name and description commit 459ca86f3604325b3ffd6697ce46a3eb74415e97 Author: smilerz Date: Mon May 24 11:35:16 2021 -0500 WIP commit c4f2d5fe246830ca62e9701960f70b783c53c736 Author: smilerz Date: Thu May 20 17:27:17 2021 -0500 Fix after rebase commit 46dae2c2a6f43d01baa535b25be593495e46c9c7 Author: smilerz Date: Mon Apr 26 08:35:55 2021 -0500 updated comments, removed direct trigram search commit 5fdef6df17217fff639db635cc3c0b07dab79ff4 Author: smilerz Date: Sun Apr 25 19:50:51 2021 -0500 add trigrams to full text search commit d8891e8fd1613007b6ab2a643a96f5b11e78f1a0 Author: smilerz Date: Sun Apr 25 19:35:17 2021 -0500 add unaccent to full text search vectors commit c3fa49ccb3050a4684c7cfb489b4cbac99890ff2 Author: smilerz Date: Sun Apr 25 19:09:54 2021 -0500 WIP commit 11e20330ab40296907817d98176886a2b07a97fd Author: smilerz Date: Wed Apr 21 19:01:20 2021 -0500 add trigrams to search rank commit 0090afe9235064e14ef8180c40ac6bb95860fda8 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit ccc19f2a22262a5230f6f84dcb95c80602d6a59c Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 42bb1da652730a9cd253b1a7e109df6460adef9c Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit 82cc5dd593c2b1acbd4a6a3d9613e4b262cd37e9 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit b8a20c056bf298e488b29f27d22183e69e12edf0 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit 2d1cbd311100d30064c53f5599d19ae6cd18187f Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit a83396e179a6efa7ff94e2b784a0ccec206488b9 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit ae46f0b3df76458a618898900be4f721d5486d05 Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit 53d3889f98531cac823c9e4a6652b234890bca76 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 506cbc73b10ccfe4b05d0961240b06dcabe0861c Author: smilerz Date: Tue Jun 8 16:08:50 2021 -0500 git commit d7fd5840ee35a783b1aca8f3a801f6da8cfbc36f Author: smilerz Date: Tue Jun 8 16:04:40 2021 -0500 update migrations commit 48ac4c7fc7112efb809202128fd38dbf1ef4cc2d Author: smilerz Date: Tue Jun 8 16:01:18 2021 -0500 Fix after rebase commit 404c923738224b40b4dc4a4d6bc5674e137f55a2 Author: smilerz Date: Sun Jun 6 15:37:57 2021 -0500 fix migrations commit 247b7b34d7ae75b209910792cd1729ae8b574341 Author: smilerz Date: Sun Jun 6 15:17:11 2021 -0500 yarn build commit f9ee94f7b61424c64422f5ec5bd1a723882f69fe Author: smilerz Date: Sun Jun 6 15:16:07 2021 -0500 Fix after rebase commit 70ca75db48aeea9959dd6c10556861afada97e4a Author: smilerz Date: Mon May 24 12:20:52 2021 -0500 yarn build commit 8bbad9f5bcb9d2089f7e4672ee77d54418a517e0 Author: smilerz Date: Mon May 24 12:03:27 2021 -0500 WIP commit 6d68d55ce8522d2b7e952f48d3bea96d7fbd6dd1 Author: smilerz Date: Mon May 24 11:51:54 2021 -0500 send search results to console commit 82a363daca71b7ea8d3e96261e104fc630b96c40 Author: smilerz Date: Mon May 24 11:36:23 2021 -0500 debounce search commit b2851cc0be449b95e91b76a1d63e86b7eb4435fe Author: smilerz Date: Thu May 20 15:38:32 2021 -0500 updated signal commit b62a8a12c1444c50f5777046f5b9b2d8f6c6824d Author: smilerz Date: Thu May 20 15:19:02 2021 -0500 WIP commit 5c404f115bc63364e19a56cac63a561553ca3ff2 Author: smilerz Date: Thu May 20 15:02:49 2021 -0500 WIP commit a3f9934410d3dd3f4eb3cc5ad1cb02631c963189 Author: smilerz Date: Thu May 20 10:16:17 2021 -0500 Fix after rebase commit 65d9b9b0484ecbaf03973eedfd8d76cba0fe6092 Author: smilerz Date: Thu May 20 08:33:09 2021 -0500 Fix after rebase commit 88c3f48f1244de6f1fe2594bba87aef6b3848f87 Author: smilerz Date: Wed May 5 08:01:06 2021 -0500 Update README.md commit e1f850778522cb3f89bab37e8d5644e9340fe8bb Author: smilerz Date: Tue May 4 10:33:47 2021 -0500 recompile commit 0e993373e848fb4962282b6ad78beaaeb3b20551 Author: smilerz Date: Mon May 3 08:39:19 2021 -0500 minor bug fix commit 519e0c2e17cafc2166afabfd2d0da1f513119319 Author: smilerz Date: Sun May 2 20:33:14 2021 -0500 yarn build commit cfa9fef42afc1920cac2a7cc3f32d3d74ff1b971 Author: smilerz Date: Sun May 2 19:57:30 2021 -0500 rebase commit ed1017a8af4ab4c28ef88c96d52531efbb62fb6c Author: smilerz Date: Fri Apr 30 16:22:34 2021 -0500 cleanup after rebase commit 7688d12b3c16b6bfba8f079d6cb0d593048bc8ad Author: smilerz Date: Fri Apr 30 16:03:30 2021 -0500 Fix after rebase commit 5a5b3ebe866d312ddff00eee9fb5680fdc0d043b Author: smilerz Date: Thu Apr 22 11:26:44 2021 -0500 truncate query params on url commit 08fa58e0f517a1d6e220ebfd8a9328d133ec78bc Author: smilerz Date: Thu Apr 22 10:07:24 2021 -0500 bookmarklet includes url script_name commit e9ec5f645a80728deb0676f4c93fe7bb43fe54ef Author: smilerz Date: Wed Apr 21 19:00:20 2021 -0500 add trigram to rank commit 7d6efabc020ab7b15e31e1fab97febc4ee3142fa Author: smilerz Date: Wed Apr 21 18:46:35 2021 -0500 Squashed commit of the following: commit 1c5f74bd182eb502e27d03cc7f93e5e0db8c3362 Author: smilerz Date: Tue Apr 20 12:24:05 2021 -0500 change markdown link from hard-coded to reverse commit 76c56e2a063ec45f97b4d898e106a2b378b95b96 Author: smilerz Date: Mon Apr 19 14:16:17 2021 -0500 missing '/' commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 2d213a95fd63bc40c1c13cc6a4816dd146cf4cd9 Author: smilerz Date: Wed Apr 21 18:20:57 2021 -0500 removed trigram commit b0f5445387548da3b6fb4ff3f026dd71e48c21d2 Author: smilerz Date: Wed Apr 21 16:05:53 2021 -0500 add trigram search to v2 commit dad24a9354d94eef0101290b83f432d95b8a9155 Author: smilerz Date: Wed Apr 21 15:27:50 2021 -0500 Squashed commit of the following: commit a5d1c400efccdd3ad47807c4a2f990b983243d06 Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit 15261536c8ebab7156c366dcd4e21c5330550fde Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit 51f4af6487bfbccc66998160e0ba3e4318dc6621 Author: smilerz Date: Wed Apr 21 13:23:09 2021 -0500 rebase commit 2df9fc9d33a2b558b82cc8e614f18d0ebc409b83 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit f90f3186d95ae64c7f88bad5fccb003d7d3f44a6 Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 3cfe14bdae4a4d8995e9d7bf3daacbe05544b0a7 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit ef17ce2d57e869ddb84e4af8a37c2081cbf41e65 Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 306c662f0b8dc39dee3cc6011d5d9f4c1ac2f325 Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit 8c049697a55fd328a1e93607991c9160db80b6cc Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit c6f8d199efeb5d8b0f5b63a0113afbd856398857 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 20fb8e16f6ba221ca8ecc7865463b00a07e91777 Author: smilerz Date: Tue Apr 20 12:21:58 2021 -0500 changed hardlink markdown link to reverse commit 8a9957754462e09108ba806d64d600a95fa70b81 Author: smilerz Date: Tue Apr 20 09:15:57 2021 -0500 changed keyword to get_or_create commit 7f031c1951edcfbea4a430c3260baaf3c309d55a Author: smilerz Date: Tue Apr 20 08:08:13 2021 -0500 strip food and keywords on url import commit 334b375df15fd10a8e875ba21b5c43f6224bb40e Author: smilerz Date: Mon Apr 19 15:31:49 2021 -0500 fix bookmarklet loading commit ded3ee9438bc0ebb3bd8216524a904adbe2040a8 Author: smilerz Date: Mon Apr 19 14:36:52 2021 -0500 WIP commit daeaf09d456b5aaede3b36e62a29fa83b9a1806f Author: smilerz Date: Mon Apr 19 14:15:17 2021 -0500 missing / commit 620ec929309611beb06b46112b7cb8379efdd72f Author: smilerz Date: Mon Apr 19 13:44:54 2021 -0500 Squashed commit of the following: commit 47a13811a3a6e47e5f6f1c3ccd515c1989bd4617 Author: smilerz Date: Mon Apr 19 13:41:26 2021 -0500 yarn build commit 0d2c1fabe9f982179ec9d26cbb79bc0cebfef9c5 Author: smilerz Date: Mon Apr 19 13:31:48 2021 -0500 Squashed commit of the following: commit e03f626fd08a3e048dbd968d623ee58b7f865929 Author: smilerz Date: Mon Apr 19 13:04:39 2021 -0500 yarn build commit b511f929ffcc7a670bd7955269982e05c591783a Author: smilerz Date: Sun Apr 18 21:17:31 2021 -0500 update service worker with base path commit f13f02d481618583017c71fb654adaa86585ef0b Author: smilerz Date: Sun Apr 18 20:54:17 2021 -0500 WIP commit f2f927c16f52baa6b9a31cd9992e8c7c8739d666 Author: smilerz Date: Sun Apr 18 20:40:59 2021 -0500 default value if localStorage fails commit 424e8a9b93d8aa9962a3b6f963fff5c6e23dfa56 Author: smilerz Date: Sun Apr 18 20:30:38 2021 -0500 fixed missing '/' commit d49a206ddf5952036b295804f9e31e52a1b45af6 Author: smilerz Date: Sun Apr 18 20:13:04 2021 -0500 updated .env.template commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 58bcf33fb0a0fd71f7cee008e5233e3fe73de0a9 Author: smilerz Date: Mon Apr 19 13:05:43 2021 -0500 yarn build commit 1131005e7a27e71d649b4182371a4f95a6c39422 Author: smilerz Date: Mon Apr 19 12:58:44 2021 -0500 updated base_path in api-generator commit bb622bf821d0e4339f1a6d9d2523802d720948d3 Author: smilerz Date: Sun Apr 18 21:18:08 2021 -0500 updated service worker with base path commit d4da468a921fbeaaee8a03357be92529cb931839 Author: smilerz Date: Sun Apr 18 20:53:30 2021 -0500 WIP commit 77084378f0fa4720a10448d968cbaf836a4e81f1 Author: smilerz Date: Sun Apr 18 20:39:33 2021 -0500 added default window location in case local storage failed commit 9ca3f730a269b607da4074279a32141ed50c12e8 Author: smilerz Date: Sun Apr 18 20:33:19 2021 -0500 added trailing '/' commit 381fb5f2f12754e8a331bdf3831cbb8b36cf4787 Author: smilerz Date: Sun Apr 18 20:06:18 2021 -0500 dynamically set api-generator path commit 0934b6d0fb4f094e637fad53008ca992c9dc4503 Author: smilerz Date: Sun Apr 18 16:27:24 2021 -0500 WIP commit f378346481e9d7c5fe2b29970898945b8ab1913c Author: smilerz Date: Sun Apr 18 15:50:41 2021 -0500 WIP commit e0f2ebfe4208d5e695ee844283b15feaa486828c Author: smilerz Date: Sun Apr 18 15:43:07 2021 -0500 Squashed commit of the following: commit ac94ea7afac36f65e1658f3d29f4e2b8f0475ba6 Author: smilerz Date: Sun Apr 18 15:31:37 2021 -0500 WIP commit c9a687df1b21ac6584d0f958e65c5cfc040406ca Author: smilerz Date: Sun Apr 18 10:19:02 2021 -0500 WIP commit 7fe8c7fbe52c96f1ccd4128db256656e43af3fa0 Author: smilerz Date: Sun Apr 18 08:10:08 2021 -0500 added nginx config commit b5540d85872d9d69bda3787db7ecccfce893236f Author: smilerz Date: Sun Apr 18 08:03:09 2021 -0500 allow subfolder config on NGINX commit 92c65ec1e8014f63fb6e0debb4d72d146793c02e Author: vabene1111 Date: Sun Apr 18 21:21:41 2021 +0200 fixed test meal plan commit a376c3a5b651808c9a34a8cb9325a32d80e9c9f6 Author: vabene1111 Date: Sun Apr 18 17:55:48 2021 +0200 meal plan random fix commit 058d7051704ad9bc2b4e16769673239ad7b9e7a5 Author: vabene1111 Date: Sun Apr 18 17:19:11 2021 +0200 meal plan in search commit 4ad5d6ef2f9c5ddcec7f8f328abab97d69096891 Author: vabene1111 Date: Sun Apr 18 15:01:39 2021 +0200 fixed test + added api doc for new search commit e676b4bac365e1be1ab5cde41542156014fcc5d0 Author: vabene1111 Date: Sun Apr 18 14:05:19 2021 +0200 added api pagination for recipes commit 04488741c4f335c2241f19804c8132e2d981661b Author: vabene1111 Date: Sun Apr 18 11:11:19 2021 +0200 adv search mobile styling commit 99004ad34bafe3d3baf12c27a27b866e6ff819cd Author: vabene1111 Date: Sun Apr 18 11:03:15 2021 +0200 new search and setting commit f78f7dfc1483c21ba9836dd2f1fba523c98b1f3c Author: vabene1111 Date: Sun Apr 18 02:55:50 2021 +0200 search ui improvements and filter commit 880db58d3880e68a83b6346d6061f1c5d97bfdc1 Author: vabene1111 Date: Sat Apr 17 21:28:29 2021 +0200 v2 search filtering commit d1d65d878ce6dbf1665db0e1f5c415a309b9ffcb Author: vabene1111 Date: Sat Apr 17 14:11:10 2021 +0200 v2 search progress commit 3194a7580da37ce57ad7d63d8214c3a049b0de28 Author: vabene1111 Date: Sat Apr 17 12:57:02 2021 +0200 basics of v2 search working commit 10683dbefb7b6108abffc29a0b56c6bae1827c01 Author: smilerz Date: Sun Apr 18 10:28:55 2021 -0500 wip commit 2163771505265b339bc32f717bf5c1119206abd6 Author: smilerz Date: Sun Apr 18 10:28:26 2021 -0500 settings for nginx subfolder commit 83c753112073dde4861bddabc9f803779917c126 Author: smilerz Date: Sun Apr 18 07:57:28 2021 -0500 WIP commit c8c4939ba5be57ecf32421d205ea09671377bfac Author: smilerz Date: Sat Apr 17 22:29:21 2021 -0500 allow app to be served at proxy subfolder commit 9742223b3fd74079483c17241c181951349cd657 Author: smilerz Date: Sat Apr 17 20:16:28 2021 -0500 Squashed commit of the following: commit f03456411939b9f09704c057e20a970f9545dc0b Author: smilerz Date: Sat Apr 17 18:28:45 2021 -0500 no_perm commit 0262d1630dfcae204848a9fa6c41dc36958414d6 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 069a02e67a99805ea04b3f2248d48584e146eadd Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit 1be713ff9db5e94fc68cfa25f4b8a219edff39b2 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit 5c9e1f015a6ff667968e6421341061af09d1b34a Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 0e92b029d46bbaaf2a5bf2526165d3a4075581f1 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit e435325e66a1dc25fb9d24391eec5ed76503d969 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit c6e1add18be6e9791c7142a78129a879020c6f17 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c52cd0b177da20cbed9a9d606ee4ec54ab865f38 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit a3cf59c7a47dc39bec74b772f789e1c052884550 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 7ff1783578c90e2c6ae931b345d580279daeedf0 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 204f3ddf845a91c50d54d8dbd2f1d754d3076d25 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit 28291f96afdb70c8259104997000fe9544e0d134 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e7c7823916febeb0adbe7e548633b737125ad3b7 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit e01efbbf764bbe6b0e1cefac6c0311dd18a0d503 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 3e5f3a36a48cdca0087a551a9a6b4d942d81bf19 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 22135c7d40a399fafef994372e7ba128fc37c596 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 7ab59c55ac75f50997156f8808c18d12ef7ac8f3 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 0f6f8c9eeb642a2824c6952a69c2a2a12e628d24 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit c56add95a4627f5ed874bbce3cb7b0f4d8adbb9f Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 09993a71515b9b977f074e14e11cf9e4b5c72b96 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 625d23d994b84be082f20ef1f6527d1d742a7157 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit df4b2adf7dcd8099871167ed8bab779e976002a4 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 0a61c9f9def1da5841031e39ced99a08a2536958 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit afbf1153bfcc29baa80a07019f337a9c02b66a63 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 5857ed171e3b667764f2882d3ee7b73c15bdab8b Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 33cc780cfd8001a0293951f25fd19b3db8ce0461 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 322552a1f1434e7ca52f75886e752f31ea5915f3 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 6455e597fbc2a394f217fe8c11d2bc89e8add1a4 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 1c6ad94a2d8bf466e35c56a1cd82dff9039371c6 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit fbbc057a8a2964eb6a4ac7d2324adacc679db2d6 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit fd293f150e959f67b3e8260061f8a72898e0990c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 86b330583a6f5946b5743df8b447dccc1db3ade0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit c4be53661293bc54c9069c2604d8fe1a61dceddf Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 6a6314e09be06d17cc11bf55e95992f0a10b54ed Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 64524c01c8da795269bd2dbdfb5e6a02d47e8904 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 4701d62739550754960e6d1eac437f0d2cea004f Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4233980dd9df8e0e961363d464b41c61ad1c6288 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 16e34fe3b134bf31bc84c6f7584662a171fa9748 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c51d715cfee7a787dcd7b1c3dd0beb24a14962d3 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 29c199320502711a3197eade37f6021064c7dcb0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 958faf9972d26ad9f78eaaa1126af51d7a3b333b Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c284f830dc7e7339cd2f54185f2ff8ea6866ef19 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cbfc5fa973c002bc1ce75d3d2671986007b6a3a7 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d9815e445828293bb2965c7c98ab6acf3afe3833 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 0e327f3bf865a99e95368bf4b74ee9545d9a2b1a Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 18c5bf8a3eb7dd22504bbd2e40acab9269cc6804 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 9f643b0b85cc89a36a86681e20c68c177959e1a1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b37594eb84988043afa450de871a036f72a811ee Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e5f76034dfc174d3ce307de1c0c5683a159733a9 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 792cfb0791c2e682589995ccd1b85eca0a04061c Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit aa6c9430bce1a63e46ff0325f13e4f4d7369cc00 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 3dd92d811c140d925b153f30db29e11e4c8a18cc Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit d79283ccabdd014c62dc820f382830421908cf0a Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 3f95eb2f3db42628994f1ea80fd5010fa1b247ba Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 5016314ab57102454a95e48f0ba50b6031cc5400 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 27a489c45a5b169818e36c79591757f99f64c637 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit f7517d51dd9aad61b1e80ec20947c4f597834691 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7095b6ef89fe350d591f1103c4c1a2d27c60d28f Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit bdadc7168f37eede0f91a2bfa060200273e440a9 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 4bcd7e462db760d00483a90883028e5404f33299 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 794d2798bfe56a27af5e8786e5f3b9701be7fe81 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit e97bc6ea89d8c366104d08ce561dd3d3c17c1578 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 7732bc44b83c23901873bce1075b7ac2e68cee07 Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 368d2211efa86e1146e95e3ddd1192b81f0422c2 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 3ddff8b468e0c85d1a4ff61b565b78c5be0f77ea Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 083048e125f63463edca6f4855f6a8e974f61a21 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 638a66953dd5690426248bab1ee278143dc94efe Author: smilerz Date: Sat Apr 17 20:15:41 2021 -0500 Squashed commit of the following: commit 7930c2417c3f3a8bcbc070b6ebe12e8cefb8af33 Author: smilerz Date: Sat Apr 17 17:12:43 2021 -0500 update ATK scrape to handle empty headnote commit 2f27413c0a794c18389236c0600b804f817ab443 Author: smilerz Date: Sat Apr 17 14:12:24 2021 -0500 parse multiple ingredientGroups previous version assumed only a single item in a list - this loops through each item commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 83ec5c05f84c8734c8a352c3d08276d1ed5f5ca1 Author: smilerz Date: Sat Apr 17 15:57:20 2021 -0500 updated message commit 04d5a46d0ee5e5d095c871d8f2d1c42c52345563 Author: smilerz Date: Sat Apr 17 14:17:16 2021 -0500 fixed ATK scraper commit 477e1768b197ca0f149f7d619e7215233d1bf8cd Author: smilerz Date: Sat Apr 17 13:44:29 2021 -0500 Squashed commit of the following: commit 5869a8ad1b4a33007d2d4ac799090984da0e8bb9 Author: smilerz Date: Sat Apr 17 13:43:34 2021 -0500 fixes to pass tests commit 0640a265fc547e0b4ab53cc51cb333d22458bcff Author: smilerz Date: Sat Apr 17 13:42:56 2021 -0500 added test for spruce eats commit d449fc8fd8072d504343645bc470e1b75b8c3f98 Author: smilerz Date: Sat Apr 17 12:49:42 2021 -0500 updated normalization to skip removing line breaks commit b9ee77709b60b0f87581db7bd7426fce27d0d1fd Author: smilerz Date: Sat Apr 17 12:49:06 2021 -0500 updated ATK scraper to include header notes in instructions commit 68122ecc6b7afb53430f624512bfc8984191191c Author: smilerz Date: Sat Apr 17 11:58:40 2021 -0500 added upcoming features commit 469d03c69c272d10082748de2f513483854d40d1 Author: smilerz Date: Fri Apr 16 17:45:42 2021 -0500 Squashed commit of the following: commit ba061df1b6773ec35a31294e03dff844af4564f8 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 7cc515bcdfd0ece2c3a38d4cc983bd0dda6ff307 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit 724748d38a0db616642155ca87e60eaac9b5cbfb Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit b2c1c6e30128174e9305f1bf5c629658fdd09df2 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit b721577779186013d22d6cea7edb030859aa3156 Author: smilerz Date: Fri Apr 16 17:30:59 2021 -0500 catch attribute error on cooktime commit 3f6eabe10ef3142eeaba79d79a9d3a2132d07718 Author: smilerz Date: Fri Apr 16 17:08:25 2021 -0500 fix manual url import commit b5eba6555637eb7247fdcce7cee459ebaec20f9e Author: smilerz Date: Fri Apr 16 15:33:51 2021 -0500 Squashed commit of the following: commit 8e2a15aff203cacd8956c947eecf3967f5b66015 Author: smilerz Date: Fri Apr 16 15:29:11 2021 -0500 removed unnecessary console message commit 436d5b3165340772a859899578f7386edfcd587f Author: smilerz Date: Fri Apr 16 15:25:23 2021 -0500 removed commented out settings commit ba6b58b198d2e9260544d64e107afee9420ae340 Author: smilerz Date: Fri Apr 16 15:24:27 2021 -0500 removed unused cors_headers commit c7690c391f341d8d92500276f243e99f8700528e Author: smilerz Date: Fri Apr 16 15:22:15 2021 -0500 removed line breaks commit 3259f86ff8b911fa8489922eee43c4465ea81d61 Author: smilerz Date: Fri Apr 16 15:21:21 2021 -0500 removed console.log() commit 24552a2d9b644c86dee900322989fb3306ca1b4e Author: smilerz Date: Fri Apr 16 14:58:48 2021 -0500 fix after rebase commit bdf8ce1c3357609013c84d2661371ede815cd700 Author: smilerz Date: Fri Apr 16 11:17:00 2021 -0500 Fix after rebase commit 58cd295e7ae8caa9be588508eb1795fd4a00e810 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit ec786ef8a19f9459cd4c890c60330bcadafb0247 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 90cc1711b185290778e973821b17a7574c6d3428 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 466eae617cace3b662fe480427018b0ac7a7ab1d Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2668406d4625f747305482ede28e256c94aefcf9 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit f765347aec15b7765eaec830dd8dfda1f17b7597 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit 60d95ebf3d4e1c8af7f3b6832adfb28ce13a51aa Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit f50d33a9b2658f6bf27797f645fbd842528a716c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit cd482ae8451d3b920d7bb7a2b76044645f6a2e0b Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 7032c7cc990af5790073348c3039d907d3469a7e Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 04b4aeecb9b13ae0023636f65dec8fc0ca1b8e0f Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 8b4059d0beed9ae8da9a6943ed550b0a82e12e03 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 7388f30ef333315736a8614c2009db37404f4916 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 6d811738535a81cab737b10f006f50c32cc32f13 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit cbe400cdaccb0fcbebeafea199cf14be3deeb150 Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit f4e33a830b826d1930639f552a2e32882c14d2ba Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 1d1cbbe965a5255bd9cabb138a2f1432956a4c6e Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 31cf4da8f3dcface57399976679379d11ca6d81e Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 1d1b5b545ab35626636ec4d9e1ce020fe508e520 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 25140fa64e9306421956b90e40f53c00429e7c5e Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 14d97f671ad356c8212ffc7fdd5b15fce8b5a7c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 10975665626ae958f45e4c76b5125978e4776c41 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 9ea33ec10bc32aa6ffed0c8cd6d5a4b4e123eff1 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit ceb85137dd25a2cc6192165af9ac9b515cd5cfee Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit cc53a8debe36e65f9f487ac8c31cf3235bad5370 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit d2233df427cc577fd6ea87458d821ac37c4def48 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 9a0fcf9d2b6d35f01c16aa1c1a1074bb42577a3e Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 2bc5fbbdcc5d395b7ed7aa1879449e16da0ee2d1 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 4a3c1a94a97ec18109ba43a5bbe90a6aa8e622c4 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6b92f8c325dd4a3c43fec0efe9b20181eaea0951 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit dcd12899fd361868d4542e882d413292ef37a92b Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3e58d79a9279e63af66356d14c7204121f6055dd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 1eb6ba707c41f52711ed2d68e3758ce9c70465ec Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 95b50edc0f33afc1557b6a766e610a6c74b2e8a0 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit bdc85694309fb79b9c214f0330848be82c372156 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit c1f5ec44c3f45dd403cc600ed5e38b814fedd138 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit cc9a6fe14adbca88dc8753a7271ed4d47e638822 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3bf58f633610caa266e210fcdbecdedd0edf2465 Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 9a11ebc7746f2acdd156a574703ea05a0aba0a9b Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 9307226d777d5648d1cacc0107241dfaec3a4405 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit bec00d05898c074b893df7338248b7803f8272c1 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 2d647a2f6aa1afacb6651a6294bba571fafc3190 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 48cd8ce5f1c5c3ea2372b0f3fcdb2a9491be52f4 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 12e82211ace004c93726b8f6327adee1d1a58f78 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 8cf5dae5482d7b28e386760ca039c60efdfbdb9a Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a255450fad53f9482711a252ec98b353b66a15df Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 2bb4dd9954c4913c6b4bd9e23f60315ed0c46552 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit cddbebbc85377227ba9d753cf9d58db03e7f5ee2 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit b929bd9ae3a061dc2660602cb2ffb036b7e6cac7 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 558eb25faee2f8362a9af1380b40b11a3c05b6fa Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8906345e107096a657fac8cdff497548dbaa9ffd Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 966edebfedf89a7976f47dd0526e0aeb41aa0feb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit a9b24c9f03a223bbf59613a10f000ce1b421383f Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit 908ae04ef98d629da0cd74e94d1401fa6c5ac654 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit e3828f96e6d2db5877789b5bd9be9cc4eb151d5f Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a21fe044ed527dae2ea9a8bce854c628b1a39910 Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 59a30f579a25758ec58a938e8a315dd986e62cbf Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 299194409d9c0a395aaf5d69106c2f35baa1d402 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 0e480ba82f25a3fa705a9adc2cf82f5234797b44 Author: Patrick Pirker Date: Wed Mar 3 22:27:32 2021 +0100 replace common fractions with their concrete value (else parsing is not possible) commit 40fb268d2d2cfe5250b1a900eafb4819fd85572b Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 987be4b04dba392fe56ea5291929e7cfb3866f87 Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit ca84da68c49d2aa95786ab15203f30eda482f9f2 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit d75e39fbcd8327530014403d39c8955fc79cd98c Author: smilerz Date: Thu Apr 15 16:27:18 2021 -0500 set persistent connections to db commit eb2593aacd22ef07b6f17cc1d1a192f2389898a9 Author: smilerz Date: Thu Apr 15 16:08:04 2021 -0500 handle text in cook times during import commit 496e04cfc851dbcab2de04922c8cc67eee9ea8b6 Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit d814d13d54ea9759ccef2f3b6b73e5f782d9e181 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit d0cedaf7a1aefaf849d242ebbccf42feee8e676f Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 01f504f7b10d75422bdcf11b6531c7e576afbfd3 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit c716346f1f25a8ecacc8aedd3bc22f0bc582ccc0 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit fef523693184f852ff686493175e4932a54b7808 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit b115c37eb8b387ff61521d68b29039c98c8ebfa8 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 1e17f3703a5e6e301bc4133282aa2fa8d777cf9f Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit 468b986314b27a2ddc79b88ab709d73b765a5540 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit a531d135b5964e673d8c4af70564faa209f8498e Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 7524609cd0adfedab1bc330c99f2eeef82a015da Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit a28f8e65d5bff5a47682a5b3edaaf2282c621b3d Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit d1936370917fde078008ca365bc3ef266089a090 Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0953af05fcdacdf2b53a73f0cdcabfc78a887a8e Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 19e8e5cb5b84c99cb89592718a8069499e7df800 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 43c808380de3e84cd706ce4822200a8d75ef7fd2 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit 7ab8b84044d203a809f8b5f1f736b587b52523d0 Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit d739fe6752e6300815d98f8cfc6e88a496d6c8ff Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit a84c41e29fb6f18a1065edeb292c851f6984c622 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 393aba1f319443eb937a253e6fe7c5add33f466d Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit 436a070730b70ed7f07ebfa06b0c4c16bf520577 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 2fe6788ce54f3e226094979620ddd43744981288 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 747d146389eedc20565ea0dab16815e7e22235de Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit efe4c4043dcf3b4474d9218a401d8c1798909ec9 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c6739ba8e0c2b9089ef287b86fcfb66135d68a8c Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit 50140db668d35e35c6cd54159f58aec8d9d336df Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit 028b2dfb22ec56e929b8c078e29b61c260006d48 Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit ec6a10ca0a24c2b0f0bb6741c4d1e359d6944483 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 3cf949bf8df846519e41332621f0f6b2db63bbcb Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 0a622257978a6e6e1191f88dfc124fb5736e967c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit a54f4e1367524ac35d2221e1c34e506443ffcf75 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit bf3c30a8fb65ff07da9c02f7a1d178ff95a1430c Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit f811f5996e0dd038efb3274a89b82d5a61a305d7 Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit a3490240f462c8fe122a8b4e84701cb25ef17a06 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit b26aea96f408f2d0033f94e68b189b17b9e6d70d Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 4d4af5fdf2776c0e6710298fe20be5a28f1b4027 Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 3da74505d6f17d6879d9409bf1879ca9111a91fd Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit c8a4861df8a792e8a784bf67b4861bde6f00fff6 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 5e27cd606e14179c45bba4f9105ffb6a7f5ef292 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit a341fd8ebed30f0f7ece7bd50e3c4b5229947e3f Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit 9a62b6e4e7b1a304887ce5a5f20a1eea8db794f6 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit f80c44bca384b66c3528d0b9e7fa5b88061e1936 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 09d2e9f83137404f740df1e875a161502922509b Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 4d5a9e446f11850cc81ac5f098c46a393a6eb381 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 6a2c27749f511956c4d0a6da283e6207acf3313b Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit de60e12073918a14ec3eaa50a12d456607dac7d8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit 1188ed9227a34d9bd0e469caa6d4ef2dc583a186 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit cb708e7e47e45e9bffcdaf3eca3fe9079c72fd14 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 215eadb4a02db0047b0e60620a001d71212f2567 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 4ffc54f720bfd26d9d0a6d622011a66af034ac6c Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 21f6c7a21ff0087dc5b4d290a9bd6fe091efcff9 Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit ce7c6939d2199d6fc2081af5a6b4c91eaaa264c9 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 40a2f7ff90cf6f322126d2e6ad61278634635930 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit 4015517c0aa5ee879700b9e06e6f8dfb8e0e08e8 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 7c8d41753cf3ed2e9cd38e8b03f5f4762cc41e34 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 90670613c59fabf2372a0d45bc46e177ceee87bf Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 647c1678f1d5cc6773be5d54c539100a4ebcae9c Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 44dee16e0a8b81f39c5a3bb761782f25d3f39c6e Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f8fedcac82e8e74c4a10e4fe983c992b0bb88fd2 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 3a48d0e5808a9f20f37d9b7b14e5b51f66fa7996 Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 9930789aa877b5876a5afcb0517c84fae23f546f Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 83fce6461a24b2b2f0ec6e1d8177aa9138c2e81a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit f0d37244b6c406c893f6e3d68e8fed5374cf3bdd Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 386834f409bec8bc2db214306e58adbffb32e557 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 2f8d7c5859831494ca43051837f2c8b607107084 Author: smilerz Date: Fri Apr 16 15:08:08 2021 -0500 Fix after rebase commit 08752d7567298dca12df5f8c0455f326f94473c4 Author: smilerz Date: Fri Apr 16 07:48:52 2021 -0500 Squashed commit of the following: commit 7642ac66b4d679fb3bd40d783d8c00e969e48413 Author: smilerz Date: Fri Apr 16 07:44:53 2021 -0500 updated model commit c887fae3a2b85ad23772944d311761b85bd67031 Author: smilerz Date: Thu Apr 15 14:46:38 2021 -0500 convert servings to number on import commit 34966bcef2993f4d0a1309362b0648f2096db996 Author: smilerz Date: Thu Apr 15 10:15:59 2021 -0500 update tests to handle url decoding commit 86676772676395482901c195888898e7eaafc015 Author: smilerz Date: Thu Apr 15 09:57:10 2021 -0500 bring parser inline with json_import branch commit 2b547f67cd180ca457691e15bc9edc1ae033ecc8 Merge: e5ada34 51d4ffe Author: smilerz Date: Thu Apr 15 09:43:27 2021 -0500 Merge branch 'bookmarklet' of github.com:smilerz/recipes into bookmarklet commit 51d4ffef18d359f75d377eee27bd15816957ac53 Author: smilerz Date: Thu Apr 15 08:50:00 2021 -0500 unescape html document commit e5ada345d869409b240fd0746a88f269b6c28c2c Merge: 5b7df0a 8d02cad Author: smilerz Date: Wed Apr 14 12:39:37 2021 -0500 Merge branch 'deprecation-fixes' into bookmarklet commit 8d02cad7d99d1e79dccb3ab40dfedb39bec3f272 Author: smilerz Date: Mon Apr 12 14:12:04 2021 -0500 resolved deprecation warnings introduced in django 3.2 commit 1ab70e7d6b383f88d883aef606752076671eefd8 Author: smilerz Date: Thu Apr 15 18:38:46 2021 -0500 removed cors_header import - unused commit cbc59d2f16695eda8a1acceb7bf34a039dfc012e Author: smilerz Date: Thu Apr 15 18:38:00 2021 -0500 catch attribute error when scrape has no schema commit af8bde46df5af73f3f0983d02407d3bbe4306174 Author: smilerz Date: Thu Apr 15 16:03:56 2021 -0500 handle text cook times on import commit 0fcab406c41ef328a97f6e9b5931ad75b0511f7d Author: smilerz Date: Thu Apr 15 14:45:34 2021 -0500 convert servings to number on import commit 6f5efd6d2202149ebf828832db51ba98c3bc6fc7 Author: smilerz Date: Thu Apr 15 13:10:23 2021 -0500 name parser handles list commit edf0da8010963caaa1e6e1031f8808fd26b0bd4d Author: smilerz Date: Thu Apr 15 10:52:34 2021 -0500 updated docs for personal beta commit f5ce6aa486f7c085e9020687e3fbc5a08faf4070 Author: smilerz Date: Thu Apr 15 08:57:35 2021 -0500 decode html data when passing bookmarklet commit 69d59e542254a90dec8b03537da8eb15102ee768 Author: smilerz Date: Wed Apr 14 19:39:30 2021 -0500 extra error catching commit 6183f3aad03fe62edd77200b62782cfb9415d3bf Author: smilerz Date: Wed Apr 14 18:48:45 2021 -0500 more shenanigans commit 8a17ce6b4e36caf4dc17679b6ed17bffa8b6c718 Author: smilerz Date: Wed Apr 14 18:25:24 2021 -0500 add debugpy to requirements commit 3678e1ef0a6e3944f76e37dc56cb51849a115bd1 Author: smilerz Date: Wed Apr 14 18:24:24 2021 -0500 remote debug commit 3b05078fb6d62d46cd34ea2160f47f91eca65293 Author: smilerz Date: Wed Apr 14 18:03:15 2021 -0500 remote debug in container commit 7defe28f5ef59fc859f5fef799603013d98dc760 Author: smilerz Date: Wed Apr 14 16:48:09 2021 -0500 nope, this one works commit 13b4435e56e57f4bbb7a690a5eb1b4f3759ba79a Author: smilerz Date: Wed Apr 14 16:28:31 2021 -0500 it finally works commit 28cab6660b3ed51f0847843af70cbc24bceaa52f Author: smilerz Date: Wed Apr 14 15:40:36 2021 -0500 fix test again commit 0b67c974fd283060be673017f3fd18f30d161f8f Author: smilerz Date: Wed Apr 14 15:02:57 2021 -0500 add bookmarklet back commit 9d0f2ff5458aca7bd6e3ca713c09ea92656074fb Author: smilerz Date: Wed Apr 14 14:40:13 2021 -0500 extra docker tags commit f3df56531b19fd1b428d403b7eeb9577703c2ee6 Author: smilerz Date: Wed Apr 14 14:29:52 2021 -0500 build hook commit 6a26b669ef742ca68ae81028e0d5f8e7064ee015 Author: smilerz Date: Wed Apr 14 13:44:03 2021 -0500 fixed workflow commit c9942d0201f530f88dd5ea814e30a20c271b152d Author: smilerz Date: Wed Apr 14 13:42:00 2021 -0500 fixed branch reference commit b520a4ec761e75e146be15953f069d20e53203ca Author: smilerz Date: Wed Apr 14 13:39:08 2021 -0500 personalized build commit 8893fd516120fb374155a1784f236fe447777d29 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 398f71d8fd3fedd9bd1b514f2db1a9732e5943f1 Author: smilerz Date: Wed Apr 14 11:52:06 2021 -0500 fixed admin commit 8d297f5b5afefb0646c4db002e135b7d2e42aa52 Author: smilerz Date: Wed Apr 14 11:29:35 2021 -0500 updated bookmarklet to work with updated import process commit e269e9e0319c12d60ed9ad3be8f2b75a32d20a7a Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit 63ae4b40c9d98740fef7f61df39203c1dc1f3735 Author: smilerz Date: Wed Apr 14 10:35:52 2021 -0500 Squashed commit of the following: commit 707d862e01a7497a1f22879d314b865a35e0e85b Author: smilerz Date: Wed Apr 14 10:35:00 2021 -0500 works now commit 3942a445ed4f2ccec57de25eacd86ea4e4dd6bdb Author: smilerz Date: Wed Apr 14 10:25:24 2021 -0500 updated serializer and api commit 10dc746eb175c7f805a8a8ffa7ce49977a7ce97e Author: smilerz Date: Wed Apr 14 10:20:19 2021 -0500 fixed bookmarklet commit 9779104902d3be0258c95cd2eeebcba0d5d48892 Merge: bb8262c 0cb3928 Author: smilerz Date: Wed Apr 14 09:56:27 2021 -0500 Merge branch 'bookmarklet' into json_import commit 0cb39284bb835ffc6cfee3e4306aadc4a64a25be Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit e89e0218de684d40b2e2bfb6ba833891206c828e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit bb8262ccabb93c56fbc18c407d5a0653b8b3ca79 Merge: b1e73aa 35a7f62 Author: smilerz Date: Sun Apr 11 20:35:57 2021 -0500 Merge branch 'main_fork' into json_import commit 41d535206c93696e49d9a1b48410de51770c4ce3 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 719e265cdec1791d5083ffc30341d58740bf4c95 Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 614878597bb66afad2313b9cb541b5045c15866c Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 0688c7d2f14d801acc764d50aa03ab327a64d767 Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit da25e51111d26ec5dc752c40e82af273f3e7b8ae Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 82d1f4386142a55f2d68ebb6bffac739deb3bb59 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit cab224962dce8216e778e6a259c922968c42340a Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 4cfc86fd7776f4a82f081eae4096438203e65b33 Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 11a6cb907b8c77f80d3b857dc73e3276188924b7 Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 8751d8160d441899f184e58e00be54addbc38f0a Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit d880750f4e4c87d5bb58b8eced9ef919ecad74f6 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 9af90804a73e6ae09049be8bdf2bddc0c63f30d9 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 36b701ed714ff6d399fc2d1b58dca32a6f2fff32 Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit 7b26f71bed3f312cbb6e6c3aff1d1ac31c300808 Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit c7b82e1fd926ad6de58fc0ae60ddc86bf24f4686 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit a654c094ec43f25c72f2123f9074ac1824db7eeb Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit a7b5332b26c67b4156429807bed74a6c7db90ffd Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 3af8c9dfcb6ed149c77e7bc081dfffdfc3657f45 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit 95e7a4de10339293fe4c9c63024fe9636fed7f47 Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit 3a880f7924253ca39da336e1f0c401001e26e47c Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 7ab7d7ae7310e23b5c6303826fcf34ce9171e569 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 8f0a32059b70dab279f7e3cd49d519d13e4edde7 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 034ccd9f8b015ab893f4b3170bacb04b25e108fc Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 584b8b1f1b646705ea6aec680b14d95acddaad5b Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit ec38267f9500a5499b850390eda8a67eadd18369 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit 23ea95c4bc34d29bc7f713881ba654512af8ee3a Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit 66efedee7451be9e002cfdb4d2becc9022cecc41 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 840aaffbde65c9b00a83782d39362a19f3153758 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit 824dd9fa850671e6d7a145897b1cb98affc0d2ec Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit e3e2e841c9e6a6a8267a6776d8e7b5a947244f21 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit d8031acf858cd44afa5b58dbb83cad06e411ac36 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit 6e9c638b6cfb539b541d9242c5f126b0a5781b8c Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit 3fcbb63b8ceaca3ab3574a13112d743a18c499da Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 6ba5cc97f588823da36d66bf113b6a2efa0cef15 Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit 44a000714cb979656f49cb09cdbbefab2044e326 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit b8406e0519a076e12df5279d95771974792178c8 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit b41c1992f2e7291685da41cdd1899e36266135c1 Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit e64d502d4cdd5b0e3b8edb301260f178a13725d6 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit 347981760b11f1773410ff84d626d72faef05ae6 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit 04aa78c6367164f1df618fde7032c7fb0fe3121b Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit a9d9b536f1cfc02e461d9e3867c16a99d7b088dd Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 69d1f3c34d8bf7958b63056dfeb3130a3de0009b Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit 44f971c348c68dd4bf6b88ac5b8949baea3dd516 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit abbb9960ad99939b55a8d645b93d3838dab90eae Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit f1786ed64ae39b0755d00e9c79e577a2070d6d27 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 8c01171a5be4f0dba0d24d9e63cc2157b10877b5 Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 2aee965d2a151a93b01b5f1ddc563d862f49f5ea Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 2c9e1848a54be0b9117c89d18f93b14af71a1eb1 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit f4ac4501875db11b7e989cfb6a3f1aecc7fc77ab Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit 61b3087a9caa5acec7f9b41e71acc330233f6fde Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit a77d75dc10817990c62be30ace54b5a8705652bb Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit c81d5b256938446e239c5aee9d10b22bc152480c Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 8b256cf7cbdf61da747c6c112ae43fc68c96056d Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit bdcfcc0a9ed63c6ac771d1cb79dd54393b2216b9 Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 73ca90e11633ebc004588b2cd0ec61747e94ca04 Author: smilerz Date: Fri Apr 16 14:09:10 2021 -0500 corrected api import workflow commit fcd5d0c08cdc3bc5156c95f5db61b812017f0a71 Author: smilerz Date: Fri Apr 16 11:26:26 2021 -0500 restored missing manual url scrape commit 122508bb30eb94c83cbca28dd6e84b586bb93c0e Author: smilerz Date: Fri Apr 16 09:02:27 2021 -0500 Fix after rebase commit 5a0704fe49c396f78965cb370f5fe07e75b71920 Author: smilerz Date: Thu Apr 15 18:39:44 2021 -0500 catch attibute error when scrape missing schema commit 8714586a683285fb6db6688f85f4b35fbc871eee Author: smilerz Date: Thu Apr 15 14:47:35 2021 -0500 convert servings to number on import commit cf38a3dd7735c7409c35649b1f0d10fa751e80e6 Author: smilerz Date: Thu Apr 15 13:17:15 2021 -0500 custom scraper fails safe commit 2d8ab97a3d341a5bfc9860dc29438a188a9b6737 Author: smilerz Date: Thu Apr 15 12:48:26 2021 -0500 added name parser commit 9797dc4ab33be816e11b0cc75996ba8b46c31bb5 Author: smilerz Date: Thu Apr 15 10:31:47 2021 -0500 updated tests to handle html decoding commit 49ce2eed7066d82d0ad8fc35b2ff91f42353d985 Author: smilerz Date: Thu Apr 15 09:55:07 2021 -0500 flake commit d90cd5c4d930af663d2371c7d0f6fed2bf923194 Author: smilerz Date: Thu Apr 15 09:53:45 2021 -0500 decode url strings in text_parser commit c83951689be8dc075c7dabfafd23642faafbfc01 Author: smilerz Date: Wed Apr 14 19:32:33 2021 -0500 catch error on scrape.image() commit 8d88ccb99fe35df158e177fab6f72e6605e26f8d Author: smilerz Date: Wed Apr 14 19:28:46 2021 -0500 trap error on scrape.title() commit ec7e3742e0086442618e71fba4478daa3e455118 Author: smilerz Date: Wed Apr 14 13:05:28 2021 -0500 updated tests commit 862e09e254cf903e9c60df6fb245f1b4e5780c11 Author: smilerz Date: Wed Apr 14 10:42:31 2021 -0500 remove html tags from description commit dffcd18ece17d55c80cbd79d7434f188b0604f26 Author: smilerz Date: Wed Apr 14 09:42:53 2021 -0500 retrieve bookmarklet ID from get commit 15a58596782822a2f95be55aa28140440d64cf3e Author: smilerz Date: Wed Apr 14 09:29:33 2021 -0500 Revert "fixed broken tab" This reverts commit ca0a1aede3cc6cb3912bc1fe30c0aa22e3f481a6. commit 634e18fe5ea12d7b75edaf2393fb5b878add693b Author: smilerz Date: Wed Apr 14 09:20:03 2021 -0500 added missing bookmarklet commit 98cba92564e927f1c645d72e91d31000dfdad4eb Author: smilerz Date: Wed Apr 14 09:18:14 2021 -0500 Revert "bug fix url import" This reverts commit 4ab8ca51e812d02911f4da801767612e52953a23. commit 4b35585a850dc22c611775663e869b0b75348385 Author: smilerz Date: Tue Apr 13 16:44:05 2021 -0500 removed extra string normalization commit 84a2e18ab4dc3ad7d1a34361aa10c37d7de486d1 Author: smilerz Date: Sun Apr 11 21:22:56 2021 -0500 updated migration commit bc13f22af28a8bd905699acd45739b78e5cbca8a Author: smilerz Date: Tue Apr 6 14:14:50 2021 -0500 updated recipe targets in tests to reflect html decoding commit 3cdf69bf645ebb4e29a17054db311e51badbc38d Author: smilerz Date: Tue Apr 6 13:28:35 2021 -0500 fixes #527 commit 73c401ab72681888893704ba8f1b25aeee97165a Author: smilerz Date: Tue Apr 6 10:57:13 2021 -0500 bug fix url import commit 6f7ff8ebc897462f8d5ee136e08b5199ea6f7bfe Author: smilerz Date: Tue Apr 6 07:02:43 2021 -0500 url import bug fixes commit b26b5fa2e5ebace3916491eb4d1a7f6dbf14f1b8 Author: smilerz Date: Mon Apr 5 21:43:33 2021 -0500 bug fix tests commit 03a976ce17a512e527a7baa19e308fcafec155c3 Author: smilerz Date: Mon Apr 5 21:41:00 2021 -0500 bug fix url import commit 873aa85983f195a1a08076086975347b7ac8bc5f Author: smilerz Date: Mon Apr 5 21:26:29 2021 -0500 recipe import tests commit ed4c28f9660f35b3d2aff4c7ce36ff4696b8e2ad Author: smilerz Date: Mon Apr 5 12:32:11 2021 -0500 simplified url import commit 4d763e479d49f747ce3df879cea8214eb159cab8 Author: smilerz Date: Mon Apr 5 09:20:15 2021 -0500 add data for url_import test commit bf37bb5d55caf7618b86f523a213e3c1e4b2f6c1 Author: smilerz Date: Sat Apr 3 11:43:36 2021 -0500 added all ATK sites to custom scraper commit c1aae36897c44e5911a3aa75016887fa0218bf3b Author: smilerz Date: Sat Apr 3 11:12:23 2021 -0500 added cooksillustrated custom scraper commit 5609d0e2b39a8f1ddfb59af1ef23b865edeeb740 Author: smilerz Date: Sat Apr 3 11:12:01 2021 -0500 ensure time is always a number commit c4970e92b2695668f5614d3093d06e59ef5e17fc Author: smilerz Date: Fri Apr 2 15:19:20 2021 -0500 added ability to create custom scrapers commit d2688987efd74565903a0ebc3d1113892eb7df82 Author: smilerz Date: Thu Apr 1 16:21:28 2021 -0500 removed old json importer commit 5dd837eb478365c78ad67c7cd20f44409172a0d0 Author: smilerz Date: Thu Apr 1 16:19:18 2021 -0500 updated import from source to use text scraper commit 409efa8431af28451c9114b8c1b55b25aec18941 Author: smilerz Date: Thu Apr 1 15:08:56 2021 -0500 remove old html_import function commit 8564d76ac917261db95679122fd3e65ff3637b6f Author: smilerz Date: Thu Apr 1 15:07:51 2021 -0500 wrapper for recipe_scrapers to parse text input commit 9575a922494ab68b1dbfa70db78b211dea724602 Author: smilerz Date: Mon Mar 29 15:17:46 2021 -0500 fixed broken tab commit 6819f426f70d381cd18639f620ad87b7210411b1 Author: smilerz Date: Mon Mar 29 15:11:54 2021 -0500 delete bookmarklet on import commit b71e861e87e0db695e784205875a20ac8a87809a Author: smilerz Date: Mon Mar 29 12:53:06 2021 -0500 removed console message commit f86c93301be91560c2d308f631b12dc1c833fcb7 Author: smilerz Date: Mon Mar 29 12:51:14 2021 -0500 fixed ingredient display on preview commit 6e5a5727f8579df2e2475eb873d1c37c6c71ff73 Author: smilerz Date: Mon Mar 29 11:49:56 2021 -0500 redirect to import url for processing commit bdd73ab3a4b8fb0a7400b71aa0bd2cb911c27643 Author: smilerz Date: Mon Mar 29 06:39:44 2021 -0500 added hack to fix scopes & CORS for bookmarklet commit 7c10ebea4dcbcf1e7348bbf50986acb7276564b0 Author: smilerz Date: Sun Mar 28 18:39:20 2021 -0500 added CORS middleware commit d9e6fc5e8fa14effd52d8e68b299655fc6989b78 Author: smilerz Date: Fri Mar 26 14:47:24 2021 -0500 added bookmarklet model and api commit e3ea3679418c2ac7af329a8671b275b3a1945c94 Author: smilerz Date: Thu Mar 25 17:48:32 2021 -0500 bookmarklet passing data to form commit d1a62f6577d4b28f22740e2ed673530bce9152ff Author: smilerz Date: Thu Mar 25 14:02:57 2021 -0500 added bookmarklet that doesn't work yet commit 2ea0e988f6458ae26fd9b71fc3eedcebdd103bdd Author: smilerz Date: Tue Mar 23 14:14:56 2021 -0500 Squashed commit of the following: commit 81a8734facbb5f9f0d761ae268f50bb20df92ee8 Merge: abcef54 f67bb3c Author: vabene1111 Date: Sat Mar 20 22:41:13 2021 +0100 Merge pull request #499 from sebimarkgraf/fix/432-ios-webclip-support Add iOS webclip icon support commit abcef54e72c38432c45a4ed793ceb5e4f71b46a6 Merge: e15c92c 7527646 Author: vabene1111 Date: Sat Mar 20 22:30:43 2021 +0100 Merge pull request #498 from vabene1111/dependabot/pip/recipe-scrapers-12.2.1 Bump recipe-scrapers from 12.2.0 to 12.2.1 commit e15c92cda59b8640e33202854fefd5fe5eab5a13 Merge: 58fc269 45dba6f Author: vabene1111 Date: Sat Mar 20 22:26:06 2021 +0100 Merge pull request #501 from smilerz/main_fork fix json direct import when wrapped in @graph commit 45dba6fad22e0062d24e1b9b4237b960d2da432b Author: smilerz Date: Fri Mar 19 13:23:55 2021 -0500 fix json direct import when wrapped in @graph commit f67bb3cb989cf65702fd3df4397ce9d4bddd3966 Author: Sebastian Markgraf Date: Fri Mar 19 15:49:12 2021 +0100 Add generated icons from icongenerator. commit 53b584da56fe0c9ccd9d7244031e1c72d9ffd333 Author: Sebastian Markgraf Date: Fri Mar 19 12:48:58 2021 +0100 Fix errors in favicon SVG. commit 7527646319cff6c4b1a04bbd4bd5041aab6ef43e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Mar 19 05:51:22 2021 +0000 Bump recipe-scrapers from 12.2.0 to 12.2.1 Bumps [recipe-scrapers](https://github.com/hhursev/recipe-scrapers) from 12.2.0 to 12.2.1. - [Release notes](https://github.com/hhursev/recipe-scrapers/releases) - [Commits](https://github.com/hhursev/recipe-scrapers/compare/12.2.0...12.2.1) Signed-off-by: dependabot[bot] commit f3ef51e0db3c6d96907f2688d890e83722362b98 Author: smilerz Date: Tue Mar 23 13:58:16 2021 -0500 updated links to import recipes commit 523b566ac520b5f2cd1fa7ba15b8c32e734874c4 Author: smilerz Date: Tue Mar 23 12:54:41 2021 -0500 added collapsable cards commit df40cfe953dc2c886177b3347fd23a5b2e33318e Author: smilerz Date: Tue Mar 23 12:32:55 2021 -0500 cosmetic cleanup commit 8acdff09968208791f260f1d83cc278537263317 Author: smilerz Date: Tue Mar 23 12:15:57 2021 -0500 added image import commit f46206bb1b6c82012989c4500671f243e1129849 Author: smilerz Date: Mon Mar 22 15:13:01 2021 -0500 consolidated integration imports into url_import commit b5ba8e33720d5c9939cbba48629eaa50d5dee8f1 Author: smilerz Date: Sun Mar 21 17:09:49 2021 -0500 staged app import tabs commit 7d9c49f7ce98bfc7d73e376a83a83f3974d5472e Author: smilerz Date: Sun Mar 21 17:09:16 2021 -0500 fixed missing space in keyword when adding recipe commit 59ef7fea958068dd45c2d9f28bc91baab5cccbd7 Author: smilerz Date: Sun Mar 21 17:08:51 2021 -0500 removed unused templates commit d7bf64c452280b5b910811561c97ef0b3d1e5f08 Author: smilerz Date: Sun Mar 21 13:13:56 2021 -0500 combined json import and source import commit e2b578ebccd3e6c4f639fc484d2108ded512e5e6 Author: smilerz Date: Fri Mar 19 16:06:02 2021 -0500 more fix from super ugly merge commit 72c5ccd39e1923db364b20832c9bdb445d227539 Author: smilerz Date: Fri Mar 19 13:17:10 2021 -0500 more cleanup from ugly merge commit 2a298fab635801b395f035459cd3f65646f35f0c Author: smilerz Date: Fri Mar 19 11:24:23 2021 -0500 fixed ugly merge commit 7da1b3d051126a31a944e4dd278c3f09d87380fb Author: smilerz Date: Thu Mar 18 12:09:53 2021 -0500 added drag and drop to ingredients commit 4a03adf762a316c91d0d04887c7783f7c8bfe640 Author: smilerz Date: Mon Mar 15 15:56:44 2021 -0500 manually parse json commit b6173fee3bd26414438dfd99b0f1d63b3a8f6999 Author: smilerz Date: Wed Mar 10 10:33:07 2021 -0600 update urls.py commit d9d1b4f91ce3b8847af1619fa63bb552c6e46bfa Author: smilerz Date: Wed Mar 10 10:32:47 2021 -0600 commit merge from Patralos/recipes commit 29b5e8d0a7774f2a4be51e99ffdffab2c2dba80c Author: smilerz Date: Tue Mar 9 15:34:47 2021 -0600 updated URL import page with tab interface commit 908aff8b03027767b3372343efc58f2b31a5fb0a Author: smilerz Date: Tue Mar 9 11:29:10 2021 -0600 import raw json/html commit 32aa659ab6d8a9ff6a293a68172e4d74f4edb193 Author: smilerz Date: Sun Mar 7 14:28:29 2021 -0600 refactored json parser to create functions for each sub parser commit 397dd18790637577430d359689d779d158634ebb Author: Patrick Pirker Date: Wed Mar 3 21:37:39 2021 +0100 Allow recipes to be imported from json directly commit 8296765523ddf1af988b0b04a91a6a1ffc8a9363 Author: smilerz Date: Sun Jun 6 14:58:16 2021 -0500 fixed migrations commit e441e5e41518b8cba33d49817461f0794c44184d Author: smilerz Date: Sun Jun 6 14:25:14 2021 -0500 Fix after rebase commit 12a2a294aab24a4e647144127c272457a59459d6 Author: smilerz Date: Sun Jun 6 14:12:19 2021 -0500 fuzzy match on lookups commit fbb9c5fe26a26055cacb58ee44d8a5ba7a1d4e4d Author: smilerz Date: Sat Jun 5 17:56:48 2021 -0500 link to search settings in recipe search commit 0b48ebe3efa43158492dd451f9cbf6023c21c451 Author: smilerz Date: Sat Jun 5 17:43:48 2021 -0500 search form and help doc commit e8a13dc472ca2b9a4a226f213f7cb7a23d5effd5 Author: smilerz Date: Fri Jun 4 13:33:02 2021 -0500 search preference settings commit 67c1456a82fbae6ea94477bf86c565e54dfdd0f0 Author: smilerz Date: Sun May 30 08:57:09 2021 -0500 create indexes commit c2d1bcdc23321b52fee818e8b071ffe8db7d01eb Author: smilerz Date: Sat May 29 20:14:35 2021 -0500 foundation for user configurable search paramaters commit 74e75d217271e65af8ba87e559ece73fe760a670 Author: smilerz Date: Fri May 28 11:37:16 2021 -0500 WIP commit 2e28172de539628736ca138d7f5142e98ce568a0 Author: smilerz Date: Fri May 28 11:37:07 2021 -0500 split search vectors for recipe name and description commit 5469ff88143a50e0d2cfe7a221cac36974cc0615 Author: smilerz Date: Mon May 24 11:35:16 2021 -0500 WIP commit 9cd6f6811c8955d7552fda33d5710f2607ffa259 Author: smilerz Date: Thu May 20 17:27:17 2021 -0500 Fix after rebase commit 6b2a98daba6868666bdbad16a18e0b67dfa38647 Author: smilerz Date: Mon Apr 26 08:35:55 2021 -0500 updated comments, removed direct trigram search commit 4e0adecd1dedbe9b74d1c88d286efbd7d3b1ab63 Author: smilerz Date: Sun Apr 25 19:50:51 2021 -0500 add trigrams to full text search commit 2a8055d63ece64fa530c00567aba5c14a36b4d01 Author: smilerz Date: Sun Apr 25 19:35:17 2021 -0500 add unaccent to full text search vectors commit 844cc76fd18ccc684e4b73372da1b195b3d2cc7c Author: smilerz Date: Sun Apr 25 19:09:54 2021 -0500 WIP commit 1501c6baad4ccdf3b34183d123ecc65e4317ba43 Author: smilerz Date: Wed Apr 21 19:01:20 2021 -0500 add trigrams to search rank commit 0185eb34f3f67213964ac5fb6bb1f28f3da42fbd Author: smilerz Date: Wed Apr 21 15:19:37 2021 -0500 simplified code commit f909e957f7e2181cad48125af32fe9ba32e42cd1 Author: smilerz Date: Wed Apr 21 14:42:10 2021 -0500 updated search v2 with full text search commit e365fb796e0e12af3444689853dadfc7b8a2ec95 Author: smilerz Date: Wed Apr 21 13:22:48 2021 -0500 filter.py commit 73fa5d39628dc2139a1f4cfa5d3c3b4eaa72d7bb Author: smilerz Date: Sun Apr 11 20:17:54 2021 -0500 added multi-language support to FTS commit 918be447983d077c641577000a842a80c5acb8b0 Author: smilerz Date: Sun Apr 11 19:42:22 2021 -0500 rebuild recipe index from admin site commit f144c26c121a4b174b0546c1ff0807c467f0223b Author: smilerz Date: Sun Apr 11 19:07:50 2021 -0500 command line to rebuild index commit 781daee1f59874c8151ae0a0ded82bf058d8722a Author: smilerz Date: Sun Apr 11 17:01:18 2021 -0500 updated to handle sqlite commit d85556705b2dda7a98047fbeb4c3388405dc441d Author: smilerz Date: Fri Apr 9 12:47:17 2021 -0500 fixed smalltable commit a080e599e28754f5eb9cb4b2c67d043e27c85091 Author: smilerz Date: Fri Apr 9 12:46:07 2021 -0500 working proof of concept --- .env.template | 2 + .gitignore | 2 + cookbook/admin.py | 41 +- cookbook/apps.py | 6 + cookbook/filters.py | 4 - cookbook/forms.py | 44 +- cookbook/helper/recipe_search.py | 124 +- cookbook/helper/recipe_url_import.py | 3 +- cookbook/management/commands/rebuildindex.py | 31 + cookbook/managers.py | 72 + .../0124_alter_userpreference_search_style.py | 18 + .../0124_alter_userpreference_theme.py | 18 - cookbook/migrations/0125_space_demo.py | 2 +- .../migrations/0132_build_full_text_index.py | 111 + .../migrations/0133_create_searchfields.py | 23 + cookbook/migrations/0134_keyword_to_tree.py | 70 + cookbook/models.py | 152 +- cookbook/schemas.py | 86 + cookbook/serializer.py | 30 +- cookbook/signals.py | 47 + cookbook/static/django_js_reverse/reverse.js | 26 +- cookbook/static/js/bookmarklet.js | 2 +- cookbook/static/vue/css/keyword_list_view.css | 1 + cookbook/static/vue/js/chunk-vendors.js | 297 +- .../static/vue/js/import_response_view.js | 2 +- cookbook/static/vue/js/keyword_list_view.js | 1 + cookbook/static/vue/js/offline_view.js | 2 +- cookbook/static/vue/js/recipe_search_view.js | 2 +- cookbook/static/vue/js/recipe_view.js | 2 +- cookbook/static/vue/js/supermarket_view.js | 2 +- cookbook/static/vue/js/user_file_view.js | 2 +- cookbook/static/vue/keyword_list_view.html | 1 + cookbook/tables.py | 9 - cookbook/templates/base.html | 4 +- .../templates/forms/edit_internal_recipe.html | 6 +- .../templates/generic/delete_template.html | 5 +- cookbook/templates/generic/edit_template.html | 8 +- cookbook/templates/generic/tree_template.html | 31 + cookbook/templates/search_info.html | 110 + cookbook/templates/settings.html | 50 +- cookbook/templates/sw.js | 2 +- cookbook/templates/url_import.html | 2 +- cookbook/templatetags/custom_tags.py | 16 +- cookbook/tests/api/test_api_keyword.py | 253 +- cookbook/urls.py | 15 +- cookbook/views/api.py | 238 +- cookbook/views/data.py | 8 +- cookbook/views/edit.py | 4 +- cookbook/views/lists.py | 22 +- cookbook/views/new.py | 9 +- cookbook/views/trees.py | 8 + cookbook/views/views.py | 76 +- docs/index.md | 18 + node_modules/.yarn-integrity | 10 +- node_modules/vue-cookies/LICENSE | 42 +- node_modules/vue-cookies/README.md | 446 +- node_modules/vue-cookies/package.json | 58 +- node_modules/vue-cookies/sample/welcome.html | 100 +- node_modules/vue-cookies/types/index.d.ts | 88 +- node_modules/vue-cookies/types/vue.d.ts | 22 +- node_modules/vue-cookies/vue-cookies.js | 292 +- recipes/settings.py | 4 +- recipes/wsgi.py | 21 +- requirements.txt | 3 +- vue/package-lock.json | 31333 ++++++++++++++++ vue/package.json | 4 + .../apps/KeywordListView/KeywordListView.vue | 617 + vue/src/apps/KeywordListView/main.js | 10 + .../RecipeSearchView/RecipeSearchView.vue | 6 + vue/src/components/GenericContextMenu.vue | 38 + .../components/GenericContextMenu.vue~working | 38 + vue/src/components/GenericMultiselect.vue | 30 +- vue/src/components/KeywordCard.vue | 213 + vue/src/components/RecipeCard.vue | 2 +- vue/src/locales/en.json | 26 +- vue/src/sw.js | 3 +- vue/src/utils/openapi/api.ts | 325 +- vue/src/utils/openapi/base.ts | 7 +- vue/src/utils/utils.js | 14 +- vue/tsconfig.json | 2 +- vue/vue.config.js | 4 + vue/webpack-stats.json | 2 +- vue/yarn.lock | 214 +- yarn.lock | 4 - 84 files changed, 35095 insertions(+), 1003 deletions(-) create mode 100644 cookbook/management/commands/rebuildindex.py create mode 100644 cookbook/managers.py create mode 100644 cookbook/migrations/0124_alter_userpreference_search_style.py delete mode 100644 cookbook/migrations/0124_alter_userpreference_theme.py create mode 100644 cookbook/migrations/0132_build_full_text_index.py create mode 100644 cookbook/migrations/0133_create_searchfields.py create mode 100644 cookbook/migrations/0134_keyword_to_tree.py create mode 100644 cookbook/schemas.py create mode 100644 cookbook/signals.py create mode 100644 cookbook/static/vue/css/keyword_list_view.css create mode 100644 cookbook/static/vue/js/keyword_list_view.js create mode 100644 cookbook/static/vue/keyword_list_view.html create mode 100644 cookbook/templates/generic/tree_template.html create mode 100644 cookbook/templates/search_info.html create mode 100644 cookbook/views/trees.py create mode 100644 vue/package-lock.json create mode 100644 vue/src/apps/KeywordListView/KeywordListView.vue create mode 100644 vue/src/apps/KeywordListView/main.js create mode 100644 vue/src/components/GenericContextMenu.vue create mode 100644 vue/src/components/GenericContextMenu.vue~working create mode 100644 vue/src/components/KeywordCard.vue diff --git a/.env.template b/.env.template index 97f5604c..ace276fc 100644 --- a/.env.template +++ b/.env.template @@ -78,6 +78,8 @@ GUNICORN_MEDIA=0 # when unset: 0 (false) REVERSE_PROXY_AUTH=0 +# If base URL is something other than just / (you are serving a subfolder in your proxy for instance http://recipe_app/recipes/) +# SCRIPT_NAME=/recipes # Default settings for spaces, apply per space and can be changed in the admin view # SPACE_DEFAULT_MAX_RECIPES=0 # 0=unlimited recipes # SPACE_DEFAULT_MAX_USERS=0 # 0=unlimited users per space diff --git a/.gitignore b/.gitignore index 33755583..9b68f5e5 100644 --- a/.gitignore +++ b/.gitignore @@ -79,3 +79,5 @@ postgresql/ /docker-compose.override.yml vue/node_modules .vscode/ +vue/yarn.lock +vetur.config.js diff --git a/cookbook/admin.py b/cookbook/admin.py index f59ce06d..f9585589 100644 --- a/cookbook/admin.py +++ b/cookbook/admin.py @@ -1,6 +1,12 @@ +from django.conf import settings from django.contrib import admin +from django.contrib.postgres.search import SearchVector +from treebeard.admin import TreeAdmin +from treebeard.forms import movenodeform_factory from django.contrib.auth.admin import UserAdmin from django.contrib.auth.models import User, Group +from django_scopes import scopes_disabled +from django.utils import translation from .models import (Comment, CookLog, Food, Ingredient, InviteLink, Keyword, MealPlan, MealType, NutritionInformation, Recipe, @@ -10,6 +16,8 @@ from .models import (Comment, CookLog, Food, Ingredient, InviteLink, Keyword, ViewLog, Supermarket, SupermarketCategory, SupermarketCategoryRelation, ImportLog, TelegramBot, BookmarkletImport, UserFile) +from cookbook.managers import DICTIONARY + class CustomUserAdmin(UserAdmin): def has_add_permission(self, request, obj=None): @@ -72,7 +80,24 @@ class SyncLogAdmin(admin.ModelAdmin): admin.site.register(SyncLog, SyncLogAdmin) -admin.site.register(Keyword) + +class KeywordAdmin(TreeAdmin): + form = movenodeform_factory(Keyword) + ordering = ('space', 'path',) + + # removing ability to delete keywords from admin + # to avoid creating orphaned keywords + # def get_actions(self, request): + # actions = super().get_actions(request) + # if 'delete_selected' in actions: + # del actions['delete_selected'] + # return actions + + # def has_delete_permission(self, request, obj=None): + # return False + + +admin.site.register(Keyword, KeywordAdmin) class StepAdmin(admin.ModelAdmin): @@ -82,6 +107,17 @@ class StepAdmin(admin.ModelAdmin): admin.site.register(Step, StepAdmin) +@admin.action(description='Rebuild index for selected recipes') +def rebuild_index(modeladmin, request, queryset): + language = DICTIONARY.get(translation.get_language(), 'simple') + with scopes_disabled(): + Recipe.objects.all().update( + name_search_vector=SearchVector('name__unaccent', weight='A', config=language), + desc_search_vector=SearchVector('description__unaccent', weight='B', config=language) + ) + Step.objects.all().update(search_vector=SearchVector('instruction__unaccent', weight='B', config=language)) + + class RecipeAdmin(admin.ModelAdmin): list_display = ('name', 'internal', 'created_by', 'storage') @@ -89,6 +125,9 @@ class RecipeAdmin(admin.ModelAdmin): def created_by(obj): return obj.created_by.get_user_name() + if settings.DATABASES['default']['ENGINE'] in ['django.db.backends.postgresql_psycopg2', 'django.db.backends.postgresql']: + actions = [rebuild_index] + admin.site.register(Recipe, RecipeAdmin) diff --git a/cookbook/apps.py b/cookbook/apps.py index b0992662..d133d292 100644 --- a/cookbook/apps.py +++ b/cookbook/apps.py @@ -1,5 +1,11 @@ from django.apps import AppConfig +from django.conf import settings class CookbookConfig(AppConfig): name = 'cookbook' + + def ready(self): + # post_save signal is only necessary if using full-text search on postgres + if settings.DATABASES['default']['ENGINE'] in ['django.db.backends.postgresql_psycopg2', 'django.db.backends.postgresql']: + import cookbook.signals # noqa diff --git a/cookbook/filters.py b/cookbook/filters.py index b679a79f..09b4f7c5 100644 --- a/cookbook/filters.py +++ b/cookbook/filters.py @@ -1,7 +1,5 @@ import django_filters from django.conf import settings -from django.contrib.postgres.search import TrigramSimilarity -from django.db.models import Q from django.utils.translation import gettext as _ from django_scopes import scopes_disabled @@ -61,7 +59,6 @@ with scopes_disabled(): model = Recipe fields = ['name', 'keywords', 'foods', 'internal'] - class FoodFilter(django_filters.FilterSet): name = django_filters.CharFilter(lookup_expr='icontains') @@ -69,7 +66,6 @@ with scopes_disabled(): model = Food fields = ['name'] - class ShoppingListFilter(django_filters.FilterSet): def __init__(self, data=None, *args, **kwargs): diff --git a/cookbook/forms.py b/cookbook/forms.py index f4f37e08..7cb91b9a 100644 --- a/cookbook/forms.py +++ b/cookbook/forms.py @@ -6,11 +6,13 @@ from django.utils.translation import gettext_lazy as _ from django_scopes import scopes_disabled from django_scopes.forms import SafeModelChoiceField, SafeModelMultipleChoiceField from emoji_picker.widgets import EmojiPickerTextInput +from treebeard.forms import MoveNodeForm from hcaptcha.fields import hCaptchaField from .models import (Comment, Food, InviteLink, Keyword, MealPlan, Recipe, RecipeBook, RecipeBookEntry, Storage, Sync, Unit, User, - UserPreference, SupermarketCategory, MealType, Space) + UserPreference, SupermarketCategory, MealType, Space, + SearchPreference) class SelectWidget(widgets.Select): @@ -216,10 +218,11 @@ class CommentForm(forms.ModelForm): } -class KeywordForm(forms.ModelForm): +class KeywordForm(MoveNodeForm): class Meta: model = Keyword fields = ('name', 'icon', 'description') + exclude = ('sib_order', 'parent', 'path', 'depth', 'numchild') widgets = {'icon': EmojiPickerTextInput} @@ -471,3 +474,40 @@ class UserCreateForm(forms.Form): attrs={'autocomplete': 'new-password', 'type': 'password'} ) ) + + +class SearchPreferenceForm(forms.ModelForm): + prefix = 'search' + + class Meta: + model = SearchPreference + fields = ('search', 'lookup', 'unaccent', 'icontains', 'istartswith', 'trigram', 'fulltext') + + help_texts = { + 'search': _('Select type method of search. Click here for full desciption of choices.'), + 'lookup': _('Use fuzzy matching on units, keywords and ingredients when editing and importing recipes.'), + 'unaccent': _('Fields to search ignoring accents. Selecting this option can improve or degrade search quality depending on language'), + 'icontains': _("Fields to search for partial matches. (e.g. searching for 'Pie' will return 'pie' and 'piece' and 'soapie')"), + 'istartswith': _("Fields to search for beginning of word matches. (e.g. searching for 'sa' will return 'salad' and 'sandwich')"), + 'trigram': _("Fields to 'fuzzy' search. (e.g. searching for 'recpie' will find 'recipe'.) Note: this option will conflict with 'web' and 'raw' methods of search."), + 'fulltext': _("Fields to full text search. Note: 'web', 'phrase', and 'raw' search methods only function with fulltext fields.") + } + + labels = { + 'search': _('Search Method'), + 'lookup': _('Fuzzy Lookups'), + 'unaccent': _('Ignore Accent'), + 'icontains': _("Partial Match"), + 'istartswith': _("Starts Wtih"), + 'trigram': _("Fuzzy Search"), + 'fulltext': _("Full Text") + } + + widgets = { + 'search': SelectWidget, + 'unaccent': MultiSelectWidget, + 'icontains': MultiSelectWidget, + 'istartswith': MultiSelectWidget, + 'trigram': MultiSelectWidget, + 'fulltext': MultiSelectWidget, + } diff --git a/cookbook/helper/recipe_search.py b/cookbook/helper/recipe_search.py index 5f6d4199..8fa47073 100644 --- a/cookbook/helper/recipe_search.py +++ b/cookbook/helper/recipe_search.py @@ -1,15 +1,18 @@ from datetime import datetime, timedelta -from functools import reduce -from django.contrib.postgres.search import TrigramSimilarity -from django.db.models import Q, Case, When, Value -from django.forms import IntegerField - -from cookbook.models import ViewLog from recipes import settings +from django.contrib.postgres.search import ( + SearchQuery, SearchRank, TrigramSimilarity +) +from django.db.models import Q, Subquery, Case, When, Value +from django.utils import translation + +from cookbook.managers import DICTIONARY +from cookbook.models import Food, Keyword, ViewLog def search_recipes(request, queryset, params): + search_prefs = request.user.searchpreference search_string = params.get('query', '') search_keywords = params.getlist('keywords', []) search_foods = params.getlist('foods', []) @@ -24,21 +27,94 @@ def search_recipes(request, queryset, params): search_last_viewed = int(params.get('last_viewed', 0)) if search_last_viewed > 0: - last_viewed_recipes = ViewLog.objects.filter(created_by=request.user, space=request.space, - created_at__gte=datetime.now() - timedelta(days=14)).order_by('pk').values_list('recipe__pk', flat=True).distinct() + last_viewed_recipes = ViewLog.objects.filter( + created_by=request.user, space=request.space, + created_at__gte=datetime.now() - timedelta(days=14) + ).order_by('pk').values_list('recipe__pk', flat=True).distinct() return queryset.filter(pk__in=last_viewed_recipes[len(last_viewed_recipes) - min(len(last_viewed_recipes), search_last_viewed):]) queryset = queryset.annotate( - new_recipe=Case(When(created_at__gte=(datetime.now() - timedelta(days=7)), then=Value(100)), - default=Value(0), )).order_by('-new_recipe', 'name') + new_recipe=Case(When( + created_at__gte=(datetime.now() - timedelta(days=7)), then=Value(100)), + default=Value(0), )).order_by('-new_recipe', 'name') - if settings.DATABASES['default']['ENGINE'] in ['django.db.backends.postgresql_psycopg2', - 'django.db.backends.postgresql']: - queryset = queryset.annotate(similarity=TrigramSimilarity('name', search_string), ).filter( - Q(similarity__gt=0.1) | Q(name__unaccent__icontains=search_string)).order_by('-similarity') - else: - queryset = queryset.filter(name__icontains=search_string) + search_type = search_prefs.search or 'plain' + search_sort = None + if len(search_string) > 0: + unaccent_include = search_prefs.unaccent.values_list('field', flat=True) + + icontains_include = [x + '__unaccent' if x in unaccent_include else x for x in search_prefs.icontains.values_list('field', flat=True)] + istartswith_include = [x + '__unaccent' if x in unaccent_include else x for x in search_prefs.istartswith.values_list('field', flat=True)] + trigram_include = [x + '__unaccent' if x in unaccent_include else x for x in search_prefs.trigram.values_list('field', flat=True)] + fulltext_include = search_prefs.fulltext.values_list('field', flat=True) # fulltext doesn't use field name directly + + # if no filters are configured use name__icontains as default + if len(icontains_include) + len(istartswith_include) + len(trigram_include) + len(fulltext_include) == 0: + filters = [Q(**{"name__icontains": search_string})] + else: + filters = [] + + # dynamically build array of filters that will be applied + for f in icontains_include: + filters += [Q(**{"%s__icontains" % f: search_string})] + + for f in istartswith_include: + filters += [Q(**{"%s__istartswith" % f: search_string})] + + if settings.DATABASES['default']['ENGINE'] in ['django.db.backends.postgresql_psycopg2', 'django.db.backends.postgresql']: + language = DICTIONARY.get(translation.get_language(), 'simple') + # django full text search https://docs.djangoproject.com/en/3.2/ref/contrib/postgres/search/#searchquery + # TODO can options install this extension to further enhance search query language https://github.com/caub/pg-tsquery + # trigram breaks full text search 'websearch' and 'raw' capabilities and will be ignored if those methods are chosen + if search_type in ['websearch', 'raw']: + search_trigram = False + else: + search_trigram = True + search_query = SearchQuery( + search_string, + search_type=search_type, + config=language, + ) + + # iterate through fields to use in trigrams generating a single trigram + if search_trigram & len(trigram_include) > 1: + trigram = None + for f in trigram_include: + if trigram: + trigram += TrigramSimilarity(f, search_string) + else: + trigram = TrigramSimilarity(f, search_string) + queryset.annotate(simularity=trigram) + # TODO allow user to play with trigram scores + filters += [Q(simularity__gt=0.5)] + + if 'name' in fulltext_include: + filters += [Q(name_search_vector=search_query)] + if 'description' in fulltext_include: + filters += [Q(desc_search_vector=search_query)] + if 'instructions' in fulltext_include: + filters += [Q(steps__search_vector=search_query)] + if 'keywords' in fulltext_include: + filters += [Q(keywords__in=Subquery(Keyword.objects.filter(name__search=search_query).values_list('id', flat=True)))] + if 'foods' in fulltext_include: + filters += [Q(steps__ingredients__food__in=Subquery(Food.objects.filter(name__search=search_query).values_list('id', flat=True)))] + query_filter = None + for f in filters: + if query_filter: + query_filter |= f + else: + query_filter = f + + # TODO this is kind of a dumb method to sort. create settings to choose rank vs most often made, date created or rating + search_rank = ( + SearchRank('name_search_vector', search_query, cover_density=True) + + SearchRank('desc_search_vector', search_query, cover_density=True) + + SearchRank('steps__search_vector', search_query, cover_density=True) + ) + queryset = queryset.filter(query_filter).annotate(rank=search_rank) + else: + queryset = queryset.filter(query_filter) if len(search_keywords) > 0: if search_keywords_or == 'true': @@ -61,12 +137,24 @@ def search_recipes(request, queryset, params): for k in search_books: queryset = queryset.filter(recipebookentry__book__id=k) - queryset = queryset.distinct() - if search_internal == 'true': queryset = queryset.filter(internal=True) + queryset = queryset.distinct() + if search_random == 'true': queryset = queryset.order_by("?") + elif search_sort == 'rank': + queryset = queryset.order_by('-rank') + # kw = Keyword.objects.filter(recipe__in=queryset).annotate(kw_count=Count('recipe')) + # Keyword.get_annotated_list_qs(Keyword.objects.filter(id__in=[item.id for k in kw for item in k.get_ancestors_and_self()])) + # print(time.time()-start, len(queryset), len(kw)) + # Keyword.get_annotated_list_qs( + # Keyword.objects.filter(recipe__in=queryset).annotate(kw_count=Count('recipe')) + # | Keyword.objects.all().filter(id__in=set([k.parent for k in Keyword.objects.filter(recipe__in=queryset).annotate(kw_count=Count('recipe'))]))) return queryset + + +# this returns a list of keywords in the queryset and how many times it appears +# Keyword.objects.filter(recipe__in=queryset).annotate(kw_count=Count('recipe')) diff --git a/cookbook/helper/recipe_url_import.py b/cookbook/helper/recipe_url_import.py index e76d12e8..df24409a 100644 --- a/cookbook/helper/recipe_url_import.py +++ b/cookbook/helper/recipe_url_import.py @@ -2,13 +2,11 @@ import random import re from isodate import parse_duration as iso_parse_duration from isodate.isoerror import ISO8601Error -from recipe_scrapers._exceptions import ElementNotFoundInHtml from cookbook.helper.ingredient_parser import parse as parse_single_ingredient from cookbook.models import Keyword from django.utils.dateparse import parse_duration from html import unescape -from recipe_scrapers._schemaorg import SchemaOrgException from recipe_scrapers._utils import get_minutes @@ -56,6 +54,7 @@ def get_from_scraper(scrape, space): recipe_json['cookTime'] = get_minutes(scrape.schema.data.get("cookTime")) or 0 except Exception: recipe_json['cookTime'] = 0 + if recipe_json['cookTime'] + recipe_json['prepTime'] == 0: try: recipe_json['prepTime'] = get_minutes(scrape.total_time()) or 0 diff --git a/cookbook/management/commands/rebuildindex.py b/cookbook/management/commands/rebuildindex.py new file mode 100644 index 00000000..9da12c57 --- /dev/null +++ b/cookbook/management/commands/rebuildindex.py @@ -0,0 +1,31 @@ +from django.conf import settings +from django.contrib.postgres.search import SearchVector +from django.core.management.base import BaseCommand +from django_scopes import scopes_disabled +from django.utils import translation +from django.utils.translation import gettext_lazy as _ + +from cookbook.managers import DICTIONARY +from cookbook.models import Recipe, Step + + +# can be executed at the command line with 'python manage.py rebuildindex' +class Command(BaseCommand): + help = _('Rebuilds full text search index on Recipe') + + def handle(self, *args, **options): + if settings.DATABASES['default']['ENGINE'] not in ['django.db.backends.postgresql_psycopg2', 'django.db.backends.postgresql']: + self.stdout.write(self.style.WARNING(_('Only Postgress databases use full text search, no index to rebuild'))) + + try: + language = DICTIONARY.get(translation.get_language(), 'simple') + with scopes_disabled(): + Recipe.objects.all().update( + name_search_vector=SearchVector('name__unaccent', weight='A', config=language), + desc_search_vector=SearchVector('description__unaccent', weight='B', config=language) + ) + Step.objects.all().update(search_vector=SearchVector('instruction__unaccent', weight='B', config=language)) + + self.stdout.write(self.style.SUCCESS(_('Recipe index rebuild complete.'))) + except: + self.stdout.write(self.style.ERROR(_('Recipe index rebuild failed.'))) diff --git a/cookbook/managers.py b/cookbook/managers.py new file mode 100644 index 00000000..14946899 --- /dev/null +++ b/cookbook/managers.py @@ -0,0 +1,72 @@ +from django.contrib.postgres.aggregates import StringAgg +from django.contrib.postgres.search import ( + SearchQuery, SearchRank, SearchVector, TrigramSimilarity, +) +from django.db import models +from django.db.models import Q +from django.utils import translation + +# TODO move this somewhere else and delete this file +DICTIONARY = { + # TODO find custom dictionaries - maybe from here https://www.postgresql.org/message-id/CAF4Au4x6X_wSXFwsQYE8q5o0aQZANrvYjZJ8uOnsiHDnOVPPEg%40mail.gmail.com + # 'hy': 'Armenian', + # 'ca': 'Catalan', + # 'cs': 'Czech', + 'nl': 'dutch', + 'en': 'english', + 'fr': 'french', + 'de': 'german', + 'it': 'italian', + # 'lv': 'Latvian', + 'es': 'spanish', +} + + +# TODO add search highlighting +# TODO add language support +# TODO add schedule index rebuild +class RecipeSearchManager(models.Manager): + def search(self, search_text, space): + language = DICTIONARY.get(translation.get_language(), 'simple') + search_query = SearchQuery( + search_text, + config=language, + search_type="websearch" + ) + search_vectors = ( + SearchVector('search_vector') + + SearchVector(StringAgg('steps__ingredients__food__name__unaccent', delimiter=' '), weight='B', config=language) + + SearchVector(StringAgg('keywords__name__unaccent', delimiter=' '), weight='B', config=language)) + search_rank = SearchRank(search_vectors, search_query) + # USING TRIGRAM BREAKS WEB SEARCH + # ADDING MULTIPLE TRIGRAMS CREATES DUPLICATE RESULTS + # DISTINCT NOT COMPAITBLE WITH ANNOTATE + # trigram_name = (TrigramSimilarity('name', search_text)) + # trigram_description = (TrigramSimilarity('description', search_text)) + # trigram_food = (TrigramSimilarity('steps__ingredients__food__name', search_text)) + # trigram_keyword = (TrigramSimilarity('keywords__name', search_text)) + # adding additional trigrams created duplicates + # + TrigramSimilarity('description', search_text) + # + TrigramSimilarity('steps__ingredients__food__name', search_text) + # + TrigramSimilarity('keywords__name', search_text) + return ( + self.get_queryset() + .annotate( + search=search_vectors, + rank=search_rank, + # trigram=trigram_name+trigram_description+trigram_food+trigram_keyword + # trigram_name=trigram_name, + # trigram_description=trigram_description, + # trigram_food=trigram_food, + # trigram_keyword=trigram_keyword + ) + .filter( + Q(search=search_query) + # | Q(trigram_name__gt=0.1) + # | Q(name__icontains=search_text) + # | Q(trigram_name__gt=0.2) + # | Q(trigram_description__gt=0.2) + # | Q(trigram_food__gt=0.2) + # | Q(trigram_keyword__gt=0.2) + ) + .order_by('-rank')) diff --git a/cookbook/migrations/0124_alter_userpreference_search_style.py b/cookbook/migrations/0124_alter_userpreference_search_style.py new file mode 100644 index 00000000..37b81782 --- /dev/null +++ b/cookbook/migrations/0124_alter_userpreference_search_style.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2 on 2021-04-22 21:33 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0123_invitelink_email'), + ] + + operations = [ + migrations.AlterField( + model_name='userpreference', + name='search_style', + field=models.CharField(choices=[('SMALL', 'Small'), ('LARGE', 'Large'), ('NEW', 'New')], default='LARGE', max_length=64), + ), + ] diff --git a/cookbook/migrations/0124_alter_userpreference_theme.py b/cookbook/migrations/0124_alter_userpreference_theme.py deleted file mode 100644 index b7d7ebb3..00000000 --- a/cookbook/migrations/0124_alter_userpreference_theme.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.2.3 on 2021-05-30 15:53 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('cookbook', '0123_invitelink_email'), - ] - - operations = [ - migrations.AlterField( - model_name='userpreference', - name='theme', - field=models.CharField(choices=[('BOOTSTRAP', 'Bootstrap'), ('DARKLY', 'Darkly'), ('FLATLY', 'Flatly'), ('SUPERHERO', 'Superhero'), ('TANDOOR', 'Tandoor')], default='FLATLY', max_length=128), - ), - ] diff --git a/cookbook/migrations/0125_space_demo.py b/cookbook/migrations/0125_space_demo.py index ea252879..5904bb90 100644 --- a/cookbook/migrations/0125_space_demo.py +++ b/cookbook/migrations/0125_space_demo.py @@ -6,7 +6,7 @@ from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('cookbook', '0124_alter_userpreference_theme'), + ('cookbook', '0124_alter_userpreference_search_style'), ] operations = [ diff --git a/cookbook/migrations/0132_build_full_text_index.py b/cookbook/migrations/0132_build_full_text_index.py new file mode 100644 index 00000000..e7428ed4 --- /dev/null +++ b/cookbook/migrations/0132_build_full_text_index.py @@ -0,0 +1,111 @@ +# Generated by Django 3.1.7 on 2021-04-07 20:00 +import annoying.fields +from django.conf import settings +from django.contrib.postgres.indexes import GinIndex +from django.contrib.postgres.search import SearchVectorField, SearchVector +from django.db import migrations, models +from django.db.models import deletion +from django_scopes import scopes_disabled +from django.utils import translation +from cookbook.managers import DICTIONARY +from cookbook.models import Recipe, Step, Index, PermissionModelMixin, nameSearchField, allSearchFields + + +def set_default_search_vector(apps, schema_editor): + if settings.DATABASES['default']['ENGINE'] not in ['django.db.backends.postgresql_psycopg2', 'django.db.backends.postgresql']: + return + language = DICTIONARY.get(translation.get_language(), 'simple') + with scopes_disabled(): + # TODO this approach doesn't work terribly well if multiple languages are in use + # I'm also uncertain about forcing unaccent here + Recipe.objects.all().update( + name_search_vector=SearchVector('name__unaccent', weight='A', config=language), + desc_search_vector=SearchVector('description__unaccent', weight='B', config=language) + ) + Step.objects.all().update(search_vector=SearchVector('instruction__unaccent', weight='B')) + + +class Migration(migrations.Migration): + dependencies = [ + ('auth', '0012_alter_user_first_name_max_length'), + ('cookbook', '0131_auto_20210608_1929'), + ] + operations = [ + migrations.AddField( + model_name='recipe', + name='desc_search_vector', + field=SearchVectorField(null=True), + ), + migrations.AddField( + model_name='recipe', + name='name_search_vector', + field=SearchVectorField(null=True), + ), + migrations.AddIndex( + model_name='recipe', + index=GinIndex(fields=['name_search_vector', 'desc_search_vector'], name='cookbook_re_name_se_bdf3ca_gin'), + ), + migrations.AddField( + model_name='step', + name='search_vector', + field=SearchVectorField(null=True), + ), + migrations.AddIndex( + model_name='step', + index=GinIndex(fields=['search_vector'], name='cookbook_st_search__2ef7fa_gin'), + ), + migrations.AddIndex( + model_name='cooklog', + index=Index(fields=['id', 'recipe', '-created_at', 'rating'], name='cookbook_co_id_37485a_idx'), + ), + migrations.AddIndex( + model_name='food', + index=Index(fields=['id', 'name'], name='cookbook_fo_id_22b733_idx'), + ), + migrations.AddIndex( + model_name='ingredient', + index=Index(fields=['id', 'food', 'unit'], name='cookbook_in_id_3368be_idx'), + ), + migrations.AddIndex( + model_name='keyword', + index=Index(fields=['id', 'name'], name='cookbook_ke_id_ebc03f_idx'), + ), + migrations.AddIndex( + model_name='recipe', + index=Index(fields=['id', 'name', 'description'], name='cookbook_re_id_e4c2d4_idx'), + ), + migrations.AddIndex( + model_name='recipebook', + index=Index(fields=['name', 'description'], name='cookbook_re_name_bbe446_idx'), + ), + migrations.AddIndex( + model_name='viewlog', + index=Index(fields=['recipe', '-created_at'], name='cookbook_vi_recipe__5cd178_idx'), + ), + migrations.CreateModel( + name='SearchFields', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=32, unique=True)), + ('field', models.CharField(max_length=64, unique=True)), + ], + bases=(models.Model, PermissionModelMixin), + ), + migrations.CreateModel( + name='SearchPreference', + fields=[ + ('user', annoying.fields.AutoOneToOneField(on_delete=deletion.CASCADE, primary_key=True, serialize=False, to='auth.user')), + ('search', models.CharField(choices=[('plain', 'Simple'), ('phrase', 'Phrase'), ('websearch', 'Web'), ('raw', 'Raw')], default='plain', max_length=32)), + ('lookup', models.BooleanField(default=False)), + ('fulltext', models.ManyToManyField(blank=True, related_name='fulltext_fields', to='cookbook.SearchFields')), + ('icontains', models.ManyToManyField(blank=True, default=nameSearchField, related_name='icontains_fields', to='cookbook.SearchFields')), + ('istartswith', models.ManyToManyField(blank=True, related_name='istartswith_fields', to='cookbook.SearchFields')), + ('trigram', models.ManyToManyField(blank=True, related_name='trigram_fields', to='cookbook.SearchFields')), + ('unaccent', models.ManyToManyField(blank=True, default=allSearchFields, related_name='unaccent_fields', to='cookbook.SearchFields')), + ], + bases=(models.Model, PermissionModelMixin), + ), + migrations.RunPython( + set_default_search_vector + ), + ] diff --git a/cookbook/migrations/0133_create_searchfields.py b/cookbook/migrations/0133_create_searchfields.py new file mode 100644 index 00000000..647c0875 --- /dev/null +++ b/cookbook/migrations/0133_create_searchfields.py @@ -0,0 +1,23 @@ +from cookbook.models import SearchFields +from django.db import migrations + + +def create_searchfields(apps, schema_editor): + SearchFields.objects.create(name='Name', field='name') + SearchFields.objects.create(name='Description', field='description') + SearchFields.objects.create(name='Instructions', field='steps__instruction') + SearchFields.objects.create(name='Ingredients', field='steps__ingredients__food__name') + SearchFields.objects.create(name='Keywords', field='keywords__name') + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0132_build_full_text_index'), + ] + + operations = [ + migrations.RunPython( + create_searchfields + ), + ] diff --git a/cookbook/migrations/0134_keyword_to_tree.py b/cookbook/migrations/0134_keyword_to_tree.py new file mode 100644 index 00000000..59cb1bf6 --- /dev/null +++ b/cookbook/migrations/0134_keyword_to_tree.py @@ -0,0 +1,70 @@ +# Generated by Django 3.1.7 on 2021-03-30 19:42 + +from treebeard.mp_tree import MP_Node +from django.db import migrations, models +from django_scopes import scopes_disabled +# update if needed +steplen = MP_Node.steplen +alphabet = MP_Node.alphabet +node_order_by = ["name"] + + +def update_paths(apps, schema_editor): + with scopes_disabled(): + Node = apps.get_model("cookbook", "Keyword") + nodes = Node.objects.all().order_by(*node_order_by) + for i, node in enumerate(nodes, 1): + # for default values, this resolves to: "{:04d}".format(i) + node.path = f"{{:{alphabet[0]}{steplen}d}}".format(i) + if nodes: + Node.objects.bulk_update(nodes, ["path"]) + + +def backwards(apps, schema_editor): + """nothing to do""" + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0133_create_searchfields'), + ] + + operations = [ + migrations.AddField( + model_name='keyword', + name='depth', + field=models.PositiveIntegerField(default=1), + preserve_default=False, + ), + migrations.AddField( + model_name='keyword', + name='numchild', + field=models.PositiveIntegerField(default=0), + ), + migrations.AddField( + model_name='keyword', + name='path', + field=models.CharField(default="", max_length=255, unique=False), + preserve_default=False, + ), + migrations.AlterField( + model_name='userpreference', + name='use_fractions', + field=models.BooleanField(default=True), + ), + migrations.RunPython(update_paths, backwards), + migrations.AlterField( + model_name="keyword", + name="path", + field=models.CharField(max_length=255, unique=True), + ), + migrations.AlterUniqueTogether( + name='keyword', + unique_together=set(), + ), + migrations.AddConstraint( + model_name='keyword', + constraint=models.UniqueConstraint(fields=('space', 'name'), name='unique_name_per_space'), + ), + ] diff --git a/cookbook/models.py b/cookbook/models.py index cf8b2103..5c218041 100644 --- a/cookbook/models.py +++ b/cookbook/models.py @@ -5,16 +5,20 @@ import uuid from datetime import date, timedelta from annoying.fields import AutoOneToOneField +from django.conf import settings from django.contrib import auth from django.contrib.auth.models import Group, User +from django.contrib.postgres.indexes import GinIndex +from django.contrib.postgres.search import SearchVectorField from django.core.files.uploadedfile import UploadedFile, InMemoryUploadedFile from django.core.validators import MinLengthValidator from django.db import models +from django.db.models import Index from django.utils import timezone from django.utils.translation import gettext as _ +from treebeard.mp_tree import MP_Node, MP_NodeManager +from django_scopes import ScopedManager, scopes_disabled from django_prometheus.models import ExportModelOperationsMixin -from django_scopes import ScopedManager - from recipes.settings import (COMMENT_PREF_DEFAULT, FRACTION_PREF_DEFAULT, STICKY_NAV_PREF_DEFAULT) @@ -105,7 +109,8 @@ class UserPreference(models.Model, PermissionModelMixin): COLORS = ( (PRIMARY, 'Primary'), (SECONDARY, 'Secondary'), - (SUCCESS, 'Success'), (INFO, 'Info'), + (SUCCESS, 'Success'), + (INFO, 'Info'), (WARNING, 'Warning'), (DANGER, 'Danger'), (LIGHT, 'Light'), @@ -209,6 +214,7 @@ class SupermarketCategory(models.Model, PermissionModelMixin): return self.name class Meta: + # TODO according to this https://docs.djangoproject.com/en/3.1/ref/models/options/#unique-together should not be used unique_together = (('space', 'name'),) @@ -224,6 +230,7 @@ class Supermarket(models.Model, PermissionModelMixin): return self.name class Meta: + # TODO according to this https://docs.djangoproject.com/en/3.1/ref/models/options/#unique-together should not be used unique_together = (('space', 'name'),) @@ -254,7 +261,9 @@ class SyncLog(models.Model, PermissionModelMixin): return f"{self.created_at}:{self.sync} - {self.status}" -class Keyword(ExportModelOperationsMixin('keyword'), models.Model, PermissionModelMixin): +class Keyword(ExportModelOperationsMixin('keyword'), MP_Node, PermissionModelMixin): + # TODO create get_or_create method + node_order_by = ['name'] name = models.CharField(max_length=64) icon = models.CharField(max_length=16, blank=True, null=True) description = models.TextField(default="", blank=True) @@ -262,7 +271,9 @@ class Keyword(ExportModelOperationsMixin('keyword'), models.Model, PermissionMod updated_at = models.DateTimeField(auto_now=True) space = models.ForeignKey(Space, on_delete=models.CASCADE) - objects = ScopedManager(space='space') + objects = ScopedManager(space='space', _manager_class=MP_NodeManager) + + _full_name_separator = ' > ' def __str__(self): if self.icon: @@ -270,8 +281,68 @@ class Keyword(ExportModelOperationsMixin('keyword'), models.Model, PermissionMod else: return f"{self.name}" + @property + def parent(self): + parent = self.get_parent() + if parent: + return self.get_parent().id + return None + + @classmethod + def get_or_create(self, **kwargs): + # an attempt to mimic get_or_create functionality with Keywords + # function attempts to get the keyword, + # if the length of the return is 0 will add a root node + kwargs['name'] = kwargs['name'].strip() + q = self.get_tree().filter(name=kwargs['name'], space=kwargs['space']) + if len(q) != 0: + return q[0] + else: + return Keyword.add_root(**kwargs) + + @property + def full_name(self): + """ + Returns a string representation of the keyword and it's ancestors, + e.g. 'Cuisine > Asian > Chinese > Catonese'. + """ + names = [keyword.name for keyword in self.get_ancestors_and_self()] + return self._full_name_separator.join(names) + + def get_ancestors_and_self(self): + """ + Gets ancestors and includes itself. Use treebeard's get_ancestors + if you don't want to include the keyword itself. It's a separate + function as it's commonly used in templates. + """ + if self.is_root(): + return [self] + return list(self.get_ancestors()) + [self] + + def get_descendants_and_self(self): + """ + Gets descendants and includes itself. Use treebeard's get_descendants + if you don't want to include the keyword itself. It's a separate + function as it's commonly used in templates. + """ + return self.get_tree(self) + + def has_children(self): + return self.get_num_children() > 0 + + def get_num_children(self): + return self.get_children().count() + + @classmethod + def add_root(self, **kwargs): + with scopes_disabled(): + return super().add_root(**kwargs) + class Meta: - unique_together = (('space', 'name'),) + constraints = [ + models.UniqueConstraint(fields=['space', 'name'], name='unique_name_per_space') + ] + indexes = (Index(fields=['id', 'name']), ) class Unit(ExportModelOperationsMixin('unit'), models.Model, PermissionModelMixin): @@ -285,6 +356,7 @@ class Unit(ExportModelOperationsMixin('unit'), models.Model, PermissionModelMixi return self.name class Meta: + # TODO according to this https://docs.djangoproject.com/en/3.1/ref/models/options/#unique-together should not be used unique_together = (('space', 'name'),) @@ -302,7 +374,9 @@ class Food(ExportModelOperationsMixin('food'), models.Model, PermissionModelMixi return self.name class Meta: + # TODO according to this https://docs.djangoproject.com/en/3.1/ref/models/options/#unique-together should not be used unique_together = (('space', 'name'),) + indexes = (Index(fields=['id', 'name']), ) class Ingredient(ExportModelOperationsMixin('ingredient'), models.Model, PermissionModelMixin): @@ -328,6 +402,7 @@ class Ingredient(ExportModelOperationsMixin('ingredient'), models.Model, Permiss class Meta: ordering = ['order', 'pk'] + indexes = (Index(fields=['id', 'food', 'unit']), ) class Step(ExportModelOperationsMixin('step'), models.Model, PermissionModelMixin): @@ -347,6 +422,7 @@ class Step(ExportModelOperationsMixin('step'), models.Model, PermissionModelMixi order = models.IntegerField(default=0) file = models.ForeignKey('UserFile', on_delete=models.PROTECT, null=True, blank=True) show_as_header = models.BooleanField(default=True) + search_vector = SearchVectorField(null=True) objects = ScopedManager(space='recipe__space') @@ -363,6 +439,7 @@ class Step(ExportModelOperationsMixin('step'), models.Model, PermissionModelMixi class Meta: ordering = ['order', 'pk'] + indexes = (GinIndex(fields=["search_vector"]), ) class NutritionInformation(models.Model, PermissionModelMixin): @@ -414,12 +491,18 @@ class Recipe(ExportModelOperationsMixin('recipe'), models.Model, PermissionModel created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) + name_search_vector = SearchVectorField(null=True) + desc_search_vector = SearchVectorField(null=True) space = models.ForeignKey(Space, on_delete=models.CASCADE) + objects = ScopedManager(space='space') def __str__(self): return self.name + class Meta(): + indexes = (GinIndex(fields=["name_search_vector", "desc_search_vector"]), Index(fields=['id', 'name', 'description']), ) + class Comment(ExportModelOperationsMixin('comment'), models.Model, PermissionModelMixin): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) @@ -468,6 +551,9 @@ class RecipeBook(ExportModelOperationsMixin('book'), models.Model, PermissionMod def __str__(self): return self.name + class Meta(): + indexes = (Index(fields=['name', 'description']), ) + class RecipeBookEntry(ExportModelOperationsMixin('book_entry'), models.Model, PermissionModelMixin): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) @@ -489,6 +575,7 @@ class RecipeBookEntry(ExportModelOperationsMixin('book_entry'), models.Model, Pe return None class Meta: + # TODO according to this https://docs.djangoproject.com/en/3.1/ref/models/options/#unique-together should not be used unique_together = (('recipe', 'book'),) @@ -662,6 +749,9 @@ class CookLog(ExportModelOperationsMixin('cook_log'), models.Model, PermissionMo def __str__(self): return self.recipe.name + class Meta(): + indexes = (Index(fields=['id', 'recipe', '-created_at', 'rating']), ) + class ViewLog(ExportModelOperationsMixin('view_log'), models.Model, PermissionModelMixin): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) @@ -674,6 +764,9 @@ class ViewLog(ExportModelOperationsMixin('view_log'), models.Model, PermissionMo def __str__(self): return self.recipe.name + class Meta(): + indexes = (Index(fields=['recipe', '-created_at']), ) + class ImportLog(models.Model, PermissionModelMixin): type = models.CharField(max_length=32) @@ -700,6 +793,53 @@ class BookmarkletImport(ExportModelOperationsMixin('bookmarklet_import'), models space = models.ForeignKey(Space, on_delete=models.CASCADE) +# field names used to configure search behavior - all data populated during data migration +# other option is to use a MultiSelectField from https://github.com/goinnn/django-multiselectfield +class SearchFields(models.Model, PermissionModelMixin): + name = models.CharField(max_length=32, unique=True) + field = models.CharField(max_length=64, unique=True) + + def __str__(self): + return _(self.name) + + @staticmethod + def get_name(self): + return _(self.name) + + +def allSearchFields(): + return SearchFields.objects.values_list('id') + + +def nameSearchField(): + return [SearchFields.objects.get(name='Name').id] + + +class SearchPreference(models.Model, PermissionModelMixin): + # Search Style (validation parsleyjs.org) + # phrase or plain or raw (websearch and trigrams are mutually exclusive) + SIMPLE = 'plain' + PHRASE = 'phrase' + WEB = 'websearch' + RAW = 'raw' + SEARCH_STYLE = ( + (SIMPLE, _('Simple')), + (PHRASE, _('Phrase')), + (WEB, _('Web')), + (RAW, _('Raw')) + ) + + user = AutoOneToOneField(User, on_delete=models.CASCADE, primary_key=True) + search = models.CharField(choices=SEARCH_STYLE, max_length=32, default=SIMPLE) + + lookup = models.BooleanField(default=False) + unaccent = models.ManyToManyField(SearchFields, related_name="unaccent_fields", blank=True, default=allSearchFields) + icontains = models.ManyToManyField(SearchFields, related_name="icontains_fields", blank=True, default=nameSearchField) + istartswith = models.ManyToManyField(SearchFields, related_name="istartswith_fields", blank=True) + trigram = models.ManyToManyField(SearchFields, related_name="trigram_fields", blank=True) + fulltext = models.ManyToManyField(SearchFields, related_name="fulltext_fields", blank=True) + + class UserFile(ExportModelOperationsMixin('user_files'), models.Model, PermissionModelMixin): name = models.CharField(max_length=128) file = models.FileField(upload_to='files/') diff --git a/cookbook/schemas.py b/cookbook/schemas.py new file mode 100644 index 00000000..27c27083 --- /dev/null +++ b/cookbook/schemas.py @@ -0,0 +1,86 @@ +from rest_framework.schemas.openapi import AutoSchema +from rest_framework.schemas.utils import is_list_view + + +# TODO move to separate class to cleanup +class RecipeSchema(AutoSchema): + + def get_path_parameters(self, path, method): + if not is_list_view(path, method, self.view): + return super(RecipeSchema, self).get_path_parameters(path, method) + + parameters = super().get_path_parameters(path, method) + parameters.append({ + "name": 'query', "in": "query", "required": False, + "description": 'Query string matched (fuzzy) against recipe name. In the future also fulltext search.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'keywords', "in": "query", "required": False, + "description": 'Id of keyword a recipe should have. For multiple repeat parameter.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'foods', "in": "query", "required": False, + "description": 'Id of food a recipe should have. For multiple repeat parameter.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'books', "in": "query", "required": False, + "description": 'Id of book a recipe should have. For multiple repeat parameter.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'keywords_or', "in": "query", "required": False, + "description": 'If recipe should have all (AND) or any (OR) of the provided keywords.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'foods_or', "in": "query", "required": False, + "description": 'If recipe should have all (AND) or any (OR) any of the provided foods.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'books_or', "in": "query", "required": False, + "description": 'If recipe should be in all (AND) or any (OR) any of the provided books.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'internal', "in": "query", "required": False, + "description": 'true or false. If only internal recipes should be returned or not.', + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'random', "in": "query", "required": False, + "description": 'true or false. returns the results in randomized order.', + 'schema': {'type': 'string', }, + }) + return parameters + + +# TODO move to separate class to cleanup +class TreeSchema(AutoSchema): + + def get_path_parameters(self, path, method): + if not is_list_view(path, method, self.view): + return super(TreeSchema, self).get_path_parameters(path, method) + + api_name = path.split('/')[2] + parameters = super().get_path_parameters(path, method) + parameters.append({ + "name": 'query', "in": "query", "required": False, + "description": 'Query string matched against {} name.'.format(api_name), + 'schema': {'type': 'string', }, + }) + parameters.append({ + "name": 'root', "in": "query", "required": False, + "description": 'Return first level children of {obj} with ID [int]. Integer 0 will return root {obj}s.'.format(obj=api_name), + 'schema': {'type': 'int', }, + }) + parameters.append({ + "name": 'tree', "in": "query", "required": False, + "description": 'Return all self and children of {} with ID [int].'.format(api_name), + 'schema': {'type': 'int', }, + }) + + return parameters diff --git a/cookbook/serializer.py b/cookbook/serializer.py index f64e0a9f..6595d014 100644 --- a/cookbook/serializer.py +++ b/cookbook/serializer.py @@ -1,3 +1,4 @@ +import random from decimal import Decimal from gettext import gettext as _ @@ -7,6 +8,7 @@ from drf_writable_nested import (UniqueFieldsMixin, WritableNestedModelSerializer) from rest_framework import serializers from rest_framework.exceptions import ValidationError, NotFound +from treebeard.mp_tree import MP_NodeQuerySet from cookbook.models import (Comment, CookLog, Food, Ingredient, Keyword, MealPlan, MealType, NutritionInformation, Recipe, @@ -45,7 +47,7 @@ class CustomDecimalField(serializers.Field): class SpaceFilterSerializer(serializers.ListSerializer): def to_representation(self, data): - if type(data) == QuerySet and data.query.is_sliced: + if (type(data) == QuerySet and data.query.is_sliced) or type(data) == MP_NodeQuerySet: # if query is sliced it came from api request not nested serializer return super().to_representation(data) if self.child.Meta.model == User: @@ -200,20 +202,36 @@ class KeywordLabelSerializer(serializers.ModelSerializer): class KeywordSerializer(UniqueFieldsMixin, serializers.ModelSerializer): label = serializers.SerializerMethodField('get_label') + image = serializers.SerializerMethodField('get_image') + numrecipe = serializers.SerializerMethodField('count_recipes') def get_label(self, obj): return str(obj) + def get_image(self, obj): + recipes = obj.recipe_set.all().exclude(image__isnull=True).exclude(image__exact='') + if len(recipes) == 0: + recipes = Recipe.objects.filter(keywords__in=Keyword.get_tree(obj)).exclude(image__isnull=True).exclude(image__exact='') # if no recipes found - check whole tree + if len(recipes) != 0: + return random.choice(recipes).image.url + else: + return None + + def count_recipes(self, obj): + return obj.recipe_set.all().count() + def create(self, validated_data): - obj, created = Keyword.objects.get_or_create(name=validated_data['name'].strip(), space=self.context['request'].space) + # since multi select tags dont have id's + # duplicate names might be routed to create + validated_data['space'] = self.context['request'].space + obj = Keyword.get_or_create(**validated_data) return obj class Meta: - list_serializer_class = SpaceFilterSerializer + # list_serializer_class = SpaceFilterSerializer model = Keyword - fields = ('id', 'name', 'icon', 'label', 'description', 'created_at', 'updated_at') - - read_only_fields = ('id',) + fields = ('id', 'name', 'icon', 'label', 'description', 'image', 'parent', 'numchild', 'numrecipe', 'created_at', 'updated_at') + read_only_fields = ('id', 'numchild',) class UnitSerializer(UniqueFieldsMixin, serializers.ModelSerializer): diff --git a/cookbook/signals.py b/cookbook/signals.py new file mode 100644 index 00000000..dc820c11 --- /dev/null +++ b/cookbook/signals.py @@ -0,0 +1,47 @@ +from django.contrib.postgres.search import SearchVector +from django.db.models.signals import post_save +from django.dispatch import receiver +from django.utils import translation + +from cookbook.models import Recipe, Step +from cookbook.managers import DICTIONARY + + +# TODO there is probably a way to generalize this +@receiver(post_save, sender=Recipe) +def update_recipe_search_vector(sender, instance=None, created=False, **kwargs): + if not instance: + return + + # needed to ensure search vector update doesn't trigger recursion + if hasattr(instance, '_dirty'): + return + + language = DICTIONARY.get(translation.get_language(), 'simple') + instance.name_search_vector = SearchVector('name__unaccent', weight='A', config=language) + instance.desc_search_vector = SearchVector('description__unaccent', weight='C', config=language) + + try: + instance._dirty = True + instance.save() + finally: + del instance._dirty + + +@receiver(post_save, sender=Step) +def update_step_search_vector(sender, instance=None, created=False, **kwargs): + if not instance: + return + + # needed to ensure search vector update doesn't trigger recursion + if hasattr(instance, '_dirty'): + return + + language = DICTIONARY.get(translation.get_language(), 'simple') + instance.search_vector = SearchVector('instruction__unaccent', weight='B', config=language) + + try: + instance._dirty = True + instance.save() + finally: + del instance._dirty diff --git a/cookbook/static/django_js_reverse/reverse.js b/cookbook/static/django_js_reverse/reverse.js index 89839d42..105335cb 100644 --- a/cookbook/static/django_js_reverse/reverse.js +++ b/cookbook/static/django_js_reverse/reverse.js @@ -1,14 +1,14 @@ -this.Urls=(function(){"use strict";var data={"urls":[["admin:app_list",[["admin/%(app_label)s/",["app_label"]]]],["admin:auth_group_add",[["admin/auth/group/add/",[]]]],["admin:auth_group_autocomplete",[["admin/auth/group/autocomplete/",[]]]],["admin:auth_group_change",[["admin/auth/group/%(object_id)s/change/",["object_id"]]]],["admin:auth_group_changelist",[["admin/auth/group/",[]]]],["admin:auth_group_delete",[["admin/auth/group/%(object_id)s/delete/",["object_id"]]]],["admin:auth_group_history",[["admin/auth/group/%(object_id)s/history/",["object_id"]]]],["admin:auth_user_add",[["admin/auth/user/add/",[]]]],["admin:auth_user_autocomplete",[["admin/auth/user/autocomplete/",[]]]],["admin:auth_user_change",[["admin/auth/user/%(object_id)s/change/",["object_id"]]]],["admin:auth_user_changelist",[["admin/auth/user/",[]]]],["admin:auth_user_delete",[["admin/auth/user/%(object_id)s/delete/",["object_id"]]]],["admin:auth_user_history",[["admin/auth/user/%(object_id)s/history/",["object_id"]]]],["admin:auth_user_password_change",[["admin/auth/user/%(id)s/password/",["id"]]]],["admin:authtoken_tokenproxy_add",[["admin/authtoken/tokenproxy/add/",[]]]],["admin:authtoken_tokenproxy_autocomplete",[["admin/authtoken/tokenproxy/autocomplete/",[]]]],["admin:authtoken_tokenproxy_change",[["admin/authtoken/tokenproxy/%(object_id)s/change/",["object_id"]]]],["admin:authtoken_tokenproxy_changelist",[["admin/authtoken/tokenproxy/",[]]]],["admin:authtoken_tokenproxy_delete",[["admin/authtoken/tokenproxy/%(object_id)s/delete/",["object_id"]]]],["admin:authtoken_tokenproxy_history",[["admin/authtoken/tokenproxy/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_comment_add",[["admin/cookbook/comment/add/",[]]]],["admin:cookbook_comment_autocomplete",[["admin/cookbook/comment/autocomplete/",[]]]],["admin:cookbook_comment_change",[["admin/cookbook/comment/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_comment_changelist",[["admin/cookbook/comment/",[]]]],["admin:cookbook_comment_delete",[["admin/cookbook/comment/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_comment_history",[["admin/cookbook/comment/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_cooklog_add",[["admin/cookbook/cooklog/add/",[]]]],["admin:cookbook_cooklog_autocomplete",[["admin/cookbook/cooklog/autocomplete/",[]]]],["admin:cookbook_cooklog_change",[["admin/cookbook/cooklog/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_cooklog_changelist",[["admin/cookbook/cooklog/",[]]]],["admin:cookbook_cooklog_delete",[["admin/cookbook/cooklog/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_cooklog_history",[["admin/cookbook/cooklog/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_food_add",[["admin/cookbook/food/add/",[]]]],["admin:cookbook_food_autocomplete",[["admin/cookbook/food/autocomplete/",[]]]],["admin:cookbook_food_change",[["admin/cookbook/food/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_food_changelist",[["admin/cookbook/food/",[]]]],["admin:cookbook_food_delete",[["admin/cookbook/food/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_food_history",[["admin/cookbook/food/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_ingredient_add",[["admin/cookbook/ingredient/add/",[]]]],["admin:cookbook_ingredient_autocomplete",[["admin/cookbook/ingredient/autocomplete/",[]]]],["admin:cookbook_ingredient_change",[["admin/cookbook/ingredient/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_ingredient_changelist",[["admin/cookbook/ingredient/",[]]]],["admin:cookbook_ingredient_delete",[["admin/cookbook/ingredient/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_ingredient_history",[["admin/cookbook/ingredient/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_invitelink_add",[["admin/cookbook/invitelink/add/",[]]]],["admin:cookbook_invitelink_autocomplete",[["admin/cookbook/invitelink/autocomplete/",[]]]],["admin:cookbook_invitelink_change",[["admin/cookbook/invitelink/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_invitelink_changelist",[["admin/cookbook/invitelink/",[]]]],["admin:cookbook_invitelink_delete",[["admin/cookbook/invitelink/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_invitelink_history",[["admin/cookbook/invitelink/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_keyword_add",[["admin/cookbook/keyword/add/",[]]]],["admin:cookbook_keyword_autocomplete",[["admin/cookbook/keyword/autocomplete/",[]]]],["admin:cookbook_keyword_change",[["admin/cookbook/keyword/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_keyword_changelist",[["admin/cookbook/keyword/",[]]]],["admin:cookbook_keyword_delete",[["admin/cookbook/keyword/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_keyword_history",[["admin/cookbook/keyword/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_mealplan_add",[["admin/cookbook/mealplan/add/",[]]]],["admin:cookbook_mealplan_autocomplete",[["admin/cookbook/mealplan/autocomplete/",[]]]],["admin:cookbook_mealplan_change",[["admin/cookbook/mealplan/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_mealplan_changelist",[["admin/cookbook/mealplan/",[]]]],["admin:cookbook_mealplan_delete",[["admin/cookbook/mealplan/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_mealplan_history",[["admin/cookbook/mealplan/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_mealtype_add",[["admin/cookbook/mealtype/add/",[]]]],["admin:cookbook_mealtype_autocomplete",[["admin/cookbook/mealtype/autocomplete/",[]]]],["admin:cookbook_mealtype_change",[["admin/cookbook/mealtype/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_mealtype_changelist",[["admin/cookbook/mealtype/",[]]]],["admin:cookbook_mealtype_delete",[["admin/cookbook/mealtype/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_mealtype_history",[["admin/cookbook/mealtype/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_nutritioninformation_add",[["admin/cookbook/nutritioninformation/add/",[]]]],["admin:cookbook_nutritioninformation_autocomplete",[["admin/cookbook/nutritioninformation/autocomplete/",[]]]],["admin:cookbook_nutritioninformation_change",[["admin/cookbook/nutritioninformation/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_nutritioninformation_changelist",[["admin/cookbook/nutritioninformation/",[]]]],["admin:cookbook_nutritioninformation_delete",[["admin/cookbook/nutritioninformation/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_nutritioninformation_history",[["admin/cookbook/nutritioninformation/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_recipe_add",[["admin/cookbook/recipe/add/",[]]]],["admin:cookbook_recipe_autocomplete",[["admin/cookbook/recipe/autocomplete/",[]]]],["admin:cookbook_recipe_change",[["admin/cookbook/recipe/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_recipe_changelist",[["admin/cookbook/recipe/",[]]]],["admin:cookbook_recipe_delete",[["admin/cookbook/recipe/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_recipe_history",[["admin/cookbook/recipe/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_recipebook_add",[["admin/cookbook/recipebook/add/",[]]]],["admin:cookbook_recipebook_autocomplete",[["admin/cookbook/recipebook/autocomplete/",[]]]],["admin:cookbook_recipebook_change",[["admin/cookbook/recipebook/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_recipebook_changelist",[["admin/cookbook/recipebook/",[]]]],["admin:cookbook_recipebook_delete",[["admin/cookbook/recipebook/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_recipebook_history",[["admin/cookbook/recipebook/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_recipebookentry_add",[["admin/cookbook/recipebookentry/add/",[]]]],["admin:cookbook_recipebookentry_autocomplete",[["admin/cookbook/recipebookentry/autocomplete/",[]]]],["admin:cookbook_recipebookentry_change",[["admin/cookbook/recipebookentry/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_recipebookentry_changelist",[["admin/cookbook/recipebookentry/",[]]]],["admin:cookbook_recipebookentry_delete",[["admin/cookbook/recipebookentry/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_recipebookentry_history",[["admin/cookbook/recipebookentry/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_recipeimport_add",[["admin/cookbook/recipeimport/add/",[]]]],["admin:cookbook_recipeimport_autocomplete",[["admin/cookbook/recipeimport/autocomplete/",[]]]],["admin:cookbook_recipeimport_change",[["admin/cookbook/recipeimport/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_recipeimport_changelist",[["admin/cookbook/recipeimport/",[]]]],["admin:cookbook_recipeimport_delete",[["admin/cookbook/recipeimport/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_recipeimport_history",[["admin/cookbook/recipeimport/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_sharelink_add",[["admin/cookbook/sharelink/add/",[]]]],["admin:cookbook_sharelink_autocomplete",[["admin/cookbook/sharelink/autocomplete/",[]]]],["admin:cookbook_sharelink_change",[["admin/cookbook/sharelink/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_sharelink_changelist",[["admin/cookbook/sharelink/",[]]]],["admin:cookbook_sharelink_delete",[["admin/cookbook/sharelink/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_sharelink_history",[["admin/cookbook/sharelink/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_shoppinglist_add",[["admin/cookbook/shoppinglist/add/",[]]]],["admin:cookbook_shoppinglist_autocomplete",[["admin/cookbook/shoppinglist/autocomplete/",[]]]],["admin:cookbook_shoppinglist_change",[["admin/cookbook/shoppinglist/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_shoppinglist_changelist",[["admin/cookbook/shoppinglist/",[]]]],["admin:cookbook_shoppinglist_delete",[["admin/cookbook/shoppinglist/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_shoppinglist_history",[["admin/cookbook/shoppinglist/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_shoppinglistentry_add",[["admin/cookbook/shoppinglistentry/add/",[]]]],["admin:cookbook_shoppinglistentry_autocomplete",[["admin/cookbook/shoppinglistentry/autocomplete/",[]]]],["admin:cookbook_shoppinglistentry_change",[["admin/cookbook/shoppinglistentry/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_shoppinglistentry_changelist",[["admin/cookbook/shoppinglistentry/",[]]]],["admin:cookbook_shoppinglistentry_delete",[["admin/cookbook/shoppinglistentry/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_shoppinglistentry_history",[["admin/cookbook/shoppinglistentry/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_shoppinglistrecipe_add",[["admin/cookbook/shoppinglistrecipe/add/",[]]]],["admin:cookbook_shoppinglistrecipe_autocomplete",[["admin/cookbook/shoppinglistrecipe/autocomplete/",[]]]],["admin:cookbook_shoppinglistrecipe_change",[["admin/cookbook/shoppinglistrecipe/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_shoppinglistrecipe_changelist",[["admin/cookbook/shoppinglistrecipe/",[]]]],["admin:cookbook_shoppinglistrecipe_delete",[["admin/cookbook/shoppinglistrecipe/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_shoppinglistrecipe_history",[["admin/cookbook/shoppinglistrecipe/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_space_add",[["admin/cookbook/space/add/",[]]]],["admin:cookbook_space_autocomplete",[["admin/cookbook/space/autocomplete/",[]]]],["admin:cookbook_space_change",[["admin/cookbook/space/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_space_changelist",[["admin/cookbook/space/",[]]]],["admin:cookbook_space_delete",[["admin/cookbook/space/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_space_history",[["admin/cookbook/space/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_step_add",[["admin/cookbook/step/add/",[]]]],["admin:cookbook_step_autocomplete",[["admin/cookbook/step/autocomplete/",[]]]],["admin:cookbook_step_change",[["admin/cookbook/step/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_step_changelist",[["admin/cookbook/step/",[]]]],["admin:cookbook_step_delete",[["admin/cookbook/step/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_step_history",[["admin/cookbook/step/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_storage_add",[["admin/cookbook/storage/add/",[]]]],["admin:cookbook_storage_autocomplete",[["admin/cookbook/storage/autocomplete/",[]]]],["admin:cookbook_storage_change",[["admin/cookbook/storage/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_storage_changelist",[["admin/cookbook/storage/",[]]]],["admin:cookbook_storage_delete",[["admin/cookbook/storage/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_storage_history",[["admin/cookbook/storage/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_sync_add",[["admin/cookbook/sync/add/",[]]]],["admin:cookbook_sync_autocomplete",[["admin/cookbook/sync/autocomplete/",[]]]],["admin:cookbook_sync_change",[["admin/cookbook/sync/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_sync_changelist",[["admin/cookbook/sync/",[]]]],["admin:cookbook_sync_delete",[["admin/cookbook/sync/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_sync_history",[["admin/cookbook/sync/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_synclog_add",[["admin/cookbook/synclog/add/",[]]]],["admin:cookbook_synclog_autocomplete",[["admin/cookbook/synclog/autocomplete/",[]]]],["admin:cookbook_synclog_change",[["admin/cookbook/synclog/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_synclog_changelist",[["admin/cookbook/synclog/",[]]]],["admin:cookbook_synclog_delete",[["admin/cookbook/synclog/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_synclog_history",[["admin/cookbook/synclog/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_unit_add",[["admin/cookbook/unit/add/",[]]]],["admin:cookbook_unit_autocomplete",[["admin/cookbook/unit/autocomplete/",[]]]],["admin:cookbook_unit_change",[["admin/cookbook/unit/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_unit_changelist",[["admin/cookbook/unit/",[]]]],["admin:cookbook_unit_delete",[["admin/cookbook/unit/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_unit_history",[["admin/cookbook/unit/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_userpreference_add",[["admin/cookbook/userpreference/add/",[]]]],["admin:cookbook_userpreference_autocomplete",[["admin/cookbook/userpreference/autocomplete/",[]]]],["admin:cookbook_userpreference_change",[["admin/cookbook/userpreference/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_userpreference_changelist",[["admin/cookbook/userpreference/",[]]]],["admin:cookbook_userpreference_delete",[["admin/cookbook/userpreference/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_userpreference_history",[["admin/cookbook/userpreference/%(object_id)s/history/",["object_id"]]]],["admin:cookbook_viewlog_add",[["admin/cookbook/viewlog/add/",[]]]],["admin:cookbook_viewlog_autocomplete",[["admin/cookbook/viewlog/autocomplete/",[]]]],["admin:cookbook_viewlog_change",[["admin/cookbook/viewlog/%(object_id)s/change/",["object_id"]]]],["admin:cookbook_viewlog_changelist",[["admin/cookbook/viewlog/",[]]]],["admin:cookbook_viewlog_delete",[["admin/cookbook/viewlog/%(object_id)s/delete/",["object_id"]]]],["admin:cookbook_viewlog_history",[["admin/cookbook/viewlog/%(object_id)s/history/",["object_id"]]]],["admin:index",[["admin/",[]]]],["admin:jsi18n",[["admin/jsi18n/",[]]]],["admin:login",[["admin/login/",[]]]],["admin:logout",[["admin/logout/",[]]]],["admin:password_change",[["admin/password_change/",[]]]],["admin:password_change_done",[["admin/password_change/done/",[]]]],["admin:view_on_site",[["admin/r/%(content_type_id)s/%(object_id)s/",["content_type_id","object_id"]]]],["api:api-root",[["api/.%(format)s",["format"]],["api/",[]]]],["api:cooklog-detail",[["api/cook-log/%(pk)s.%(format)s",["pk","format"]],["api/cook-log/%(pk)s/",["pk"]]]],["api:cooklog-list",[["api/cook-log.%(format)s",["format"]],["api/cook-log/",[]]]],["api:food-detail",[["api/food/%(pk)s.%(format)s",["pk","format"]],["api/food/%(pk)s/",["pk"]]]],["api:food-list",[["api/food.%(format)s",["format"]],["api/food/",[]]]],["api:ingredient-detail",[["api/ingredient/%(pk)s.%(format)s",["pk","format"]],["api/ingredient/%(pk)s/",["pk"]]]],["api:ingredient-list",[["api/ingredient.%(format)s",["format"]],["api/ingredient/",[]]]],["api:keyword-detail",[["api/keyword/%(pk)s.%(format)s",["pk","format"]],["api/keyword/%(pk)s/",["pk"]]]],["api:keyword-list",[["api/keyword.%(format)s",["format"]],["api/keyword/",[]]]],["api:mealplan-detail",[["api/meal-plan/%(pk)s.%(format)s",["pk","format"]],["api/meal-plan/%(pk)s/",["pk"]]]],["api:mealplan-list",[["api/meal-plan.%(format)s",["format"]],["api/meal-plan/",[]]]],["api:mealtype-detail",[["api/meal-type/%(pk)s.%(format)s",["pk","format"]],["api/meal-type/%(pk)s/",["pk"]]]],["api:mealtype-list",[["api/meal-type.%(format)s",["format"]],["api/meal-type/",[]]]],["api:recipe-detail",[["api/recipe/%(pk)s.%(format)s",["pk","format"]],["api/recipe/%(pk)s/",["pk"]]]],["api:recipe-image",[["api/recipe/%(pk)s/image.%(format)s",["pk","format"]],["api/recipe/%(pk)s/image/",["pk"]]]],["api:recipe-list",[["api/recipe.%(format)s",["format"]],["api/recipe/",[]]]],["api:shoppinglist-detail",[["api/shopping-list/%(pk)s.%(format)s",["pk","format"]],["api/shopping-list/%(pk)s/",["pk"]]]],["api:shoppinglist-list",[["api/shopping-list.%(format)s",["format"]],["api/shopping-list/",[]]]],["api:shoppinglistentry-detail",[["api/shopping-list-entry/%(pk)s.%(format)s",["pk","format"]],["api/shopping-list-entry/%(pk)s/",["pk"]]]],["api:shoppinglistentry-list",[["api/shopping-list-entry.%(format)s",["format"]],["api/shopping-list-entry/",[]]]],["api:shoppinglistrecipe-detail",[["api/shopping-list-recipe/%(pk)s.%(format)s",["pk","format"]],["api/shopping-list-recipe/%(pk)s/",["pk"]]]],["api:shoppinglistrecipe-list",[["api/shopping-list-recipe.%(format)s",["format"]],["api/shopping-list-recipe/",[]]]],["api:step-detail",[["api/step/%(pk)s.%(format)s",["pk","format"]],["api/step/%(pk)s/",["pk"]]]],["api:step-list",[["api/step.%(format)s",["format"]],["api/step/",[]]]],["api:storage-detail",[["api/storage/%(pk)s.%(format)s",["pk","format"]],["api/storage/%(pk)s/",["pk"]]]],["api:storage-list",[["api/storage.%(format)s",["format"]],["api/storage/",[]]]],["api:sync-detail",[["api/sync/%(pk)s.%(format)s",["pk","format"]],["api/sync/%(pk)s/",["pk"]]]],["api:sync-list",[["api/sync.%(format)s",["format"]],["api/sync/",[]]]],["api:synclog-detail",[["api/sync-log/%(pk)s.%(format)s",["pk","format"]],["api/sync-log/%(pk)s/",["pk"]]]],["api:synclog-list",[["api/sync-log.%(format)s",["format"]],["api/sync-log/",[]]]],["api:unit-detail",[["api/unit/%(pk)s.%(format)s",["pk","format"]],["api/unit/%(pk)s/",["pk"]]]],["api:unit-list",[["api/unit.%(format)s",["format"]],["api/unit/",[]]]],["api:username-detail",[["api/user-name/%(pk)s.%(format)s",["pk","format"]],["api/user-name/%(pk)s/",["pk"]]]],["api:username-list",[["api/user-name.%(format)s",["format"]],["api/user-name/",[]]]],["api:userpreference-detail",[["api/user-preference/%(pk)s.%(format)s",["pk","format"]],["api/user-preference/%(pk)s/",["pk"]]]],["api:userpreference-list",[["api/user-preference.%(format)s",["format"]],["api/user-preference/",[]]]],["api:viewlog-detail",[["api/view-log/%(pk)s.%(format)s",["pk","format"]],["api/view-log/%(pk)s/",["pk"]]]],["api:viewlog-list",[["api/view-log.%(format)s",["format"]],["api/view-log/",[]]]],["api_backup",[["api/backup/",[]]]],["api_get_external_file_link",[["api/get_external_file_link/%(recipe_id)s/",["recipe_id"]]]],["api_get_plan_ical",[["api/plan-ical/%(from_date)s/%(to_date)s/",["from_date","to_date"]]]],["api_get_recipe_file",[["api/get_recipe_file/%(recipe_id)s/",["recipe_id"]]]],["api_log_cooking",[["api/log_cooking/%(recipe_id)s/",["recipe_id"]]]],["api_recipe_from_url",[["api/recipe-from-url/",[]]]],["api_sync",[["api/sync_all/",[]]]],["dal_food",[["dal/food/",[]]]],["dal_keyword",[["dal/keyword/",[]]]],["dal_unit",[["dal/unit/",[]]]],["data_batch_edit",[["data/batch/edit",[]]]],["data_batch_import",[["data/batch/import",[]]]],["data_import_url",[["data/import/url",[]]]],["data_stats",[["data/statistics",[]]]],["data_sync",[["data/sync",[]]]],["data_sync_wait",[["data/sync/wait",[]]]],["delete_comment",[["delete/comment/%(pk)s/",["pk"]]]],["delete_invite_link",[["delete/invite-link/%(pk)s/",["pk"]]]],["delete_keyword",[["delete/keyword/%(pk)s/",["pk"]]]],["delete_meal_plan",[["delete/meal-plan/%(pk)s/",["pk"]]]],["delete_recipe",[["delete/recipe/%(pk)s/",["pk"]]]],["delete_recipe_book",[["delete/recipe-book/%(pk)s/",["pk"]]]],["delete_recipe_book_entry",[["delete/recipe-book-entry/%(pk)s/",["pk"]]]],["delete_recipe_import",[["delete/recipe-import/%(pk)s/",["pk"]]]],["delete_recipe_source",[["delete/recipe-source/%(pk)s/",["pk"]]]],["delete_storage",[["delete/storage/%(pk)s/",["pk"]]]],["delete_sync",[["delete/sync/%(pk)s/",["pk"]]]],["docs_api",[["docs/api/",[]]]],["docs_markdown",[["docs/markdown/",[]]]],["edit_comment",[["edit/comment/%(pk)s/",["pk"]]]],["edit_convert_recipe",[["edit/recipe/convert/%(pk)s/",["pk"]]]],["edit_external_recipe",[["edit/recipe/external/%(pk)s/",["pk"]]]],["edit_food",[["edit/food/%(pk)s/",["pk"]],["edit/ingredient/",[]]]],["edit_internal_recipe",[["edit/recipe/internal/%(pk)s/",["pk"]]]],["edit_keyword",[["edit/keyword/%(pk)s/",["pk"]]]],["edit_meal_plan",[["edit/meal-plan/%(pk)s/",["pk"]]]],["edit_recipe",[["edit/recipe/%(pk)s/",["pk"]]]],["edit_recipe_book",[["edit/recipe-book/%(pk)s/",["pk"]]]],["edit_storage",[["edit/storage/%(pk)s/",["pk"]]]],["edit_sync",[["edit/sync/%(pk)s/",["pk"]]]],["index",[["",[]]]],["javascript-catalog",[["jsi18n/",[]]]],["js_reverse",[["jsreverse.json",[]]]],["list_food",[["list/food/",[]]]],["list_invite_link",[["list/invite-link/",[]]]],["list_keyword",[["list/keyword/",[]]]],["list_recipe_import",[["list/recipe-import/",[]]]],["list_shopping_list",[["list/shopping-list/",[]]]],["list_storage",[["list/storage/",[]]]],["list_sync_log",[["list/sync-log/",[]]]],["login",[["accounts/login/",[]]]],["logout",[["accounts/logout/",[]]]],["new_invite_link",[["new/invite-link/",[]]]],["new_keyword",[["new/keyword/",[]]]],["new_meal_plan",[["new/meal-plan/",[]]]],["new_recipe",[["new/recipe/",[]]]],["new_recipe_book",[["new/recipe-book/",[]]]],["new_recipe_import",[["new/recipe-import/%(import_id)s/",["import_id"]]]],["new_share_link",[["new/share-link/%(pk)s/",["pk"]]]],["new_storage",[["new/storage/",[]]]],["openapi-schema",[["openapi",[]]]],["password_change",[["accounts/password_change/",[]]]],["password_change_done",[["accounts/password_change/done/",[]]]],["password_reset",[["accounts/password_reset/",[]]]],["password_reset_complete",[["accounts/reset/done/",[]]]],["password_reset_confirm",[["accounts/reset/%(uidb64)s/%(token)s/",["uidb64","token"]]]],["password_reset_done",[["accounts/password_reset/done/",[]]]],["rest_framework:login",[["api-auth/login/",[]]]],["rest_framework:logout",[["api-auth/logout/",[]]]],["service_worker",[["service-worker.js",[]]]],["set_language",[["i18n/setlang/",[]]]],["view_books",[["books/",[]]]],["view_export",[["export/",[]]]],["view_history",[["history/",[]]]],["view_import",[["import/",[]]]],["view_offline",[["offline/",[]]]],["view_plan",[["plan/",[]]]],["view_plan_entry",[["plan/entry/%(pk)s",["pk"]]]],["view_recipe",[["view/recipe/%(pk)s/%(share)s",["pk","share"]],["view/recipe/%(pk)s",["pk"]]]],["view_search",[["search/",[]]]],["view_settings",[["settings/",[]]]],["view_setup",[["setup/",[]]]],["view_shopping",[["shopping/%(pk)s",["pk"]],["shopping/",[]]]],["view_signup",[["signup/%(token)s",["token"]]]],["view_system",[["system/",[]]]],["view_test",[["test/%(pk)s",["pk"]]]]],"prefix":"/"};function factory(d){var url_patterns=d.urls;var url_prefix=d.prefix;var Urls={};var self_url_patterns={};var _get_url=function(url_pattern){return function(){var _arguments,index,url,url_arg,url_args,_i,_len,_ref,_ref_list,match_ref,provided_keys,build_kwargs;_arguments=arguments;_ref_list=self_url_patterns[url_pattern];if(arguments.length==1&&typeof(arguments[0])=="object"){var provided_keys_list=Object.keys(arguments[0]);provided_keys={};for(_i=0;_i=4||"ഉച്ച കഴിഞ്ഞ്"===e||"വൈകുന്നേരം"===e?t+12:t},meridiem:function(t,e,n){return t<4?"രാത്രി":t<12?"രാവിലെ":t<17?"ഉച്ച കഴിഞ്ഞ്":t<20?"വൈകുന്നേരം":"രാത്രി"}});return e}))},"0366":function(t,e,n){var r=n("1c0b");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,i){return t.call(e,n,r,i)}}return function(){return t.apply(e,arguments)}}},"03ec":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),monthsParseExact:!0,weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -നു",LLLL:"dddd, D MMMM YYYY, A h:mm -നു"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",ss:"%d സെക്കൻഡ്",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(e,t){return 12===e&&(e=0),"രാത്രി"===t&&e>=4||"ഉച്ച കഴിഞ്ഞ്"===t||"വൈകുന്നേരം"===t?e+12:e},meridiem:function(e,t,n){return e<4?"രാത്രി":e<12?"രാവിലെ":e<17?"ഉച്ച കഴിഞ്ഞ്":e<20?"വൈകുന്നേരം":"രാത്രി"}});return t}))},"0366":function(e,t,n){var i=n("1c0b");e.exports=function(e,t,n){if(i(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,i){return e.call(t,n,i)};case 3:return function(n,i,r){return e.call(t,n,i,r)}}return function(){return e.apply(t,arguments)}}},"03ec":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(t){var e=/сехет$/i.exec(t)?"рен":/ҫул$/i.exec(t)?"тан":"ран";return t+e},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}});return e}))},"0558":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(e){var t=/сехет$/i.exec(e)?"рен":/ҫул$/i.exec(e)?"тан":"ран";return e+t},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}});return t}))},"0558":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t){return t%100===11||t%10!==1}function n(t,n,r,i){var a=t+" ";switch(r){case"s":return n||i?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return e(t)?a+(n||i?"sekúndur":"sekúndum"):a+"sekúnda";case"m":return n?"mínúta":"mínútu";case"mm":return e(t)?a+(n||i?"mínútur":"mínútum"):n?a+"mínúta":a+"mínútu";case"hh":return e(t)?a+(n||i?"klukkustundir":"klukkustundum"):a+"klukkustund";case"d":return n?"dagur":i?"dag":"degi";case"dd":return e(t)?n?a+"dagar":a+(i?"daga":"dögum"):n?a+"dagur":a+(i?"dag":"degi");case"M":return n?"mánuður":i?"mánuð":"mánuði";case"MM":return e(t)?n?a+"mánuðir":a+(i?"mánuði":"mánuðum"):n?a+"mánuður":a+(i?"mánuð":"mánuði");case"y":return n||i?"ár":"ári";case"yy":return e(t)?a+(n||i?"ár":"árum"):a+(n||i?"ár":"ári")}}var r=t.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:n,ss:n,m:n,mm:n,h:"klukkustund",hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r}))},"057f":function(t,e,n){var r=n("fc6a"),i=n("241c").f,a={}.toString,o="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(t){try{return i(t)}catch(e){return o.slice()}};t.exports.f=function(t){return o&&"[object Window]"==a.call(t)?s(t):i(r(t))}},"06cf":function(t,e,n){var r=n("83ab"),i=n("d1e7"),a=n("5c6c"),o=n("fc6a"),s=n("c04e"),c=n("5135"),u=n("0cfb"),l=Object.getOwnPropertyDescriptor;e.f=r?l:function(t,e){if(t=o(t),e=s(e,!0),u)try{return l(t,e)}catch(n){}if(c(t,e))return a(!i.f.call(t,e),t[e])}},"0721":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e){return e%100===11||e%10!==1}function n(e,n,i,r){var o=e+" ";switch(i){case"s":return n||r?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return t(e)?o+(n||r?"sekúndur":"sekúndum"):o+"sekúnda";case"m":return n?"mínúta":"mínútu";case"mm":return t(e)?o+(n||r?"mínútur":"mínútum"):n?o+"mínúta":o+"mínútu";case"hh":return t(e)?o+(n||r?"klukkustundir":"klukkustundum"):o+"klukkustund";case"d":return n?"dagur":r?"dag":"degi";case"dd":return t(e)?n?o+"dagar":o+(r?"daga":"dögum"):n?o+"dagur":o+(r?"dag":"degi");case"M":return n?"mánuður":r?"mánuð":"mánuði";case"MM":return t(e)?n?o+"mánuðir":o+(r?"mánuði":"mánuðum"):n?o+"mánuður":o+(r?"mánuð":"mánuði");case"y":return n||r?"ár":"ári";case"yy":return t(e)?o+(n||r?"ár":"árum"):o+(n||r?"ár":"ári")}}var i=e.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:n,ss:n,m:n,mm:n,h:"klukkustund",hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i}))},"057f":function(e,t,n){var i=n("fc6a"),r=n("241c").f,o={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(e){try{return r(e)}catch(t){return a.slice()}};e.exports.f=function(e){return a&&"[object Window]"==o.call(e)?s(e):r(i(e))}},"06cf":function(e,t,n){var i=n("83ab"),r=n("d1e7"),o=n("5c6c"),a=n("fc6a"),s=n("c04e"),c=n("5135"),u=n("0cfb"),d=Object.getOwnPropertyDescriptor;t.f=i?d:function(e,t){if(e=a(e),t=s(t,!0),u)try{return d(e,t)}catch(n){}if(c(e,t))return o(!r.f.call(e,t),e[t])}},"0721":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return e}))},"079e":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t}))},"079e":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ja",{eras:[{since:"2019-05-01",offset:1,name:"令和",narrow:"㋿",abbr:"R"},{since:"1989-01-08",until:"2019-04-30",offset:1,name:"平成",narrow:"㍻",abbr:"H"},{since:"1926-12-25",until:"1989-01-07",offset:1,name:"昭和",narrow:"㍼",abbr:"S"},{since:"1912-07-30",until:"1926-12-24",offset:1,name:"大正",narrow:"㍽",abbr:"T"},{since:"1873-01-01",until:"1912-07-29",offset:6,name:"明治",narrow:"㍾",abbr:"M"},{since:"0001-01-01",until:"1873-12-31",offset:1,name:"西暦",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"紀元前",narrow:"BC",abbr:"BC"}],eraYearOrdinalRegex:/(元|\d+)年/,eraYearOrdinalParse:function(t,e){return"元"===e[1]?1:parseInt(e[1]||t,10)},months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(t){return"午後"===t},meridiem:function(t,e,n){return t<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(t){return t.week()!==this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(t){return this.week()!==t.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(t,e){switch(e){case"y":return 1===t?"元年":t+"年";case"d":case"D":case"DDD":return t+"日";default:return t}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}});return e}))},"0a06":function(t,e,n){"use strict";var r=n("c532"),i=n("30b5"),a=n("f6b49"),o=n("5270"),s=n("4a7b");function c(t){this.defaults=t,this.interceptors={request:new a,response:new a}}c.prototype.request=function(t){"string"===typeof t?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=s(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var e=[o,void 0],n=Promise.resolve(t);this.interceptors.request.forEach((function(t){e.unshift(t.fulfilled,t.rejected)})),this.interceptors.response.forEach((function(t){e.push(t.fulfilled,t.rejected)}));while(e.length)n=n.then(e.shift(),e.shift());return n},c.prototype.getUri=function(t){return t=s(this.defaults,t),i(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(t){c.prototype[t]=function(e,n){return this.request(s(n||{},{method:t,url:e,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(t){c.prototype[t]=function(e,n,r){return this.request(s(r||{},{method:t,url:e,data:n}))}})),t.exports=c},"0a3c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ja",{eras:[{since:"2019-05-01",offset:1,name:"令和",narrow:"㋿",abbr:"R"},{since:"1989-01-08",until:"2019-04-30",offset:1,name:"平成",narrow:"㍻",abbr:"H"},{since:"1926-12-25",until:"1989-01-07",offset:1,name:"昭和",narrow:"㍼",abbr:"S"},{since:"1912-07-30",until:"1926-12-24",offset:1,name:"大正",narrow:"㍽",abbr:"T"},{since:"1873-01-01",until:"1912-07-29",offset:6,name:"明治",narrow:"㍾",abbr:"M"},{since:"0001-01-01",until:"1873-12-31",offset:1,name:"西暦",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"紀元前",narrow:"BC",abbr:"BC"}],eraYearOrdinalRegex:/(元|\d+)年/,eraYearOrdinalParse:function(e,t){return"元"===t[1]?1:parseInt(t[1]||e,10)},months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(e){return"午後"===e},meridiem:function(e,t,n){return e<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(e){return e.week()!==this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(e){return this.week()!==e.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(e,t){switch(t){case"y":return 1===e?"元年":e+"年";case"d":case"D":case"DDD":return e+"日";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}});return t}))},"0a06":function(e,t,n){"use strict";var i=n("c532"),r=n("30b5"),o=n("f6b49"),a=n("5270"),s=n("4a7b");function c(e){this.defaults=e,this.interceptors={request:new o,response:new o}}c.prototype.request=function(e){"string"===typeof e?(e=arguments[1]||{},e.url=arguments[0]):e=e||{},e=s(this.defaults,e),e.method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[a,void 0],n=Promise.resolve(e);this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));while(t.length)n=n.then(t.shift(),t.shift());return n},c.prototype.getUri=function(e){return e=s(this.defaults,e),r(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},i.forEach(["delete","get","head","options"],(function(e){c.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t,data:(n||{}).data}))}})),i.forEach(["post","put","patch"],(function(e){c.prototype[e]=function(t,n,i){return this.request(s(i||{},{method:e,url:t,data:n}))}})),e.exports=c},"0a3c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),r=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],i=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,a=t.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,r){return t?/-MMM-/.test(r)?n[t.month()]:e[t.month()]:e},monthsRegex:i,monthsShortRegex:i,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:r,longMonthsParse:r,shortMonthsParse:r,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return a}))},"0a84":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,o=e.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return o}))},"0a84":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}});return e}))},"0b4b":function(t,e,n){},"0caa":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}});return t}))},"0b4b":function(e,t,n){},"0caa":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e,n,r){var i={s:["thoddea sekondamni","thodde sekond"],ss:[t+" sekondamni",t+" sekond"],m:["eka mintan","ek minut"],mm:[t+" mintamni",t+" mintam"],h:["eka voran","ek vor"],hh:[t+" voramni",t+" voram"],d:["eka disan","ek dis"],dd:[t+" disamni",t+" dis"],M:["eka mhoinean","ek mhoino"],MM:[t+" mhoineamni",t+" mhoine"],y:["eka vorsan","ek voros"],yy:[t+" vorsamni",t+" vorsam"]};return r?i[n][0]:i[n][1]}var n=t.defineLocale("gom-latn",{months:{standalone:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),format:"Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Fuddlo] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fattlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(t,e){switch(e){case"D":return t+"er";default:case"M":case"Q":case"DDD":case"d":case"w":case"W":return t}},week:{dow:0,doy:3},meridiemParse:/rati|sokallim|donparam|sanje/,meridiemHour:function(t,e){return 12===t&&(t=0),"rati"===e?t<4?t:t+12:"sokallim"===e?t:"donparam"===e?t>12?t:t+12:"sanje"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"rati":t<12?"sokallim":t<16?"donparam":t<20?"sanje":"rati"}});return n}))},"0cb2":function(t,e,n){var r=n("7b0b"),i=Math.floor,a="".replace,o=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;t.exports=function(t,e,n,c,u,l){var d=n+t.length,f=c.length,h=s;return void 0!==u&&(u=r(u),h=o),a.call(l,h,(function(r,a){var o;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(d);case"<":o=u[a.slice(1,-1)];break;default:var s=+a;if(0===s)return r;if(s>f){var l=i(s/10);return 0===l?r:l<=f?void 0===c[l-1]?a.charAt(1):c[l-1]+a.charAt(1):r}o=c[s-1]}return void 0===o?"":o}))}},"0cfb":function(t,e,n){var r=n("83ab"),i=n("d039"),a=n("cc12");t.exports=!r&&!i((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},"0d3b":function(t,e,n){var r=n("d039"),i=n("b622"),a=n("c430"),o=i("iterator");t.exports=!r((function(){var t=new URL("b?a=1&b=2&c=3","http://a"),e=t.searchParams,n="";return t.pathname="c%20d",e.forEach((function(t,r){e["delete"]("b"),n+=r+t})),a&&!t.toJSON||!e.sort||"http://a/c%20d?a=1&c=3"!==t.href||"3"!==e.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!e[o]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==n||"x"!==new URL("http://x",void 0).host}))},"0df6":function(t,e,n){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},"0e49":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t,n,i){var r={s:["thoddea sekondamni","thodde sekond"],ss:[e+" sekondamni",e+" sekond"],m:["eka mintan","ek minut"],mm:[e+" mintamni",e+" mintam"],h:["eka voran","ek vor"],hh:[e+" voramni",e+" voram"],d:["eka disan","ek dis"],dd:[e+" disamni",e+" dis"],M:["eka mhoinean","ek mhoino"],MM:[e+" mhoineamni",e+" mhoine"],y:["eka vorsan","ek voros"],yy:[e+" vorsamni",e+" vorsam"]};return i?r[n][0]:r[n][1]}var n=e.defineLocale("gom-latn",{months:{standalone:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),format:"Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Fuddlo] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fattlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(e,t){switch(t){case"D":return e+"er";default:case"M":case"Q":case"DDD":case"d":case"w":case"W":return e}},week:{dow:0,doy:3},meridiemParse:/rati|sokallim|donparam|sanje/,meridiemHour:function(e,t){return 12===e&&(e=0),"rati"===t?e<4?e:e+12:"sokallim"===t?e:"donparam"===t?e>12?e:e+12:"sanje"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"rati":e<12?"sokallim":e<16?"donparam":e<20?"sanje":"rati"}});return n}))},"0cb2":function(e,t,n){var i=n("7b0b"),r=Math.floor,o="".replace,a=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,c,u,d){var l=n+e.length,f=c.length,p=s;return void 0!==u&&(u=i(u),p=a),o.call(d,p,(function(i,o){var a;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(l);case"<":a=u[o.slice(1,-1)];break;default:var s=+o;if(0===s)return i;if(s>f){var d=r(s/10);return 0===d?i:d<=f?void 0===c[d-1]?o.charAt(1):c[d-1]+o.charAt(1):i}a=c[s-1]}return void 0===a?"":a}))}},"0cfb":function(e,t,n){var i=n("83ab"),r=n("d039"),o=n("cc12");e.exports=!i&&!r((function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},"0d08":function(e){e.exports=JSON.parse('[{"group":0,"description":"😀"},{"group":1,"description":"👍️"},{"group":2,"description":"🦲"},{"group":3,"description":"🐶"},{"group":4,"description":"🍉"},{"group":5,"description":"🏠️"},{"group":6,"description":"🎁"},{"group":7,"description":"🎶"},{"group":8,"description":"🔝"},{"group":9,"description":"🏁"}]')},"0d3b":function(e,t,n){var i=n("d039"),r=n("b622"),o=n("c430"),a=r("iterator");e.exports=!i((function(){var e=new URL("b?a=1&b=2&c=3","http://a"),t=e.searchParams,n="";return e.pathname="c%20d",t.forEach((function(e,i){t["delete"]("b"),n+=i+e})),o&&!e.toJSON||!t.sort||"http://a/c%20d?a=1&c=3"!==e.href||"3"!==t.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!t[a]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==n||"x"!==new URL("http://x",void 0).host}))},"0df6":function(e,t,n){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},"0e49":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(t,e){switch(e){default:case"M":case"Q":case"D":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}},week:{dow:1,doy:4}});return e}))},"0e6b":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(e,t){switch(t){default:case"M":case"Q":case"D":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}},week:{dow:1,doy:4}});return t}))},"0e6b":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10,n=1===~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n},week:{dow:0,doy:4}});return e}))},"0e81":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n},week:{dow:0,doy:4}});return t}))},"0e81":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"},n=t.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),meridiem:function(t,e,n){return t<12?n?"öö":"ÖÖ":n?"ös":"ÖS"},meridiemParse:/öö|ÖÖ|ös|ÖS/,isPM:function(t){return"ös"===t||"ÖS"===t},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",w:"bir hafta",ww:"%d hafta",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(t,n){switch(n){case"d":case"D":case"Do":case"DD":return t;default:if(0===t)return t+"'ıncı";var r=t%10,i=t%100-r,a=t>=100?100:null;return t+(e[r]||e[i]||e[a])}},week:{dow:1,doy:7}});return n}))},"0f14":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"},n=e.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),meridiem:function(e,t,n){return e<12?n?"öö":"ÖÖ":n?"ös":"ÖS"},meridiemParse:/öö|ÖÖ|ös|ÖS/,isPM:function(e){return"ös"===e||"ÖS"===e},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",w:"bir hafta",ww:"%d hafta",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(e,n){switch(n){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'ıncı";var i=e%10,r=e%100-i,o=e>=100?100:null;return e+(t[i]||t[r]||t[o])}},week:{dow:1,doy:7}});return n}))},"0f14":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"på dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return e}))},"0f38":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"på dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t}))},"0f38":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(t){return t},week:{dow:1,doy:4}});return e}))},"0f65":function(t,e,n){"use strict";n.d(e,"a",(function(){return b}));var r=n("2b88"),i=n("a026"),a=n("c637"),o=n("0056"),s=n("a723"),c=n("906c"),u=n("6b77"),l=n("cf75"),d=n("686b"),f=n("602d"),h=n("8c18"),p=i["default"].extend({mixins:[h["a"]],data:function(){return{name:"b-toaster"}},methods:{onAfterEnter:function(t){var e=this;Object(c["D"])((function(){Object(c["A"])(t,"".concat(e.name,"-enter-to"))}))}},render:function(t){return t("transition-group",{props:{tag:"div",name:this.name},on:{afterEnter:this.onAfterEnter}},this.normalizeSlot())}}),m=Object(l["d"])({ariaAtomic:Object(l["c"])(s["u"]),ariaLive:Object(l["c"])(s["u"]),name:Object(l["c"])(s["u"],void 0,!0),role:Object(l["c"])(s["u"])},a["qc"]),b=i["default"].extend({name:a["qc"],mixins:[f["a"]],props:m,data:function(){return{doRender:!1,dead:!1,staticName:this.name}},beforeMount:function(){var t=this,e=this.name;this.staticName=e,r["Wormhole"].hasTarget(e)?(Object(d["a"])('A "" with name "'.concat(e,'" already exists in the document.'),a["qc"]),this.dead=!0):(this.doRender=!0,this.$once(o["eb"],(function(){t.emitOnRoot(Object(u["e"])(a["qc"],o["j"]),e)})))},destroyed:function(){var t=this.$el;t&&t.parentNode&&t.parentNode.removeChild(t)},render:function(t){var e=t("div",{class:["d-none",{"b-dead-toaster":this.dead}]});if(this.doRender){var n=t(r["PortalTarget"],{staticClass:"b-toaster-slot",props:{name:this.staticName,multiple:!0,tag:"div",slim:!1,transition:p}});e=t("div",{staticClass:"b-toaster",class:[this.staticName],attrs:{id:this.staticName,role:this.role||null,"aria-live":this.ariaLive,"aria-atomic":this.ariaAtomic}},[n])}return e}})},"0ff2":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});return t}))},"0f65":function(e,t,n){"use strict";n.d(t,"a",(function(){return b}));var i=n("2b88"),r=n("a026"),o=n("c637"),a=n("0056"),s=n("a723"),c=n("906c"),u=n("6b77"),d=n("cf75"),l=n("686b"),f=n("602d"),p=n("8c18"),h=r["default"].extend({mixins:[p["a"]],data:function(){return{name:"b-toaster"}},methods:{onAfterEnter:function(e){var t=this;Object(c["D"])((function(){Object(c["A"])(e,"".concat(t.name,"-enter-to"))}))}},render:function(e){return e("transition-group",{props:{tag:"div",name:this.name},on:{afterEnter:this.onAfterEnter}},this.normalizeSlot())}}),m=Object(d["d"])({ariaAtomic:Object(d["c"])(s["u"]),ariaLive:Object(d["c"])(s["u"]),name:Object(d["c"])(s["u"],void 0,!0),role:Object(d["c"])(s["u"])},o["qc"]),b=r["default"].extend({name:o["qc"],mixins:[f["a"]],props:m,data:function(){return{doRender:!1,dead:!1,staticName:this.name}},beforeMount:function(){var e=this,t=this.name;this.staticName=t,i["Wormhole"].hasTarget(t)?(Object(l["a"])('A "" with name "'.concat(t,'" already exists in the document.'),o["qc"]),this.dead=!0):(this.doRender=!0,this.$once(a["eb"],(function(){e.emitOnRoot(Object(u["e"])(o["qc"],a["j"]),t)})))},destroyed:function(){var e=this.$el;e&&e.parentNode&&e.parentNode.removeChild(e)},render:function(e){var t=e("div",{class:["d-none",{"b-dead-toaster":this.dead}]});if(this.doRender){var n=e(i["PortalTarget"],{staticClass:"b-toaster-slot",props:{name:this.staticName,multiple:!0,tag:"div",slim:!1,transition:h}});t=e("div",{staticClass:"b-toaster",class:[this.staticName],attrs:{id:this.staticName,role:this.role||null,"aria-live":this.ariaLive,"aria-atomic":this.ariaAtomic}},[n])}return t}})},"0ff2":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return e}))},"10e8":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return t}))},"10e8":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H:mm",LLLL:"วันddddที่ D MMMM YYYY เวลา H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(t){return"หลังเที่ยง"===t},meridiem:function(t,e,n){return t<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",w:"1 สัปดาห์",ww:"%d สัปดาห์",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}});return e}))},"129f":function(t,e){t.exports=Object.is||function(t,e){return t===e?0!==t||1/t===1/e:t!=t&&e!=e}},1310:function(t,e){function n(t){return null!=t&&"object"==typeof t}t.exports=n},"13e9":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H:mm",LLLL:"วันddddที่ D MMMM YYYY เวลา H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(e){return"หลังเที่ยง"===e},meridiem:function(e,t,n){return e<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",w:"1 สัปดาห์",ww:"%d สัปดาห์",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}});return t}))},"129f":function(e,t){e.exports=Object.is||function(e,t){return e===t?0!==e||1/e===1/t:e!=e&&t!=t}},1310:function(e,t){function n(e){return null!=e&&"object"==typeof e}e.exports=n},"13e9":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={words:{ss:["секунда","секунде","секунди"],m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,r){var i=e.words[r];return 1===r.length?n?i[0]:i[1]:t+" "+e.correctGrammaticalCase(t,i)}},n=t.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D. M. YYYY.",LL:"D. MMMM YYYY.",LLL:"D. MMMM YYYY. H:mm",LLLL:"dddd, D. MMMM YYYY. H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var t=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return t[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"дан",dd:e.translate,M:"месец",MM:e.translate,y:"годину",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"14c3":function(t,e,n){var r=n("c6b6"),i=n("9263");t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var a=n.call(t,e);if("object"!==typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return i.call(t,e)}},"159b":function(t,e,n){var r=n("da84"),i=n("fdbc"),a=n("17c2"),o=n("9112");for(var s in i){var c=r[s],u=c&&c.prototype;if(u&&u.forEach!==a)try{o(u,"forEach",a)}catch(l){u.forEach=a}}},"167b":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={words:{ss:["секунда","секунде","секунди"],m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,n,i){var r=t.words[i];return 1===i.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}},n=e.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D. M. YYYY.",LL:"D. MMMM YYYY.",LLL:"D. MMMM YYYY. H:mm",LLLL:"dddd, D. MMMM YYYY. H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var e=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"дан",dd:t.translate,M:"месец",MM:t.translate,y:"годину",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"14c3":function(e,t,n){var i=n("c6b6"),r=n("9263");e.exports=function(e,t){var n=e.exec;if("function"===typeof n){var o=n.call(e,t);if("object"!==typeof o)throw TypeError("RegExp exec method returned something other than an Object or null");return o}if("RegExp"!==i(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},"159b":function(e,t,n){var i=n("da84"),r=n("fdbc"),o=n("17c2"),a=n("9112");for(var s in r){var c=i[s],u=c&&c.prototype;if(u&&u.forEach!==o)try{a(u,"forEach",o)}catch(d){u.forEach=o}}},"167b":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("oc-lnc",{months:{standalone:"genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre".split("_"),format:"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dm._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:"[uèi a] LT",nextDay:"[deman a] LT",nextWeek:"dddd [a] LT",lastDay:"[ièr a] LT",lastWeek:"dddd [passat a] LT",sameElse:"L"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"unas segondas",ss:"%d segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(t,e){var n=1===t?"r":2===t?"n":3===t?"r":4===t?"t":"è";return"w"!==e&&"W"!==e||(n="a"),t+n},week:{dow:1,doy:4}});return e}))},"17c2":function(t,e,n){"use strict";var r=n("b727").forEach,i=n("a640"),a=i("forEach");t.exports=a?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},"19aa":function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},"1a8c":function(t,e){function n(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}t.exports=n},"1b45":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("oc-lnc",{months:{standalone:"genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre".split("_"),format:"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dm._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:"[uèi a] LT",nextDay:"[deman a] LT",nextWeek:"dddd [a] LT",lastDay:"[ièr a] LT",lastWeek:"dddd [passat a] LT",sameElse:"L"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"unas segondas",ss:"%d segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(e,t){var n=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return"w"!==t&&"W"!==t||(n="a"),e+n},week:{dow:1,doy:4}});return t}))},"17c2":function(e,t,n){"use strict";var i=n("b727").forEach,r=n("a640"),o=r("forEach");e.exports=o?[].forEach:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}},"19aa":function(e,t){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},"1a8c":function(e,t){function n(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}e.exports=n},"1b45":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[Għada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return e}))},"1be4":function(t,e,n){var r=n("d066");t.exports=r("document","documentElement")},"1c0b":function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},"1c7e":function(t,e,n){var r=n("b622"),i=r("iterator"),a=!1;try{var o=0,s={next:function(){return{done:!!o++}},return:function(){a=!0}};s[i]=function(){return this},Array.from(s,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!a)return!1;var n=!1;try{var r={};r[i]=function(){return{next:function(){return{done:n=!0}}}},t(r)}catch(c){}return n}},"1cdc":function(t,e,n){var r=n("342f");t.exports=/(?:iphone|ipod|ipad).*applewebkit/i.test(r)},"1cfd":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[Għada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t}))},"1be4":function(e,t,n){var i=n("d066");e.exports=i("document","documentElement")},"1c0b":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},"1c7e":function(e,t,n){var i=n("b622"),r=i("iterator"),o=!1;try{var a=0,s={next:function(){return{done:!!a++}},return:function(){o=!0}};s[r]=function(){return this},Array.from(s,(function(){throw 2}))}catch(c){}e.exports=function(e,t){if(!t&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},e(i)}catch(c){}return n}},"1cdc":function(e,t,n){var i=n("342f");e.exports=/(?:iphone|ipod|ipad).*applewebkit/i.test(i)},"1cfd":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},n=function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},r={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},i=function(t){return function(e,i,a,o){var s=n(e),c=r[t][n(e)];return 2===s&&(c=c[i?0:1]),c.replace(/%d/i,e)}},a=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],o=t.defineLocale("ar-ly",{months:a,monthsShort:a,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:i("s"),ss:i("s"),m:i("m"),mm:i("m"),h:i("h"),hh:i("h"),d:i("d"),dd:i("d"),M:i("M"),MM:i("M"),y:i("y"),yy:i("y")},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}});return o}))},"1d2b":function(t,e,n){"use strict";t.exports=function(t,e){return function(){for(var n=new Array(arguments.length),r=0;r=51||!r((function(){var e=[],n=e.constructor={};return n[o]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},"1fc1":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},n=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},i={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},r=function(e){return function(t,r,o,a){var s=n(t),c=i[e][n(t)];return 2===s&&(c=c[r?0:1]),c.replace(/%d/i,t)}},o=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],a=e.defineLocale("ar-ly",{months:o,monthsShort:o,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:r("s"),ss:r("s"),m:r("m"),mm:r("m"),h:r("h"),hh:r("h"),d:r("d"),dd:r("d"),M:r("M"),MM:r("M"),y:r("y"),yy:r("y")},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}});return a}))},"1d2b":function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),i=0;i=51||!i((function(){var t=[],n=t.constructor={};return n[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},"1fc1":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e){var n=t.split("_");return e%10===1&&e%100!==11?n[0]:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?n[1]:n[2]}function n(t,n,r){var i={ss:n?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:n?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:n?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===r?n?"хвіліна":"хвіліну":"h"===r?n?"гадзіна":"гадзіну":t+" "+e(i[r],+t)}var r=t.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:n,mm:n,h:n,hh:n,d:"дзень",dd:n,M:"месяц",MM:n,y:"год",yy:n},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(t){return/^(дня|вечара)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночы":t<12?"раніцы":t<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":case"w":case"W":return t%10!==2&&t%10!==3||t%100===12||t%100===13?t+"-ы":t+"-і";case"D":return t+"-га";default:return t}},week:{dow:1,doy:7}});return r}))},"201b":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t){var n=e.split("_");return t%10===1&&t%100!==11?n[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?n[1]:n[2]}function n(e,n,i){var r={ss:n?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:n?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:n?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===i?n?"хвіліна":"хвіліну":"h"===i?n?"гадзіна":"гадзіну":e+" "+t(r[i],+e)}var i=e.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:n,mm:n,h:n,hh:n,d:"дзень",dd:n,M:"месяц",MM:n,y:"год",yy:n},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(e){return/^(дня|вечара)$/.test(e)},meridiem:function(e,t,n){return e<4?"ночы":e<12?"раніцы":e<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e%10!==2&&e%10!==3||e%100===12||e%100===13?e+"-ы":e+"-і";case"D":return e+"-га";default:return e}},week:{dow:1,doy:7}});return i}))},"201b":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ka",{months:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(t){return t.replace(/(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,(function(t,e,n){return"ი"===n?e+"ში":e+n+"ში"}))},past:function(t){return/(წამი|წუთი|საათი|დღე|თვე)/.test(t)?t.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(t)?t.replace(/წელი$/,"წლის წინ"):t},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(t){return 0===t?t:1===t?t+"-ლი":t<20||t<=100&&t%20===0||t%100===0?"მე-"+t:t+"-ე"},week:{dow:1,doy:7}});return e}))},2266:function(t,e,n){var r=n("825a"),i=n("e95a"),a=n("50c4"),o=n("0366"),s=n("35a1"),c=n("2a62"),u=function(t,e){this.stopped=t,this.result=e};t.exports=function(t,e,n){var l,d,f,h,p,m,b,v=n&&n.that,_=!(!n||!n.AS_ENTRIES),g=!(!n||!n.IS_ITERATOR),y=!(!n||!n.INTERRUPTED),O=o(e,v,1+_+y),j=function(t){return l&&c(l),new u(!0,t)},w=function(t){return _?(r(t),y?O(t[0],t[1],j):O(t[0],t[1])):y?O(t,j):O(t)};if(g)l=t;else{if(d=s(t),"function"!=typeof d)throw TypeError("Target is not iterable");if(i(d)){for(f=0,h=a(t.length);h>f;f++)if(p=w(t[f]),p&&p instanceof u)return p;return new u(!1)}l=d.call(t)}m=l.next;while(!(b=m.call(l)).done){try{p=w(b.value)}catch(M){throw c(l),M}if("object"==typeof p&&p&&p instanceof u)return p}return new u(!1)}},"228e":function(t,e,n){"use strict";n.d(e,"c",(function(){return u})),n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return h}));var r=n("a026"),i=n("50d3"),a=n("c9a9"),o=n("b508"),s=r["default"].prototype,c=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,n=s[i["c"]];return n?n.getConfigValue(t,e):Object(a["a"])(e)},u=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;return e?c("".concat(t,".").concat(e),n):c(t,{})},l=function(){return c("breakpoints",i["a"])},d=Object(o["a"])((function(){return l()})),f=function(){return Object(a["a"])(d())},h=Object(o["a"])((function(){var t=f();return t[0]="",t}))},"22f8":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ka",{months:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(e){return e.replace(/(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,(function(e,t,n){return"ი"===n?t+"ში":t+n+"ში"}))},past:function(e){return/(წამი|წუთი|საათი|დღე|თვე)/.test(e)?e.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(e)?e.replace(/წელი$/,"წლის წინ"):e},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(e){return 0===e?e:1===e?e+"-ლი":e<20||e<=100&&e%20===0||e%100===0?"მე-"+e:e+"-ე"},week:{dow:1,doy:7}});return t}))},2266:function(e,t,n){var i=n("825a"),r=n("e95a"),o=n("50c4"),a=n("0366"),s=n("35a1"),c=n("2a62"),u=function(e,t){this.stopped=e,this.result=t};e.exports=function(e,t,n){var d,l,f,p,h,m,b,g=n&&n.that,v=!(!n||!n.AS_ENTRIES),y=!(!n||!n.IS_ITERATOR),_=!(!n||!n.INTERRUPTED),O=a(t,g,1+v+_),j=function(e){return d&&c(d),new u(!0,e)},w=function(e){return v?(i(e),_?O(e[0],e[1],j):O(e[0],e[1])):_?O(e,j):O(e)};if(y)d=e;else{if(l=s(e),"function"!=typeof l)throw TypeError("Target is not iterable");if(r(l)){for(f=0,p=o(e.length);p>f;f++)if(h=w(e[f]),h&&h instanceof u)return h;return new u(!1)}d=l.call(e)}m=d.next;while(!(b=m.call(d)).done){try{h=w(b.value)}catch(k){throw c(d),k}if("object"==typeof h&&h&&h instanceof u)return h}return new u(!1)}},"228e":function(e,t,n){"use strict";n.d(t,"c",(function(){return u})),n.d(t,"a",(function(){return d})),n.d(t,"b",(function(){return p}));var i=n("a026"),r=n("50d3"),o=n("c9a9"),a=n("b508"),s=i["default"].prototype,c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,n=s[r["c"]];return n?n.getConfigValue(e,t):Object(o["a"])(t)},u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;return t?c("".concat(e,".").concat(t),n):c(e,{})},d=function(){return c("breakpoints",r["a"])},l=Object(a["a"])((function(){return d()})),f=function(){return Object(o["a"])(l())},p=Object(a["a"])((function(){var e=f();return e[0]="",e}))},"22f8":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"일";case"M":return t+"월";case"w":case"W":return t+"주";default:return t}},meridiemParse:/오전|오후/,isPM:function(t){return"오후"===t},meridiem:function(t,e,n){return t<12?"오전":"오후"}});return e}))},2326:function(t,e,n){"use strict";n.d(e,"f",(function(){return i})),n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return o})),n.d(e,"c",(function(){return s})),n.d(e,"d",(function(){return c})),n.d(e,"e",(function(){return u}));var r=n("7b1e"),i=function(){return Array.from.apply(Array,arguments)},a=function(t,e){return-1!==t.indexOf(e)},o=function(){for(var t=arguments.length,e=new Array(t),n=0;n=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(t){c.headers[t]={}})),r.forEach(["post","put","patch"],(function(t){c.headers[t]=r.merge(a)})),t.exports=c}).call(this,n("4362"))},2532:function(t,e,n){"use strict";var r=n("23e7"),i=n("5a34"),a=n("1d80"),o=n("ab13");r({target:"String",proto:!0,forced:!o("includes")},{includes:function(t){return!!~String(a(this)).indexOf(i(t),arguments.length>1?arguments[1]:void 0)}})},2554:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},i=["کانونی دووەم","شوبات","ئازار","نیسان","ئایار","حوزەیران","تەمموز","ئاب","ئەیلوول","تشرینی یەكەم","تشرینی دووەم","كانونی یەکەم"],r=e.defineLocale("ku",{months:i,monthsShort:i,weekdays:"یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌".split("_"),weekdaysShort:"یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌".split("_"),weekdaysMin:"ی_د_س_چ_پ_ه_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ئێواره‌|به‌یانی/,isPM:function(e){return/ئێواره‌/.test(e)},meridiem:function(e,t,n){return e<12?"به‌یانی":"ئێواره‌"},calendar:{sameDay:"[ئه‌مرۆ كاتژمێر] LT",nextDay:"[به‌یانی كاتژمێر] LT",nextWeek:"dddd [كاتژمێر] LT",lastDay:"[دوێنێ كاتژمێر] LT",lastWeek:"dddd [كاتژمێر] LT",sameElse:"L"},relativeTime:{future:"له‌ %s",past:"%s",s:"چه‌ند چركه‌یه‌ك",ss:"چركه‌ %d",m:"یه‌ك خوله‌ك",mm:"%d خوله‌ك",h:"یه‌ك كاتژمێر",hh:"%d كاتژمێر",d:"یه‌ك ڕۆژ",dd:"%d ڕۆژ",M:"یه‌ك مانگ",MM:"%d مانگ",y:"یه‌ك ساڵ",yy:"%d ساڵ"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}});return r}))},2444:function(e,t,n){"use strict";(function(t){var i=n("c532"),r=n("c8af"),o={"Content-Type":"application/x-www-form-urlencoded"};function a(e,t){!i.isUndefined(e)&&i.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function s(){var e;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof t&&"[object process]"===Object.prototype.toString.call(t))&&(e=n("b50d")),e}var c={adapter:s(),transformRequest:[function(e,t){return r(t,"Accept"),r(t,"Content-Type"),i.isFormData(e)||i.isArrayBuffer(e)||i.isBuffer(e)||i.isStream(e)||i.isFile(e)||i.isBlob(e)?e:i.isArrayBufferView(e)?e.buffer:i.isURLSearchParams(e)?(a(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):i.isObject(e)?(a(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"===typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};i.forEach(["delete","get","head"],(function(e){c.headers[e]={}})),i.forEach(["post","put","patch"],(function(e){c.headers[e]=i.merge(o)})),e.exports=c}).call(this,n("4362"))},2532:function(e,t,n){"use strict";var i=n("23e7"),r=n("5a34"),o=n("1d80"),a=n("ab13");i({target:"String",proto:!0,forced:!a("includes")},{includes:function(e){return!!~String(o(this)).indexOf(r(e),arguments.length>1?arguments[1]:void 0)}})},2554:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e,n){var r=t+" ";switch(n){case"ss":return r+=1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi",r;case"m":return e?"jedna minuta":"jedne minute";case"mm":return r+=1===t?"minuta":2===t||3===t||4===t?"minute":"minuta",r;case"h":return e?"jedan sat":"jednog sata";case"hh":return r+=1===t?"sat":2===t||3===t||4===t?"sata":"sati",r;case"dd":return r+=1===t?"dan":"dana",r;case"MM":return r+=1===t?"mjesec":2===t||3===t||4===t?"mjeseca":"mjeseci",r;case"yy":return r+=1===t?"godina":2===t||3===t||4===t?"godine":"godina",r}}var n=t.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:e,m:e,mm:e,h:e,hh:e,d:"dan",dd:e,M:"mjesec",MM:e,y:"godinu",yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"25f0":function(t,e,n){"use strict";var r=n("6eeb"),i=n("825a"),a=n("d039"),o=n("ad6d"),s="toString",c=RegExp.prototype,u=c[s],l=a((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),d=u.name!=s;(l||d)&&r(RegExp.prototype,s,(function(){var t=i(this),e=String(t.source),n=t.flags,r=String(void 0===n&&t instanceof RegExp&&!("flags"in c)?o.call(t):n);return"/"+e+"/"+r}),{unsafe:!0})},2626:function(t,e,n){"use strict";var r=n("d066"),i=n("9bf2"),a=n("b622"),o=n("83ab"),s=a("species");t.exports=function(t){var e=r(t),n=i.f;o&&e&&!e[s]&&n(e,s,{configurable:!0,get:function(){return this}})}},"26f9":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t,n){var i=e+" ";switch(n){case"ss":return i+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi",i;case"m":return t?"jedna minuta":"jedne minute";case"mm":return i+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta",i;case"h":return t?"jedan sat":"jednog sata";case"hh":return i+=1===e?"sat":2===e||3===e||4===e?"sata":"sati",i;case"dd":return i+=1===e?"dan":"dana",i;case"MM":return i+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci",i;case"yy":return i+=1===e?"godina":2===e||3===e||4===e?"godine":"godina",i}}var n=e.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"25f0":function(e,t,n){"use strict";var i=n("6eeb"),r=n("825a"),o=n("d039"),a=n("ad6d"),s="toString",c=RegExp.prototype,u=c[s],d=o((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),l=u.name!=s;(d||l)&&i(RegExp.prototype,s,(function(){var e=r(this),t=String(e.source),n=e.flags,i=String(void 0===n&&e instanceof RegExp&&!("flags"in c)?a.call(e):n);return"/"+t+"/"+i}),{unsafe:!0})},2626:function(e,t,n){"use strict";var i=n("d066"),r=n("9bf2"),o=n("b622"),a=n("83ab"),s=o("species");e.exports=function(e){var t=i(e),n=r.f;a&&t&&!t[s]&&n(t,s,{configurable:!0,get:function(){return this}})}},"26f9":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function n(t,e,n,r){return e?"kelios sekundės":r?"kelių sekundžių":"kelias sekundes"}function r(t,e,n,r){return e?a(n)[0]:r?a(n)[1]:a(n)[2]}function i(t){return t%10===0||t>10&&t<20}function a(t){return e[t].split("_")}function o(t,e,n,o){var s=t+" ";return 1===t?s+r(t,e,n[0],o):e?s+(i(t)?a(n)[1]:a(n)[0]):o?s+a(n)[1]:s+(i(t)?a(n)[1]:a(n)[2])}var s=t.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:n,ss:o,m:r,mm:o,h:r,hh:o,d:r,dd:o,M:r,MM:o,y:r,yy:o},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(t){return t+"-oji"},week:{dow:1,doy:4}});return s}))},2877:function(t,e,n){"use strict";function r(t,e,n,r,i,a,o,s){var c,u="function"===typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),a&&(u._scopeId="data-v-"+a),o?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},u._ssrRegister=c):i&&(c=s?function(){i.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:i),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,c):[c]}return{exports:t,options:u}}n.d(e,"a",(function(){return r}))},2921:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function n(e,t,n,i){return t?"kelios sekundės":i?"kelių sekundžių":"kelias sekundes"}function i(e,t,n,i){return t?o(n)[0]:i?o(n)[1]:o(n)[2]}function r(e){return e%10===0||e>10&&e<20}function o(e){return t[e].split("_")}function a(e,t,n,a){var s=e+" ";return 1===e?s+i(e,t,n[0],a):t?s+(r(e)?o(n)[1]:o(n)[0]):a?s+o(n)[1]:s+(r(e)?o(n)[1]:o(n)[2])}var s=e.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:n,ss:a,m:i,mm:a,h:i,hh:a,d:i,dd:a,M:i,MM:a,y:i,yy:a},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}});return s}))},2877:function(e,t,n){"use strict";function i(e,t,n,i,r,o,a,s){var c,u="function"===typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),i&&(u.functional=!0),o&&(u._scopeId="data-v-"+o),a?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},u._ssrRegister=c):r&&(c=s?function(){r.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:r),c)if(u.functional){u._injectStyles=c;var d=u.render;u.render=function(e,t){return c.call(t),d(e,t)}}else{var l=u.beforeCreate;u.beforeCreate=l?[].concat(l,c):[c]}return{exports:e,options:u}}n.d(t,"a",(function(){return i}))},2921:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(t){return/^ch$/i.test(t)},meridiem:function(t,e,n){return t<12?n?"sa":"SA":n?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần trước lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",w:"một tuần",ww:"%d tuần",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(t){return t},week:{dow:1,doy:4}});return e}))},"293c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(e){return/^ch$/i.test(e)},meridiem:function(e,t,n){return e<12?n?"sa":"SA":n?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần trước lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",w:"một tuần",ww:"%d tuần",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});return t}))},"293c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,r){var i=e.words[r];return 1===r.length?n?i[0]:i[1]:t+" "+e.correctGrammaticalCase(t,i)}},n=t.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var t=["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return t[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"dan",dd:e.translate,M:"mjesec",MM:e.translate,y:"godinu",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"29f3":function(t,e){var n=Object.prototype,r=n.toString;function i(t){return r.call(t)}t.exports=i},"2a62":function(t,e,n){var r=n("825a");t.exports=function(t){var e=t["return"];if(void 0!==e)return r(e.call(t)).value}},"2b27":function(t,e,n){(function(){var e={expires:"1d",path:"; path=/",domain:"",secure:"",sameSite:"; SameSite=Lax"},n={install:function(t){t.prototype.$cookies=this,t.$cookies=this},config:function(t,n,r,i,a){e.expires=t||"1d",e.path=n?"; path="+n:"; path=/",e.domain=r?"; domain="+r:"",e.secure=i?"; Secure":"",e.sameSite=a?"; SameSite="+a:"; SameSite=Lax"},get:function(t){var e=decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null;if(e&&"{"===e.substring(0,1)&&"}"===e.substring(e.length-1,e.length))try{e=JSON.parse(e)}catch(n){return e}return e},set:function(t,n,r,i,a,o,s){if(!t)throw new Error("Cookie name is not find in first argument.");if(/^(?:expires|max\-age|path|domain|secure|SameSite)$/i.test(t))throw new Error('Cookie key name illegality, Cannot be set to ["expires","max-age","path","domain","secure","SameSite"]\t current key name: '+t);n&&n.constructor===Object&&(n=JSON.stringify(n));var c="";if(r=void 0==r?e.expires:r,r&&0!=r)switch(r.constructor){case Number:c=r===1/0||-1===r?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+r;break;case String:if(/^(?:\d+(y|m|d|h|min|s))$/i.test(r)){var u=r.replace(/^(\d+)(?:y|m|d|h|min|s)$/i,"$1");switch(r.replace(/^(?:\d+)(y|m|d|h|min|s)$/i,"$1").toLowerCase()){case"m":c="; max-age="+2592e3*+u;break;case"d":c="; max-age="+86400*+u;break;case"h":c="; max-age="+3600*+u;break;case"min":c="; max-age="+60*+u;break;case"s":c="; max-age="+u;break;case"y":c="; max-age="+31104e3*+u;break;default:new Error('unknown exception of "set operation"')}}else c="; expires="+r;break;case Date:c="; expires="+r.toUTCString();break}return document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(n)+c+(a?"; domain="+a:e.domain)+(i?"; path="+i:e.path)+(void 0==o?e.secure:o?"; Secure":"")+(void 0==s?e.sameSite:s?"; SameSite="+s:""),this},remove:function(t,n,r){return!(!t||!this.isKey(t))&&(document.cookie=encodeURIComponent(t)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT"+(r?"; domain="+r:e.domain)+(n?"; path="+n:e.path)+"; SameSite=Lax",this)},isKey:function(t){return new RegExp("(?:^|;\\s*)"+encodeURIComponent(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie)},keys:function(){if(!document.cookie)return[];for(var t=document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g,"").split(/\s*(?:\=[^;]*)?;\s*/),e=0;e4)return t;for(n=[],r=0;r1&&"0"==i.charAt(0)&&(a=C.test(i)?16:8,i=i.slice(8==a?1:2)),""===i)o=0;else{if(!(10==a?H:8==a?E:A).test(i))return t;o=parseInt(i,a)}n.push(o)}for(r=0;r=L(256,5-e))return null}else if(o>255)return null;for(s=n.pop(),r=0;r6)return;r=0;while(f()){if(i=null,r>0){if(!("."==f()&&r<4))return;d++}if(!P.test(f()))return;while(P.test(f())){if(a=parseInt(f(),10),null===i)i=a;else{if(0==i)return;i=10*i+a}if(i>255)return;d++}c[u]=256*c[u]+i,r++,2!=r&&4!=r||u++}if(4!=r)return;break}if(":"==f()){if(d++,!f())return}else if(f())return;c[u++]=e}else{if(null!==l)return;d++,u++,l=u}}if(null!==l){o=u-l,u=7;while(0!=u&&o>0)s=c[u],c[u--]=c[l+o-1],c[l+--o]=s}else if(8!=u)return;return c},z=function(t){for(var e=null,n=1,r=null,i=0,a=0;a<8;a++)0!==t[a]?(i>n&&(e=r,n=i),r=null,i=0):(null===r&&(r=a),++i);return i>n&&(e=r,n=i),e},W=function(t){var e,n,r,i;if("number"==typeof t){for(e=[],n=0;n<4;n++)e.unshift(t%256),t=M(t/256);return e.join(".")}if("object"==typeof t){for(e="",r=z(t),n=0;n<8;n++)i&&0===t[n]||(i&&(i=!1),r===n?(e+=n?":":"::",i=!0):(e+=t[n].toString(16),n<7&&(e+=":")));return"["+e+"]"}return t},U={},G=f({},U,{" ":1,'"':1,"<":1,">":1,"`":1}),J=f({},G,{"#":1,"?":1,"{":1,"}":1}),q=f({},J,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),K=function(t,e){var n=p(t,0);return n>32&&n<127&&!d(e,t)?t:encodeURIComponent(t)},X={ftp:21,file:null,http:80,https:443,ws:80,wss:443},Z=function(t){return d(X,t.scheme)},Q=function(t){return""!=t.username||""!=t.password},tt=function(t){return!t.host||t.cannotBeABaseURL||"file"==t.scheme},et=function(t,e){var n;return 2==t.length&&Y.test(t.charAt(0))&&(":"==(n=t.charAt(1))||!e&&"|"==n)},nt=function(t){var e;return t.length>1&&et(t.slice(0,2))&&(2==t.length||"/"===(e=t.charAt(2))||"\\"===e||"?"===e||"#"===e)},rt=function(t){var e=t.path,n=e.length;!n||"file"==t.scheme&&1==n&&et(e[0],!0)||e.pop()},it=function(t){return"."===t||"%2e"===t.toLowerCase()},at=function(t){return t=t.toLowerCase(),".."===t||"%2e."===t||".%2e"===t||"%2e%2e"===t},ot={},st={},ct={},ut={},lt={},dt={},ft={},ht={},pt={},mt={},bt={},vt={},_t={},gt={},yt={},Ot={},jt={},wt={},Mt={},Lt={},kt={},Tt=function(t,e,n,i){var a,o,s,c,u=n||ot,l=0,f="",p=!1,m=!1,b=!1;n||(t.scheme="",t.username="",t.password="",t.host=null,t.port=null,t.path=[],t.query=null,t.fragment=null,t.cannotBeABaseURL=!1,e=e.replace(I,"")),e=e.replace(B,""),a=h(e);while(l<=a.length){switch(o=a[l],u){case ot:if(!o||!Y.test(o)){if(n)return T;u=ct;continue}f+=o.toLowerCase(),u=st;break;case st:if(o&&(x.test(o)||"+"==o||"-"==o||"."==o))f+=o.toLowerCase();else{if(":"!=o){if(n)return T;f="",u=ct,l=0;continue}if(n&&(Z(t)!=d(X,f)||"file"==f&&(Q(t)||null!==t.port)||"file"==t.scheme&&!t.host))return;if(t.scheme=f,n)return void(Z(t)&&X[t.scheme]==t.port&&(t.port=null));f="","file"==t.scheme?u=gt:Z(t)&&i&&i.scheme==t.scheme?u=ut:Z(t)?u=ht:"/"==a[l+1]?(u=lt,l++):(t.cannotBeABaseURL=!0,t.path.push(""),u=Mt)}break;case ct:if(!i||i.cannotBeABaseURL&&"#"!=o)return T;if(i.cannotBeABaseURL&&"#"==o){t.scheme=i.scheme,t.path=i.path.slice(),t.query=i.query,t.fragment="",t.cannotBeABaseURL=!0,u=kt;break}u="file"==i.scheme?gt:dt;continue;case ut:if("/"!=o||"/"!=a[l+1]){u=dt;continue}u=pt,l++;break;case lt:if("/"==o){u=mt;break}u=wt;continue;case dt:if(t.scheme=i.scheme,o==r)t.username=i.username,t.password=i.password,t.host=i.host,t.port=i.port,t.path=i.path.slice(),t.query=i.query;else if("/"==o||"\\"==o&&Z(t))u=ft;else if("?"==o)t.username=i.username,t.password=i.password,t.host=i.host,t.port=i.port,t.path=i.path.slice(),t.query="",u=Lt;else{if("#"!=o){t.username=i.username,t.password=i.password,t.host=i.host,t.port=i.port,t.path=i.path.slice(),t.path.pop(),u=wt;continue}t.username=i.username,t.password=i.password,t.host=i.host,t.port=i.port,t.path=i.path.slice(),t.query=i.query,t.fragment="",u=kt}break;case ft:if(!Z(t)||"/"!=o&&"\\"!=o){if("/"!=o){t.username=i.username,t.password=i.password,t.host=i.host,t.port=i.port,u=wt;continue}u=mt}else u=pt;break;case ht:if(u=pt,"/"!=o||"/"!=f.charAt(l+1))continue;l++;break;case pt:if("/"!=o&&"\\"!=o){u=mt;continue}break;case mt:if("@"==o){p&&(f="%40"+f),p=!0,s=h(f);for(var v=0;v65535)return S;t.port=Z(t)&&y===X[t.scheme]?null:y,f=""}if(n)return;u=jt;continue}return S}f+=o;break;case gt:if(t.scheme="file","/"==o||"\\"==o)u=yt;else{if(!i||"file"!=i.scheme){u=wt;continue}if(o==r)t.host=i.host,t.path=i.path.slice(),t.query=i.query;else if("?"==o)t.host=i.host,t.path=i.path.slice(),t.query="",u=Lt;else{if("#"!=o){nt(a.slice(l).join(""))||(t.host=i.host,t.path=i.path.slice(),rt(t)),u=wt;continue}t.host=i.host,t.path=i.path.slice(),t.query=i.query,t.fragment="",u=kt}}break;case yt:if("/"==o||"\\"==o){u=Ot;break}i&&"file"==i.scheme&&!nt(a.slice(l).join(""))&&(et(i.path[0],!0)?t.path.push(i.path[0]):t.host=i.host),u=wt;continue;case Ot:if(o==r||"/"==o||"\\"==o||"?"==o||"#"==o){if(!n&&et(f))u=wt;else if(""==f){if(t.host="",n)return;u=jt}else{if(c=R(t,f),c)return c;if("localhost"==t.host&&(t.host=""),n)return;f="",u=jt}continue}f+=o;break;case jt:if(Z(t)){if(u=wt,"/"!=o&&"\\"!=o)continue}else if(n||"?"!=o)if(n||"#"!=o){if(o!=r&&(u=wt,"/"!=o))continue}else t.fragment="",u=kt;else t.query="",u=Lt;break;case wt:if(o==r||"/"==o||"\\"==o&&Z(t)||!n&&("?"==o||"#"==o)){if(at(f)?(rt(t),"/"==o||"\\"==o&&Z(t)||t.path.push("")):it(f)?"/"==o||"\\"==o&&Z(t)||t.path.push(""):("file"==t.scheme&&!t.path.length&&et(f)&&(t.host&&(t.host=""),f=f.charAt(0)+":"),t.path.push(f)),f="","file"==t.scheme&&(o==r||"?"==o||"#"==o))while(t.path.length>1&&""===t.path[0])t.path.shift();"?"==o?(t.query="",u=Lt):"#"==o&&(t.fragment="",u=kt)}else f+=K(o,J);break;case Mt:"?"==o?(t.query="",u=Lt):"#"==o?(t.fragment="",u=kt):o!=r&&(t.path[0]+=K(o,U));break;case Lt:n||"#"!=o?o!=r&&("'"==o&&Z(t)?t.query+="%27":t.query+="#"==o?"%23":K(o,U)):(t.fragment="",u=kt);break;case kt:o!=r&&(t.fragment+=K(o,G));break}l++}},Dt=function(t){var e,n,r=l(this,Dt,"URL"),i=arguments.length>1?arguments[1]:void 0,o=String(t),s=j(r,{type:"URL"});if(void 0!==i)if(i instanceof Dt)e=w(i);else if(n=Tt(e={},String(i)),n)throw TypeError(n);if(n=Tt(s,o,null,e),n)throw TypeError(n);var c=s.searchParams=new y,u=O(c);u.updateSearchParams(s.query),u.updateURL=function(){s.query=String(c)||null},a||(r.href=Yt.call(r),r.origin=xt.call(r),r.protocol=Pt.call(r),r.username=Ct.call(r),r.password=Et.call(r),r.host=Ht.call(r),r.hostname=At.call(r),r.port=$t.call(r),r.pathname=Ft.call(r),r.search=It.call(r),r.searchParams=Bt.call(r),r.hash=Rt.call(r))},St=Dt.prototype,Yt=function(){var t=w(this),e=t.scheme,n=t.username,r=t.password,i=t.host,a=t.port,o=t.path,s=t.query,c=t.fragment,u=e+":";return null!==i?(u+="//",Q(t)&&(u+=n+(r?":"+r:"")+"@"),u+=W(i),null!==a&&(u+=":"+a)):"file"==e&&(u+="//"),u+=t.cannotBeABaseURL?o[0]:o.length?"/"+o.join("/"):"",null!==s&&(u+="?"+s),null!==c&&(u+="#"+c),u},xt=function(){var t=w(this),e=t.scheme,n=t.port;if("blob"==e)try{return new Dt(e.path[0]).origin}catch(r){return"null"}return"file"!=e&&Z(t)?e+"://"+W(t.host)+(null!==n?":"+n:""):"null"},Pt=function(){return w(this).scheme+":"},Ct=function(){return w(this).username},Et=function(){return w(this).password},Ht=function(){var t=w(this),e=t.host,n=t.port;return null===e?"":null===n?W(e):W(e)+":"+n},At=function(){var t=w(this).host;return null===t?"":W(t)},$t=function(){var t=w(this).port;return null===t?"":String(t)},Ft=function(){var t=w(this),e=t.path;return t.cannotBeABaseURL?e[0]:e.length?"/"+e.join("/"):""},It=function(){var t=w(this).query;return t?"?"+t:""},Bt=function(){return w(this).searchParams},Rt=function(){var t=w(this).fragment;return t?"#"+t:""},Nt=function(t,e){return{get:t,set:e,configurable:!0,enumerable:!0}};if(a&&c(St,{href:Nt(Yt,(function(t){var e=w(this),n=String(t),r=Tt(e,n);if(r)throw TypeError(r);O(e.searchParams).updateSearchParams(e.query)})),origin:Nt(xt),protocol:Nt(Pt,(function(t){var e=w(this);Tt(e,String(t)+":",ot)})),username:Nt(Ct,(function(t){var e=w(this),n=h(String(t));if(!tt(e)){e.username="";for(var r=0;r=2&&e<=4?t[1]:t[2]},translate:function(e,n,i){var r=t.words[i];return 1===i.length?n?r[0]:r[1]:e+" "+t.correctGrammaticalCase(e,r)}},n=e.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var e=["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"29f3":function(e,t){var n=Object.prototype,i=n.toString;function r(e){return i.call(e)}e.exports=r},"2a62":function(e,t,n){var i=n("825a");e.exports=function(e){var t=e["return"];if(void 0!==t)return i(t.call(e)).value}},"2b27":function(e,t,n){(function(){var t={expires:"1d",path:"; path=/",domain:"",secure:"",sameSite:"; SameSite=Lax"},n={install:function(e){e.prototype.$cookies=this,e.$cookies=this},config:function(e,n,i,r,o){t.expires=e||"1d",t.path=n?"; path="+n:"; path=/",t.domain=i?"; domain="+i:"",t.secure=r?"; Secure":"",t.sameSite=o?"; SameSite="+o:"; SameSite=Lax"},get:function(e){var t=decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null;if(t&&"{"===t.substring(0,1)&&"}"===t.substring(t.length-1,t.length))try{t=JSON.parse(t)}catch(n){return t}return t},set:function(e,n,i,r,o,a,s){if(!e)throw new Error("Cookie name is not find in first argument.");if(/^(?:expires|max\-age|path|domain|secure|SameSite)$/i.test(e))throw new Error('Cookie key name illegality, Cannot be set to ["expires","max-age","path","domain","secure","SameSite"]\t current key name: '+e);n&&n.constructor===Object&&(n=JSON.stringify(n));var c="";if(i=void 0==i?t.expires:i,i&&0!=i)switch(i.constructor){case Number:c=i===1/0||-1===i?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+i;break;case String:if(/^(?:\d+(y|m|d|h|min|s))$/i.test(i)){var u=i.replace(/^(\d+)(?:y|m|d|h|min|s)$/i,"$1");switch(i.replace(/^(?:\d+)(y|m|d|h|min|s)$/i,"$1").toLowerCase()){case"m":c="; max-age="+2592e3*+u;break;case"d":c="; max-age="+86400*+u;break;case"h":c="; max-age="+3600*+u;break;case"min":c="; max-age="+60*+u;break;case"s":c="; max-age="+u;break;case"y":c="; max-age="+31104e3*+u;break;default:new Error('unknown exception of "set operation"')}}else c="; expires="+i;break;case Date:c="; expires="+i.toUTCString();break}return document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(n)+c+(o?"; domain="+o:t.domain)+(r?"; path="+r:t.path)+(void 0==a?t.secure:a?"; Secure":"")+(void 0==s?t.sameSite:s?"; SameSite="+s:""),this},remove:function(e,n,i){return!(!e||!this.isKey(e))&&(document.cookie=encodeURIComponent(e)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT"+(i?"; domain="+i:t.domain)+(n?"; path="+n:t.path)+"; SameSite=Lax",this)},isKey:function(e){return new RegExp("(?:^|;\\s*)"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie)},keys:function(){if(!document.cookie)return[];for(var e=document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g,"").split(/\s*(?:\=[^;]*)?;\s*/),t=0;t4)return e;for(n=[],i=0;i1&&"0"==r.charAt(0)&&(o=Y.test(r)?16:8,r=r.slice(8==o?1:2)),""===r)a=0;else{if(!(10==o?E:8==o?C:H).test(r))return e;a=parseInt(r,o)}n.push(a)}for(i=0;i=M(256,5-t))return null}else if(a>255)return null;for(s=n.pop(),i=0;i6)return;i=0;while(f()){if(r=null,i>0){if(!("."==f()&&i<4))return;l++}if(!P.test(f()))return;while(P.test(f())){if(o=parseInt(f(),10),null===r)r=o;else{if(0==r)return;r=10*r+o}if(r>255)return;l++}c[u]=256*c[u]+r,i++,2!=i&&4!=i||u++}if(4!=i)return;break}if(":"==f()){if(l++,!f())return}else if(f())return;c[u++]=t}else{if(null!==d)return;l++,u++,d=u}}if(null!==d){a=u-d,u=7;while(0!=u&&a>0)s=c[u],c[u--]=c[d+a-1],c[d+--a]=s}else if(8!=u)return;return c},W=function(e){for(var t=null,n=1,i=null,r=0,o=0;o<8;o++)0!==e[o]?(r>n&&(t=i,n=r),i=null,r=0):(null===i&&(i=o),++r);return r>n&&(t=i,n=r),t},V=function(e){var t,n,i,r;if("number"==typeof e){for(t=[],n=0;n<4;n++)t.unshift(e%256),e=k(e/256);return t.join(".")}if("object"==typeof e){for(t="",i=W(e),n=0;n<8;n++)r&&0===e[n]||(r&&(r=!1),i===n?(t+=n?":":"::",r=!0):(t+=e[n].toString(16),n<7&&(t+=":")));return"["+t+"]"}return e},U={},G=f({},U,{" ":1,'"':1,"<":1,">":1,"`":1}),q=f({},G,{"#":1,"?":1,"{":1,"}":1}),J=f({},q,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),K=function(e,t){var n=h(e,0);return n>32&&n<127&&!l(t,e)?e:encodeURIComponent(e)},X={ftp:21,file:null,http:80,https:443,ws:80,wss:443},Z=function(e){return l(X,e.scheme)},Q=function(e){return""!=e.username||""!=e.password},ee=function(e){return!e.host||e.cannotBeABaseURL||"file"==e.scheme},te=function(e,t){var n;return 2==e.length&&D.test(e.charAt(0))&&(":"==(n=e.charAt(1))||!t&&"|"==n)},ne=function(e){var t;return e.length>1&&te(e.slice(0,2))&&(2==e.length||"/"===(t=e.charAt(2))||"\\"===t||"?"===t||"#"===t)},ie=function(e){var t=e.path,n=t.length;!n||"file"==e.scheme&&1==n&&te(t[0],!0)||t.pop()},re=function(e){return"."===e||"%2e"===e.toLowerCase()},oe=function(e){return e=e.toLowerCase(),".."===e||"%2e."===e||".%2e"===e||"%2e%2e"===e},ae={},se={},ce={},ue={},de={},le={},fe={},pe={},he={},me={},be={},ge={},ve={},ye={},_e={},Oe={},je={},we={},ke={},Me={},Le={},xe=function(e,t,n,r){var o,a,s,c,u=n||ae,d=0,f="",h=!1,m=!1,b=!1;n||(e.scheme="",e.username="",e.password="",e.host=null,e.port=null,e.path=[],e.query=null,e.fragment=null,e.cannotBeABaseURL=!1,t=t.replace(I,"")),t=t.replace(B,""),o=p(t);while(d<=o.length){switch(a=o[d],u){case ae:if(!a||!D.test(a)){if(n)return x;u=ce;continue}f+=a.toLowerCase(),u=se;break;case se:if(a&&(A.test(a)||"+"==a||"-"==a||"."==a))f+=a.toLowerCase();else{if(":"!=a){if(n)return x;f="",u=ce,d=0;continue}if(n&&(Z(e)!=l(X,f)||"file"==f&&(Q(e)||null!==e.port)||"file"==e.scheme&&!e.host))return;if(e.scheme=f,n)return void(Z(e)&&X[e.scheme]==e.port&&(e.port=null));f="","file"==e.scheme?u=ye:Z(e)&&r&&r.scheme==e.scheme?u=ue:Z(e)?u=pe:"/"==o[d+1]?(u=de,d++):(e.cannotBeABaseURL=!0,e.path.push(""),u=ke)}break;case ce:if(!r||r.cannotBeABaseURL&&"#"!=a)return x;if(r.cannotBeABaseURL&&"#"==a){e.scheme=r.scheme,e.path=r.path.slice(),e.query=r.query,e.fragment="",e.cannotBeABaseURL=!0,u=Le;break}u="file"==r.scheme?ye:le;continue;case ue:if("/"!=a||"/"!=o[d+1]){u=le;continue}u=he,d++;break;case de:if("/"==a){u=me;break}u=we;continue;case le:if(e.scheme=r.scheme,a==i)e.username=r.username,e.password=r.password,e.host=r.host,e.port=r.port,e.path=r.path.slice(),e.query=r.query;else if("/"==a||"\\"==a&&Z(e))u=fe;else if("?"==a)e.username=r.username,e.password=r.password,e.host=r.host,e.port=r.port,e.path=r.path.slice(),e.query="",u=Me;else{if("#"!=a){e.username=r.username,e.password=r.password,e.host=r.host,e.port=r.port,e.path=r.path.slice(),e.path.pop(),u=we;continue}e.username=r.username,e.password=r.password,e.host=r.host,e.port=r.port,e.path=r.path.slice(),e.query=r.query,e.fragment="",u=Le}break;case fe:if(!Z(e)||"/"!=a&&"\\"!=a){if("/"!=a){e.username=r.username,e.password=r.password,e.host=r.host,e.port=r.port,u=we;continue}u=me}else u=he;break;case pe:if(u=he,"/"!=a||"/"!=f.charAt(d+1))continue;d++;break;case he:if("/"!=a&&"\\"!=a){u=me;continue}break;case me:if("@"==a){h&&(f="%40"+f),h=!0,s=p(f);for(var g=0;g65535)return S;e.port=Z(e)&&_===X[e.scheme]?null:_,f=""}if(n)return;u=je;continue}return S}f+=a;break;case ye:if(e.scheme="file","/"==a||"\\"==a)u=_e;else{if(!r||"file"!=r.scheme){u=we;continue}if(a==i)e.host=r.host,e.path=r.path.slice(),e.query=r.query;else if("?"==a)e.host=r.host,e.path=r.path.slice(),e.query="",u=Me;else{if("#"!=a){ne(o.slice(d).join(""))||(e.host=r.host,e.path=r.path.slice(),ie(e)),u=we;continue}e.host=r.host,e.path=r.path.slice(),e.query=r.query,e.fragment="",u=Le}}break;case _e:if("/"==a||"\\"==a){u=Oe;break}r&&"file"==r.scheme&&!ne(o.slice(d).join(""))&&(te(r.path[0],!0)?e.path.push(r.path[0]):e.host=r.host),u=we;continue;case Oe:if(a==i||"/"==a||"\\"==a||"?"==a||"#"==a){if(!n&&te(f))u=we;else if(""==f){if(e.host="",n)return;u=je}else{if(c=R(e,f),c)return c;if("localhost"==e.host&&(e.host=""),n)return;f="",u=je}continue}f+=a;break;case je:if(Z(e)){if(u=we,"/"!=a&&"\\"!=a)continue}else if(n||"?"!=a)if(n||"#"!=a){if(a!=i&&(u=we,"/"!=a))continue}else e.fragment="",u=Le;else e.query="",u=Me;break;case we:if(a==i||"/"==a||"\\"==a&&Z(e)||!n&&("?"==a||"#"==a)){if(oe(f)?(ie(e),"/"==a||"\\"==a&&Z(e)||e.path.push("")):re(f)?"/"==a||"\\"==a&&Z(e)||e.path.push(""):("file"==e.scheme&&!e.path.length&&te(f)&&(e.host&&(e.host=""),f=f.charAt(0)+":"),e.path.push(f)),f="","file"==e.scheme&&(a==i||"?"==a||"#"==a))while(e.path.length>1&&""===e.path[0])e.path.shift();"?"==a?(e.query="",u=Me):"#"==a&&(e.fragment="",u=Le)}else f+=K(a,q);break;case ke:"?"==a?(e.query="",u=Me):"#"==a?(e.fragment="",u=Le):a!=i&&(e.path[0]+=K(a,U));break;case Me:n||"#"!=a?a!=i&&("'"==a&&Z(e)?e.query+="%27":e.query+="#"==a?"%23":K(a,U)):(e.fragment="",u=Le);break;case Le:a!=i&&(e.fragment+=K(a,G));break}d++}},Te=function(e){var t,n,i=d(this,Te,"URL"),r=arguments.length>1?arguments[1]:void 0,a=String(e),s=j(i,{type:"URL"});if(void 0!==r)if(r instanceof Te)t=w(r);else if(n=xe(t={},String(r)),n)throw TypeError(n);if(n=xe(s,a,null,t),n)throw TypeError(n);var c=s.searchParams=new _,u=O(c);u.updateSearchParams(s.query),u.updateURL=function(){s.query=String(c)||null},o||(i.href=De.call(i),i.origin=Ae.call(i),i.protocol=Pe.call(i),i.username=Ye.call(i),i.password=Ce.call(i),i.host=Ee.call(i),i.hostname=He.call(i),i.port=$e.call(i),i.pathname=Fe.call(i),i.search=Ie.call(i),i.searchParams=Be.call(i),i.hash=Re.call(i))},Se=Te.prototype,De=function(){var e=w(this),t=e.scheme,n=e.username,i=e.password,r=e.host,o=e.port,a=e.path,s=e.query,c=e.fragment,u=t+":";return null!==r?(u+="//",Q(e)&&(u+=n+(i?":"+i:"")+"@"),u+=V(r),null!==o&&(u+=":"+o)):"file"==t&&(u+="//"),u+=e.cannotBeABaseURL?a[0]:a.length?"/"+a.join("/"):"",null!==s&&(u+="?"+s),null!==c&&(u+="#"+c),u},Ae=function(){var e=w(this),t=e.scheme,n=e.port;if("blob"==t)try{return new Te(t.path[0]).origin}catch(i){return"null"}return"file"!=t&&Z(e)?t+"://"+V(e.host)+(null!==n?":"+n:""):"null"},Pe=function(){return w(this).scheme+":"},Ye=function(){return w(this).username},Ce=function(){return w(this).password},Ee=function(){var e=w(this),t=e.host,n=e.port;return null===t?"":null===n?V(t):V(t)+":"+n},He=function(){var e=w(this).host;return null===e?"":V(e)},$e=function(){var e=w(this).port;return null===e?"":String(e)},Fe=function(){var e=w(this),t=e.path;return e.cannotBeABaseURL?t[0]:t.length?"/"+t.join("/"):""},Ie=function(){var e=w(this).query;return e?"?"+e:""},Be=function(){return w(this).searchParams},Re=function(){var e=w(this).fragment;return e?"#"+e:""},Ne=function(e,t){return{get:e,set:t,configurable:!0,enumerable:!0}};if(o&&c(Se,{href:Ne(De,(function(e){var t=w(this),n=String(e),i=xe(t,n);if(i)throw TypeError(i);O(t.searchParams).updateSearchParams(t.query)})),origin:Ne(Ae),protocol:Ne(Pe,(function(e){var t=w(this);xe(t,String(e)+":",ae)})),username:Ne(Ye,(function(e){var t=w(this),n=p(String(e));if(!ee(t)){t.username="";for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:{};return t.reduce((function(t,n){var r=n.passengers[0],i="function"===typeof r?r(e):n.passengers;return t.concat(i)}),[])}function h(t,e){return t.map((function(t,e){return[e,t]})).sort((function(t,n){return e(t[1],n[1])||t[0]-n[0]})).map((function(t){return t[1]}))}function p(t,e){return e.reduce((function(e,n){return t.hasOwnProperty(n)&&(e[n]=t[n]),e}),{})}var m={},b={},v={},_=i.extend({data:function(){return{transports:m,targets:b,sources:v,trackInstances:l}},methods:{open:function(t){if(l){var e=t.to,n=t.from,r=t.passengers,a=t.order,o=void 0===a?1/0:a;if(e&&n&&r){var s={to:e,from:n,passengers:d(r),order:o},c=Object.keys(this.transports);-1===c.indexOf(e)&&i.set(this.transports,e,[]);var u=this.$_getTransportIndex(s),f=this.transports[e].slice(0);-1===u?f.push(s):f[u]=s,this.transports[e]=h(f,(function(t,e){return t.order-e.order}))}}},close:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.to,r=t.from;if(n&&(r||!1!==e)&&this.transports[n])if(e)this.transports[n]=[];else{var i=this.$_getTransportIndex(t);if(i>=0){var a=this.transports[n].slice(0);a.splice(i,1),this.transports[n]=a}}},registerTarget:function(t,e,n){l&&(this.trackInstances&&!n&&this.targets[t]&&console.warn("[portal-vue]: Target ".concat(t," already exists")),this.$set(this.targets,t,Object.freeze([e])))},unregisterTarget:function(t){this.$delete(this.targets,t)},registerSource:function(t,e,n){l&&(this.trackInstances&&!n&&this.sources[t]&&console.warn("[portal-vue]: source ".concat(t," already exists")),this.$set(this.sources,t,Object.freeze([e])))},unregisterSource:function(t){this.$delete(this.sources,t)},hasTarget:function(t){return!(!this.targets[t]||!this.targets[t][0])},hasSource:function(t){return!(!this.sources[t]||!this.sources[t][0])},hasContentFor:function(t){return!!this.transports[t]&&!!this.transports[t].length},$_getTransportIndex:function(t){var e=t.to,n=t.from;for(var r in this.transports[e])if(this.transports[e][r].from===n)return+r;return-1}}}),g=new _(m),y=1,O=i.extend({name:"portal",props:{disabled:{type:Boolean},name:{type:String,default:function(){return String(y++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}}},created:function(){var t=this;this.$nextTick((function(){g.registerSource(t.name,t)}))},mounted:function(){this.disabled||this.sendUpdate()},updated:function(){this.disabled?this.clear():this.sendUpdate()},beforeDestroy:function(){g.unregisterSource(this.name),this.clear()},watch:{to:function(t,e){e&&e!==t&&this.clear(e),this.sendUpdate()}},methods:{clear:function(t){var e={from:this.name,to:t||this.to};g.close(e)},normalizeSlots:function(){return this.$scopedSlots.default?[this.$scopedSlots.default]:this.$slots.default},normalizeOwnChildren:function(t){return"function"===typeof t?t(this.slotProps):t},sendUpdate:function(){var t=this.normalizeSlots();if(t){var e={from:this.name,to:this.to,passengers:o(t),order:this.order};g.open(e)}else this.clear()}},render:function(t){var e=this.$slots.default||this.$scopedSlots.default||[],n=this.tag;return e&&this.disabled?e.length<=1&&this.slim?this.normalizeOwnChildren(e)[0]:t(n,[this.normalizeOwnChildren(e)]):this.slim?t():t(n,{class:{"v-portal":!0},style:{display:"none"},key:"v-portal-placeholder"})}}),j=i.extend({name:"portalTarget",props:{multiple:{type:Boolean,default:!1},name:{type:String,required:!0},slim:{type:Boolean,default:!1},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},data:function(){return{transports:g.transports,firstRender:!0}},created:function(){var t=this;this.$nextTick((function(){g.registerTarget(t.name,t)}))},watch:{ownTransports:function(){this.$emit("change",this.children().length>0)},name:function(t,e){g.unregisterTarget(e),g.registerTarget(t,this)}},mounted:function(){var t=this;this.transition&&this.$nextTick((function(){t.firstRender=!1}))},beforeDestroy:function(){g.unregisterTarget(this.name)},computed:{ownTransports:function(){var t=this.transports[this.name]||[];return this.multiple?t:0===t.length?[]:[t[t.length-1]]},passengers:function(){return f(this.ownTransports,this.slotProps)}},methods:{children:function(){return 0!==this.passengers.length?this.passengers:this.$scopedSlots.default?this.$scopedSlots.default(this.slotProps):this.$slots.default||[]},noWrapper:function(){var t=this.slim&&!this.transition;return t&&this.children().length>1&&console.warn("[portal-vue]: PortalTarget with `slim` option received more than one child element."),t}},render:function(t){var e=this.noWrapper(),n=this.children(),r=this.transition||this.tag;return e?n[0]:this.slim&&!r?t():t(r,{props:{tag:this.transition&&this.tag?this.tag:void 0},class:{"vue-portal-target":!0}},n)}}),w=0,M=["disabled","name","order","slim","slotProps","tag","to"],L=["multiple","transition"],k=i.extend({name:"MountingPortal",inheritAttrs:!1,props:{append:{type:[Boolean,String]},bail:{type:Boolean},mountTo:{type:String,required:!0},disabled:{type:Boolean},name:{type:String,default:function(){return"mounted_"+String(w++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}},multiple:{type:Boolean,default:!1},targetSlim:{type:Boolean},targetSlotProps:{type:Object,default:function(){return{}}},targetTag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},created:function(){if("undefined"!==typeof document){var t=document.querySelector(this.mountTo);if(t){var e=this.$props;if(g.targets[e.name])e.bail?console.warn("[portal-vue]: Target ".concat(e.name," is already mounted.\n Aborting because 'bail: true' is set")):this.portalTarget=g.targets[e.name];else{var n=e.append;if(n){var r="string"===typeof n?n:"DIV",i=document.createElement(r);t.appendChild(i),t=i}var a=p(this.$props,L);a.slim=this.targetSlim,a.tag=this.targetTag,a.slotProps=this.targetSlotProps,a.name=this.to,this.portalTarget=new j({el:t,parent:this.$parent||this,propsData:a})}}else console.error("[portal-vue]: Mount Point '".concat(this.mountTo,"' not found in document"))}},beforeDestroy:function(){var t=this.portalTarget;if(this.append){var e=t.$el;e.parentNode.removeChild(e)}t.$destroy()},render:function(t){if(!this.portalTarget)return console.warn("[portal-vue] Target wasn't mounted"),t();if(!this.$scopedSlots.manual){var e=p(this.$props,M);return t(O,{props:e,attrs:this.$attrs,on:this.$listeners,scopedSlots:this.$scopedSlots},this.$slots.default)}var n=this.$scopedSlots.manual({to:this.to});return Array.isArray(n)&&(n=n[0]),n||t()}});function T(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.component(e.portalName||"Portal",O),t.component(e.portalTargetName||"PortalTarget",j),t.component(e.MountingPortalName||"MountingPortal",k)}var D={install:T};e.default=D,e.Portal=O,e.PortalTarget=j,e.MountingPortal=k,e.Wormhole=g},"2bfb":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; + */function i(e){return e&&"object"===typeof e&&"default"in e?e["default"]:e}Object.defineProperty(t,"__esModule",{value:!0});var r=i(n("a026"));function o(e){return o="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function a(e){return s(e)||c(e)||u()}function s(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:{};return e.reduce((function(e,n){var i=n.passengers[0],r="function"===typeof i?i(t):n.passengers;return e.concat(r)}),[])}function p(e,t){return e.map((function(e,t){return[t,e]})).sort((function(e,n){return t(e[1],n[1])||e[0]-n[0]})).map((function(e){return e[1]}))}function h(e,t){return t.reduce((function(t,n){return e.hasOwnProperty(n)&&(t[n]=e[n]),t}),{})}var m={},b={},g={},v=r.extend({data:function(){return{transports:m,targets:b,sources:g,trackInstances:d}},methods:{open:function(e){if(d){var t=e.to,n=e.from,i=e.passengers,o=e.order,a=void 0===o?1/0:o;if(t&&n&&i){var s={to:t,from:n,passengers:l(i),order:a},c=Object.keys(this.transports);-1===c.indexOf(t)&&r.set(this.transports,t,[]);var u=this.$_getTransportIndex(s),f=this.transports[t].slice(0);-1===u?f.push(s):f[u]=s,this.transports[t]=p(f,(function(e,t){return e.order-t.order}))}}},close:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e.to,i=e.from;if(n&&(i||!1!==t)&&this.transports[n])if(t)this.transports[n]=[];else{var r=this.$_getTransportIndex(e);if(r>=0){var o=this.transports[n].slice(0);o.splice(r,1),this.transports[n]=o}}},registerTarget:function(e,t,n){d&&(this.trackInstances&&!n&&this.targets[e]&&console.warn("[portal-vue]: Target ".concat(e," already exists")),this.$set(this.targets,e,Object.freeze([t])))},unregisterTarget:function(e){this.$delete(this.targets,e)},registerSource:function(e,t,n){d&&(this.trackInstances&&!n&&this.sources[e]&&console.warn("[portal-vue]: source ".concat(e," already exists")),this.$set(this.sources,e,Object.freeze([t])))},unregisterSource:function(e){this.$delete(this.sources,e)},hasTarget:function(e){return!(!this.targets[e]||!this.targets[e][0])},hasSource:function(e){return!(!this.sources[e]||!this.sources[e][0])},hasContentFor:function(e){return!!this.transports[e]&&!!this.transports[e].length},$_getTransportIndex:function(e){var t=e.to,n=e.from;for(var i in this.transports[t])if(this.transports[t][i].from===n)return+i;return-1}}}),y=new v(m),_=1,O=r.extend({name:"portal",props:{disabled:{type:Boolean},name:{type:String,default:function(){return String(_++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}}},created:function(){var e=this;this.$nextTick((function(){y.registerSource(e.name,e)}))},mounted:function(){this.disabled||this.sendUpdate()},updated:function(){this.disabled?this.clear():this.sendUpdate()},beforeDestroy:function(){y.unregisterSource(this.name),this.clear()},watch:{to:function(e,t){t&&t!==e&&this.clear(t),this.sendUpdate()}},methods:{clear:function(e){var t={from:this.name,to:e||this.to};y.close(t)},normalizeSlots:function(){return this.$scopedSlots.default?[this.$scopedSlots.default]:this.$slots.default},normalizeOwnChildren:function(e){return"function"===typeof e?e(this.slotProps):e},sendUpdate:function(){var e=this.normalizeSlots();if(e){var t={from:this.name,to:this.to,passengers:a(e),order:this.order};y.open(t)}else this.clear()}},render:function(e){var t=this.$slots.default||this.$scopedSlots.default||[],n=this.tag;return t&&this.disabled?t.length<=1&&this.slim?this.normalizeOwnChildren(t)[0]:e(n,[this.normalizeOwnChildren(t)]):this.slim?e():e(n,{class:{"v-portal":!0},style:{display:"none"},key:"v-portal-placeholder"})}}),j=r.extend({name:"portalTarget",props:{multiple:{type:Boolean,default:!1},name:{type:String,required:!0},slim:{type:Boolean,default:!1},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},data:function(){return{transports:y.transports,firstRender:!0}},created:function(){var e=this;this.$nextTick((function(){y.registerTarget(e.name,e)}))},watch:{ownTransports:function(){this.$emit("change",this.children().length>0)},name:function(e,t){y.unregisterTarget(t),y.registerTarget(e,this)}},mounted:function(){var e=this;this.transition&&this.$nextTick((function(){e.firstRender=!1}))},beforeDestroy:function(){y.unregisterTarget(this.name)},computed:{ownTransports:function(){var e=this.transports[this.name]||[];return this.multiple?e:0===e.length?[]:[e[e.length-1]]},passengers:function(){return f(this.ownTransports,this.slotProps)}},methods:{children:function(){return 0!==this.passengers.length?this.passengers:this.$scopedSlots.default?this.$scopedSlots.default(this.slotProps):this.$slots.default||[]},noWrapper:function(){var e=this.slim&&!this.transition;return e&&this.children().length>1&&console.warn("[portal-vue]: PortalTarget with `slim` option received more than one child element."),e}},render:function(e){var t=this.noWrapper(),n=this.children(),i=this.transition||this.tag;return t?n[0]:this.slim&&!i?e():e(i,{props:{tag:this.transition&&this.tag?this.tag:void 0},class:{"vue-portal-target":!0}},n)}}),w=0,k=["disabled","name","order","slim","slotProps","tag","to"],M=["multiple","transition"],L=r.extend({name:"MountingPortal",inheritAttrs:!1,props:{append:{type:[Boolean,String]},bail:{type:Boolean},mountTo:{type:String,required:!0},disabled:{type:Boolean},name:{type:String,default:function(){return"mounted_"+String(w++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}},multiple:{type:Boolean,default:!1},targetSlim:{type:Boolean},targetSlotProps:{type:Object,default:function(){return{}}},targetTag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},created:function(){if("undefined"!==typeof document){var e=document.querySelector(this.mountTo);if(e){var t=this.$props;if(y.targets[t.name])t.bail?console.warn("[portal-vue]: Target ".concat(t.name," is already mounted.\n Aborting because 'bail: true' is set")):this.portalTarget=y.targets[t.name];else{var n=t.append;if(n){var i="string"===typeof n?n:"DIV",r=document.createElement(i);e.appendChild(r),e=r}var o=h(this.$props,M);o.slim=this.targetSlim,o.tag=this.targetTag,o.slotProps=this.targetSlotProps,o.name=this.to,this.portalTarget=new j({el:e,parent:this.$parent||this,propsData:o})}}else console.error("[portal-vue]: Mount Point '".concat(this.mountTo,"' not found in document"))}},beforeDestroy:function(){var e=this.portalTarget;if(this.append){var t=e.$el;t.parentNode.removeChild(t)}e.$destroy()},render:function(e){if(!this.portalTarget)return console.warn("[portal-vue] Target wasn't mounted"),e();if(!this.$scopedSlots.manual){var t=h(this.$props,k);return e(O,{props:t,attrs:this.$attrs,on:this.$listeners,scopedSlots:this.$scopedSlots},this.$slots.default)}var n=this.$scopedSlots.manual({to:this.to});return Array.isArray(n)&&(n=n[0]),n||e()}});function x(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.component(t.portalName||"Portal",O),e.component(t.portalTargetName||"PortalTarget",j),e.component(t.MountingPortalName||"MountingPortal",L)}var T={install:x};t.default=T,t.Portal=O,t.PortalTarget=j,t.MountingPortal=L,t.Wormhole=y},"2bfb":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(t){return/^nm$/i.test(t)},meridiem:function(t,e,n){return t<12?n?"vm":"VM":n?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}});return e}))},"2cf4":function(t,e,n){var r,i,a,o=n("da84"),s=n("d039"),c=n("0366"),u=n("1be4"),l=n("cc12"),d=n("1cdc"),f=n("605d"),h=o.location,p=o.setImmediate,m=o.clearImmediate,b=o.process,v=o.MessageChannel,_=o.Dispatch,g=0,y={},O="onreadystatechange",j=function(t){if(y.hasOwnProperty(t)){var e=y[t];delete y[t],e()}},w=function(t){return function(){j(t)}},M=function(t){j(t.data)},L=function(t){o.postMessage(t+"",h.protocol+"//"+h.host)};p&&m||(p=function(t){var e=[],n=1;while(arguments.length>n)e.push(arguments[n++]);return y[++g]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(g),g},m=function(t){delete y[t]},f?r=function(t){b.nextTick(w(t))}:_&&_.now?r=function(t){_.now(w(t))}:v&&!d?(i=new v,a=i.port2,i.port1.onmessage=M,r=c(a.postMessage,a,1)):o.addEventListener&&"function"==typeof postMessage&&!o.importScripts&&h&&"file:"!==h.protocol&&!s(L)?(r=L,o.addEventListener("message",M,!1)):r=O in l("script")?function(t){u.appendChild(l("script"))[O]=function(){u.removeChild(this),j(t)}}:function(t){setTimeout(w(t),0)}),t.exports={set:p,clear:m}},"2d00":function(t,e,n){var r,i,a=n("da84"),o=n("342f"),s=a.process,c=s&&s.versions,u=c&&c.v8;u?(r=u.split("."),i=r[0]<4?1:r[0]+r[1]):o&&(r=o.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=o.match(/Chrome\/(\d+)/),r&&(i=r[1]))),t.exports=i&&+i},"2d83":function(t,e,n){"use strict";var r=n("387f");t.exports=function(t,e,n,i,a){var o=new Error(t);return r(o,e,n,i,a)}},"2dd8":function(t,e,n){},"2e67":function(t,e,n){"use strict";t.exports=function(t){return!(!t||!t.__CANCEL__)}},"2e8c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(e){return/^nm$/i.test(e)},meridiem:function(e,t,n){return e<12?n?"vm":"VM":n?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return t}))},"2cf4":function(e,t,n){var i,r,o,a=n("da84"),s=n("d039"),c=n("0366"),u=n("1be4"),d=n("cc12"),l=n("1cdc"),f=n("605d"),p=a.location,h=a.setImmediate,m=a.clearImmediate,b=a.process,g=a.MessageChannel,v=a.Dispatch,y=0,_={},O="onreadystatechange",j=function(e){if(_.hasOwnProperty(e)){var t=_[e];delete _[e],t()}},w=function(e){return function(){j(e)}},k=function(e){j(e.data)},M=function(e){a.postMessage(e+"",p.protocol+"//"+p.host)};h&&m||(h=function(e){var t=[],n=1;while(arguments.length>n)t.push(arguments[n++]);return _[++y]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},i(y),y},m=function(e){delete _[e]},f?i=function(e){b.nextTick(w(e))}:v&&v.now?i=function(e){v.now(w(e))}:g&&!l?(r=new g,o=r.port2,r.port1.onmessage=k,i=c(o.postMessage,o,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts&&p&&"file:"!==p.protocol&&!s(M)?(i=M,a.addEventListener("message",k,!1)):i=O in d("script")?function(e){u.appendChild(d("script"))[O]=function(){u.removeChild(this),j(e)}}:function(e){setTimeout(w(e),0)}),e.exports={set:h,clear:m}},"2d00":function(e,t,n){var i,r,o=n("da84"),a=n("342f"),s=o.process,c=s&&s.versions,u=c&&c.v8;u?(i=u.split("."),r=i[0]<4?1:i[0]+i[1]):a&&(i=a.match(/Edge\/(\d+)/),(!i||i[1]>=74)&&(i=a.match(/Chrome\/(\d+)/),i&&(r=i[1]))),e.exports=r&&+r},"2d83":function(e,t,n){"use strict";var i=n("387f");e.exports=function(e,t,n,r,o){var a=new Error(e);return i(a,t,n,r,o)}},"2dd8":function(e,t,n){},"2e67":function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},"2e8c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}});return e}))},"2f79":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));n("b42e");var r="_uid"},"30b5":function(t,e,n){"use strict";var r=n("c532");function i(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}t.exports=function(t,e,n){if(!e)return t;var a;if(n)a=n(e);else if(r.isURLSearchParams(e))a=e.toString();else{var o=[];r.forEach(e,(function(t,e){null!==t&&"undefined"!==typeof t&&(r.isArray(t)?e+="[]":t=[t],r.forEach(t,(function(t){r.isDate(t)?t=t.toISOString():r.isObject(t)&&(t=JSON.stringify(t)),o.push(i(e)+"="+i(t))})))})),a=o.join("&")}if(a){var s=t.indexOf("#");-1!==s&&(t=t.slice(0,s)),t+=(-1===t.indexOf("?")?"?":"&")+a}return t}},"342f":function(t,e,n){var r=n("d066");t.exports=r("navigator","userAgent")||""},"35a1":function(t,e,n){var r=n("f5df"),i=n("3f8c"),a=n("b622"),o=a("iterator");t.exports=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},"365c":function(t,e,n){"use strict";n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return s}));var r=n("2326"),i=n("6c06"),a=n("7b1e"),o=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t=Object(r["b"])(t).filter(i["a"]),t.some((function(t){return e[t]||n[t]}))},s=function(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};t=Object(r["b"])(t).filter(i["a"]);for(var c=0;cc)i.f(t,n=r[c++],e[n]);return t}},"387f":function(t,e,n){"use strict";t.exports=function(t,e,n,r,i){return t.config=e,n&&(t.code=n),t.request=r,t.response=i,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}},3886:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}});return t}))},"2f79":function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));n("b42e");var i="_uid"},"30b5":function(e,t,n){"use strict";var i=n("c532");function r(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var o;if(n)o=n(t);else if(i.isURLSearchParams(t))o=t.toString();else{var a=[];i.forEach(t,(function(e,t){null!==e&&"undefined"!==typeof e&&(i.isArray(e)?t+="[]":e=[e],i.forEach(e,(function(e){i.isDate(e)?e=e.toISOString():i.isObject(e)&&(e=JSON.stringify(e)),a.push(r(t)+"="+r(e))})))})),o=a.join("&")}if(o){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}},"342f":function(e,t,n){var i=n("d066");e.exports=i("navigator","userAgent")||""},"34ef":function(e){e.exports=JSON.parse('[{"group":0,"emojiList":[{"unicode":"😀","tags":["face","grin"]},{"unicode":"😃","tags":["face","mouth","open","smile"]},{"unicode":"😄","tags":["eye","face","mouth","open","smile"]},{"unicode":"😁","tags":["eye","face","grin","smile"]},{"unicode":"😆","tags":["face","laugh","mouth","satisfied","smile"]},{"unicode":"😅","tags":["cold","face","open","smile","sweat"]},{"unicode":"🤣","tags":["face","floor","laugh","rolling"]},{"unicode":"😂","tags":["face","joy","laugh","tear"]},{"unicode":"🙂","tags":["face","smile"]},{"unicode":"🙃","tags":["face","upside-down"]},{"unicode":"😉","tags":["face","wink"]},{"unicode":"😊","tags":["blush","eye","face","smile"]},{"unicode":"😇","tags":["angel","face","fantasy","halo","innocent"]},{"unicode":"🥰","tags":["adore","crush","hearts","in love"]},{"unicode":"😍","tags":["eye","face","love","smile"]},{"unicode":"🤩","tags":["eyes","face","grinning","star"]},{"unicode":"😘","tags":["face","kiss"]},{"unicode":"😗","tags":["face","kiss"]},{"unicode":"☺️","tags":["face","outlined","relaxed","smile"]},{"unicode":"😚","tags":["closed","eye","face","kiss"]},{"unicode":"😙","tags":["eye","face","kiss","smile"]},{"unicode":"🥲","tags":["grateful","proud","relieved","smiling","tear","touched"]},{"unicode":"😋","tags":["delicious","face","savouring","smile","yum"]},{"unicode":"😛","tags":["face","tongue"]},{"unicode":"😜","tags":["eye","face","joke","tongue","wink"]},{"unicode":"🤪","tags":["eye","goofy","large","small"]},{"unicode":"😝","tags":["eye","face","horrible","taste","tongue"]},{"unicode":"🤑","tags":["face","money","mouth"]},{"unicode":"🤗","tags":["face","hug","hugging"]},{"unicode":"🤭","tags":["whoops"]},{"unicode":"🤫","tags":["quiet","shush"]},{"unicode":"🤔","tags":["face","thinking"]},{"unicode":"🤐","tags":["face","mouth","zipper"]},{"unicode":"🤨","tags":["distrust","skeptic"]},{"unicode":"😐️","tags":["deadpan","face","meh","neutral"]},{"unicode":"😑","tags":["expressionless","face","inexpressive","meh","unexpressive"]},{"unicode":"😶","tags":["face","mouth","quiet","silent"]},{"unicode":"😏","tags":["face","smirk"]},{"unicode":"😒","tags":["face","unamused","unhappy"]},{"unicode":"🙄","tags":["eyeroll","eyes","face","rolling"]},{"unicode":"😬","tags":["face","grimace"]},{"unicode":"🤥","tags":["face","lie","pinocchio"]},{"unicode":"😌","tags":["face","relieved"]},{"unicode":"😔","tags":["dejected","face","pensive"]},{"unicode":"😪","tags":["face","sleep"]},{"unicode":"🤤","tags":["drooling","face"]},{"unicode":"😴","tags":["face","sleep","zzz"]},{"unicode":"😷","tags":["cold","doctor","face","mask","sick"]},{"unicode":"🤒","tags":["face","ill","sick","thermometer"]},{"unicode":"🤕","tags":["bandage","face","hurt","injury"]},{"unicode":"🤢","tags":["face","nauseated","vomit"]},{"unicode":"🤮","tags":["sick","vomit"]},{"unicode":"🤧","tags":["face","gesundheit","sneeze"]},{"unicode":"🥵","tags":["feverish","heat stroke","hot","red-faced","sweating"]},{"unicode":"🥶","tags":["blue-faced","cold","freezing","frostbite","icicles"]},{"unicode":"🥴","tags":["dizzy","intoxicated","tipsy","uneven eyes","wavy mouth"]},{"unicode":"😵","tags":["dizzy","face"]},{"unicode":"🤯","tags":["mind blown","shocked"]},{"unicode":"🤠","tags":["cowboy","cowgirl","face","hat"]},{"unicode":"🥳","tags":["celebration","hat","horn","party"]},{"unicode":"🥸","tags":["disguise","face","glasses","incognito","nose"]},{"unicode":"😎","tags":["bright","cool","face","sun","sunglasses"]},{"unicode":"🤓","tags":["face","geek","nerd"]},{"unicode":"🧐","tags":["stuffy"]},{"unicode":"😕","tags":["confused","face","meh"]},{"unicode":"😟","tags":["face","worried"]},{"unicode":"🙁","tags":["face","frown"]},{"unicode":"☹️","tags":["face","frown"]},{"unicode":"😮","tags":["face","mouth","open","sympathy"]},{"unicode":"😯","tags":["face","hushed","stunned","surprised"]},{"unicode":"😲","tags":["astonished","face","shocked","totally"]},{"unicode":"😳","tags":["dazed","face","flushed"]},{"unicode":"🥺","tags":["begging","mercy","puppy eyes"]},{"unicode":"😦","tags":["face","frown","mouth","open"]},{"unicode":"😧","tags":["anguished","face"]},{"unicode":"😨","tags":["face","fear","fearful","scared"]},{"unicode":"😰","tags":["blue","cold","face","rushed","sweat"]},{"unicode":"😥","tags":["disappointed","face","relieved","whew"]},{"unicode":"😢","tags":["cry","face","sad","tear"]},{"unicode":"😭","tags":["cry","face","sad","sob","tear"]},{"unicode":"😱","tags":["face","fear","munch","scared","scream"]},{"unicode":"😖","tags":["confounded","face"]},{"unicode":"😣","tags":["face","persevere"]},{"unicode":"😞","tags":["disappointed","face"]},{"unicode":"😓","tags":["cold","face","sweat"]},{"unicode":"😩","tags":["face","tired","weary"]},{"unicode":"😫","tags":["face","tired"]},{"unicode":"🥱","tags":["bored","tired","yawn"]},{"unicode":"😤","tags":["face","triumph","won"]},{"unicode":"😡","tags":["angry","face","mad","pouting","rage","red"]},{"unicode":"😠","tags":["angry","face","mad"]},{"unicode":"🤬","tags":["swearing"]},{"unicode":"😈","tags":["face","fairy tale","fantasy","horns","smile"]},{"unicode":"👿","tags":["demon","devil","face","fantasy","imp"]},{"unicode":"💀","tags":["death","face","fairy tale","monster"]},{"unicode":"☠️","tags":["crossbones","death","face","monster","skull"]},{"unicode":"💩","tags":["dung","face","monster","poo","poop"]},{"unicode":"🤡","tags":["clown","face"]},{"unicode":"👹","tags":["creature","face","fairy tale","fantasy","monster"]},{"unicode":"👺","tags":["creature","face","fairy tale","fantasy","monster"]},{"unicode":"👻","tags":["creature","face","fairy tale","fantasy","monster"]},{"unicode":"👽️","tags":["creature","extraterrestrial","face","fantasy","ufo"]},{"unicode":"👾","tags":["alien","creature","extraterrestrial","face","monster","ufo"]},{"unicode":"🤖","tags":["face","monster"]},{"unicode":"😺","tags":["cat","face","grinning","mouth","open","smile"]},{"unicode":"😸","tags":["cat","eye","face","grin","smile"]},{"unicode":"😹","tags":["cat","face","joy","tear"]},{"unicode":"😻","tags":["cat","eye","face","heart","love","smile"]},{"unicode":"😼","tags":["cat","face","ironic","smile","wry"]},{"unicode":"😽","tags":["cat","eye","face","kiss"]},{"unicode":"🙀","tags":["cat","face","oh","surprised","weary"]},{"unicode":"😿","tags":["cat","cry","face","sad","tear"]},{"unicode":"😾","tags":["cat","face","pouting"]},{"unicode":"🙈","tags":["evil","face","forbidden","monkey","see"]},{"unicode":"🙉","tags":["evil","face","forbidden","hear","monkey"]},{"unicode":"🙊","tags":["evil","face","forbidden","monkey","speak"]},{"unicode":"💋","tags":["kiss","lips"]},{"unicode":"💌","tags":["heart","letter","love","mail"]},{"unicode":"💘","tags":["arrow","cupid"]},{"unicode":"💝","tags":["ribbon","valentine"]},{"unicode":"💖","tags":["excited","sparkle"]},{"unicode":"💗","tags":["excited","growing","nervous","pulse"]},{"unicode":"💓","tags":["beating","heartbeat","pulsating"]},{"unicode":"💞","tags":["revolving"]},{"unicode":"💕","tags":["love"]},{"unicode":"💟","tags":["heart"]},{"unicode":"❣️","tags":["exclamation","mark","punctuation"]},{"unicode":"💔","tags":["break","broken"]},{"unicode":"❤️","tags":["heart"]},{"unicode":"🧡","tags":["orange"]},{"unicode":"💛","tags":["yellow"]},{"unicode":"💚","tags":["green"]},{"unicode":"💙","tags":["blue"]},{"unicode":"💜","tags":["purple"]},{"unicode":"🤎","tags":["brown","heart"]},{"unicode":"🖤","tags":["black","evil","wicked"]},{"unicode":"🤍","tags":["heart","white"]},{"unicode":"💯","tags":["100","full","hundred","score"]},{"unicode":"💢","tags":["angry","comic","mad"]},{"unicode":"💥","tags":["boom","comic"]},{"unicode":"💫","tags":["comic","star"]},{"unicode":"💦","tags":["comic","splashing","sweat"]},{"unicode":"💨","tags":["comic","dash","running"]},{"unicode":"🕳️","tags":["hole"]},{"unicode":"💣️","tags":["comic"]},{"unicode":"💬","tags":["balloon","bubble","comic","dialog","speech"]},{"unicode":"👁️‍🗨️","tags":["eye","speech bubble","witness"]},{"unicode":"🗨️","tags":["dialog","speech"]},{"unicode":"🗯️","tags":["angry","balloon","bubble","mad"]},{"unicode":"💭","tags":["balloon","bubble","comic","thought"]},{"unicode":"💤","tags":["comic","sleep"]}]},{"group":1,"emojiList":[{"unicode":"👋","tags":["hand","wave","waving"],"skins":[{"unicode":"👋🏻"},{"unicode":"👋🏼"},{"unicode":"👋🏽"},{"unicode":"👋🏾"},{"unicode":"👋🏿"}]},{"unicode":"🤚","tags":["backhand","raised"],"skins":[{"unicode":"🤚🏻"},{"unicode":"🤚🏼"},{"unicode":"🤚🏽"},{"unicode":"🤚🏾"},{"unicode":"🤚🏿"}]},{"unicode":"🖐️","tags":["finger","hand","splayed"],"skins":[{"unicode":"🖐🏻"},{"unicode":"🖐🏼"},{"unicode":"🖐🏽"},{"unicode":"🖐🏾"},{"unicode":"🖐🏿"}]},{"unicode":"✋","tags":["hand"],"skins":[{"unicode":"✋🏻"},{"unicode":"✋🏼"},{"unicode":"✋🏽"},{"unicode":"✋🏾"},{"unicode":"✋🏿"}]},{"unicode":"🖖","tags":["finger","hand","spock","vulcan"],"skins":[{"unicode":"🖖🏻"},{"unicode":"🖖🏼"},{"unicode":"🖖🏽"},{"unicode":"🖖🏾"},{"unicode":"🖖🏿"}]},{"unicode":"👌","tags":["hand","ok"],"skins":[{"unicode":"👌🏻"},{"unicode":"👌🏼"},{"unicode":"👌🏽"},{"unicode":"👌🏾"},{"unicode":"👌🏿"}]},{"unicode":"🤌","tags":["fingers","hand gesture","interrogation","pinched","sarcastic"],"skins":[{"unicode":"🤌🏻"},{"unicode":"🤌🏼"},{"unicode":"🤌🏽"},{"unicode":"🤌🏾"},{"unicode":"🤌🏿"}]},{"unicode":"🤏","tags":["small amount"],"skins":[{"unicode":"🤏🏻"},{"unicode":"🤏🏼"},{"unicode":"🤏🏽"},{"unicode":"🤏🏾"},{"unicode":"🤏🏿"}]},{"unicode":"✌️","tags":["hand","v","victory"],"skins":[{"unicode":"✌🏻"},{"unicode":"✌🏼"},{"unicode":"✌🏽"},{"unicode":"✌🏾"},{"unicode":"✌🏿"}]},{"unicode":"🤞","tags":["cross","finger","hand","luck"],"skins":[{"unicode":"🤞🏻"},{"unicode":"🤞🏼"},{"unicode":"🤞🏽"},{"unicode":"🤞🏾"},{"unicode":"🤞🏿"}]},{"unicode":"🤟","tags":["hand","ily"],"skins":[{"unicode":"🤟🏻"},{"unicode":"🤟🏼"},{"unicode":"🤟🏽"},{"unicode":"🤟🏾"},{"unicode":"🤟🏿"}]},{"unicode":"🤘","tags":["finger","hand","horns","rock-on"],"skins":[{"unicode":"🤘🏻"},{"unicode":"🤘🏼"},{"unicode":"🤘🏽"},{"unicode":"🤘🏾"},{"unicode":"🤘🏿"}]},{"unicode":"🤙","tags":["call","hand"],"skins":[{"unicode":"🤙🏻"},{"unicode":"🤙🏼"},{"unicode":"🤙🏽"},{"unicode":"🤙🏾"},{"unicode":"🤙🏿"}]},{"unicode":"👈️","tags":["backhand","finger","hand","index","point"],"skins":[{"unicode":"👈🏻"},{"unicode":"👈🏼"},{"unicode":"👈🏽"},{"unicode":"👈🏾"},{"unicode":"👈🏿"}]},{"unicode":"👉️","tags":["backhand","finger","hand","index","point"],"skins":[{"unicode":"👉🏻"},{"unicode":"👉🏼"},{"unicode":"👉🏽"},{"unicode":"👉🏾"},{"unicode":"👉🏿"}]},{"unicode":"👆️","tags":["backhand","finger","hand","point","up"],"skins":[{"unicode":"👆🏻"},{"unicode":"👆🏼"},{"unicode":"👆🏽"},{"unicode":"👆🏾"},{"unicode":"👆🏿"}]},{"unicode":"🖕","tags":["finger","hand"],"skins":[{"unicode":"🖕🏻"},{"unicode":"🖕🏼"},{"unicode":"🖕🏽"},{"unicode":"🖕🏾"},{"unicode":"🖕🏿"}]},{"unicode":"👇️","tags":["backhand","down","finger","hand","point"],"skins":[{"unicode":"👇🏻"},{"unicode":"👇🏼"},{"unicode":"👇🏽"},{"unicode":"👇🏾"},{"unicode":"👇🏿"}]},{"unicode":"☝️","tags":["finger","hand","index","point","up"],"skins":[{"unicode":"☝🏻"},{"unicode":"☝🏼"},{"unicode":"☝🏽"},{"unicode":"☝🏾"},{"unicode":"☝🏿"}]},{"unicode":"👍️","tags":["+1","hand","thumb","up"],"skins":[{"unicode":"👍🏻"},{"unicode":"👍🏼"},{"unicode":"👍🏽"},{"unicode":"👍🏾"},{"unicode":"👍🏿"}]},{"unicode":"👎️","tags":["-1","down","hand","thumb"],"skins":[{"unicode":"👎🏻"},{"unicode":"👎🏼"},{"unicode":"👎🏽"},{"unicode":"👎🏾"},{"unicode":"👎🏿"}]},{"unicode":"✊","tags":["clenched","fist","hand","punch"],"skins":[{"unicode":"✊🏻"},{"unicode":"✊🏼"},{"unicode":"✊🏽"},{"unicode":"✊🏾"},{"unicode":"✊🏿"}]},{"unicode":"👊","tags":["clenched","fist","hand","punch"],"skins":[{"unicode":"👊🏻"},{"unicode":"👊🏼"},{"unicode":"👊🏽"},{"unicode":"👊🏾"},{"unicode":"👊🏿"}]},{"unicode":"🤛","tags":["fist","leftwards"],"skins":[{"unicode":"🤛🏻"},{"unicode":"🤛🏼"},{"unicode":"🤛🏽"},{"unicode":"🤛🏾"},{"unicode":"🤛🏿"}]},{"unicode":"🤜","tags":["fist","rightwards"],"skins":[{"unicode":"🤜🏻"},{"unicode":"🤜🏼"},{"unicode":"🤜🏽"},{"unicode":"🤜🏾"},{"unicode":"🤜🏿"}]},{"unicode":"👏","tags":["clap","hand"],"skins":[{"unicode":"👏🏻"},{"unicode":"👏🏼"},{"unicode":"👏🏽"},{"unicode":"👏🏾"},{"unicode":"👏🏿"}]},{"unicode":"🙌","tags":["celebration","gesture","hand","hooray","raised"],"skins":[{"unicode":"🙌🏻"},{"unicode":"🙌🏼"},{"unicode":"🙌🏽"},{"unicode":"🙌🏾"},{"unicode":"🙌🏿"}]},{"unicode":"👐","tags":["hand","open"],"skins":[{"unicode":"👐🏻"},{"unicode":"👐🏼"},{"unicode":"👐🏽"},{"unicode":"👐🏾"},{"unicode":"👐🏿"}]},{"unicode":"🤲","tags":["prayer"],"skins":[{"unicode":"🤲🏻"},{"unicode":"🤲🏼"},{"unicode":"🤲🏽"},{"unicode":"🤲🏾"},{"unicode":"🤲🏿"}]},{"unicode":"🤝","tags":["agreement","hand","meeting","shake"]},{"unicode":"🙏","tags":["ask","hand","please","pray","thanks"],"skins":[{"unicode":"🙏🏻"},{"unicode":"🙏🏼"},{"unicode":"🙏🏽"},{"unicode":"🙏🏾"},{"unicode":"🙏🏿"}]},{"unicode":"✍️","tags":["hand","write"],"skins":[{"unicode":"✍🏻"},{"unicode":"✍🏼"},{"unicode":"✍🏽"},{"unicode":"✍🏾"},{"unicode":"✍🏿"}]},{"unicode":"💅","tags":["care","cosmetics","manicure","nail","polish"],"skins":[{"unicode":"💅🏻"},{"unicode":"💅🏼"},{"unicode":"💅🏽"},{"unicode":"💅🏾"},{"unicode":"💅🏿"}]},{"unicode":"🤳","tags":["camera","phone"],"skins":[{"unicode":"🤳🏻"},{"unicode":"🤳🏼"},{"unicode":"🤳🏽"},{"unicode":"🤳🏾"},{"unicode":"🤳🏿"}]},{"unicode":"💪","tags":["biceps","comic","flex","muscle"],"skins":[{"unicode":"💪🏻"},{"unicode":"💪🏼"},{"unicode":"💪🏽"},{"unicode":"💪🏾"},{"unicode":"💪🏿"}]},{"unicode":"🦾","tags":["accessibility","prosthetic"]},{"unicode":"🦿","tags":["accessibility","prosthetic"]},{"unicode":"🦵","tags":["kick","limb"],"skins":[{"unicode":"🦵🏻"},{"unicode":"🦵🏼"},{"unicode":"🦵🏽"},{"unicode":"🦵🏾"},{"unicode":"🦵🏿"}]},{"unicode":"🦶","tags":["kick","stomp"],"skins":[{"unicode":"🦶🏻"},{"unicode":"🦶🏼"},{"unicode":"🦶🏽"},{"unicode":"🦶🏾"},{"unicode":"🦶🏿"}]},{"unicode":"👂️","tags":["body"],"skins":[{"unicode":"👂🏻"},{"unicode":"👂🏼"},{"unicode":"👂🏽"},{"unicode":"👂🏾"},{"unicode":"👂🏿"}]},{"unicode":"🦻","tags":["accessibility","hard of hearing"],"skins":[{"unicode":"🦻🏻"},{"unicode":"🦻🏼"},{"unicode":"🦻🏽"},{"unicode":"🦻🏾"},{"unicode":"🦻🏿"}]},{"unicode":"👃","tags":["body"],"skins":[{"unicode":"👃🏻"},{"unicode":"👃🏼"},{"unicode":"👃🏽"},{"unicode":"👃🏾"},{"unicode":"👃🏿"}]},{"unicode":"🧠","tags":["intelligent"]},{"unicode":"🫀","tags":["anatomical","cardiology","heart","organ","pulse"]},{"unicode":"🫁","tags":["breath","exhalation","inhalation","organ","respiration"]},{"unicode":"🦷","tags":["dentist"]},{"unicode":"🦴","tags":["skeleton"]},{"unicode":"👀","tags":["eye","face"]},{"unicode":"👁️","tags":["body"]},{"unicode":"👅","tags":["body"]},{"unicode":"👄","tags":["lips"]},{"unicode":"👶","tags":["young"],"skins":[{"unicode":"👶🏻"},{"unicode":"👶🏼"},{"unicode":"👶🏽"},{"unicode":"👶🏾"},{"unicode":"👶🏿"}]},{"unicode":"🧒","tags":["gender-neutral","unspecified gender","young"],"skins":[{"unicode":"🧒🏻"},{"unicode":"🧒🏼"},{"unicode":"🧒🏽"},{"unicode":"🧒🏾"},{"unicode":"🧒🏿"}]},{"unicode":"👦","tags":["young"],"skins":[{"unicode":"👦🏻"},{"unicode":"👦🏼"},{"unicode":"👦🏽"},{"unicode":"👦🏾"},{"unicode":"👦🏿"}]},{"unicode":"👧","tags":["virgo","young","zodiac"],"skins":[{"unicode":"👧🏻"},{"unicode":"👧🏼"},{"unicode":"👧🏽"},{"unicode":"👧🏾"},{"unicode":"👧🏿"}]},{"unicode":"🧑","tags":["adult","gender-neutral","unspecified gender"],"skins":[{"unicode":"🧑🏻"},{"unicode":"🧑🏼"},{"unicode":"🧑🏽"},{"unicode":"🧑🏾"},{"unicode":"🧑🏿"}]},{"unicode":"👱","tags":["blond","blond-haired person","hair"],"skins":[{"unicode":"👱🏻"},{"unicode":"👱🏼"},{"unicode":"👱🏽"},{"unicode":"👱🏾"},{"unicode":"👱🏿"}]},{"unicode":"👨","tags":["adult"],"skins":[{"unicode":"👨🏻"},{"unicode":"👨🏼"},{"unicode":"👨🏽"},{"unicode":"👨🏾"},{"unicode":"👨🏿"}]},{"unicode":"🧔","tags":["beard","man","person"],"skins":[{"unicode":"🧔🏻"},{"unicode":"🧔🏼"},{"unicode":"🧔🏽"},{"unicode":"🧔🏾"},{"unicode":"🧔🏿"}]},{"unicode":"👨‍🦰","tags":["adult","man","red hair"],"skins":[{"unicode":"👨🏻‍🦰"},{"unicode":"👨🏼‍🦰"},{"unicode":"👨🏽‍🦰"},{"unicode":"👨🏾‍🦰"},{"unicode":"👨🏿‍🦰"}]},{"unicode":"👨‍🦱","tags":["adult","curly hair","man"],"skins":[{"unicode":"👨🏻‍🦱"},{"unicode":"👨🏼‍🦱"},{"unicode":"👨🏽‍🦱"},{"unicode":"👨🏾‍🦱"},{"unicode":"👨🏿‍🦱"}]},{"unicode":"👨‍🦳","tags":["adult","man","white hair"],"skins":[{"unicode":"👨🏻‍🦳"},{"unicode":"👨🏼‍🦳"},{"unicode":"👨🏽‍🦳"},{"unicode":"👨🏾‍🦳"},{"unicode":"👨🏿‍🦳"}]},{"unicode":"👨‍🦲","tags":["adult","bald","man"],"skins":[{"unicode":"👨🏻‍🦲"},{"unicode":"👨🏼‍🦲"},{"unicode":"👨🏽‍🦲"},{"unicode":"👨🏾‍🦲"},{"unicode":"👨🏿‍🦲"}]},{"unicode":"👩","tags":["adult"],"skins":[{"unicode":"👩🏻"},{"unicode":"👩🏼"},{"unicode":"👩🏽"},{"unicode":"👩🏾"},{"unicode":"👩🏿"}]},{"unicode":"👩‍🦰","tags":["adult","red hair","woman"],"skins":[{"unicode":"👩🏻‍🦰"},{"unicode":"👩🏼‍🦰"},{"unicode":"👩🏽‍🦰"},{"unicode":"👩🏾‍🦰"},{"unicode":"👩🏿‍🦰"}]},{"unicode":"🧑‍🦰","tags":["adult","gender-neutral","person","red hair","unspecified gender"],"skins":[{"unicode":"🧑🏻‍🦰"},{"unicode":"🧑🏼‍🦰"},{"unicode":"🧑🏽‍🦰"},{"unicode":"🧑🏾‍🦰"},{"unicode":"🧑🏿‍🦰"}]},{"unicode":"👩‍🦱","tags":["adult","curly hair","woman"],"skins":[{"unicode":"👩🏻‍🦱"},{"unicode":"👩🏼‍🦱"},{"unicode":"👩🏽‍🦱"},{"unicode":"👩🏾‍🦱"},{"unicode":"👩🏿‍🦱"}]},{"unicode":"🧑‍🦱","tags":["adult","curly hair","gender-neutral","person","unspecified gender"],"skins":[{"unicode":"🧑🏻‍🦱"},{"unicode":"🧑🏼‍🦱"},{"unicode":"🧑🏽‍🦱"},{"unicode":"🧑🏾‍🦱"},{"unicode":"🧑🏿‍🦱"}]},{"unicode":"👩‍🦳","tags":["adult","white hair","woman"],"skins":[{"unicode":"👩🏻‍🦳"},{"unicode":"👩🏼‍🦳"},{"unicode":"👩🏽‍🦳"},{"unicode":"👩🏾‍🦳"},{"unicode":"👩🏿‍🦳"}]},{"unicode":"🧑‍🦳","tags":["adult","gender-neutral","person","unspecified gender","white hair"],"skins":[{"unicode":"🧑🏻‍🦳"},{"unicode":"🧑🏼‍🦳"},{"unicode":"🧑🏽‍🦳"},{"unicode":"🧑🏾‍🦳"},{"unicode":"🧑🏿‍🦳"}]},{"unicode":"👩‍🦲","tags":["adult","bald","woman"],"skins":[{"unicode":"👩🏻‍🦲"},{"unicode":"👩🏼‍🦲"},{"unicode":"👩🏽‍🦲"},{"unicode":"👩🏾‍🦲"},{"unicode":"👩🏿‍🦲"}]},{"unicode":"🧑‍🦲","tags":["adult","bald","gender-neutral","person","unspecified gender"],"skins":[{"unicode":"🧑🏻‍🦲"},{"unicode":"🧑🏼‍🦲"},{"unicode":"🧑🏽‍🦲"},{"unicode":"🧑🏾‍🦲"},{"unicode":"🧑🏿‍🦲"}]},{"unicode":"👱‍♀️","tags":["blond-haired woman","blonde","hair","woman"],"skins":[{"unicode":"👱🏻‍♀️"},{"unicode":"👱🏼‍♀️"},{"unicode":"👱🏽‍♀️"},{"unicode":"👱🏾‍♀️"},{"unicode":"👱🏿‍♀️"}]},{"unicode":"👱‍♂️","tags":["blond","blond-haired man","hair","man"],"skins":[{"unicode":"👱🏻‍♂️"},{"unicode":"👱🏼‍♂️"},{"unicode":"👱🏽‍♂️"},{"unicode":"👱🏾‍♂️"},{"unicode":"👱🏿‍♂️"}]},{"unicode":"🧓","tags":["adult","gender-neutral","old","unspecified gender"],"skins":[{"unicode":"🧓🏻"},{"unicode":"🧓🏼"},{"unicode":"🧓🏽"},{"unicode":"🧓🏾"},{"unicode":"🧓🏿"}]},{"unicode":"👴","tags":["adult","man","old"],"skins":[{"unicode":"👴🏻"},{"unicode":"👴🏼"},{"unicode":"👴🏽"},{"unicode":"👴🏾"},{"unicode":"👴🏿"}]},{"unicode":"👵","tags":["adult","old","woman"],"skins":[{"unicode":"👵🏻"},{"unicode":"👵🏼"},{"unicode":"👵🏽"},{"unicode":"👵🏾"},{"unicode":"👵🏿"}]},{"unicode":"🙍","tags":["frown","gesture"],"skins":[{"unicode":"🙍🏻"},{"unicode":"🙍🏼"},{"unicode":"🙍🏽"},{"unicode":"🙍🏾"},{"unicode":"🙍🏿"}]},{"unicode":"🙍‍♂️","tags":["frowning","gesture","man"],"skins":[{"unicode":"🙍🏻‍♂️"},{"unicode":"🙍🏼‍♂️"},{"unicode":"🙍🏽‍♂️"},{"unicode":"🙍🏾‍♂️"},{"unicode":"🙍🏿‍♂️"}]},{"unicode":"🙍‍♀️","tags":["frowning","gesture","woman"],"skins":[{"unicode":"🙍🏻‍♀️"},{"unicode":"🙍🏼‍♀️"},{"unicode":"🙍🏽‍♀️"},{"unicode":"🙍🏾‍♀️"},{"unicode":"🙍🏿‍♀️"}]},{"unicode":"🙎","tags":["gesture","pouting"],"skins":[{"unicode":"🙎🏻"},{"unicode":"🙎🏼"},{"unicode":"🙎🏽"},{"unicode":"🙎🏾"},{"unicode":"🙎🏿"}]},{"unicode":"🙎‍♂️","tags":["gesture","man","pouting"],"skins":[{"unicode":"🙎🏻‍♂️"},{"unicode":"🙎🏼‍♂️"},{"unicode":"🙎🏽‍♂️"},{"unicode":"🙎🏾‍♂️"},{"unicode":"🙎🏿‍♂️"}]},{"unicode":"🙎‍♀️","tags":["gesture","pouting","woman"],"skins":[{"unicode":"🙎🏻‍♀️"},{"unicode":"🙎🏼‍♀️"},{"unicode":"🙎🏽‍♀️"},{"unicode":"🙎🏾‍♀️"},{"unicode":"🙎🏿‍♀️"}]},{"unicode":"🙅","tags":["forbidden","gesture","hand","person gesturing no","prohibited"],"skins":[{"unicode":"🙅🏻"},{"unicode":"🙅🏼"},{"unicode":"🙅🏽"},{"unicode":"🙅🏾"},{"unicode":"🙅🏿"}]},{"unicode":"🙅‍♂️","tags":["forbidden","gesture","hand","man","man gesturing no","prohibited"],"skins":[{"unicode":"🙅🏻‍♂️"},{"unicode":"🙅🏼‍♂️"},{"unicode":"🙅🏽‍♂️"},{"unicode":"🙅🏾‍♂️"},{"unicode":"🙅🏿‍♂️"}]},{"unicode":"🙅‍♀️","tags":["forbidden","gesture","hand","prohibited","woman","woman gesturing no"],"skins":[{"unicode":"🙅🏻‍♀️"},{"unicode":"🙅🏼‍♀️"},{"unicode":"🙅🏽‍♀️"},{"unicode":"🙅🏾‍♀️"},{"unicode":"🙅🏿‍♀️"}]},{"unicode":"🙆","tags":["gesture","hand","ok","person gesturing ok"],"skins":[{"unicode":"🙆🏻"},{"unicode":"🙆🏼"},{"unicode":"🙆🏽"},{"unicode":"🙆🏾"},{"unicode":"🙆🏿"}]},{"unicode":"🙆‍♂️","tags":["gesture","hand","man","man gesturing ok","ok"],"skins":[{"unicode":"🙆🏻‍♂️"},{"unicode":"🙆🏼‍♂️"},{"unicode":"🙆🏽‍♂️"},{"unicode":"🙆🏾‍♂️"},{"unicode":"🙆🏿‍♂️"}]},{"unicode":"🙆‍♀️","tags":["gesture","hand","ok","woman","woman gesturing ok"],"skins":[{"unicode":"🙆🏻‍♀️"},{"unicode":"🙆🏼‍♀️"},{"unicode":"🙆🏽‍♀️"},{"unicode":"🙆🏾‍♀️"},{"unicode":"🙆🏿‍♀️"}]},{"unicode":"💁","tags":["hand","help","information","sassy","tipping"],"skins":[{"unicode":"💁🏻"},{"unicode":"💁🏼"},{"unicode":"💁🏽"},{"unicode":"💁🏾"},{"unicode":"💁🏿"}]},{"unicode":"💁‍♂️","tags":["man","sassy","tipping hand"],"skins":[{"unicode":"💁🏻‍♂️"},{"unicode":"💁🏼‍♂️"},{"unicode":"💁🏽‍♂️"},{"unicode":"💁🏾‍♂️"},{"unicode":"💁🏿‍♂️"}]},{"unicode":"💁‍♀️","tags":["sassy","tipping hand","woman"],"skins":[{"unicode":"💁🏻‍♀️"},{"unicode":"💁🏼‍♀️"},{"unicode":"💁🏽‍♀️"},{"unicode":"💁🏾‍♀️"},{"unicode":"💁🏿‍♀️"}]},{"unicode":"🙋","tags":["gesture","hand","happy","raised"],"skins":[{"unicode":"🙋🏻"},{"unicode":"🙋🏼"},{"unicode":"🙋🏽"},{"unicode":"🙋🏾"},{"unicode":"🙋🏿"}]},{"unicode":"🙋‍♂️","tags":["gesture","man","raising hand"],"skins":[{"unicode":"🙋🏻‍♂️"},{"unicode":"🙋🏼‍♂️"},{"unicode":"🙋🏽‍♂️"},{"unicode":"🙋🏾‍♂️"},{"unicode":"🙋🏿‍♂️"}]},{"unicode":"🙋‍♀️","tags":["gesture","raising hand","woman"],"skins":[{"unicode":"🙋🏻‍♀️"},{"unicode":"🙋🏼‍♀️"},{"unicode":"🙋🏽‍♀️"},{"unicode":"🙋🏾‍♀️"},{"unicode":"🙋🏿‍♀️"}]},{"unicode":"🧏","tags":["accessibility","deaf","ear","hear"],"skins":[{"unicode":"🧏🏻"},{"unicode":"🧏🏼"},{"unicode":"🧏🏽"},{"unicode":"🧏🏾"},{"unicode":"🧏🏿"}]},{"unicode":"🧏‍♂️","tags":["deaf","man"],"skins":[{"unicode":"🧏🏻‍♂️"},{"unicode":"🧏🏼‍♂️"},{"unicode":"🧏🏽‍♂️"},{"unicode":"🧏🏾‍♂️"},{"unicode":"🧏🏿‍♂️"}]},{"unicode":"🧏‍♀️","tags":["deaf","woman"],"skins":[{"unicode":"🧏🏻‍♀️"},{"unicode":"🧏🏼‍♀️"},{"unicode":"🧏🏽‍♀️"},{"unicode":"🧏🏾‍♀️"},{"unicode":"🧏🏿‍♀️"}]},{"unicode":"🙇","tags":["apology","bow","gesture","sorry"],"skins":[{"unicode":"🙇🏻"},{"unicode":"🙇🏼"},{"unicode":"🙇🏽"},{"unicode":"🙇🏾"},{"unicode":"🙇🏿"}]},{"unicode":"🙇‍♂️","tags":["apology","bowing","favor","gesture","man","sorry"],"skins":[{"unicode":"🙇🏻‍♂️"},{"unicode":"🙇🏼‍♂️"},{"unicode":"🙇🏽‍♂️"},{"unicode":"🙇🏾‍♂️"},{"unicode":"🙇🏿‍♂️"}]},{"unicode":"🙇‍♀️","tags":["apology","bowing","favor","gesture","sorry","woman"],"skins":[{"unicode":"🙇🏻‍♀️"},{"unicode":"🙇🏼‍♀️"},{"unicode":"🙇🏽‍♀️"},{"unicode":"🙇🏾‍♀️"},{"unicode":"🙇🏿‍♀️"}]},{"unicode":"🤦","tags":["disbelief","exasperation","face","palm"],"skins":[{"unicode":"🤦🏻"},{"unicode":"🤦🏼"},{"unicode":"🤦🏽"},{"unicode":"🤦🏾"},{"unicode":"🤦🏿"}]},{"unicode":"🤦‍♂️","tags":["disbelief","exasperation","facepalm","man"],"skins":[{"unicode":"🤦🏻‍♂️"},{"unicode":"🤦🏼‍♂️"},{"unicode":"🤦🏽‍♂️"},{"unicode":"🤦🏾‍♂️"},{"unicode":"🤦🏿‍♂️"}]},{"unicode":"🤦‍♀️","tags":["disbelief","exasperation","facepalm","woman"],"skins":[{"unicode":"🤦🏻‍♀️"},{"unicode":"🤦🏼‍♀️"},{"unicode":"🤦🏽‍♀️"},{"unicode":"🤦🏾‍♀️"},{"unicode":"🤦🏿‍♀️"}]},{"unicode":"🤷","tags":["doubt","ignorance","indifference","shrug"],"skins":[{"unicode":"🤷🏻"},{"unicode":"🤷🏼"},{"unicode":"🤷🏽"},{"unicode":"🤷🏾"},{"unicode":"🤷🏿"}]},{"unicode":"🤷‍♂️","tags":["doubt","ignorance","indifference","man","shrug"],"skins":[{"unicode":"🤷🏻‍♂️"},{"unicode":"🤷🏼‍♂️"},{"unicode":"🤷🏽‍♂️"},{"unicode":"🤷🏾‍♂️"},{"unicode":"🤷🏿‍♂️"}]},{"unicode":"🤷‍♀️","tags":["doubt","ignorance","indifference","shrug","woman"],"skins":[{"unicode":"🤷🏻‍♀️"},{"unicode":"🤷🏼‍♀️"},{"unicode":"🤷🏽‍♀️"},{"unicode":"🤷🏾‍♀️"},{"unicode":"🤷🏿‍♀️"}]},{"unicode":"🧑‍⚕️","tags":["doctor","healthcare","nurse","therapist"],"skins":[{"unicode":"🧑🏻‍⚕️"},{"unicode":"🧑🏼‍⚕️"},{"unicode":"🧑🏽‍⚕️"},{"unicode":"🧑🏾‍⚕️"},{"unicode":"🧑🏿‍⚕️"}]},{"unicode":"👨‍⚕️","tags":["doctor","healthcare","man","nurse","therapist"],"skins":[{"unicode":"👨🏻‍⚕️"},{"unicode":"👨🏼‍⚕️"},{"unicode":"👨🏽‍⚕️"},{"unicode":"👨🏾‍⚕️"},{"unicode":"👨🏿‍⚕️"}]},{"unicode":"👩‍⚕️","tags":["doctor","healthcare","nurse","therapist","woman"],"skins":[{"unicode":"👩🏻‍⚕️"},{"unicode":"👩🏼‍⚕️"},{"unicode":"👩🏽‍⚕️"},{"unicode":"👩🏾‍⚕️"},{"unicode":"👩🏿‍⚕️"}]},{"unicode":"🧑‍🎓","tags":["graduate"],"skins":[{"unicode":"🧑🏻‍🎓"},{"unicode":"🧑🏼‍🎓"},{"unicode":"🧑🏽‍🎓"},{"unicode":"🧑🏾‍🎓"},{"unicode":"🧑🏿‍🎓"}]},{"unicode":"👨‍🎓","tags":["graduate","man","student"],"skins":[{"unicode":"👨🏻‍🎓"},{"unicode":"👨🏼‍🎓"},{"unicode":"👨🏽‍🎓"},{"unicode":"👨🏾‍🎓"},{"unicode":"👨🏿‍🎓"}]},{"unicode":"👩‍🎓","tags":["graduate","student","woman"],"skins":[{"unicode":"👩🏻‍🎓"},{"unicode":"👩🏼‍🎓"},{"unicode":"👩🏽‍🎓"},{"unicode":"👩🏾‍🎓"},{"unicode":"👩🏿‍🎓"}]},{"unicode":"🧑‍🏫","tags":["instructor","professor"],"skins":[{"unicode":"🧑🏻‍🏫"},{"unicode":"🧑🏼‍🏫"},{"unicode":"🧑🏽‍🏫"},{"unicode":"🧑🏾‍🏫"},{"unicode":"🧑🏿‍🏫"}]},{"unicode":"👨‍🏫","tags":["instructor","man","professor","teacher"],"skins":[{"unicode":"👨🏻‍🏫"},{"unicode":"👨🏼‍🏫"},{"unicode":"👨🏽‍🏫"},{"unicode":"👨🏾‍🏫"},{"unicode":"👨🏿‍🏫"}]},{"unicode":"👩‍🏫","tags":["instructor","professor","teacher","woman"],"skins":[{"unicode":"👩🏻‍🏫"},{"unicode":"👩🏼‍🏫"},{"unicode":"👩🏽‍🏫"},{"unicode":"👩🏾‍🏫"},{"unicode":"👩🏿‍🏫"}]},{"unicode":"🧑‍⚖️","tags":["scales"],"skins":[{"unicode":"🧑🏻‍⚖️"},{"unicode":"🧑🏼‍⚖️"},{"unicode":"🧑🏽‍⚖️"},{"unicode":"🧑🏾‍⚖️"},{"unicode":"🧑🏿‍⚖️"}]},{"unicode":"👨‍⚖️","tags":["justice","man","scales"],"skins":[{"unicode":"👨🏻‍⚖️"},{"unicode":"👨🏼‍⚖️"},{"unicode":"👨🏽‍⚖️"},{"unicode":"👨🏾‍⚖️"},{"unicode":"👨🏿‍⚖️"}]},{"unicode":"👩‍⚖️","tags":["judge","scales","woman"],"skins":[{"unicode":"👩🏻‍⚖️"},{"unicode":"👩🏼‍⚖️"},{"unicode":"👩🏽‍⚖️"},{"unicode":"👩🏾‍⚖️"},{"unicode":"👩🏿‍⚖️"}]},{"unicode":"🧑‍🌾","tags":["gardener","rancher"],"skins":[{"unicode":"🧑🏻‍🌾"},{"unicode":"🧑🏼‍🌾"},{"unicode":"🧑🏽‍🌾"},{"unicode":"🧑🏾‍🌾"},{"unicode":"🧑🏿‍🌾"}]},{"unicode":"👨‍🌾","tags":["farmer","gardener","man","rancher"],"skins":[{"unicode":"👨🏻‍🌾"},{"unicode":"👨🏼‍🌾"},{"unicode":"👨🏽‍🌾"},{"unicode":"👨🏾‍🌾"},{"unicode":"👨🏿‍🌾"}]},{"unicode":"👩‍🌾","tags":["farmer","gardener","rancher","woman"],"skins":[{"unicode":"👩🏻‍🌾"},{"unicode":"👩🏼‍🌾"},{"unicode":"👩🏽‍🌾"},{"unicode":"👩🏾‍🌾"},{"unicode":"👩🏿‍🌾"}]},{"unicode":"🧑‍🍳","tags":["chef"],"skins":[{"unicode":"🧑🏻‍🍳"},{"unicode":"🧑🏼‍🍳"},{"unicode":"🧑🏽‍🍳"},{"unicode":"🧑🏾‍🍳"},{"unicode":"🧑🏿‍🍳"}]},{"unicode":"👨‍🍳","tags":["chef","cook","man"],"skins":[{"unicode":"👨🏻‍🍳"},{"unicode":"👨🏼‍🍳"},{"unicode":"👨🏽‍🍳"},{"unicode":"👨🏾‍🍳"},{"unicode":"👨🏿‍🍳"}]},{"unicode":"👩‍🍳","tags":["chef","cook","woman"],"skins":[{"unicode":"👩🏻‍🍳"},{"unicode":"👩🏼‍🍳"},{"unicode":"👩🏽‍🍳"},{"unicode":"👩🏾‍🍳"},{"unicode":"👩🏿‍🍳"}]},{"unicode":"🧑‍🔧","tags":["electrician","plumber","tradesperson"],"skins":[{"unicode":"🧑🏻‍🔧"},{"unicode":"🧑🏼‍🔧"},{"unicode":"🧑🏽‍🔧"},{"unicode":"🧑🏾‍🔧"},{"unicode":"🧑🏿‍🔧"}]},{"unicode":"👨‍🔧","tags":["electrician","man","mechanic","plumber","tradesperson"],"skins":[{"unicode":"👨🏻‍🔧"},{"unicode":"👨🏼‍🔧"},{"unicode":"👨🏽‍🔧"},{"unicode":"👨🏾‍🔧"},{"unicode":"👨🏿‍🔧"}]},{"unicode":"👩‍🔧","tags":["electrician","mechanic","plumber","tradesperson","woman"],"skins":[{"unicode":"👩🏻‍🔧"},{"unicode":"👩🏼‍🔧"},{"unicode":"👩🏽‍🔧"},{"unicode":"👩🏾‍🔧"},{"unicode":"👩🏿‍🔧"}]},{"unicode":"🧑‍🏭","tags":["assembly","factory","industrial","worker"],"skins":[{"unicode":"🧑🏻‍🏭"},{"unicode":"🧑🏼‍🏭"},{"unicode":"🧑🏽‍🏭"},{"unicode":"🧑🏾‍🏭"},{"unicode":"🧑🏿‍🏭"}]},{"unicode":"👨‍🏭","tags":["assembly","factory","industrial","man","worker"],"skins":[{"unicode":"👨🏻‍🏭"},{"unicode":"👨🏼‍🏭"},{"unicode":"👨🏽‍🏭"},{"unicode":"👨🏾‍🏭"},{"unicode":"👨🏿‍🏭"}]},{"unicode":"👩‍🏭","tags":["assembly","factory","industrial","woman","worker"],"skins":[{"unicode":"👩🏻‍🏭"},{"unicode":"👩🏼‍🏭"},{"unicode":"👩🏽‍🏭"},{"unicode":"👩🏾‍🏭"},{"unicode":"👩🏿‍🏭"}]},{"unicode":"🧑‍💼","tags":["architect","business","manager","white-collar"],"skins":[{"unicode":"🧑🏻‍💼"},{"unicode":"🧑🏼‍💼"},{"unicode":"🧑🏽‍💼"},{"unicode":"🧑🏾‍💼"},{"unicode":"🧑🏿‍💼"}]},{"unicode":"👨‍💼","tags":["architect","business","man","manager","white-collar"],"skins":[{"unicode":"👨🏻‍💼"},{"unicode":"👨🏼‍💼"},{"unicode":"👨🏽‍💼"},{"unicode":"👨🏾‍💼"},{"unicode":"👨🏿‍💼"}]},{"unicode":"👩‍💼","tags":["architect","business","manager","white-collar","woman"],"skins":[{"unicode":"👩🏻‍💼"},{"unicode":"👩🏼‍💼"},{"unicode":"👩🏽‍💼"},{"unicode":"👩🏾‍💼"},{"unicode":"👩🏿‍💼"}]},{"unicode":"🧑‍🔬","tags":["biologist","chemist","engineer","physicist"],"skins":[{"unicode":"🧑🏻‍🔬"},{"unicode":"🧑🏼‍🔬"},{"unicode":"🧑🏽‍🔬"},{"unicode":"🧑🏾‍🔬"},{"unicode":"🧑🏿‍🔬"}]},{"unicode":"👨‍🔬","tags":["biologist","chemist","engineer","man","physicist","scientist"],"skins":[{"unicode":"👨🏻‍🔬"},{"unicode":"👨🏼‍🔬"},{"unicode":"👨🏽‍🔬"},{"unicode":"👨🏾‍🔬"},{"unicode":"👨🏿‍🔬"}]},{"unicode":"👩‍🔬","tags":["biologist","chemist","engineer","physicist","scientist","woman"],"skins":[{"unicode":"👩🏻‍🔬"},{"unicode":"👩🏼‍🔬"},{"unicode":"👩🏽‍🔬"},{"unicode":"👩🏾‍🔬"},{"unicode":"👩🏿‍🔬"}]},{"unicode":"🧑‍💻","tags":["coder","developer","inventor","software"],"skins":[{"unicode":"🧑🏻‍💻"},{"unicode":"🧑🏼‍💻"},{"unicode":"🧑🏽‍💻"},{"unicode":"🧑🏾‍💻"},{"unicode":"🧑🏿‍💻"}]},{"unicode":"👨‍💻","tags":["coder","developer","inventor","man","software","technologist"],"skins":[{"unicode":"👨🏻‍💻"},{"unicode":"👨🏼‍💻"},{"unicode":"👨🏽‍💻"},{"unicode":"👨🏾‍💻"},{"unicode":"👨🏿‍💻"}]},{"unicode":"👩‍💻","tags":["coder","developer","inventor","software","technologist","woman"],"skins":[{"unicode":"👩🏻‍💻"},{"unicode":"👩🏼‍💻"},{"unicode":"👩🏽‍💻"},{"unicode":"👩🏾‍💻"},{"unicode":"👩🏿‍💻"}]},{"unicode":"🧑‍🎤","tags":["actor","entertainer","rock","star"],"skins":[{"unicode":"🧑🏻‍🎤"},{"unicode":"🧑🏼‍🎤"},{"unicode":"🧑🏽‍🎤"},{"unicode":"🧑🏾‍🎤"},{"unicode":"🧑🏿‍🎤"}]},{"unicode":"👨‍🎤","tags":["actor","entertainer","man","rock","singer","star"],"skins":[{"unicode":"👨🏻‍🎤"},{"unicode":"👨🏼‍🎤"},{"unicode":"👨🏽‍🎤"},{"unicode":"👨🏾‍🎤"},{"unicode":"👨🏿‍🎤"}]},{"unicode":"👩‍🎤","tags":["actor","entertainer","rock","singer","star","woman"],"skins":[{"unicode":"👩🏻‍🎤"},{"unicode":"👩🏼‍🎤"},{"unicode":"👩🏽‍🎤"},{"unicode":"👩🏾‍🎤"},{"unicode":"👩🏿‍🎤"}]},{"unicode":"🧑‍🎨","tags":["palette"],"skins":[{"unicode":"🧑🏻‍🎨"},{"unicode":"🧑🏼‍🎨"},{"unicode":"🧑🏽‍🎨"},{"unicode":"🧑🏾‍🎨"},{"unicode":"🧑🏿‍🎨"}]},{"unicode":"👨‍🎨","tags":["artist","man","palette"],"skins":[{"unicode":"👨🏻‍🎨"},{"unicode":"👨🏼‍🎨"},{"unicode":"👨🏽‍🎨"},{"unicode":"👨🏾‍🎨"},{"unicode":"👨🏿‍🎨"}]},{"unicode":"👩‍🎨","tags":["artist","palette","woman"],"skins":[{"unicode":"👩🏻‍🎨"},{"unicode":"👩🏼‍🎨"},{"unicode":"👩🏽‍🎨"},{"unicode":"👩🏾‍🎨"},{"unicode":"👩🏿‍🎨"}]},{"unicode":"🧑‍✈️","tags":["plane"],"skins":[{"unicode":"🧑🏻‍✈️"},{"unicode":"🧑🏼‍✈️"},{"unicode":"🧑🏽‍✈️"},{"unicode":"🧑🏾‍✈️"},{"unicode":"🧑🏿‍✈️"}]},{"unicode":"👨‍✈️","tags":["man","pilot","plane"],"skins":[{"unicode":"👨🏻‍✈️"},{"unicode":"👨🏼‍✈️"},{"unicode":"👨🏽‍✈️"},{"unicode":"👨🏾‍✈️"},{"unicode":"👨🏿‍✈️"}]},{"unicode":"👩‍✈️","tags":["pilot","plane","woman"],"skins":[{"unicode":"👩🏻‍✈️"},{"unicode":"👩🏼‍✈️"},{"unicode":"👩🏽‍✈️"},{"unicode":"👩🏾‍✈️"},{"unicode":"👩🏿‍✈️"}]},{"unicode":"🧑‍🚀","tags":["rocket"],"skins":[{"unicode":"🧑🏻‍🚀"},{"unicode":"🧑🏼‍🚀"},{"unicode":"🧑🏽‍🚀"},{"unicode":"🧑🏾‍🚀"},{"unicode":"🧑🏿‍🚀"}]},{"unicode":"👨‍🚀","tags":["astronaut","man","rocket"],"skins":[{"unicode":"👨🏻‍🚀"},{"unicode":"👨🏼‍🚀"},{"unicode":"👨🏽‍🚀"},{"unicode":"👨🏾‍🚀"},{"unicode":"👨🏿‍🚀"}]},{"unicode":"👩‍🚀","tags":["astronaut","rocket","woman"],"skins":[{"unicode":"👩🏻‍🚀"},{"unicode":"👩🏼‍🚀"},{"unicode":"👩🏽‍🚀"},{"unicode":"👩🏾‍🚀"},{"unicode":"👩🏿‍🚀"}]},{"unicode":"🧑‍🚒","tags":["firetruck"],"skins":[{"unicode":"🧑🏻‍🚒"},{"unicode":"🧑🏼‍🚒"},{"unicode":"🧑🏽‍🚒"},{"unicode":"🧑🏾‍🚒"},{"unicode":"🧑🏿‍🚒"}]},{"unicode":"👨‍🚒","tags":["firefighter","firetruck","man"],"skins":[{"unicode":"👨🏻‍🚒"},{"unicode":"👨🏼‍🚒"},{"unicode":"👨🏽‍🚒"},{"unicode":"👨🏾‍🚒"},{"unicode":"👨🏿‍🚒"}]},{"unicode":"👩‍🚒","tags":["firefighter","firetruck","woman"],"skins":[{"unicode":"👩🏻‍🚒"},{"unicode":"👩🏼‍🚒"},{"unicode":"👩🏽‍🚒"},{"unicode":"👩🏾‍🚒"},{"unicode":"👩🏿‍🚒"}]},{"unicode":"👮","tags":["cop","officer","police"],"skins":[{"unicode":"👮🏻"},{"unicode":"👮🏼"},{"unicode":"👮🏽"},{"unicode":"👮🏾"},{"unicode":"👮🏿"}]},{"unicode":"👮‍♂️","tags":["cop","man","officer","police"],"skins":[{"unicode":"👮🏻‍♂️"},{"unicode":"👮🏼‍♂️"},{"unicode":"👮🏽‍♂️"},{"unicode":"👮🏾‍♂️"},{"unicode":"👮🏿‍♂️"}]},{"unicode":"👮‍♀️","tags":["cop","officer","police","woman"],"skins":[{"unicode":"👮🏻‍♀️"},{"unicode":"👮🏼‍♀️"},{"unicode":"👮🏽‍♀️"},{"unicode":"👮🏾‍♀️"},{"unicode":"👮🏿‍♀️"}]},{"unicode":"🕵️","tags":["sleuth","spy"],"skins":[{"unicode":"🕵🏻"},{"unicode":"🕵🏼"},{"unicode":"🕵🏽"},{"unicode":"🕵🏾"},{"unicode":"🕵🏿"}]},{"unicode":"🕵️‍♂️","tags":["detective","man","sleuth","spy"],"skins":[{"unicode":"🕵🏻‍♂️"},{"unicode":"🕵🏼‍♂️"},{"unicode":"🕵🏽‍♂️"},{"unicode":"🕵🏾‍♂️"},{"unicode":"🕵🏿‍♂️"}]},{"unicode":"🕵️‍♀️","tags":["detective","sleuth","spy","woman"],"skins":[{"unicode":"🕵🏻‍♀️"},{"unicode":"🕵🏼‍♀️"},{"unicode":"🕵🏽‍♀️"},{"unicode":"🕵🏾‍♀️"},{"unicode":"🕵🏿‍♀️"}]},{"unicode":"💂","tags":["guard"],"skins":[{"unicode":"💂🏻"},{"unicode":"💂🏼"},{"unicode":"💂🏽"},{"unicode":"💂🏾"},{"unicode":"💂🏿"}]},{"unicode":"💂‍♂️","tags":["guard","man"],"skins":[{"unicode":"💂🏻‍♂️"},{"unicode":"💂🏼‍♂️"},{"unicode":"💂🏽‍♂️"},{"unicode":"💂🏾‍♂️"},{"unicode":"💂🏿‍♂️"}]},{"unicode":"💂‍♀️","tags":["guard","woman"],"skins":[{"unicode":"💂🏻‍♀️"},{"unicode":"💂🏼‍♀️"},{"unicode":"💂🏽‍♀️"},{"unicode":"💂🏾‍♀️"},{"unicode":"💂🏿‍♀️"}]},{"unicode":"🥷","tags":["fighter","hidden","stealth"],"skins":[{"unicode":"🥷🏻"},{"unicode":"🥷🏼"},{"unicode":"🥷🏽"},{"unicode":"🥷🏾"},{"unicode":"🥷🏿"}]},{"unicode":"👷","tags":["construction","hat","worker"],"skins":[{"unicode":"👷🏻"},{"unicode":"👷🏼"},{"unicode":"👷🏽"},{"unicode":"👷🏾"},{"unicode":"👷🏿"}]},{"unicode":"👷‍♂️","tags":["construction","man","worker"],"skins":[{"unicode":"👷🏻‍♂️"},{"unicode":"👷🏼‍♂️"},{"unicode":"👷🏽‍♂️"},{"unicode":"👷🏾‍♂️"},{"unicode":"👷🏿‍♂️"}]},{"unicode":"👷‍♀️","tags":["construction","woman","worker"],"skins":[{"unicode":"👷🏻‍♀️"},{"unicode":"👷🏼‍♀️"},{"unicode":"👷🏽‍♀️"},{"unicode":"👷🏾‍♀️"},{"unicode":"👷🏿‍♀️"}]},{"unicode":"🤴","tags":["prince"],"skins":[{"unicode":"🤴🏻"},{"unicode":"🤴🏼"},{"unicode":"🤴🏽"},{"unicode":"🤴🏾"},{"unicode":"🤴🏿"}]},{"unicode":"👸","tags":["fairy tale","fantasy"],"skins":[{"unicode":"👸🏻"},{"unicode":"👸🏼"},{"unicode":"👸🏽"},{"unicode":"👸🏾"},{"unicode":"👸🏿"}]},{"unicode":"👳","tags":["turban"],"skins":[{"unicode":"👳🏻"},{"unicode":"👳🏼"},{"unicode":"👳🏽"},{"unicode":"👳🏾"},{"unicode":"👳🏿"}]},{"unicode":"👳‍♂️","tags":["man","turban"],"skins":[{"unicode":"👳🏻‍♂️"},{"unicode":"👳🏼‍♂️"},{"unicode":"👳🏽‍♂️"},{"unicode":"👳🏾‍♂️"},{"unicode":"👳🏿‍♂️"}]},{"unicode":"👳‍♀️","tags":["turban","woman"],"skins":[{"unicode":"👳🏻‍♀️"},{"unicode":"👳🏼‍♀️"},{"unicode":"👳🏽‍♀️"},{"unicode":"👳🏾‍♀️"},{"unicode":"👳🏿‍♀️"}]},{"unicode":"👲","tags":["cap","gua pi mao","hat","person","skullcap"],"skins":[{"unicode":"👲🏻"},{"unicode":"👲🏼"},{"unicode":"👲🏽"},{"unicode":"👲🏾"},{"unicode":"👲🏿"}]},{"unicode":"🧕","tags":["headscarf","hijab","mantilla","tichel"],"skins":[{"unicode":"🧕🏻"},{"unicode":"🧕🏼"},{"unicode":"🧕🏽"},{"unicode":"🧕🏾"},{"unicode":"🧕🏿"}]},{"unicode":"🤵","tags":["groom","person","tuxedo"],"skins":[{"unicode":"🤵🏻"},{"unicode":"🤵🏼"},{"unicode":"🤵🏽"},{"unicode":"🤵🏾"},{"unicode":"🤵🏿"}]},{"unicode":"🤵‍♂️","tags":["man","tuxedo"],"skins":[{"unicode":"🤵🏻‍♂️"},{"unicode":"🤵🏼‍♂️"},{"unicode":"🤵🏽‍♂️"},{"unicode":"🤵🏾‍♂️"},{"unicode":"🤵🏿‍♂️"}]},{"unicode":"🤵‍♀️","tags":["tuxedo","woman"],"skins":[{"unicode":"🤵🏻‍♀️"},{"unicode":"🤵🏼‍♀️"},{"unicode":"🤵🏽‍♀️"},{"unicode":"🤵🏾‍♀️"},{"unicode":"🤵🏿‍♀️"}]},{"unicode":"👰","tags":["bride","person","veil","wedding"],"skins":[{"unicode":"👰🏻"},{"unicode":"👰🏼"},{"unicode":"👰🏽"},{"unicode":"👰🏾"},{"unicode":"👰🏿"}]},{"unicode":"👰‍♂️","tags":["man","veil"],"skins":[{"unicode":"👰🏻‍♂️"},{"unicode":"👰🏼‍♂️"},{"unicode":"👰🏽‍♂️"},{"unicode":"👰🏾‍♂️"},{"unicode":"👰🏿‍♂️"}]},{"unicode":"👰‍♀️","tags":["veil","woman"],"skins":[{"unicode":"👰🏻‍♀️"},{"unicode":"👰🏼‍♀️"},{"unicode":"👰🏽‍♀️"},{"unicode":"👰🏾‍♀️"},{"unicode":"👰🏿‍♀️"}]},{"unicode":"🤰","tags":["pregnant","woman"],"skins":[{"unicode":"🤰🏻"},{"unicode":"🤰🏼"},{"unicode":"🤰🏽"},{"unicode":"🤰🏾"},{"unicode":"🤰🏿"}]},{"unicode":"🤱","tags":["baby","breast","nursing"],"skins":[{"unicode":"🤱🏻"},{"unicode":"🤱🏼"},{"unicode":"🤱🏽"},{"unicode":"🤱🏾"},{"unicode":"🤱🏿"}]},{"unicode":"👩‍🍼","tags":["baby","feeding","nursing","woman"],"skins":[{"unicode":"👩🏻‍🍼"},{"unicode":"👩🏼‍🍼"},{"unicode":"👩🏽‍🍼"},{"unicode":"👩🏾‍🍼"},{"unicode":"👩🏿‍🍼"}]},{"unicode":"👨‍🍼","tags":["baby","feeding","man","nursing"],"skins":[{"unicode":"👨🏻‍🍼"},{"unicode":"👨🏼‍🍼"},{"unicode":"👨🏽‍🍼"},{"unicode":"👨🏾‍🍼"},{"unicode":"👨🏿‍🍼"}]},{"unicode":"🧑‍🍼","tags":["baby","feeding","nursing","person"],"skins":[{"unicode":"🧑🏻‍🍼"},{"unicode":"🧑🏼‍🍼"},{"unicode":"🧑🏽‍🍼"},{"unicode":"🧑🏾‍🍼"},{"unicode":"🧑🏿‍🍼"}]},{"unicode":"👼","tags":["angel","baby","face","fairy tale","fantasy"],"skins":[{"unicode":"👼🏻"},{"unicode":"👼🏼"},{"unicode":"👼🏽"},{"unicode":"👼🏾"},{"unicode":"👼🏿"}]},{"unicode":"🎅","tags":["celebration","christmas","claus","father","santa","santa claus"],"skins":[{"unicode":"🎅🏻"},{"unicode":"🎅🏼"},{"unicode":"🎅🏽"},{"unicode":"🎅🏾"},{"unicode":"🎅🏿"}]},{"unicode":"🤶","tags":["celebration","christmas","claus","mother","mrs.","mrs. claus"],"skins":[{"unicode":"🤶🏻"},{"unicode":"🤶🏼"},{"unicode":"🤶🏽"},{"unicode":"🤶🏾"},{"unicode":"🤶🏿"}]},{"unicode":"🧑‍🎄","tags":["claus, christmas"],"skins":[{"unicode":"🧑🏻‍🎄"},{"unicode":"🧑🏼‍🎄"},{"unicode":"🧑🏽‍🎄"},{"unicode":"🧑🏾‍🎄"},{"unicode":"🧑🏿‍🎄"}]},{"unicode":"🦸","tags":["good","hero","heroine","superpower"],"skins":[{"unicode":"🦸🏻"},{"unicode":"🦸🏼"},{"unicode":"🦸🏽"},{"unicode":"🦸🏾"},{"unicode":"🦸🏿"}]},{"unicode":"🦸‍♂️","tags":["good","hero","man","superpower"],"skins":[{"unicode":"🦸🏻‍♂️"},{"unicode":"🦸🏼‍♂️"},{"unicode":"🦸🏽‍♂️"},{"unicode":"🦸🏾‍♂️"},{"unicode":"🦸🏿‍♂️"}]},{"unicode":"🦸‍♀️","tags":["good","hero","heroine","superpower","woman"],"skins":[{"unicode":"🦸🏻‍♀️"},{"unicode":"🦸🏼‍♀️"},{"unicode":"🦸🏽‍♀️"},{"unicode":"🦸🏾‍♀️"},{"unicode":"🦸🏿‍♀️"}]},{"unicode":"🦹","tags":["criminal","evil","superpower","villain"],"skins":[{"unicode":"🦹🏻"},{"unicode":"🦹🏼"},{"unicode":"🦹🏽"},{"unicode":"🦹🏾"},{"unicode":"🦹🏿"}]},{"unicode":"🦹‍♂️","tags":["criminal","evil","man","superpower","villain"],"skins":[{"unicode":"🦹🏻‍♂️"},{"unicode":"🦹🏼‍♂️"},{"unicode":"🦹🏽‍♂️"},{"unicode":"🦹🏾‍♂️"},{"unicode":"🦹🏿‍♂️"}]},{"unicode":"🦹‍♀️","tags":["criminal","evil","superpower","villain","woman"],"skins":[{"unicode":"🦹🏻‍♀️"},{"unicode":"🦹🏼‍♀️"},{"unicode":"🦹🏽‍♀️"},{"unicode":"🦹🏾‍♀️"},{"unicode":"🦹🏿‍♀️"}]},{"unicode":"🧙","tags":["sorcerer","sorceress","witch","wizard"],"skins":[{"unicode":"🧙🏻"},{"unicode":"🧙🏼"},{"unicode":"🧙🏽"},{"unicode":"🧙🏾"},{"unicode":"🧙🏿"}]},{"unicode":"🧙‍♂️","tags":["sorcerer","wizard"],"skins":[{"unicode":"🧙🏻‍♂️"},{"unicode":"🧙🏼‍♂️"},{"unicode":"🧙🏽‍♂️"},{"unicode":"🧙🏾‍♂️"},{"unicode":"🧙🏿‍♂️"}]},{"unicode":"🧙‍♀️","tags":["sorceress","witch"],"skins":[{"unicode":"🧙🏻‍♀️"},{"unicode":"🧙🏼‍♀️"},{"unicode":"🧙🏽‍♀️"},{"unicode":"🧙🏾‍♀️"},{"unicode":"🧙🏿‍♀️"}]},{"unicode":"🧚","tags":["oberon","puck","titania"],"skins":[{"unicode":"🧚🏻"},{"unicode":"🧚🏼"},{"unicode":"🧚🏽"},{"unicode":"🧚🏾"},{"unicode":"🧚🏿"}]},{"unicode":"🧚‍♂️","tags":["oberon","puck"],"skins":[{"unicode":"🧚🏻‍♂️"},{"unicode":"🧚🏼‍♂️"},{"unicode":"🧚🏽‍♂️"},{"unicode":"🧚🏾‍♂️"},{"unicode":"🧚🏿‍♂️"}]},{"unicode":"🧚‍♀️","tags":["titania"],"skins":[{"unicode":"🧚🏻‍♀️"},{"unicode":"🧚🏼‍♀️"},{"unicode":"🧚🏽‍♀️"},{"unicode":"🧚🏾‍♀️"},{"unicode":"🧚🏿‍♀️"}]},{"unicode":"🧛","tags":["dracula","undead"],"skins":[{"unicode":"🧛🏻"},{"unicode":"🧛🏼"},{"unicode":"🧛🏽"},{"unicode":"🧛🏾"},{"unicode":"🧛🏿"}]},{"unicode":"🧛‍♂️","tags":["dracula","undead"],"skins":[{"unicode":"🧛🏻‍♂️"},{"unicode":"🧛🏼‍♂️"},{"unicode":"🧛🏽‍♂️"},{"unicode":"🧛🏾‍♂️"},{"unicode":"🧛🏿‍♂️"}]},{"unicode":"🧛‍♀️","tags":["undead"],"skins":[{"unicode":"🧛🏻‍♀️"},{"unicode":"🧛🏼‍♀️"},{"unicode":"🧛🏽‍♀️"},{"unicode":"🧛🏾‍♀️"},{"unicode":"🧛🏿‍♀️"}]},{"unicode":"🧜","tags":["mermaid","merman","merwoman"],"skins":[{"unicode":"🧜🏻"},{"unicode":"🧜🏼"},{"unicode":"🧜🏽"},{"unicode":"🧜🏾"},{"unicode":"🧜🏿"}]},{"unicode":"🧜‍♂️","tags":["triton"],"skins":[{"unicode":"🧜🏻‍♂️"},{"unicode":"🧜🏼‍♂️"},{"unicode":"🧜🏽‍♂️"},{"unicode":"🧜🏾‍♂️"},{"unicode":"🧜🏿‍♂️"}]},{"unicode":"🧜‍♀️","tags":["merwoman"],"skins":[{"unicode":"🧜🏻‍♀️"},{"unicode":"🧜🏼‍♀️"},{"unicode":"🧜🏽‍♀️"},{"unicode":"🧜🏾‍♀️"},{"unicode":"🧜🏿‍♀️"}]},{"unicode":"🧝","tags":["magical"],"skins":[{"unicode":"🧝🏻"},{"unicode":"🧝🏼"},{"unicode":"🧝🏽"},{"unicode":"🧝🏾"},{"unicode":"🧝🏿"}]},{"unicode":"🧝‍♂️","tags":["magical"],"skins":[{"unicode":"🧝🏻‍♂️"},{"unicode":"🧝🏼‍♂️"},{"unicode":"🧝🏽‍♂️"},{"unicode":"🧝🏾‍♂️"},{"unicode":"🧝🏿‍♂️"}]},{"unicode":"🧝‍♀️","tags":["magical"],"skins":[{"unicode":"🧝🏻‍♀️"},{"unicode":"🧝🏼‍♀️"},{"unicode":"🧝🏽‍♀️"},{"unicode":"🧝🏾‍♀️"},{"unicode":"🧝🏿‍♀️"}]},{"unicode":"🧞","tags":["djinn"]},{"unicode":"🧞‍♂️","tags":["djinn"]},{"unicode":"🧞‍♀️","tags":["djinn"]},{"unicode":"🧟","tags":["undead","walking dead"]},{"unicode":"🧟‍♂️","tags":["undead","walking dead"]},{"unicode":"🧟‍♀️","tags":["undead","walking dead"]},{"unicode":"💆","tags":["face","massage","salon"],"skins":[{"unicode":"💆🏻"},{"unicode":"💆🏼"},{"unicode":"💆🏽"},{"unicode":"💆🏾"},{"unicode":"💆🏿"}]},{"unicode":"💆‍♂️","tags":["face","man","massage"],"skins":[{"unicode":"💆🏻‍♂️"},{"unicode":"💆🏼‍♂️"},{"unicode":"💆🏽‍♂️"},{"unicode":"💆🏾‍♂️"},{"unicode":"💆🏿‍♂️"}]},{"unicode":"💆‍♀️","tags":["face","massage","woman"],"skins":[{"unicode":"💆🏻‍♀️"},{"unicode":"💆🏼‍♀️"},{"unicode":"💆🏽‍♀️"},{"unicode":"💆🏾‍♀️"},{"unicode":"💆🏿‍♀️"}]},{"unicode":"💇","tags":["barber","beauty","haircut","parlor"],"skins":[{"unicode":"💇🏻"},{"unicode":"💇🏼"},{"unicode":"💇🏽"},{"unicode":"💇🏾"},{"unicode":"💇🏿"}]},{"unicode":"💇‍♂️","tags":["haircut","man"],"skins":[{"unicode":"💇🏻‍♂️"},{"unicode":"💇🏼‍♂️"},{"unicode":"💇🏽‍♂️"},{"unicode":"💇🏾‍♂️"},{"unicode":"💇🏿‍♂️"}]},{"unicode":"💇‍♀️","tags":["haircut","woman"],"skins":[{"unicode":"💇🏻‍♀️"},{"unicode":"💇🏼‍♀️"},{"unicode":"💇🏽‍♀️"},{"unicode":"💇🏾‍♀️"},{"unicode":"💇🏿‍♀️"}]},{"unicode":"🚶","tags":["hike","walk","walking"],"skins":[{"unicode":"🚶🏻"},{"unicode":"🚶🏼"},{"unicode":"🚶🏽"},{"unicode":"🚶🏾"},{"unicode":"🚶🏿"}]},{"unicode":"🚶‍♂️","tags":["hike","man","walk"],"skins":[{"unicode":"🚶🏻‍♂️"},{"unicode":"🚶🏼‍♂️"},{"unicode":"🚶🏽‍♂️"},{"unicode":"🚶🏾‍♂️"},{"unicode":"🚶🏿‍♂️"}]},{"unicode":"🚶‍♀️","tags":["hike","walk","woman"],"skins":[{"unicode":"🚶🏻‍♀️"},{"unicode":"🚶🏼‍♀️"},{"unicode":"🚶🏽‍♀️"},{"unicode":"🚶🏾‍♀️"},{"unicode":"🚶🏿‍♀️"}]},{"unicode":"🧍","tags":["stand","standing"],"skins":[{"unicode":"🧍🏻"},{"unicode":"🧍🏼"},{"unicode":"🧍🏽"},{"unicode":"🧍🏾"},{"unicode":"🧍🏿"}]},{"unicode":"🧍‍♂️","tags":["man","standing"],"skins":[{"unicode":"🧍🏻‍♂️"},{"unicode":"🧍🏼‍♂️"},{"unicode":"🧍🏽‍♂️"},{"unicode":"🧍🏾‍♂️"},{"unicode":"🧍🏿‍♂️"}]},{"unicode":"🧍‍♀️","tags":["standing","woman"],"skins":[{"unicode":"🧍🏻‍♀️"},{"unicode":"🧍🏼‍♀️"},{"unicode":"🧍🏽‍♀️"},{"unicode":"🧍🏾‍♀️"},{"unicode":"🧍🏿‍♀️"}]},{"unicode":"🧎","tags":["kneel","kneeling"],"skins":[{"unicode":"🧎🏻"},{"unicode":"🧎🏼"},{"unicode":"🧎🏽"},{"unicode":"🧎🏾"},{"unicode":"🧎🏿"}]},{"unicode":"🧎‍♂️","tags":["kneeling","man"],"skins":[{"unicode":"🧎🏻‍♂️"},{"unicode":"🧎🏼‍♂️"},{"unicode":"🧎🏽‍♂️"},{"unicode":"🧎🏾‍♂️"},{"unicode":"🧎🏿‍♂️"}]},{"unicode":"🧎‍♀️","tags":["kneeling","woman"],"skins":[{"unicode":"🧎🏻‍♀️"},{"unicode":"🧎🏼‍♀️"},{"unicode":"🧎🏽‍♀️"},{"unicode":"🧎🏾‍♀️"},{"unicode":"🧎🏿‍♀️"}]},{"unicode":"🧑‍🦯","tags":["accessibility","blind"],"skins":[{"unicode":"🧑🏻‍🦯"},{"unicode":"🧑🏼‍🦯"},{"unicode":"🧑🏽‍🦯"},{"unicode":"🧑🏾‍🦯"},{"unicode":"🧑🏿‍🦯"}]},{"unicode":"👨‍🦯","tags":["accessibility","blind","man"],"skins":[{"unicode":"👨🏻‍🦯"},{"unicode":"👨🏼‍🦯"},{"unicode":"👨🏽‍🦯"},{"unicode":"👨🏾‍🦯"},{"unicode":"👨🏿‍🦯"}]},{"unicode":"👩‍🦯","tags":["accessibility","blind","woman"],"skins":[{"unicode":"👩🏻‍🦯"},{"unicode":"👩🏼‍🦯"},{"unicode":"👩🏽‍🦯"},{"unicode":"👩🏾‍🦯"},{"unicode":"👩🏿‍🦯"}]},{"unicode":"🧑‍🦼","tags":["accessibility","wheelchair"],"skins":[{"unicode":"🧑🏻‍🦼"},{"unicode":"🧑🏼‍🦼"},{"unicode":"🧑🏽‍🦼"},{"unicode":"🧑🏾‍🦼"},{"unicode":"🧑🏿‍🦼"}]},{"unicode":"👨‍🦼","tags":["accessibility","man","wheelchair"],"skins":[{"unicode":"👨🏻‍🦼"},{"unicode":"👨🏼‍🦼"},{"unicode":"👨🏽‍🦼"},{"unicode":"👨🏾‍🦼"},{"unicode":"👨🏿‍🦼"}]},{"unicode":"👩‍🦼","tags":["accessibility","wheelchair","woman"],"skins":[{"unicode":"👩🏻‍🦼"},{"unicode":"👩🏼‍🦼"},{"unicode":"👩🏽‍🦼"},{"unicode":"👩🏾‍🦼"},{"unicode":"👩🏿‍🦼"}]},{"unicode":"🧑‍🦽","tags":["accessibility","wheelchair"],"skins":[{"unicode":"🧑🏻‍🦽"},{"unicode":"🧑🏼‍🦽"},{"unicode":"🧑🏽‍🦽"},{"unicode":"🧑🏾‍🦽"},{"unicode":"🧑🏿‍🦽"}]},{"unicode":"👨‍🦽","tags":["accessibility","man","wheelchair"],"skins":[{"unicode":"👨🏻‍🦽"},{"unicode":"👨🏼‍🦽"},{"unicode":"👨🏽‍🦽"},{"unicode":"👨🏾‍🦽"},{"unicode":"👨🏿‍🦽"}]},{"unicode":"👩‍🦽","tags":["accessibility","wheelchair","woman"],"skins":[{"unicode":"👩🏻‍🦽"},{"unicode":"👩🏼‍🦽"},{"unicode":"👩🏽‍🦽"},{"unicode":"👩🏾‍🦽"},{"unicode":"👩🏿‍🦽"}]},{"unicode":"🏃","tags":["marathon","running"],"skins":[{"unicode":"🏃🏻"},{"unicode":"🏃🏼"},{"unicode":"🏃🏽"},{"unicode":"🏃🏾"},{"unicode":"🏃🏿"}]},{"unicode":"🏃‍♂️","tags":["man","marathon","racing","running"],"skins":[{"unicode":"🏃🏻‍♂️"},{"unicode":"🏃🏼‍♂️"},{"unicode":"🏃🏽‍♂️"},{"unicode":"🏃🏾‍♂️"},{"unicode":"🏃🏿‍♂️"}]},{"unicode":"🏃‍♀️","tags":["marathon","racing","running","woman"],"skins":[{"unicode":"🏃🏻‍♀️"},{"unicode":"🏃🏼‍♀️"},{"unicode":"🏃🏽‍♀️"},{"unicode":"🏃🏾‍♀️"},{"unicode":"🏃🏿‍♀️"}]},{"unicode":"💃","tags":["dancing","woman"],"skins":[{"unicode":"💃🏻"},{"unicode":"💃🏼"},{"unicode":"💃🏽"},{"unicode":"💃🏾"},{"unicode":"💃🏿"}]},{"unicode":"🕺","tags":["dance","man"],"skins":[{"unicode":"🕺🏻"},{"unicode":"🕺🏼"},{"unicode":"🕺🏽"},{"unicode":"🕺🏾"},{"unicode":"🕺🏿"}]},{"unicode":"🕴️","tags":["business","person","suit"],"skins":[{"unicode":"🕴🏻"},{"unicode":"🕴🏼"},{"unicode":"🕴🏽"},{"unicode":"🕴🏾"},{"unicode":"🕴🏿"}]},{"unicode":"👯","tags":["bunny ear","dancer","partying"]},{"unicode":"👯‍♂️","tags":["bunny ear","dancer","men","partying"]},{"unicode":"👯‍♀️","tags":["bunny ear","dancer","partying","women"]},{"unicode":"🧖","tags":["sauna","steam room"],"skins":[{"unicode":"🧖🏻"},{"unicode":"🧖🏼"},{"unicode":"🧖🏽"},{"unicode":"🧖🏾"},{"unicode":"🧖🏿"}]},{"unicode":"🧖‍♂️","tags":["sauna","steam room"],"skins":[{"unicode":"🧖🏻‍♂️"},{"unicode":"🧖🏼‍♂️"},{"unicode":"🧖🏽‍♂️"},{"unicode":"🧖🏾‍♂️"},{"unicode":"🧖🏿‍♂️"}]},{"unicode":"🧖‍♀️","tags":["sauna","steam room"],"skins":[{"unicode":"🧖🏻‍♀️"},{"unicode":"🧖🏼‍♀️"},{"unicode":"🧖🏽‍♀️"},{"unicode":"🧖🏾‍♀️"},{"unicode":"🧖🏿‍♀️"}]},{"unicode":"🧗","tags":["climber"],"skins":[{"unicode":"🧗🏻"},{"unicode":"🧗🏼"},{"unicode":"🧗🏽"},{"unicode":"🧗🏾"},{"unicode":"🧗🏿"}]},{"unicode":"🧗‍♂️","tags":["climber"],"skins":[{"unicode":"🧗🏻‍♂️"},{"unicode":"🧗🏼‍♂️"},{"unicode":"🧗🏽‍♂️"},{"unicode":"🧗🏾‍♂️"},{"unicode":"🧗🏿‍♂️"}]},{"unicode":"🧗‍♀️","tags":["climber"],"skins":[{"unicode":"🧗🏻‍♀️"},{"unicode":"🧗🏼‍♀️"},{"unicode":"🧗🏽‍♀️"},{"unicode":"🧗🏾‍♀️"},{"unicode":"🧗🏿‍♀️"}]},{"unicode":"🤺","tags":["fencer","fencing","sword"]},{"unicode":"🏇","tags":["horse","jockey","racehorse","racing"],"skins":[{"unicode":"🏇🏻"},{"unicode":"🏇🏼"},{"unicode":"🏇🏽"},{"unicode":"🏇🏾"},{"unicode":"🏇🏿"}]},{"unicode":"⛷️","tags":["ski","snow"]},{"unicode":"🏂️","tags":["ski","snow","snowboard"],"skins":[{"unicode":"🏂🏻"},{"unicode":"🏂🏼"},{"unicode":"🏂🏽"},{"unicode":"🏂🏾"},{"unicode":"🏂🏿"}]},{"unicode":"🏌️","tags":["ball","golf"],"skins":[{"unicode":"🏌🏻"},{"unicode":"🏌🏼"},{"unicode":"🏌🏽"},{"unicode":"🏌🏾"},{"unicode":"🏌🏿"}]},{"unicode":"🏌️‍♂️","tags":["golf","man"],"skins":[{"unicode":"🏌🏻‍♂️"},{"unicode":"🏌🏼‍♂️"},{"unicode":"🏌🏽‍♂️"},{"unicode":"🏌🏾‍♂️"},{"unicode":"🏌🏿‍♂️"}]},{"unicode":"🏌️‍♀️","tags":["golf","woman"],"skins":[{"unicode":"🏌🏻‍♀️"},{"unicode":"🏌🏼‍♀️"},{"unicode":"🏌🏽‍♀️"},{"unicode":"🏌🏾‍♀️"},{"unicode":"🏌🏿‍♀️"}]},{"unicode":"🏄️","tags":["surfing"],"skins":[{"unicode":"🏄🏻"},{"unicode":"🏄🏼"},{"unicode":"🏄🏽"},{"unicode":"🏄🏾"},{"unicode":"🏄🏿"}]},{"unicode":"🏄‍♂️","tags":["man","surfing"],"skins":[{"unicode":"🏄🏻‍♂️"},{"unicode":"🏄🏼‍♂️"},{"unicode":"🏄🏽‍♂️"},{"unicode":"🏄🏾‍♂️"},{"unicode":"🏄🏿‍♂️"}]},{"unicode":"🏄‍♀️","tags":["surfing","woman"],"skins":[{"unicode":"🏄🏻‍♀️"},{"unicode":"🏄🏼‍♀️"},{"unicode":"🏄🏽‍♀️"},{"unicode":"🏄🏾‍♀️"},{"unicode":"🏄🏿‍♀️"}]},{"unicode":"🚣","tags":["boat","rowboat"],"skins":[{"unicode":"🚣🏻"},{"unicode":"🚣🏼"},{"unicode":"🚣🏽"},{"unicode":"🚣🏾"},{"unicode":"🚣🏿"}]},{"unicode":"🚣‍♂️","tags":["boat","man","rowboat"],"skins":[{"unicode":"🚣🏻‍♂️"},{"unicode":"🚣🏼‍♂️"},{"unicode":"🚣🏽‍♂️"},{"unicode":"🚣🏾‍♂️"},{"unicode":"🚣🏿‍♂️"}]},{"unicode":"🚣‍♀️","tags":["boat","rowboat","woman"],"skins":[{"unicode":"🚣🏻‍♀️"},{"unicode":"🚣🏼‍♀️"},{"unicode":"🚣🏽‍♀️"},{"unicode":"🚣🏾‍♀️"},{"unicode":"🚣🏿‍♀️"}]},{"unicode":"🏊️","tags":["swim"],"skins":[{"unicode":"🏊🏻"},{"unicode":"🏊🏼"},{"unicode":"🏊🏽"},{"unicode":"🏊🏾"},{"unicode":"🏊🏿"}]},{"unicode":"🏊‍♂️","tags":["man","swim"],"skins":[{"unicode":"🏊🏻‍♂️"},{"unicode":"🏊🏼‍♂️"},{"unicode":"🏊🏽‍♂️"},{"unicode":"🏊🏾‍♂️"},{"unicode":"🏊🏿‍♂️"}]},{"unicode":"🏊‍♀️","tags":["swim","woman"],"skins":[{"unicode":"🏊🏻‍♀️"},{"unicode":"🏊🏼‍♀️"},{"unicode":"🏊🏽‍♀️"},{"unicode":"🏊🏾‍♀️"},{"unicode":"🏊🏿‍♀️"}]},{"unicode":"⛹️","tags":["ball"],"skins":[{"unicode":"⛹🏻"},{"unicode":"⛹🏼"},{"unicode":"⛹🏽"},{"unicode":"⛹🏾"},{"unicode":"⛹🏿"}]},{"unicode":"⛹️‍♂️","tags":["ball","man"],"skins":[{"unicode":"⛹🏻‍♂️"},{"unicode":"⛹🏼‍♂️"},{"unicode":"⛹🏽‍♂️"},{"unicode":"⛹🏾‍♂️"},{"unicode":"⛹🏿‍♂️"}]},{"unicode":"⛹️‍♀️","tags":["ball","woman"],"skins":[{"unicode":"⛹🏻‍♀️"},{"unicode":"⛹🏼‍♀️"},{"unicode":"⛹🏽‍♀️"},{"unicode":"⛹🏾‍♀️"},{"unicode":"⛹🏿‍♀️"}]},{"unicode":"🏋️","tags":["lifter","weight"],"skins":[{"unicode":"🏋🏻"},{"unicode":"🏋🏼"},{"unicode":"🏋🏽"},{"unicode":"🏋🏾"},{"unicode":"🏋🏿"}]},{"unicode":"🏋️‍♂️","tags":["man","weight lifter"],"skins":[{"unicode":"🏋🏻‍♂️"},{"unicode":"🏋🏼‍♂️"},{"unicode":"🏋🏽‍♂️"},{"unicode":"🏋🏾‍♂️"},{"unicode":"🏋🏿‍♂️"}]},{"unicode":"🏋️‍♀️","tags":["weight lifter","woman"],"skins":[{"unicode":"🏋🏻‍♀️"},{"unicode":"🏋🏼‍♀️"},{"unicode":"🏋🏽‍♀️"},{"unicode":"🏋🏾‍♀️"},{"unicode":"🏋🏿‍♀️"}]},{"unicode":"🚴","tags":["bicycle","biking","cyclist"],"skins":[{"unicode":"🚴🏻"},{"unicode":"🚴🏼"},{"unicode":"🚴🏽"},{"unicode":"🚴🏾"},{"unicode":"🚴🏿"}]},{"unicode":"🚴‍♂️","tags":["bicycle","biking","cyclist","man"],"skins":[{"unicode":"🚴🏻‍♂️"},{"unicode":"🚴🏼‍♂️"},{"unicode":"🚴🏽‍♂️"},{"unicode":"🚴🏾‍♂️"},{"unicode":"🚴🏿‍♂️"}]},{"unicode":"🚴‍♀️","tags":["bicycle","biking","cyclist","woman"],"skins":[{"unicode":"🚴🏻‍♀️"},{"unicode":"🚴🏼‍♀️"},{"unicode":"🚴🏽‍♀️"},{"unicode":"🚴🏾‍♀️"},{"unicode":"🚴🏿‍♀️"}]},{"unicode":"🚵","tags":["bicycle","bicyclist","bike","cyclist","mountain"],"skins":[{"unicode":"🚵🏻"},{"unicode":"🚵🏼"},{"unicode":"🚵🏽"},{"unicode":"🚵🏾"},{"unicode":"🚵🏿"}]},{"unicode":"🚵‍♂️","tags":["bicycle","bike","cyclist","man","mountain"],"skins":[{"unicode":"🚵🏻‍♂️"},{"unicode":"🚵🏼‍♂️"},{"unicode":"🚵🏽‍♂️"},{"unicode":"🚵🏾‍♂️"},{"unicode":"🚵🏿‍♂️"}]},{"unicode":"🚵‍♀️","tags":["bicycle","bike","biking","cyclist","mountain","woman"],"skins":[{"unicode":"🚵🏻‍♀️"},{"unicode":"🚵🏼‍♀️"},{"unicode":"🚵🏽‍♀️"},{"unicode":"🚵🏾‍♀️"},{"unicode":"🚵🏿‍♀️"}]},{"unicode":"🤸","tags":["cartwheel","gymnastics"],"skins":[{"unicode":"🤸🏻"},{"unicode":"🤸🏼"},{"unicode":"🤸🏽"},{"unicode":"🤸🏾"},{"unicode":"🤸🏿"}]},{"unicode":"🤸‍♂️","tags":["cartwheel","gymnastics","man"],"skins":[{"unicode":"🤸🏻‍♂️"},{"unicode":"🤸🏼‍♂️"},{"unicode":"🤸🏽‍♂️"},{"unicode":"🤸🏾‍♂️"},{"unicode":"🤸🏿‍♂️"}]},{"unicode":"🤸‍♀️","tags":["cartwheel","gymnastics","woman"],"skins":[{"unicode":"🤸🏻‍♀️"},{"unicode":"🤸🏼‍♀️"},{"unicode":"🤸🏽‍♀️"},{"unicode":"🤸🏾‍♀️"},{"unicode":"🤸🏿‍♀️"}]},{"unicode":"🤼","tags":["wrestle","wrestler"]},{"unicode":"🤼‍♂️","tags":["men","wrestle"]},{"unicode":"🤼‍♀️","tags":["women","wrestle"]},{"unicode":"🤽","tags":["polo","water"],"skins":[{"unicode":"🤽🏻"},{"unicode":"🤽🏼"},{"unicode":"🤽🏽"},{"unicode":"🤽🏾"},{"unicode":"🤽🏿"}]},{"unicode":"🤽‍♂️","tags":["man","water polo"],"skins":[{"unicode":"🤽🏻‍♂️"},{"unicode":"🤽🏼‍♂️"},{"unicode":"🤽🏽‍♂️"},{"unicode":"🤽🏾‍♂️"},{"unicode":"🤽🏿‍♂️"}]},{"unicode":"🤽‍♀️","tags":["water polo","woman"],"skins":[{"unicode":"🤽🏻‍♀️"},{"unicode":"🤽🏼‍♀️"},{"unicode":"🤽🏽‍♀️"},{"unicode":"🤽🏾‍♀️"},{"unicode":"🤽🏿‍♀️"}]},{"unicode":"🤾","tags":["ball","handball"],"skins":[{"unicode":"🤾🏻"},{"unicode":"🤾🏼"},{"unicode":"🤾🏽"},{"unicode":"🤾🏾"},{"unicode":"🤾🏿"}]},{"unicode":"🤾‍♂️","tags":["handball","man"],"skins":[{"unicode":"🤾🏻‍♂️"},{"unicode":"🤾🏼‍♂️"},{"unicode":"🤾🏽‍♂️"},{"unicode":"🤾🏾‍♂️"},{"unicode":"🤾🏿‍♂️"}]},{"unicode":"🤾‍♀️","tags":["handball","woman"],"skins":[{"unicode":"🤾🏻‍♀️"},{"unicode":"🤾🏼‍♀️"},{"unicode":"🤾🏽‍♀️"},{"unicode":"🤾🏾‍♀️"},{"unicode":"🤾🏿‍♀️"}]},{"unicode":"🤹","tags":["balance","juggle","multitask","skill"],"skins":[{"unicode":"🤹🏻"},{"unicode":"🤹🏼"},{"unicode":"🤹🏽"},{"unicode":"🤹🏾"},{"unicode":"🤹🏿"}]},{"unicode":"🤹‍♂️","tags":["juggling","man","multitask"],"skins":[{"unicode":"🤹🏻‍♂️"},{"unicode":"🤹🏼‍♂️"},{"unicode":"🤹🏽‍♂️"},{"unicode":"🤹🏾‍♂️"},{"unicode":"🤹🏿‍♂️"}]},{"unicode":"🤹‍♀️","tags":["juggling","multitask","woman"],"skins":[{"unicode":"🤹🏻‍♀️"},{"unicode":"🤹🏼‍♀️"},{"unicode":"🤹🏽‍♀️"},{"unicode":"🤹🏾‍♀️"},{"unicode":"🤹🏿‍♀️"}]},{"unicode":"🧘","tags":["meditation","yoga"],"skins":[{"unicode":"🧘🏻"},{"unicode":"🧘🏼"},{"unicode":"🧘🏽"},{"unicode":"🧘🏾"},{"unicode":"🧘🏿"}]},{"unicode":"🧘‍♂️","tags":["meditation","yoga"],"skins":[{"unicode":"🧘🏻‍♂️"},{"unicode":"🧘🏼‍♂️"},{"unicode":"🧘🏽‍♂️"},{"unicode":"🧘🏾‍♂️"},{"unicode":"🧘🏿‍♂️"}]},{"unicode":"🧘‍♀️","tags":["meditation","yoga"],"skins":[{"unicode":"🧘🏻‍♀️"},{"unicode":"🧘🏼‍♀️"},{"unicode":"🧘🏽‍♀️"},{"unicode":"🧘🏾‍♀️"},{"unicode":"🧘🏿‍♀️"}]},{"unicode":"🛀","tags":["bath","bathtub"],"skins":[{"unicode":"🛀🏻"},{"unicode":"🛀🏼"},{"unicode":"🛀🏽"},{"unicode":"🛀🏾"},{"unicode":"🛀🏿"}]},{"unicode":"🛌","tags":["hotel","sleep"],"skins":[{"unicode":"🛌🏻"},{"unicode":"🛌🏼"},{"unicode":"🛌🏽"},{"unicode":"🛌🏾"},{"unicode":"🛌🏿"}]},{"unicode":"🧑‍🤝‍🧑","tags":["couple","hand","hold","holding hands","person"],"skins":[{"unicode":"🧑🏻‍🤝‍🧑🏻"},{"unicode":"🧑🏻‍🤝‍🧑🏼"},{"unicode":"🧑🏻‍🤝‍🧑🏽"},{"unicode":"🧑🏻‍🤝‍🧑🏾"},{"unicode":"🧑🏻‍🤝‍🧑🏿"},{"unicode":"🧑🏼‍🤝‍🧑🏻"},{"unicode":"🧑🏼‍🤝‍🧑🏼"},{"unicode":"🧑🏼‍🤝‍🧑🏽"},{"unicode":"🧑🏼‍🤝‍🧑🏾"},{"unicode":"🧑🏼‍🤝‍🧑🏿"},{"unicode":"🧑🏽‍🤝‍🧑🏻"},{"unicode":"🧑🏽‍🤝‍🧑🏼"},{"unicode":"🧑🏽‍🤝‍🧑🏽"},{"unicode":"🧑🏽‍🤝‍🧑🏾"},{"unicode":"🧑🏽‍🤝‍🧑🏿"},{"unicode":"🧑🏾‍🤝‍🧑🏻"},{"unicode":"🧑🏾‍🤝‍🧑🏼"},{"unicode":"🧑🏾‍🤝‍🧑🏽"},{"unicode":"🧑🏾‍🤝‍🧑🏾"},{"unicode":"🧑🏾‍🤝‍🧑🏿"},{"unicode":"🧑🏿‍🤝‍🧑🏻"},{"unicode":"🧑🏿‍🤝‍🧑🏼"},{"unicode":"🧑🏿‍🤝‍🧑🏽"},{"unicode":"🧑🏿‍🤝‍🧑🏾"},{"unicode":"🧑🏿‍🤝‍🧑🏿"}]},{"unicode":"👭","tags":["couple","hand","holding hands","women"],"skins":[{"unicode":"👭🏻"},{"unicode":"👭🏼"},{"unicode":"👭🏽"},{"unicode":"👭🏾"},{"unicode":"👭🏿"},{"unicode":"👩🏻‍🤝‍👩🏼"},{"unicode":"👩🏻‍🤝‍👩🏽"},{"unicode":"👩🏻‍🤝‍👩🏾"},{"unicode":"👩🏻‍🤝‍👩🏿"},{"unicode":"👩🏼‍🤝‍👩🏻"},{"unicode":"👩🏼‍🤝‍👩🏽"},{"unicode":"👩🏼‍🤝‍👩🏾"},{"unicode":"👩🏼‍🤝‍👩🏿"},{"unicode":"👩🏽‍🤝‍👩🏻"},{"unicode":"👩🏽‍🤝‍👩🏼"},{"unicode":"👩🏽‍🤝‍👩🏾"},{"unicode":"👩🏽‍🤝‍👩🏿"},{"unicode":"👩🏾‍🤝‍👩🏻"},{"unicode":"👩🏾‍🤝‍👩🏼"},{"unicode":"👩🏾‍🤝‍👩🏽"},{"unicode":"👩🏾‍🤝‍👩🏿"},{"unicode":"👩🏿‍🤝‍👩🏻"},{"unicode":"👩🏿‍🤝‍👩🏼"},{"unicode":"👩🏿‍🤝‍👩🏽"},{"unicode":"👩🏿‍🤝‍👩🏾"}]},{"unicode":"👫","tags":["couple","hand","hold","holding hands","man","woman"],"skins":[{"unicode":"👫🏻"},{"unicode":"👫🏼"},{"unicode":"👫🏽"},{"unicode":"👫🏾"},{"unicode":"👫🏿"},{"unicode":"👩🏻‍🤝‍👨🏼"},{"unicode":"👩🏻‍🤝‍👨🏽"},{"unicode":"👩🏻‍🤝‍👨🏾"},{"unicode":"👩🏻‍🤝‍👨🏿"},{"unicode":"👩🏼‍🤝‍👨🏻"},{"unicode":"👩🏼‍🤝‍👨🏽"},{"unicode":"👩🏼‍🤝‍👨🏾"},{"unicode":"👩🏼‍🤝‍👨🏿"},{"unicode":"👩🏽‍🤝‍👨🏻"},{"unicode":"👩🏽‍🤝‍👨🏼"},{"unicode":"👩🏽‍🤝‍👨🏾"},{"unicode":"👩🏽‍🤝‍👨🏿"},{"unicode":"👩🏾‍🤝‍👨🏻"},{"unicode":"👩🏾‍🤝‍👨🏼"},{"unicode":"👩🏾‍🤝‍👨🏽"},{"unicode":"👩🏾‍🤝‍👨🏿"},{"unicode":"👩🏿‍🤝‍👨🏻"},{"unicode":"👩🏿‍🤝‍👨🏼"},{"unicode":"👩🏿‍🤝‍👨🏽"},{"unicode":"👩🏿‍🤝‍👨🏾"}]},{"unicode":"👬","tags":["couple","gemini","holding hands","man","men","twins","zodiac"],"skins":[{"unicode":"👬🏻"},{"unicode":"👬🏼"},{"unicode":"👬🏽"},{"unicode":"👬🏾"},{"unicode":"👬🏿"},{"unicode":"👨🏻‍🤝‍👨🏼"},{"unicode":"👨🏻‍🤝‍👨🏽"},{"unicode":"👨🏻‍🤝‍👨🏾"},{"unicode":"👨🏻‍🤝‍👨🏿"},{"unicode":"👨🏼‍🤝‍👨🏻"},{"unicode":"👨🏼‍🤝‍👨🏽"},{"unicode":"👨🏼‍🤝‍👨🏾"},{"unicode":"👨🏼‍🤝‍👨🏿"},{"unicode":"👨🏽‍🤝‍👨🏻"},{"unicode":"👨🏽‍🤝‍👨🏼"},{"unicode":"👨🏽‍🤝‍👨🏾"},{"unicode":"👨🏽‍🤝‍👨🏿"},{"unicode":"👨🏾‍🤝‍👨🏻"},{"unicode":"👨🏾‍🤝‍👨🏼"},{"unicode":"👨🏾‍🤝‍👨🏽"},{"unicode":"👨🏾‍🤝‍👨🏿"},{"unicode":"👨🏿‍🤝‍👨🏻"},{"unicode":"👨🏿‍🤝‍👨🏼"},{"unicode":"👨🏿‍🤝‍👨🏽"},{"unicode":"👨🏿‍🤝‍👨🏾"}]},{"unicode":"💏","tags":["couple"]},{"unicode":"👩‍❤️‍💋‍👨","tags":["couple","kiss","man","woman"]},{"unicode":"👨‍❤️‍💋‍👨","tags":["couple","kiss","man"]},{"unicode":"👩‍❤️‍💋‍👩","tags":["couple","kiss","woman"]},{"unicode":"💑","tags":["couple","love"]},{"unicode":"👩‍❤️‍👨","tags":["couple","couple with heart","love","man","woman"]},{"unicode":"👨‍❤️‍👨","tags":["couple","couple with heart","love","man"]},{"unicode":"👩‍❤️‍👩","tags":["couple","couple with heart","love","woman"]},{"unicode":"👪️","tags":["family"]},{"unicode":"👨‍👩‍👦","tags":["boy","family","man","woman"]},{"unicode":"👨‍👩‍👧","tags":["family","girl","man","woman"]},{"unicode":"👨‍👩‍👧‍👦","tags":["boy","family","girl","man","woman"]},{"unicode":"👨‍👩‍👦‍👦","tags":["boy","family","man","woman"]},{"unicode":"👨‍👩‍👧‍👧","tags":["family","girl","man","woman"]},{"unicode":"👨‍👨‍👦","tags":["boy","family","man"]},{"unicode":"👨‍👨‍👧","tags":["family","girl","man"]},{"unicode":"👨‍👨‍👧‍👦","tags":["boy","family","girl","man"]},{"unicode":"👨‍👨‍👦‍👦","tags":["boy","family","man"]},{"unicode":"👨‍👨‍👧‍👧","tags":["family","girl","man"]},{"unicode":"👩‍👩‍👦","tags":["boy","family","woman"]},{"unicode":"👩‍👩‍👧","tags":["family","girl","woman"]},{"unicode":"👩‍👩‍👧‍👦","tags":["boy","family","girl","woman"]},{"unicode":"👩‍👩‍👦‍👦","tags":["boy","family","woman"]},{"unicode":"👩‍👩‍👧‍👧","tags":["family","girl","woman"]},{"unicode":"👨‍👦","tags":["boy","family","man"]},{"unicode":"👨‍👦‍👦","tags":["boy","family","man"]},{"unicode":"👨‍👧","tags":["family","girl","man"]},{"unicode":"👨‍👧‍👦","tags":["boy","family","girl","man"]},{"unicode":"👨‍👧‍👧","tags":["family","girl","man"]},{"unicode":"👩‍👦","tags":["boy","family","woman"]},{"unicode":"👩‍👦‍👦","tags":["boy","family","woman"]},{"unicode":"👩‍👧","tags":["family","girl","woman"]},{"unicode":"👩‍👧‍👦","tags":["boy","family","girl","woman"]},{"unicode":"👩‍👧‍👧","tags":["family","girl","woman"]},{"unicode":"🗣️","tags":["face","head","silhouette","speak","speaking"]},{"unicode":"👤","tags":["bust","silhouette"]},{"unicode":"👥","tags":["bust","silhouette"]},{"unicode":"🫂","tags":["goodbye","hello","hug","thanks"]},{"unicode":"👣","tags":["clothing","footprint","print"]}]},{"group":2,"emojiList":[{"unicode":"🏻","tags":["skin tone","type 1–2"]},{"unicode":"🏼","tags":["skin tone","type 3"]},{"unicode":"🏽","tags":["skin tone","type 4"]},{"unicode":"🏾","tags":["skin tone","type 5"]},{"unicode":"🏿","tags":["skin tone","type 6"]},{"unicode":"🦰","tags":["ginger","redhead"]},{"unicode":"🦱","tags":["afro","curly","ringlets"]},{"unicode":"🦳","tags":["gray","hair","old","white"]},{"unicode":"🦲","tags":["chemotherapy","hairless","no hair","shaven"]}]},{"group":3,"emojiList":[{"unicode":"🐵","tags":["face","monkey"]},{"unicode":"🐒","tags":["monkey"]},{"unicode":"🦍","tags":["gorilla"]},{"unicode":"🦧","tags":["ape"]},{"unicode":"🐶","tags":["dog","face","pet"]},{"unicode":"🐕️","tags":["pet"]},{"unicode":"🦮","tags":["accessibility","blind","guide"]},{"unicode":"🐕‍🦺","tags":["accessibility","assistance","dog","service"]},{"unicode":"🐩","tags":["dog"]},{"unicode":"🐺","tags":["face"]},{"unicode":"🦊","tags":["face"]},{"unicode":"🦝","tags":["curious","sly"]},{"unicode":"🐱","tags":["cat","face","pet"]},{"unicode":"🐈️","tags":["pet"]},{"unicode":"🐈‍⬛","tags":["black","cat","unlucky"]},{"unicode":"🦁","tags":["face","leo","zodiac"]},{"unicode":"🐯","tags":["face","tiger"]},{"unicode":"🐅","tags":["tiger"]},{"unicode":"🐆","tags":["leopard"]},{"unicode":"🐴","tags":["face","horse"]},{"unicode":"🐎","tags":["equestrian","racehorse","racing"]},{"unicode":"🦄","tags":["face"]},{"unicode":"🦓","tags":["stripe"]},{"unicode":"🦌","tags":["deer"]},{"unicode":"🦬","tags":["buffalo","herd","wisent"]},{"unicode":"🐮","tags":["cow","face"]},{"unicode":"🐂","tags":["bull","taurus","zodiac"]},{"unicode":"🐃","tags":["buffalo","water"]},{"unicode":"🐄","tags":["cow"]},{"unicode":"🐷","tags":["face","pig"]},{"unicode":"🐖","tags":["sow"]},{"unicode":"🐗","tags":["pig"]},{"unicode":"🐽","tags":["face","nose","pig"]},{"unicode":"🐏","tags":["aries","male","sheep","zodiac"]},{"unicode":"🐑","tags":["female","sheep"]},{"unicode":"🐐","tags":["capricorn","zodiac"]},{"unicode":"🐪","tags":["dromedary","hump"]},{"unicode":"🐫","tags":["bactrian","camel","hump"]},{"unicode":"🦙","tags":["alpaca","guanaco","vicuña","wool"]},{"unicode":"🦒","tags":["spots"]},{"unicode":"🐘","tags":["elephant"]},{"unicode":"🦣","tags":["extinction","large","tusk","woolly"]},{"unicode":"🦏","tags":["rhinoceros"]},{"unicode":"🦛","tags":["hippo"]},{"unicode":"🐭","tags":["face","mouse"]},{"unicode":"🐁","tags":["mouse"]},{"unicode":"🐀","tags":["rat"]},{"unicode":"🐹","tags":["face","pet"]},{"unicode":"🐰","tags":["bunny","face","pet","rabbit"]},{"unicode":"🐇","tags":["bunny","pet"]},{"unicode":"🐿️","tags":["squirrel"]},{"unicode":"🦫","tags":["dam"]},{"unicode":"🦔","tags":["spiny"]},{"unicode":"🦇","tags":["vampire"]},{"unicode":"🐻","tags":["face"]},{"unicode":"🐻‍❄️","tags":["arctic","bear","white"]},{"unicode":"🐨","tags":["bear"]},{"unicode":"🐼","tags":["face"]},{"unicode":"🦥","tags":["lazy","slow"]},{"unicode":"🦦","tags":["fishing","playful"]},{"unicode":"🦨","tags":["stink"]},{"unicode":"🦘","tags":["australia","joey","jump","marsupial"]},{"unicode":"🦡","tags":["honey badger","pester"]},{"unicode":"🐾","tags":["feet","paw","print"]},{"unicode":"🦃","tags":["bird"]},{"unicode":"🐔","tags":["bird"]},{"unicode":"🐓","tags":["bird"]},{"unicode":"🐣","tags":["baby","bird","chick","hatching"]},{"unicode":"🐤","tags":["baby","bird","chick"]},{"unicode":"🐥","tags":["baby","bird","chick"]},{"unicode":"🐦️","tags":["bird"]},{"unicode":"🐧","tags":["bird"]},{"unicode":"🕊️","tags":["bird","fly","peace"]},{"unicode":"🦅","tags":["bird"]},{"unicode":"🦆","tags":["bird"]},{"unicode":"🦢","tags":["bird","cygnet","ugly duckling"]},{"unicode":"🦉","tags":["bird","wise"]},{"unicode":"🦤","tags":["extinction","large","mauritius"]},{"unicode":"🪶","tags":["bird","flight","light","plumage"]},{"unicode":"🦩","tags":["flamboyant","tropical"]},{"unicode":"🦚","tags":["bird","ostentatious","peahen","proud"]},{"unicode":"🦜","tags":["bird","pirate","talk"]},{"unicode":"🐸","tags":["face"]},{"unicode":"🐊","tags":["crocodile"]},{"unicode":"🐢","tags":["terrapin","tortoise"]},{"unicode":"🦎","tags":["reptile"]},{"unicode":"🐍","tags":["bearer","ophiuchus","serpent","zodiac"]},{"unicode":"🐲","tags":["dragon","face","fairy tale"]},{"unicode":"🐉","tags":["fairy tale"]},{"unicode":"🦕","tags":["brachiosaurus","brontosaurus","diplodocus"]},{"unicode":"🦖","tags":["t-rex","tyrannosaurus rex"]},{"unicode":"🐳","tags":["face","spouting","whale"]},{"unicode":"🐋","tags":["whale"]},{"unicode":"🐬","tags":["flipper"]},{"unicode":"🦭","tags":["sea lion"]},{"unicode":"🐟️","tags":["pisces","zodiac"]},{"unicode":"🐠","tags":["fish","tropical"]},{"unicode":"🐡","tags":["fish"]},{"unicode":"🦈","tags":["fish"]},{"unicode":"🐙","tags":["octopus"]},{"unicode":"🐚","tags":["shell","spiral"]},{"unicode":"🐌","tags":["snail"]},{"unicode":"🦋","tags":["insect","pretty"]},{"unicode":"🐛","tags":["insect"]},{"unicode":"🐜","tags":["insect"]},{"unicode":"🐝","tags":["bee","insect"]},{"unicode":"🪲","tags":["bug","insect"]},{"unicode":"🐞","tags":["beetle","insect","ladybird","ladybug"]},{"unicode":"🦗","tags":["grasshopper"]},{"unicode":"🪳","tags":["insect","pest","roach"]},{"unicode":"🕷️","tags":["insect"]},{"unicode":"🕸️","tags":["spider","web"]},{"unicode":"🦂","tags":["scorpio","zodiac"]},{"unicode":"🦟","tags":["disease","fever","malaria","pest","virus"]},{"unicode":"🪰","tags":["disease","maggot","pest","rotting"]},{"unicode":"🪱","tags":["annelid","earthworm","parasite"]},{"unicode":"🦠","tags":["amoeba","bacteria","virus"]},{"unicode":"💐","tags":["flower"]},{"unicode":"🌸","tags":["blossom","cherry","flower"]},{"unicode":"💮","tags":["flower"]},{"unicode":"🏵️","tags":["plant"]},{"unicode":"🌹","tags":["flower"]},{"unicode":"🥀","tags":["flower","wilted"]},{"unicode":"🌺","tags":["flower"]},{"unicode":"🌻","tags":["flower","sun"]},{"unicode":"🌼","tags":["flower"]},{"unicode":"🌷","tags":["flower"]},{"unicode":"🌱","tags":["young"]},{"unicode":"🪴","tags":["boring","grow","house","nurturing","plant","useless"]},{"unicode":"🌲","tags":["tree"]},{"unicode":"🌳","tags":["deciduous","shedding","tree"]},{"unicode":"🌴","tags":["palm","tree"]},{"unicode":"🌵","tags":["plant"]},{"unicode":"🌾","tags":["ear","grain","rice"]},{"unicode":"🌿","tags":["leaf"]},{"unicode":"☘️","tags":["plant"]},{"unicode":"🍀","tags":["4","clover","four","four-leaf clover","leaf"]},{"unicode":"🍁","tags":["falling","leaf","maple"]},{"unicode":"🍂","tags":["falling","leaf"]},{"unicode":"🍃","tags":["blow","flutter","leaf","wind"]}]},{"group":4,"emojiList":[{"unicode":"🍇","tags":["fruit","grape"]},{"unicode":"🍈","tags":["fruit"]},{"unicode":"🍉","tags":["fruit"]},{"unicode":"🍊","tags":["fruit","orange"]},{"unicode":"🍋","tags":["citrus","fruit"]},{"unicode":"🍌","tags":["fruit"]},{"unicode":"🍍","tags":["fruit"]},{"unicode":"🥭","tags":["fruit","tropical"]},{"unicode":"🍎","tags":["apple","fruit","red"]},{"unicode":"🍏","tags":["apple","fruit","green"]},{"unicode":"🍐","tags":["fruit"]},{"unicode":"🍑","tags":["fruit"]},{"unicode":"🍒","tags":["berries","cherry","fruit","red"]},{"unicode":"🍓","tags":["berry","fruit"]},{"unicode":"🫐","tags":["berry","bilberry","blue","blueberry"]},{"unicode":"🥝","tags":["food","fruit","kiwi"]},{"unicode":"🍅","tags":["fruit","vegetable"]},{"unicode":"🫒","tags":["food"]},{"unicode":"🥥","tags":["palm","piña colada"]},{"unicode":"🥑","tags":["food","fruit"]},{"unicode":"🍆","tags":["aubergine","vegetable"]},{"unicode":"🥔","tags":["food","vegetable"]},{"unicode":"🥕","tags":["food","vegetable"]},{"unicode":"🌽","tags":["corn","ear","maize","maze"]},{"unicode":"🌶️","tags":["hot","pepper"]},{"unicode":"🫑","tags":["capsicum","pepper","vegetable"]},{"unicode":"🥒","tags":["food","pickle","vegetable"]},{"unicode":"🥬","tags":["bok choy","cabbage","kale","lettuce"]},{"unicode":"🥦","tags":["wild cabbage"]},{"unicode":"🧄","tags":["flavoring"]},{"unicode":"🧅","tags":["flavoring"]},{"unicode":"🍄","tags":["toadstool"]},{"unicode":"🥜","tags":["food","nut","peanut","vegetable"]},{"unicode":"🌰","tags":["plant"]},{"unicode":"🍞","tags":["loaf"]},{"unicode":"🥐","tags":["bread","breakfast","food","french","roll"]},{"unicode":"🥖","tags":["baguette","bread","food","french"]},{"unicode":"🫓","tags":["arepa","lavash","naan","pita"]},{"unicode":"🥨","tags":["twisted"]},{"unicode":"🥯","tags":["bakery","breakfast","schmear"]},{"unicode":"🥞","tags":["breakfast","crêpe","food","hotcake","pancake"]},{"unicode":"🧇","tags":["breakfast","indecisive","iron"]},{"unicode":"🧀","tags":["cheese"]},{"unicode":"🍖","tags":["bone","meat"]},{"unicode":"🍗","tags":["bone","chicken","drumstick","leg","poultry"]},{"unicode":"🥩","tags":["chop","lambchop","porkchop","steak"]},{"unicode":"🥓","tags":["breakfast","food","meat"]},{"unicode":"🍔","tags":["burger"]},{"unicode":"🍟","tags":["french","fries"]},{"unicode":"🍕","tags":["cheese","slice"]},{"unicode":"🌭","tags":["frankfurter","hotdog","sausage"]},{"unicode":"🥪","tags":["bread"]},{"unicode":"🌮","tags":["mexican"]},{"unicode":"🌯","tags":["mexican","wrap"]},{"unicode":"🫔","tags":["mexican","wrapped"]},{"unicode":"🥙","tags":["falafel","flatbread","food","gyro","kebab","stuffed"]},{"unicode":"🧆","tags":["chickpea","meatball"]},{"unicode":"🥚","tags":["breakfast","food"]},{"unicode":"🍳","tags":["breakfast","egg","frying","pan"]},{"unicode":"🥘","tags":["casserole","food","paella","pan","shallow"]},{"unicode":"🍲","tags":["pot","stew"]},{"unicode":"🫕","tags":["cheese","chocolate","melted","pot","swiss"]},{"unicode":"🥣","tags":["breakfast","cereal","congee"]},{"unicode":"🥗","tags":["food","green","salad"]},{"unicode":"🍿","tags":["popcorn"]},{"unicode":"🧈","tags":["dairy"]},{"unicode":"🧂","tags":["condiment","shaker"]},{"unicode":"🥫","tags":["can"]},{"unicode":"🍱","tags":["bento","box"]},{"unicode":"🍘","tags":["cracker","rice"]},{"unicode":"🍙","tags":["ball","japanese","rice"]},{"unicode":"🍚","tags":["cooked","rice"]},{"unicode":"🍛","tags":["curry","rice"]},{"unicode":"🍜","tags":["bowl","noodle","ramen","steaming"]},{"unicode":"🍝","tags":["pasta"]},{"unicode":"🍠","tags":["potato","roasted","sweet"]},{"unicode":"🍢","tags":["kebab","seafood","skewer","stick"]},{"unicode":"🍣","tags":["sushi"]},{"unicode":"🍤","tags":["fried","prawn","shrimp","tempura"]},{"unicode":"🍥","tags":["cake","fish","pastry","swirl"]},{"unicode":"🥮","tags":["autumn","festival","yuèbǐng"]},{"unicode":"🍡","tags":["dessert","japanese","skewer","stick","sweet"]},{"unicode":"🥟","tags":["empanada","gyōza","jiaozi","pierogi","potsticker"]},{"unicode":"🥠","tags":["prophecy"]},{"unicode":"🥡","tags":["oyster pail"]},{"unicode":"🦀","tags":["cancer","zodiac"]},{"unicode":"🦞","tags":["bisque","claws","seafood"]},{"unicode":"🦐","tags":["food","shellfish","small"]},{"unicode":"🦑","tags":["food","molusc"]},{"unicode":"🦪","tags":["diving","pearl"]},{"unicode":"🍦","tags":["cream","dessert","ice","icecream","soft","sweet"]},{"unicode":"🍧","tags":["dessert","ice","shaved","sweet"]},{"unicode":"🍨","tags":["cream","dessert","ice","sweet"]},{"unicode":"🍩","tags":["breakfast","dessert","donut","sweet"]},{"unicode":"🍪","tags":["dessert","sweet"]},{"unicode":"🎂","tags":["birthday","cake","celebration","dessert","pastry","sweet"]},{"unicode":"🍰","tags":["cake","dessert","pastry","slice","sweet"]},{"unicode":"🧁","tags":["bakery","sweet"]},{"unicode":"🥧","tags":["filling","pastry"]},{"unicode":"🍫","tags":["bar","chocolate","dessert","sweet"]},{"unicode":"🍬","tags":["dessert","sweet"]},{"unicode":"🍭","tags":["candy","dessert","sweet"]},{"unicode":"🍮","tags":["dessert","pudding","sweet"]},{"unicode":"🍯","tags":["honey","honeypot","pot","sweet"]},{"unicode":"🍼","tags":["baby","bottle","drink","milk"]},{"unicode":"🥛","tags":["drink","glass","milk"]},{"unicode":"☕️","tags":["beverage","coffee","drink","hot","steaming","tea"]},{"unicode":"🫖","tags":["drink","pot","tea"]},{"unicode":"🍵","tags":["beverage","cup","drink","tea","teacup"]},{"unicode":"🍶","tags":["bar","beverage","bottle","cup","drink"]},{"unicode":"🍾","tags":["bar","bottle","cork","drink","popping"]},{"unicode":"🍷","tags":["bar","beverage","drink","glass","wine"]},{"unicode":"🍸️","tags":["bar","cocktail","drink","glass"]},{"unicode":"🍹","tags":["bar","drink","tropical"]},{"unicode":"🍺","tags":["bar","beer","drink","mug"]},{"unicode":"🍻","tags":["bar","beer","clink","drink","mug"]},{"unicode":"🥂","tags":["celebrate","clink","drink","glass"]},{"unicode":"🥃","tags":["glass","liquor","shot","tumbler","whisky"]},{"unicode":"🥤","tags":["juice","soda"]},{"unicode":"🧋","tags":["bubble","milk","pearl","tea"]},{"unicode":"🧃","tags":["beverage","box","juice","straw","sweet"]},{"unicode":"🧉","tags":["drink"]},{"unicode":"🧊","tags":["cold","ice cube","iceberg"]},{"unicode":"🥢","tags":["hashi"]},{"unicode":"🍽️","tags":["cooking","fork","knife","plate"]},{"unicode":"🍴","tags":["cooking","cutlery","fork","knife"]},{"unicode":"🥄","tags":["tableware"]},{"unicode":"🔪","tags":["cooking","hocho","knife","tool","weapon"]},{"unicode":"🏺","tags":["aquarius","cooking","drink","jug","zodiac"]}]},{"group":5,"emojiList":[{"unicode":"🌍️","tags":["africa","earth","europe","globe","globe showing europe-africa","world"]},{"unicode":"🌎️","tags":["americas","earth","globe","globe showing americas","world"]},{"unicode":"🌏️","tags":["asia","australia","earth","globe","globe showing asia-australia","world"]},{"unicode":"🌐","tags":["earth","globe","meridians","world"]},{"unicode":"🗺️","tags":["map","world"]},{"unicode":"🗾","tags":["japan","map","map of japan"]},{"unicode":"🧭","tags":["magnetic","navigation","orienteering"]},{"unicode":"🏔️","tags":["cold","mountain","snow"]},{"unicode":"⛰️","tags":["mountain"]},{"unicode":"🌋","tags":["eruption","mountain"]},{"unicode":"🗻","tags":["fuji","mountain"]},{"unicode":"🏕️","tags":["camping"]},{"unicode":"🏖️","tags":["beach","umbrella"]},{"unicode":"🏜️","tags":["desert"]},{"unicode":"🏝️","tags":["desert","island"]},{"unicode":"🏞️","tags":["park"]},{"unicode":"🏟️","tags":["stadium"]},{"unicode":"🏛️","tags":["classical"]},{"unicode":"🏗️","tags":["construction"]},{"unicode":"🧱","tags":["bricks","clay","mortar","wall"]},{"unicode":"🪨","tags":["boulder","heavy","solid","stone"]},{"unicode":"🪵","tags":["log","lumber","timber"]},{"unicode":"🛖","tags":["house","roundhouse","yurt"]},{"unicode":"🏘️","tags":["houses"]},{"unicode":"🏚️","tags":["derelict","house"]},{"unicode":"🏠️","tags":["home"]},{"unicode":"🏡","tags":["garden","home","house"]},{"unicode":"🏢","tags":["building"]},{"unicode":"🏣","tags":["japanese","japanese post office","post"]},{"unicode":"🏤","tags":["european","post"]},{"unicode":"🏥","tags":["doctor","medicine"]},{"unicode":"🏦","tags":["building"]},{"unicode":"🏨","tags":["building"]},{"unicode":"🏩","tags":["hotel","love"]},{"unicode":"🏪","tags":["convenience","store"]},{"unicode":"🏫","tags":["building"]},{"unicode":"🏬","tags":["department","store"]},{"unicode":"🏭️","tags":["building"]},{"unicode":"🏯","tags":["castle","japanese"]},{"unicode":"🏰","tags":["european"]},{"unicode":"💒","tags":["chapel","romance"]},{"unicode":"🗼","tags":["tokyo","tower"]},{"unicode":"🗽","tags":["liberty","statue","statue of liberty"]},{"unicode":"⛪️","tags":["christian","cross","religion"]},{"unicode":"🕌","tags":["islam","muslim","religion"]},{"unicode":"🛕","tags":["hindu","temple"]},{"unicode":"🕍","tags":["jew","jewish","religion","temple"]},{"unicode":"⛩️","tags":["religion","shinto","shrine"]},{"unicode":"🕋","tags":["islam","muslim","religion"]},{"unicode":"⛲️","tags":["fountain"]},{"unicode":"⛺️","tags":["camping"]},{"unicode":"🌁","tags":["fog"]},{"unicode":"🌃","tags":["night","star"]},{"unicode":"🏙️","tags":["city"]},{"unicode":"🌄","tags":["morning","mountain","sun","sunrise"]},{"unicode":"🌅","tags":["morning","sun"]},{"unicode":"🌆","tags":["city","dusk","evening","landscape","sunset"]},{"unicode":"🌇","tags":["dusk","sun"]},{"unicode":"🌉","tags":["bridge","night"]},{"unicode":"♨️","tags":["hot","hotsprings","springs","steaming"]},{"unicode":"🎠","tags":["carousel","horse"]},{"unicode":"🎡","tags":["amusement park","ferris","wheel"]},{"unicode":"🎢","tags":["amusement park","coaster","roller"]},{"unicode":"💈","tags":["barber","haircut","pole"]},{"unicode":"🎪","tags":["circus","tent"]},{"unicode":"🚂","tags":["engine","railway","steam","train"]},{"unicode":"🚃","tags":["car","electric","railway","train","tram","trolleybus"]},{"unicode":"🚄","tags":["railway","shinkansen","speed","train"]},{"unicode":"🚅","tags":["bullet","railway","shinkansen","speed","train"]},{"unicode":"🚆","tags":["railway"]},{"unicode":"🚇️","tags":["subway"]},{"unicode":"🚈","tags":["railway"]},{"unicode":"🚉","tags":["railway","train"]},{"unicode":"🚊","tags":["trolleybus"]},{"unicode":"🚝","tags":["vehicle"]},{"unicode":"🚞","tags":["car","mountain","railway"]},{"unicode":"🚋","tags":["car","tram","trolleybus"]},{"unicode":"🚌","tags":["vehicle"]},{"unicode":"🚍️","tags":["bus","oncoming"]},{"unicode":"🚎","tags":["bus","tram","trolley"]},{"unicode":"🚐","tags":["bus"]},{"unicode":"🚑️","tags":["vehicle"]},{"unicode":"🚒","tags":["engine","fire","truck"]},{"unicode":"🚓","tags":["car","patrol","police"]},{"unicode":"🚔️","tags":["car","oncoming","police"]},{"unicode":"🚕","tags":["vehicle"]},{"unicode":"🚖","tags":["oncoming","taxi"]},{"unicode":"🚗","tags":["car"]},{"unicode":"🚘️","tags":["automobile","car","oncoming"]},{"unicode":"🚙","tags":["recreational","sport utility"]},{"unicode":"🛻","tags":["pick-up","pickup","truck"]},{"unicode":"🚚","tags":["delivery","truck"]},{"unicode":"🚛","tags":["lorry","semi","truck"]},{"unicode":"🚜","tags":["vehicle"]},{"unicode":"🏎️","tags":["car","racing"]},{"unicode":"🏍️","tags":["racing"]},{"unicode":"🛵","tags":["motor","scooter"]},{"unicode":"🦽","tags":["accessibility"]},{"unicode":"🦼","tags":["accessibility"]},{"unicode":"🛺","tags":["tuk tuk"]},{"unicode":"🚲️","tags":["bike"]},{"unicode":"🛴","tags":["kick","scooter"]},{"unicode":"🛹","tags":["board"]},{"unicode":"🛼","tags":["roller","skate"]},{"unicode":"🚏","tags":["bus","busstop","stop"]},{"unicode":"🛣️","tags":["highway","road"]},{"unicode":"🛤️","tags":["railway","train"]},{"unicode":"🛢️","tags":["drum","oil"]},{"unicode":"⛽️","tags":["diesel","fuel","fuelpump","gas","pump","station"]},{"unicode":"🚨","tags":["beacon","car","light","police","revolving"]},{"unicode":"🚥","tags":["light","signal","traffic"]},{"unicode":"🚦","tags":["light","signal","traffic"]},{"unicode":"🛑","tags":["octagonal","sign","stop"]},{"unicode":"🚧","tags":["barrier"]},{"unicode":"⚓️","tags":["ship","tool"]},{"unicode":"⛵️","tags":["boat","resort","sea","yacht"]},{"unicode":"🛶","tags":["boat"]},{"unicode":"🚤","tags":["boat"]},{"unicode":"🛳️","tags":["passenger","ship"]},{"unicode":"⛴️","tags":["boat","passenger"]},{"unicode":"🛥️","tags":["boat","motorboat"]},{"unicode":"🚢","tags":["boat","passenger"]},{"unicode":"✈️","tags":["aeroplane"]},{"unicode":"🛩️","tags":["aeroplane","airplane"]},{"unicode":"🛫","tags":["aeroplane","airplane","check-in","departure","departures"]},{"unicode":"🛬","tags":["aeroplane","airplane","arrivals","arriving","landing"]},{"unicode":"🪂","tags":["hang-glide","parasail","skydive"]},{"unicode":"💺","tags":["chair"]},{"unicode":"🚁","tags":["vehicle"]},{"unicode":"🚟","tags":["railway","suspension"]},{"unicode":"🚠","tags":["cable","gondola","mountain"]},{"unicode":"🚡","tags":["aerial","cable","car","gondola","tramway"]},{"unicode":"🛰️","tags":["space"]},{"unicode":"🚀","tags":["space"]},{"unicode":"🛸","tags":["ufo"]},{"unicode":"🛎️","tags":["bell","bellhop","hotel"]},{"unicode":"🧳","tags":["packing","travel"]},{"unicode":"⌛️","tags":["sand","timer"]},{"unicode":"⏳️","tags":["hourglass","sand","timer"]},{"unicode":"⌚️","tags":["clock"]},{"unicode":"⏰","tags":["alarm","clock"]},{"unicode":"⏱️","tags":["clock"]},{"unicode":"⏲️","tags":["clock","timer"]},{"unicode":"🕰️","tags":["clock"]},{"unicode":"🕛️","tags":["00","12","12:00","clock","o’clock","twelve"]},{"unicode":"🕧️","tags":["12","12:30","clock","thirty","twelve"]},{"unicode":"🕐️","tags":["00","1","1:00","clock","one","o’clock"]},{"unicode":"🕜️","tags":["1","1:30","clock","one","thirty"]},{"unicode":"🕑️","tags":["00","2","2:00","clock","o’clock","two"]},{"unicode":"🕝️","tags":["2","2:30","clock","thirty","two"]},{"unicode":"🕒️","tags":["00","3","3:00","clock","o’clock","three"]},{"unicode":"🕞️","tags":["3","3:30","clock","thirty","three"]},{"unicode":"🕓️","tags":["00","4","4:00","clock","four","o’clock"]},{"unicode":"🕟️","tags":["4","4:30","clock","four","thirty"]},{"unicode":"🕔️","tags":["00","5","5:00","clock","five","o’clock"]},{"unicode":"🕠️","tags":["5","5:30","clock","five","thirty"]},{"unicode":"🕕️","tags":["00","6","6:00","clock","o’clock","six"]},{"unicode":"🕡️","tags":["6","6:30","clock","six","thirty"]},{"unicode":"🕖️","tags":["00","7","7:00","clock","o’clock","seven"]},{"unicode":"🕢️","tags":["7","7:30","clock","seven","thirty"]},{"unicode":"🕗️","tags":["00","8","8:00","clock","eight","o’clock"]},{"unicode":"🕣️","tags":["8","8:30","clock","eight","thirty"]},{"unicode":"🕘️","tags":["00","9","9:00","clock","nine","o’clock"]},{"unicode":"🕤️","tags":["9","9:30","clock","nine","thirty"]},{"unicode":"🕙️","tags":["00","10","10:00","clock","o’clock","ten"]},{"unicode":"🕥️","tags":["10","10:30","clock","ten","thirty"]},{"unicode":"🕚️","tags":["00","11","11:00","clock","eleven","o’clock"]},{"unicode":"🕦️","tags":["11","11:30","clock","eleven","thirty"]},{"unicode":"🌑","tags":["dark","moon"]},{"unicode":"🌒","tags":["crescent","moon","waxing"]},{"unicode":"🌓","tags":["moon","quarter"]},{"unicode":"🌔","tags":["gibbous","moon","waxing"]},{"unicode":"🌕️","tags":["full","moon"]},{"unicode":"🌖","tags":["gibbous","moon","waning"]},{"unicode":"🌗","tags":["moon","quarter"]},{"unicode":"🌘","tags":["crescent","moon","waning"]},{"unicode":"🌙","tags":["crescent","moon"]},{"unicode":"🌚","tags":["face","moon"]},{"unicode":"🌛","tags":["face","moon","quarter"]},{"unicode":"🌜️","tags":["face","moon","quarter"]},{"unicode":"🌡️","tags":["weather"]},{"unicode":"☀️","tags":["bright","rays","sunny"]},{"unicode":"🌝","tags":["bright","face","full","moon"]},{"unicode":"🌞","tags":["bright","face","sun"]},{"unicode":"🪐","tags":["saturn","saturnine"]},{"unicode":"⭐️","tags":["star"]},{"unicode":"🌟","tags":["glittery","glow","shining","sparkle","star"]},{"unicode":"🌠","tags":["falling","shooting","star"]},{"unicode":"🌌","tags":["space"]},{"unicode":"☁️","tags":["weather"]},{"unicode":"⛅️","tags":["cloud","sun"]},{"unicode":"⛈️","tags":["cloud","rain","thunder"]},{"unicode":"🌤️","tags":["cloud","sun"]},{"unicode":"🌥️","tags":["cloud","sun"]},{"unicode":"🌦️","tags":["cloud","rain","sun"]},{"unicode":"🌧️","tags":["cloud","rain"]},{"unicode":"🌨️","tags":["cloud","cold","snow"]},{"unicode":"🌩️","tags":["cloud","lightning"]},{"unicode":"🌪️","tags":["cloud","whirlwind"]},{"unicode":"🌫️","tags":["cloud"]},{"unicode":"🌬️","tags":["blow","cloud","face","wind"]},{"unicode":"🌀","tags":["dizzy","hurricane","twister","typhoon"]},{"unicode":"🌈","tags":["rain"]},{"unicode":"🌂","tags":["clothing","rain","umbrella"]},{"unicode":"☂️","tags":["clothing","rain"]},{"unicode":"☔️","tags":["clothing","drop","rain","umbrella"]},{"unicode":"⛱️","tags":["rain","sun","umbrella"]},{"unicode":"⚡️","tags":["danger","electric","lightning","voltage","zap"]},{"unicode":"❄️","tags":["cold","snow"]},{"unicode":"☃️","tags":["cold","snow"]},{"unicode":"⛄️","tags":["cold","snow","snowman"]},{"unicode":"☄️","tags":["space"]},{"unicode":"🔥","tags":["flame","tool"]},{"unicode":"💧","tags":["cold","comic","drop","sweat"]},{"unicode":"🌊","tags":["ocean","water","wave"]}]},{"group":6,"emojiList":[{"unicode":"🎃","tags":["celebration","halloween","jack","lantern"]},{"unicode":"🎄","tags":["celebration","christmas","tree"]},{"unicode":"🎆","tags":["celebration"]},{"unicode":"🎇","tags":["celebration","fireworks","sparkle"]},{"unicode":"🧨","tags":["dynamite","explosive","fireworks"]},{"unicode":"✨","tags":["*","sparkle","star"]},{"unicode":"🎈","tags":["celebration"]},{"unicode":"🎉","tags":["celebration","party","popper","tada"]},{"unicode":"🎊","tags":["ball","celebration","confetti"]},{"unicode":"🎋","tags":["banner","celebration","japanese","tree"]},{"unicode":"🎍","tags":["bamboo","celebration","japanese","pine"]},{"unicode":"🎎","tags":["celebration","doll","festival","japanese","japanese dolls"]},{"unicode":"🎏","tags":["carp","celebration","streamer"]},{"unicode":"🎐","tags":["bell","celebration","chime","wind"]},{"unicode":"🎑","tags":["celebration","ceremony","moon"]},{"unicode":"🧧","tags":["gift","good luck","hóngbāo","lai see","money"]},{"unicode":"🎀","tags":["celebration"]},{"unicode":"🎁","tags":["box","celebration","gift","present","wrapped"]},{"unicode":"🎗️","tags":["celebration","reminder","ribbon"]},{"unicode":"🎟️","tags":["admission","ticket"]},{"unicode":"🎫","tags":["admission"]},{"unicode":"🎖️","tags":["celebration","medal","military"]},{"unicode":"🏆️","tags":["prize"]},{"unicode":"🏅","tags":["medal"]},{"unicode":"🥇","tags":["first","gold","medal"]},{"unicode":"🥈","tags":["medal","second","silver"]},{"unicode":"🥉","tags":["bronze","medal","third"]},{"unicode":"⚽️","tags":["ball","football","soccer"]},{"unicode":"⚾️","tags":["ball"]},{"unicode":"🥎","tags":["ball","glove","underarm"]},{"unicode":"🏀","tags":["ball","hoop"]},{"unicode":"🏐","tags":["ball","game"]},{"unicode":"🏈","tags":["american","ball","football"]},{"unicode":"🏉","tags":["ball","football","rugby"]},{"unicode":"🎾","tags":["ball","racquet"]},{"unicode":"🥏","tags":["ultimate"]},{"unicode":"🎳","tags":["ball","game"]},{"unicode":"🏏","tags":["ball","bat","game"]},{"unicode":"🏑","tags":["ball","field","game","hockey","stick"]},{"unicode":"🏒","tags":["game","hockey","ice","puck","stick"]},{"unicode":"🥍","tags":["ball","goal","stick"]},{"unicode":"🏓","tags":["ball","bat","game","paddle","table tennis"]},{"unicode":"🏸","tags":["birdie","game","racquet","shuttlecock"]},{"unicode":"🥊","tags":["boxing","glove"]},{"unicode":"🥋","tags":["judo","karate","martial arts","taekwondo","uniform"]},{"unicode":"🥅","tags":["goal","net"]},{"unicode":"⛳️","tags":["golf","hole"]},{"unicode":"⛸️","tags":["ice","skate"]},{"unicode":"🎣","tags":["fish","pole"]},{"unicode":"🤿","tags":["diving","scuba","snorkeling"]},{"unicode":"🎽","tags":["athletics","running","sash","shirt"]},{"unicode":"🎿","tags":["ski","snow"]},{"unicode":"🛷","tags":["sledge","sleigh"]},{"unicode":"🥌","tags":["game","rock"]},{"unicode":"🎯","tags":["bullseye","dart","game","hit","target"]},{"unicode":"🪀","tags":["fluctuate","toy"]},{"unicode":"🪁","tags":["fly","soar"]},{"unicode":"🎱","tags":["8","ball","billiard","eight","game"]},{"unicode":"🔮","tags":["ball","crystal","fairy tale","fantasy","fortune","tool"]},{"unicode":"🪄","tags":["magic","witch","wizard"]},{"unicode":"🧿","tags":["bead","charm","evil-eye","nazar","talisman"]},{"unicode":"🎮️","tags":["controller","game"]},{"unicode":"🕹️","tags":["game","video game"]},{"unicode":"🎰","tags":["game","slot"]},{"unicode":"🎲","tags":["dice","die","game"]},{"unicode":"🧩","tags":["clue","interlocking","jigsaw","piece","puzzle"]},{"unicode":"🧸","tags":["plaything","plush","stuffed","toy"]},{"unicode":"🪅","tags":["celebration","party"]},{"unicode":"🪆","tags":["doll","nesting","russia"]},{"unicode":"♠️","tags":["card","game"]},{"unicode":"♥️","tags":["card","game"]},{"unicode":"♦️","tags":["card","game"]},{"unicode":"♣️","tags":["card","game"]},{"unicode":"♟️","tags":["chess","dupe","expendable"]},{"unicode":"🃏","tags":["card","game","wildcard"]},{"unicode":"🀄️","tags":["game","mahjong","red"]},{"unicode":"🎴","tags":["card","flower","game","japanese","playing"]},{"unicode":"🎭️","tags":["art","mask","performing","theater","theatre"]},{"unicode":"🖼️","tags":["art","frame","museum","painting","picture"]},{"unicode":"🎨","tags":["art","museum","painting","palette"]},{"unicode":"🧵","tags":["needle","sewing","spool","string"]},{"unicode":"🪡","tags":["embroidery","needle","sewing","stitches","sutures","tailoring"]},{"unicode":"🧶","tags":["ball","crochet","knit"]},{"unicode":"🪢","tags":["rope","tangled","tie","twine","twist"]}]},{"group":7,"emojiList":[{"unicode":"👓️","tags":["clothing","eye","eyeglasses","eyewear"]},{"unicode":"🕶️","tags":["dark","eye","eyewear","glasses"]},{"unicode":"🥽","tags":["eye protection","swimming","welding"]},{"unicode":"🥼","tags":["doctor","experiment","scientist"]},{"unicode":"🦺","tags":["emergency","safety","vest"]},{"unicode":"👔","tags":["clothing","tie"]},{"unicode":"👕","tags":["clothing","shirt","tshirt"]},{"unicode":"👖","tags":["clothing","pants","trousers"]},{"unicode":"🧣","tags":["neck"]},{"unicode":"🧤","tags":["hand"]},{"unicode":"🧥","tags":["jacket"]},{"unicode":"🧦","tags":["stocking"]},{"unicode":"👗","tags":["clothing"]},{"unicode":"👘","tags":["clothing"]},{"unicode":"🥻","tags":["clothing","dress"]},{"unicode":"🩱","tags":["bathing suit"]},{"unicode":"🩲","tags":["bathing suit","one-piece","swimsuit","underwear"]},{"unicode":"🩳","tags":["bathing suit","pants","underwear"]},{"unicode":"👙","tags":["clothing","swim"]},{"unicode":"👚","tags":["clothing","woman"]},{"unicode":"👛","tags":["clothing","coin"]},{"unicode":"👜","tags":["bag","clothing","purse"]},{"unicode":"👝","tags":["bag","clothing","pouch"]},{"unicode":"🛍️","tags":["bag","hotel","shopping"]},{"unicode":"🎒","tags":["bag","rucksack","satchel","school"]},{"unicode":"🩴","tags":["beach sandals","sandals","thong sandals","thongs","zōri"]},{"unicode":"👞","tags":["clothing","man","shoe"]},{"unicode":"👟","tags":["athletic","clothing","shoe","sneaker"]},{"unicode":"🥾","tags":["backpacking","boot","camping","hiking"]},{"unicode":"🥿","tags":["ballet flat","slip-on","slipper"]},{"unicode":"👠","tags":["clothing","heel","shoe","woman"]},{"unicode":"👡","tags":["clothing","sandal","shoe","woman"]},{"unicode":"🩰","tags":["ballet","dance"]},{"unicode":"👢","tags":["boot","clothing","shoe","woman"]},{"unicode":"👑","tags":["clothing","king","queen"]},{"unicode":"👒","tags":["clothing","hat","woman"]},{"unicode":"🎩","tags":["clothing","hat","top","tophat"]},{"unicode":"🎓️","tags":["cap","celebration","clothing","graduation","hat"]},{"unicode":"🧢","tags":["baseball cap"]},{"unicode":"🪖","tags":["army","helmet","military","soldier","warrior"]},{"unicode":"⛑️","tags":["aid","cross","face","hat","helmet"]},{"unicode":"📿","tags":["beads","clothing","necklace","prayer","religion"]},{"unicode":"💄","tags":["cosmetics","makeup"]},{"unicode":"💍","tags":["diamond"]},{"unicode":"💎","tags":["diamond","gem","jewel"]},{"unicode":"🔇","tags":["mute","quiet","silent","speaker"]},{"unicode":"🔈️","tags":["soft"]},{"unicode":"🔉","tags":["medium"]},{"unicode":"🔊","tags":["loud"]},{"unicode":"📢","tags":["loud","public address"]},{"unicode":"📣","tags":["cheering"]},{"unicode":"📯","tags":["horn","post","postal"]},{"unicode":"🔔","tags":["bell"]},{"unicode":"🔕","tags":["bell","forbidden","mute","quiet","silent"]},{"unicode":"🎼","tags":["music","score"]},{"unicode":"🎵","tags":["music","note"]},{"unicode":"🎶","tags":["music","note","notes"]},{"unicode":"🎙️","tags":["mic","microphone","music","studio"]},{"unicode":"🎚️","tags":["level","music","slider"]},{"unicode":"🎛️","tags":["control","knobs","music"]},{"unicode":"🎤","tags":["karaoke","mic"]},{"unicode":"🎧️","tags":["earbud"]},{"unicode":"📻️","tags":["video"]},{"unicode":"🎷","tags":["instrument","music","sax"]},{"unicode":"🪗","tags":["accordian","concertina","squeeze box"]},{"unicode":"🎸","tags":["instrument","music"]},{"unicode":"🎹","tags":["instrument","keyboard","music","piano"]},{"unicode":"🎺","tags":["instrument","music"]},{"unicode":"🎻","tags":["instrument","music"]},{"unicode":"🪕","tags":["music","stringed"]},{"unicode":"🥁","tags":["drumsticks","music"]},{"unicode":"🪘","tags":["beat","conga","drum","rhythm"]},{"unicode":"📱","tags":["cell","mobile","phone","telephone"]},{"unicode":"📲","tags":["arrow","cell","mobile","phone","receive"]},{"unicode":"☎️","tags":["phone"]},{"unicode":"📞","tags":["phone","receiver","telephone"]},{"unicode":"📟️","tags":["pager"]},{"unicode":"📠","tags":["fax"]},{"unicode":"🔋","tags":["battery"]},{"unicode":"🔌","tags":["electric","electricity","plug"]},{"unicode":"💻️","tags":["computer","pc","personal"]},{"unicode":"🖥️","tags":["computer","desktop"]},{"unicode":"🖨️","tags":["computer"]},{"unicode":"⌨️","tags":["computer"]},{"unicode":"🖱️","tags":["computer"]},{"unicode":"🖲️","tags":["computer"]},{"unicode":"💽","tags":["computer","disk","minidisk","optical"]},{"unicode":"💾","tags":["computer","disk","floppy"]},{"unicode":"💿️","tags":["cd","computer","disk","optical"]},{"unicode":"📀","tags":["blu-ray","computer","disk","optical"]},{"unicode":"🧮","tags":["calculation"]},{"unicode":"🎥","tags":["camera","cinema","movie"]},{"unicode":"🎞️","tags":["cinema","film","frames","movie"]},{"unicode":"📽️","tags":["cinema","film","movie","projector","video"]},{"unicode":"🎬️","tags":["clapper","movie"]},{"unicode":"📺️","tags":["tv","video"]},{"unicode":"📷️","tags":["video"]},{"unicode":"📸","tags":["camera","flash","video"]},{"unicode":"📹️","tags":["camera","video"]},{"unicode":"📼","tags":["tape","vhs","video"]},{"unicode":"🔍️","tags":["glass","magnifying","search","tool"]},{"unicode":"🔎","tags":["glass","magnifying","search","tool"]},{"unicode":"🕯️","tags":["light"]},{"unicode":"💡","tags":["bulb","comic","electric","idea","light"]},{"unicode":"🔦","tags":["electric","light","tool","torch"]},{"unicode":"🏮","tags":["bar","lantern","light","red"]},{"unicode":"🪔","tags":["diya","lamp","oil"]},{"unicode":"📔","tags":["book","cover","decorated","notebook"]},{"unicode":"📕","tags":["book","closed"]},{"unicode":"📖","tags":["book","open"]},{"unicode":"📗","tags":["book","green"]},{"unicode":"📘","tags":["blue","book"]},{"unicode":"📙","tags":["book","orange"]},{"unicode":"📚️","tags":["book"]},{"unicode":"📓","tags":["notebook"]},{"unicode":"📒","tags":["notebook"]},{"unicode":"📃","tags":["curl","document","page"]},{"unicode":"📜","tags":["paper"]},{"unicode":"📄","tags":["document","page"]},{"unicode":"📰","tags":["news","paper"]},{"unicode":"🗞️","tags":["news","newspaper","paper","rolled"]},{"unicode":"📑","tags":["bookmark","mark","marker","tabs"]},{"unicode":"🔖","tags":["mark"]},{"unicode":"🏷️","tags":["label"]},{"unicode":"💰️","tags":["bag","dollar","money","moneybag"]},{"unicode":"🪙","tags":["gold","metal","money","silver","treasure"]},{"unicode":"💴","tags":["banknote","bill","currency","money","note","yen"]},{"unicode":"💵","tags":["banknote","bill","currency","dollar","money","note"]},{"unicode":"💶","tags":["banknote","bill","currency","euro","money","note"]},{"unicode":"💷","tags":["banknote","bill","currency","money","note","pound"]},{"unicode":"💸","tags":["banknote","bill","fly","money","wings"]},{"unicode":"💳️","tags":["card","credit","money"]},{"unicode":"🧾","tags":["accounting","bookkeeping","evidence","proof"]},{"unicode":"💹","tags":["chart","graph","growth","money","yen"]},{"unicode":"✉️","tags":["email","letter"]},{"unicode":"📧","tags":["email","letter","mail"]},{"unicode":"📨","tags":["e-mail","email","envelope","incoming","letter","receive"]},{"unicode":"📩","tags":["arrow","e-mail","email","envelope","outgoing"]},{"unicode":"📤️","tags":["box","letter","mail","outbox","sent","tray"]},{"unicode":"📥️","tags":["box","inbox","letter","mail","receive","tray"]},{"unicode":"📦️","tags":["box","parcel"]},{"unicode":"📫️","tags":["closed","mail","mailbox","postbox"]},{"unicode":"📪️","tags":["closed","lowered","mail","mailbox","postbox"]},{"unicode":"📬️","tags":["mail","mailbox","open","postbox"]},{"unicode":"📭️","tags":["lowered","mail","mailbox","open","postbox"]},{"unicode":"📮","tags":["mail","mailbox"]},{"unicode":"🗳️","tags":["ballot","box"]},{"unicode":"✏️","tags":["pencil"]},{"unicode":"✒️","tags":["nib","pen"]},{"unicode":"🖋️","tags":["fountain","pen"]},{"unicode":"🖊️","tags":["ballpoint"]},{"unicode":"🖌️","tags":["painting"]},{"unicode":"🖍️","tags":["crayon"]},{"unicode":"📝","tags":["pencil"]},{"unicode":"💼","tags":["briefcase"]},{"unicode":"📁","tags":["file","folder"]},{"unicode":"📂","tags":["file","folder","open"]},{"unicode":"🗂️","tags":["card","dividers","index"]},{"unicode":"📅","tags":["date"]},{"unicode":"📆","tags":["calendar"]},{"unicode":"🗒️","tags":["note","pad","spiral"]},{"unicode":"🗓️","tags":["calendar","pad","spiral"]},{"unicode":"📇","tags":["card","index","rolodex"]},{"unicode":"📈","tags":["chart","graph","growth","trend","upward"]},{"unicode":"📉","tags":["chart","down","graph","trend"]},{"unicode":"📊","tags":["bar","chart","graph"]},{"unicode":"📋️","tags":["clipboard"]},{"unicode":"📌","tags":["pin"]},{"unicode":"📍","tags":["pin","pushpin"]},{"unicode":"📎","tags":["paperclip"]},{"unicode":"🖇️","tags":["link","paperclip"]},{"unicode":"📏","tags":["ruler","straight edge"]},{"unicode":"📐","tags":["ruler","set","triangle"]},{"unicode":"✂️","tags":["cutting","tool"]},{"unicode":"🗃️","tags":["box","card","file"]},{"unicode":"🗄️","tags":["cabinet","file","filing"]},{"unicode":"🗑️","tags":["wastebasket"]},{"unicode":"🔒️","tags":["closed"]},{"unicode":"🔓️","tags":["lock","open","unlock"]},{"unicode":"🔏","tags":["ink","lock","nib","pen","privacy"]},{"unicode":"🔐","tags":["closed","key","lock","secure"]},{"unicode":"🔑","tags":["lock","password"]},{"unicode":"🗝️","tags":["clue","key","lock","old"]},{"unicode":"🔨","tags":["tool"]},{"unicode":"🪓","tags":["chop","hatchet","split","wood"]},{"unicode":"⛏️","tags":["mining","tool"]},{"unicode":"⚒️","tags":["hammer","pick","tool"]},{"unicode":"🛠️","tags":["hammer","spanner","tool","wrench"]},{"unicode":"🗡️","tags":["knife","weapon"]},{"unicode":"⚔️","tags":["crossed","swords","weapon"]},{"unicode":"🔫","tags":["gun","handgun","revolver","tool","weapon"]},{"unicode":"🪃","tags":["australia","rebound","repercussion"]},{"unicode":"🏹","tags":["archer","arrow","bow","sagittarius","zodiac"]},{"unicode":"🛡️","tags":["weapon"]},{"unicode":"🪚","tags":["carpenter","lumber","saw","tool"]},{"unicode":"🔧","tags":["spanner","tool"]},{"unicode":"🪛","tags":["screw","tool"]},{"unicode":"🔩","tags":["bolt","nut","tool"]},{"unicode":"⚙️","tags":["cog","cogwheel","tool"]},{"unicode":"🗜️","tags":["compress","tool","vice"]},{"unicode":"⚖️","tags":["balance","justice","libra","scale","zodiac"]},{"unicode":"🦯","tags":["accessibility","blind"]},{"unicode":"🔗","tags":["link"]},{"unicode":"⛓️","tags":["chain"]},{"unicode":"🪝","tags":["catch","crook","curve","ensnare","selling point"]},{"unicode":"🧰","tags":["chest","mechanic","tool"]},{"unicode":"🧲","tags":["attraction","horseshoe","magnetic"]},{"unicode":"🪜","tags":["climb","rung","step"]},{"unicode":"⚗️","tags":["chemistry","tool"]},{"unicode":"🧪","tags":["chemist","chemistry","experiment","lab","science"]},{"unicode":"🧫","tags":["bacteria","biologist","biology","culture","lab"]},{"unicode":"🧬","tags":["biologist","evolution","gene","genetics","life"]},{"unicode":"🔬","tags":["science","tool"]},{"unicode":"🔭","tags":["science","tool"]},{"unicode":"📡","tags":["antenna","dish","satellite"]},{"unicode":"💉","tags":["medicine","needle","shot","sick"]},{"unicode":"🩸","tags":["bleed","blood donation","injury","medicine","menstruation"]},{"unicode":"💊","tags":["doctor","medicine","sick"]},{"unicode":"🩹","tags":["bandage"]},{"unicode":"🩺","tags":["doctor","heart","medicine"]},{"unicode":"🚪","tags":["door"]},{"unicode":"🛗","tags":["accessibility","hoist","lift"]},{"unicode":"🪞","tags":["reflection","reflector","speculum"]},{"unicode":"🪟","tags":["frame","fresh air","opening","transparent","view"]},{"unicode":"🛏️","tags":["hotel","sleep"]},{"unicode":"🛋️","tags":["couch","hotel","lamp"]},{"unicode":"🪑","tags":["seat","sit"]},{"unicode":"🚽","tags":["toilet"]},{"unicode":"🪠","tags":["force cup","plumber","suction","toilet"]},{"unicode":"🚿","tags":["water"]},{"unicode":"🛁","tags":["bath"]},{"unicode":"🪤","tags":["bait","mousetrap","snare","trap"]},{"unicode":"🪒","tags":["sharp","shave"]},{"unicode":"🧴","tags":["lotion","moisturizer","shampoo","sunscreen"]},{"unicode":"🧷","tags":["diaper","punk rock"]},{"unicode":"🧹","tags":["cleaning","sweeping","witch"]},{"unicode":"🧺","tags":["farming","laundry","picnic"]},{"unicode":"🧻","tags":["paper towels","toilet paper"]},{"unicode":"🪣","tags":["cask","pail","vat"]},{"unicode":"🧼","tags":["bar","bathing","cleaning","lather","soapdish"]},{"unicode":"🪥","tags":["bathroom","brush","clean","dental","hygiene","teeth"]},{"unicode":"🧽","tags":["absorbing","cleaning","porous"]},{"unicode":"🧯","tags":["extinguish","fire","quench"]},{"unicode":"🛒","tags":["cart","shopping","trolley"]},{"unicode":"🚬","tags":["smoking"]},{"unicode":"⚰️","tags":["death"]},{"unicode":"🪦","tags":["cemetery","grave","graveyard","tombstone"]},{"unicode":"⚱️","tags":["ashes","death","funeral","urn"]},{"unicode":"🗿","tags":["face","moyai","statue"]},{"unicode":"🪧","tags":["demonstration","picket","protest","sign"]}]},{"group":8,"emojiList":[{"unicode":"🏧","tags":["atm","atm sign","automated","bank","teller"]},{"unicode":"🚮","tags":["litter","litter bin"]},{"unicode":"🚰","tags":["drinking","potable","water"]},{"unicode":"♿️","tags":["access"]},{"unicode":"🚹️","tags":["lavatory","man","restroom","wc"]},{"unicode":"🚺️","tags":["lavatory","restroom","wc","woman"]},{"unicode":"🚻","tags":["lavatory","wc"]},{"unicode":"🚼️","tags":["baby","changing"]},{"unicode":"🚾","tags":["closet","lavatory","restroom","water","wc"]},{"unicode":"🛂","tags":["control","passport"]},{"unicode":"🛃","tags":["customs"]},{"unicode":"🛄","tags":["baggage","claim"]},{"unicode":"🛅","tags":["baggage","locker","luggage"]},{"unicode":"⚠️","tags":["warning"]},{"unicode":"🚸","tags":["child","crossing","pedestrian","traffic"]},{"unicode":"⛔️","tags":["entry","forbidden","no","not","prohibited","traffic"]},{"unicode":"🚫","tags":["entry","forbidden","no","not"]},{"unicode":"🚳","tags":["bicycle","bike","forbidden","no","prohibited"]},{"unicode":"🚭️","tags":["forbidden","no","not","prohibited","smoking"]},{"unicode":"🚯","tags":["forbidden","litter","no","not","prohibited"]},{"unicode":"🚱","tags":["non-drinking","non-potable","water"]},{"unicode":"🚷","tags":["forbidden","no","not","pedestrian","prohibited"]},{"unicode":"📵","tags":["cell","forbidden","mobile","no","phone"]},{"unicode":"🔞","tags":["18","age restriction","eighteen","prohibited","underage"]},{"unicode":"☢️","tags":["sign"]},{"unicode":"☣️","tags":["sign"]},{"unicode":"⬆️","tags":["arrow","cardinal","direction","north"]},{"unicode":"↗️","tags":["arrow","direction","intercardinal","northeast"]},{"unicode":"➡️","tags":["arrow","cardinal","direction","east"]},{"unicode":"↘️","tags":["arrow","direction","intercardinal","southeast"]},{"unicode":"⬇️","tags":["arrow","cardinal","direction","down","south"]},{"unicode":"↙️","tags":["arrow","direction","intercardinal","southwest"]},{"unicode":"⬅️","tags":["arrow","cardinal","direction","west"]},{"unicode":"↖️","tags":["arrow","direction","intercardinal","northwest"]},{"unicode":"↕️","tags":["arrow"]},{"unicode":"↔️","tags":["arrow"]},{"unicode":"↩️","tags":["arrow"]},{"unicode":"↪️","tags":["arrow"]},{"unicode":"⤴️","tags":["arrow"]},{"unicode":"⤵️","tags":["arrow","down"]},{"unicode":"🔃","tags":["arrow","clockwise","reload"]},{"unicode":"🔄","tags":["anticlockwise","arrow","counterclockwise","withershins"]},{"unicode":"🔙","tags":["arrow","back","back arrow"]},{"unicode":"🔚","tags":["arrow","end","end arrow"]},{"unicode":"🔛","tags":["arrow","mark","on","on! arrow"]},{"unicode":"🔜","tags":["arrow","soon","soon arrow"]},{"unicode":"🔝","tags":["arrow","top","top arrow","up"]},{"unicode":"🛐","tags":["religion","worship"]},{"unicode":"⚛️","tags":["atheist","atom"]},{"unicode":"🕉️","tags":["hindu","religion"]},{"unicode":"✡️","tags":["david","jew","jewish","religion","star","star of david"]},{"unicode":"☸️","tags":["buddhist","dharma","religion","wheel"]},{"unicode":"☯️","tags":["religion","tao","taoist","yang","yin"]},{"unicode":"✝️","tags":["christian","cross","religion"]},{"unicode":"☦️","tags":["christian","cross","religion"]},{"unicode":"☪️","tags":["islam","muslim","religion"]},{"unicode":"☮️","tags":["peace"]},{"unicode":"🕎","tags":["candelabrum","candlestick","religion"]},{"unicode":"🔯","tags":["fortune","star"]},{"unicode":"♈️","tags":["aries","ram","zodiac"]},{"unicode":"♉️","tags":["bull","ox","taurus","zodiac"]},{"unicode":"♊️","tags":["gemini","twins","zodiac"]},{"unicode":"♋️","tags":["cancer","crab","zodiac"]},{"unicode":"♌️","tags":["leo","lion","zodiac"]},{"unicode":"♍️","tags":["virgo","zodiac"]},{"unicode":"♎️","tags":["balance","justice","libra","scales","zodiac"]},{"unicode":"♏️","tags":["scorpio","scorpion","scorpius","zodiac"]},{"unicode":"♐️","tags":["archer","sagittarius","zodiac"]},{"unicode":"♑️","tags":["capricorn","goat","zodiac"]},{"unicode":"♒️","tags":["aquarius","bearer","water","zodiac"]},{"unicode":"♓️","tags":["fish","pisces","zodiac"]},{"unicode":"⛎","tags":["bearer","ophiuchus","serpent","snake","zodiac"]},{"unicode":"🔀","tags":["arrow","crossed"]},{"unicode":"🔁","tags":["arrow","clockwise","repeat"]},{"unicode":"🔂","tags":["arrow","clockwise","once"]},{"unicode":"▶️","tags":["arrow","play","right","triangle"]},{"unicode":"⏩️","tags":["arrow","double","fast","forward"]},{"unicode":"⏭️","tags":["arrow","next scene","next track","triangle"]},{"unicode":"⏯️","tags":["arrow","pause","play","right","triangle"]},{"unicode":"◀️","tags":["arrow","left","reverse","triangle"]},{"unicode":"⏪️","tags":["arrow","double","rewind"]},{"unicode":"⏮️","tags":["arrow","previous scene","previous track","triangle"]},{"unicode":"🔼","tags":["arrow","button","red"]},{"unicode":"⏫","tags":["arrow","double"]},{"unicode":"🔽","tags":["arrow","button","down","red"]},{"unicode":"⏬","tags":["arrow","double","down"]},{"unicode":"⏸️","tags":["bar","double","pause","vertical"]},{"unicode":"⏹️","tags":["square","stop"]},{"unicode":"⏺️","tags":["circle","record"]},{"unicode":"⏏️","tags":["eject"]},{"unicode":"🎦","tags":["camera","film","movie"]},{"unicode":"🔅","tags":["brightness","dim","low"]},{"unicode":"🔆","tags":["bright","brightness"]},{"unicode":"📶","tags":["antenna","bar","cell","mobile","phone"]},{"unicode":"📳","tags":["cell","mobile","mode","phone","telephone","vibration"]},{"unicode":"📴","tags":["cell","mobile","off","phone","telephone"]},{"unicode":"♀️","tags":["woman"]},{"unicode":"♂️","tags":["man"]},{"unicode":"⚧️","tags":["transgender"]},{"unicode":"✖️","tags":["cancel","multiplication","sign","x","×"]},{"unicode":"➕","tags":["+","math","sign"]},{"unicode":"➖","tags":["-","math","sign","−"]},{"unicode":"➗","tags":["division","math","sign","÷"]},{"unicode":"♾️","tags":["forever","unbounded","universal"]},{"unicode":"‼️","tags":["!","!!","bangbang","exclamation","mark"]},{"unicode":"⁉️","tags":["!","!?","?","exclamation","interrobang","mark","punctuation","question"]},{"unicode":"❓️","tags":["?","mark","punctuation","question"]},{"unicode":"❔","tags":["?","mark","outlined","punctuation","question"]},{"unicode":"❕","tags":["!","exclamation","mark","outlined","punctuation"]},{"unicode":"❗️","tags":["!","exclamation","mark","punctuation"]},{"unicode":"〰️","tags":["dash","punctuation","wavy"]},{"unicode":"💱","tags":["bank","currency","exchange","money"]},{"unicode":"💲","tags":["currency","dollar","money"]},{"unicode":"⚕️","tags":["aesculapius","medicine","staff"]},{"unicode":"♻️","tags":["recycle"]},{"unicode":"⚜️","tags":["fleur-de-lis"]},{"unicode":"🔱","tags":["anchor","emblem","ship","tool","trident"]},{"unicode":"📛","tags":["badge","name"]},{"unicode":"🔰","tags":["beginner","chevron","japanese","japanese symbol for beginner","leaf"]},{"unicode":"⭕️","tags":["circle","large","o","red"]},{"unicode":"✅","tags":["button","check","mark","✓"]},{"unicode":"☑️","tags":["box","check","✓"]},{"unicode":"✔️","tags":["check","mark","✓"]},{"unicode":"❌","tags":["cancel","cross","mark","multiplication","multiply","x","×"]},{"unicode":"❎","tags":["mark","square","x","×"]},{"unicode":"➰","tags":["curl","loop"]},{"unicode":"➿","tags":["curl","double","loop"]},{"unicode":"〽️","tags":["mark","part"]},{"unicode":"✳️","tags":["*","asterisk"]},{"unicode":"✴️","tags":["*","star"]},{"unicode":"❇️","tags":["*"]},{"unicode":"©️","tags":["c"]},{"unicode":"®️","tags":["r"]},{"unicode":"™️","tags":["mark","tm","trademark"]},{"unicode":"#️⃣","tags":["keycap"]},{"unicode":"*️⃣","tags":["keycap"]},{"unicode":"0️⃣","tags":["keycap"]},{"unicode":"1️⃣","tags":["keycap"]},{"unicode":"2️⃣","tags":["keycap"]},{"unicode":"3️⃣","tags":["keycap"]},{"unicode":"4️⃣","tags":["keycap"]},{"unicode":"5️⃣","tags":["keycap"]},{"unicode":"6️⃣","tags":["keycap"]},{"unicode":"7️⃣","tags":["keycap"]},{"unicode":"8️⃣","tags":["keycap"]},{"unicode":"9️⃣","tags":["keycap"]},{"unicode":"🔟","tags":["keycap"]},{"unicode":"🔠","tags":["abcd","input","latin","letters","uppercase"]},{"unicode":"🔡","tags":["abcd","input","latin","letters","lowercase"]},{"unicode":"🔢","tags":["1234","input","numbers"]},{"unicode":"🔣","tags":["input","〒♪&%"]},{"unicode":"🔤","tags":["abc","alphabet","input","latin","letters"]},{"unicode":"🅰️","tags":["a","a button (blood type)","blood type"]},{"unicode":"🆎","tags":["ab","ab button (blood type)","blood type"]},{"unicode":"🅱️","tags":["b","b button (blood type)","blood type"]},{"unicode":"🆑","tags":["cl","cl button"]},{"unicode":"🆒","tags":["cool","cool button"]},{"unicode":"🆓","tags":["free","free button"]},{"unicode":"ℹ️","tags":["i"]},{"unicode":"🆔","tags":["id","id button","identity"]},{"unicode":"Ⓜ️","tags":["circle","circled m","m"]},{"unicode":"🆕","tags":["new","new button"]},{"unicode":"🆖","tags":["ng","ng button"]},{"unicode":"🅾️","tags":["blood type","o","o button (blood type)"]},{"unicode":"🆗","tags":["ok","ok button"]},{"unicode":"🅿️","tags":["p button","parking"]},{"unicode":"🆘","tags":["help","sos","sos button"]},{"unicode":"🆙","tags":["mark","up","up! button"]},{"unicode":"🆚","tags":["versus","vs","vs button"]},{"unicode":"🈁","tags":["japanese","japanese “here” button","katakana","“here”","ココ"]},{"unicode":"🈂️","tags":["japanese","japanese “service charge” button","katakana","“service charge”","サ"]},{"unicode":"🈷️","tags":["ideograph","japanese","japanese “monthly amount” button","“monthly amount”","月"]},{"unicode":"🈶","tags":["ideograph","japanese","japanese “not free of charge” button","“not free of charge”","有"]},{"unicode":"🈯️","tags":["ideograph","japanese","japanese “reserved” button","“reserved”","指"]},{"unicode":"🉐","tags":["ideograph","japanese","japanese “bargain” button","“bargain”","得"]},{"unicode":"🈹","tags":["ideograph","japanese","japanese “discount” button","“discount”","割"]},{"unicode":"🈚️","tags":["ideograph","japanese","japanese “free of charge” button","“free of charge”","無"]},{"unicode":"🈲","tags":["ideograph","japanese","japanese “prohibited” button","“prohibited”","禁"]},{"unicode":"🉑","tags":["ideograph","japanese","japanese “acceptable” button","“acceptable”","可"]},{"unicode":"🈸","tags":["ideograph","japanese","japanese “application” button","“application”","申"]},{"unicode":"🈴","tags":["ideograph","japanese","japanese “passing grade” button","“passing grade”","合"]},{"unicode":"🈳","tags":["ideograph","japanese","japanese “vacancy” button","“vacancy”","空"]},{"unicode":"㊗️","tags":["ideograph","japanese","japanese “congratulations” button","“congratulations”","祝"]},{"unicode":"㊙️","tags":["ideograph","japanese","japanese “secret” button","“secret”","秘"]},{"unicode":"🈺","tags":["ideograph","japanese","japanese “open for business” button","“open for business”","営"]},{"unicode":"🈵","tags":["ideograph","japanese","japanese “no vacancy” button","“no vacancy”","満"]},{"unicode":"🔴","tags":["circle","geometric","red"]},{"unicode":"🟠","tags":["circle","orange"]},{"unicode":"🟡","tags":["circle","yellow"]},{"unicode":"🟢","tags":["circle","green"]},{"unicode":"🔵","tags":["blue","circle","geometric"]},{"unicode":"🟣","tags":["circle","purple"]},{"unicode":"🟤","tags":["brown","circle"]},{"unicode":"⚫️","tags":["circle","geometric"]},{"unicode":"⚪️","tags":["circle","geometric"]},{"unicode":"🟥","tags":["red","square"]},{"unicode":"🟧","tags":["orange","square"]},{"unicode":"🟨","tags":["square","yellow"]},{"unicode":"🟩","tags":["green","square"]},{"unicode":"🟦","tags":["blue","square"]},{"unicode":"🟪","tags":["purple","square"]},{"unicode":"🟫","tags":["brown","square"]},{"unicode":"⬛️","tags":["geometric","square"]},{"unicode":"⬜️","tags":["geometric","square"]},{"unicode":"◼️","tags":["geometric","square"]},{"unicode":"◻️","tags":["geometric","square"]},{"unicode":"◾️","tags":["geometric","square"]},{"unicode":"◽️","tags":["geometric","square"]},{"unicode":"▪️","tags":["geometric","square"]},{"unicode":"▫️","tags":["geometric","square"]},{"unicode":"🔶","tags":["diamond","geometric","orange"]},{"unicode":"🔷","tags":["blue","diamond","geometric"]},{"unicode":"🔸","tags":["diamond","geometric","orange"]},{"unicode":"🔹","tags":["blue","diamond","geometric"]},{"unicode":"🔺","tags":["geometric","red"]},{"unicode":"🔻","tags":["down","geometric","red"]},{"unicode":"💠","tags":["comic","diamond","geometric","inside"]},{"unicode":"🔘","tags":["button","geometric","radio"]},{"unicode":"🔳","tags":["button","geometric","outlined","square"]},{"unicode":"🔲","tags":["button","geometric","square"]}]},{"group":9,"emojiList":[{"unicode":"🏁","tags":["checkered","chequered","racing"]},{"unicode":"🚩","tags":["post"]},{"unicode":"🎌","tags":["celebration","cross","crossed","japanese"]},{"unicode":"🏴","tags":["waving"]},{"unicode":"🏳️","tags":["waving"]},{"unicode":"🏳️‍🌈","tags":["pride","rainbow"]},{"unicode":"🏳️‍⚧️","tags":["flag","light blue","pink","transgender","white"]},{"unicode":"🏴‍☠️","tags":["jolly roger","pirate","plunder","treasure"]},{"unicode":"🇦🇨","tags":["AC","flag"]},{"unicode":"🇦🇩","tags":["AD","flag"]},{"unicode":"🇦🇪","tags":["AE","flag"]},{"unicode":"🇦🇫","tags":["AF","flag"]},{"unicode":"🇦🇬","tags":["AG","flag"]},{"unicode":"🇦🇮","tags":["AI","flag"]},{"unicode":"🇦🇱","tags":["AL","flag"]},{"unicode":"🇦🇲","tags":["AM","flag"]},{"unicode":"🇦🇴","tags":["AO","flag"]},{"unicode":"🇦🇶","tags":["AQ","flag"]},{"unicode":"🇦🇷","tags":["AR","flag"]},{"unicode":"🇦🇸","tags":["AS","flag"]},{"unicode":"🇦🇹","tags":["AT","flag"]},{"unicode":"🇦🇺","tags":["AU","flag"]},{"unicode":"🇦🇼","tags":["AW","flag"]},{"unicode":"🇦🇽","tags":["AX","flag"]},{"unicode":"🇦🇿","tags":["AZ","flag"]},{"unicode":"🇧🇦","tags":["BA","flag"]},{"unicode":"🇧🇧","tags":["BB","flag"]},{"unicode":"🇧🇩","tags":["BD","flag"]},{"unicode":"🇧🇪","tags":["BE","flag"]},{"unicode":"🇧🇫","tags":["BF","flag"]},{"unicode":"🇧🇬","tags":["BG","flag"]},{"unicode":"🇧🇭","tags":["BH","flag"]},{"unicode":"🇧🇮","tags":["BI","flag"]},{"unicode":"🇧🇯","tags":["BJ","flag"]},{"unicode":"🇧🇱","tags":["BL","flag"]},{"unicode":"🇧🇲","tags":["BM","flag"]},{"unicode":"🇧🇳","tags":["BN","flag"]},{"unicode":"🇧🇴","tags":["BO","flag"]},{"unicode":"🇧🇶","tags":["BQ","flag"]},{"unicode":"🇧🇷","tags":["BR","flag"]},{"unicode":"🇧🇸","tags":["BS","flag"]},{"unicode":"🇧🇹","tags":["BT","flag"]},{"unicode":"🇧🇻","tags":["BV","flag"]},{"unicode":"🇧🇼","tags":["BW","flag"]},{"unicode":"🇧🇾","tags":["BY","flag"]},{"unicode":"🇧🇿","tags":["BZ","flag"]},{"unicode":"🇨🇦","tags":["CA","flag"]},{"unicode":"🇨🇨","tags":["CC","flag"]},{"unicode":"🇨🇩","tags":["CD","flag"]},{"unicode":"🇨🇫","tags":["CF","flag"]},{"unicode":"🇨🇬","tags":["CG","flag"]},{"unicode":"🇨🇭","tags":["CH","flag"]},{"unicode":"🇨🇮","tags":["CI","flag"]},{"unicode":"🇨🇰","tags":["CK","flag"]},{"unicode":"🇨🇱","tags":["CL","flag"]},{"unicode":"🇨🇲","tags":["CM","flag"]},{"unicode":"🇨🇳","tags":["CN","flag"]},{"unicode":"🇨🇴","tags":["CO","flag"]},{"unicode":"🇨🇵","tags":["CP","flag"]},{"unicode":"🇨🇷","tags":["CR","flag"]},{"unicode":"🇨🇺","tags":["CU","flag"]},{"unicode":"🇨🇻","tags":["CV","flag"]},{"unicode":"🇨🇼","tags":["CW","flag"]},{"unicode":"🇨🇽","tags":["CX","flag"]},{"unicode":"🇨🇾","tags":["CY","flag"]},{"unicode":"🇨🇿","tags":["CZ","flag"]},{"unicode":"🇩🇪","tags":["DE","flag"]},{"unicode":"🇩🇬","tags":["DG","flag"]},{"unicode":"🇩🇯","tags":["DJ","flag"]},{"unicode":"🇩🇰","tags":["DK","flag"]},{"unicode":"🇩🇲","tags":["DM","flag"]},{"unicode":"🇩🇴","tags":["DO","flag"]},{"unicode":"🇩🇿","tags":["DZ","flag"]},{"unicode":"🇪🇦","tags":["EA","flag"]},{"unicode":"🇪🇨","tags":["EC","flag"]},{"unicode":"🇪🇪","tags":["EE","flag"]},{"unicode":"🇪🇬","tags":["EG","flag"]},{"unicode":"🇪🇭","tags":["EH","flag"]},{"unicode":"🇪🇷","tags":["ER","flag"]},{"unicode":"🇪🇸","tags":["ES","flag"]},{"unicode":"🇪🇹","tags":["ET","flag"]},{"unicode":"🇪🇺","tags":["EU","flag"]},{"unicode":"🇫🇮","tags":["FI","flag"]},{"unicode":"🇫🇯","tags":["FJ","flag"]},{"unicode":"🇫🇰","tags":["FK","flag"]},{"unicode":"🇫🇲","tags":["FM","flag"]},{"unicode":"🇫🇴","tags":["FO","flag"]},{"unicode":"🇫🇷","tags":["FR","flag"]},{"unicode":"🇬🇦","tags":["GA","flag"]},{"unicode":"🇬🇧","tags":["GB","flag"]},{"unicode":"🇬🇩","tags":["GD","flag"]},{"unicode":"🇬🇪","tags":["GE","flag"]},{"unicode":"🇬🇫","tags":["GF","flag"]},{"unicode":"🇬🇬","tags":["GG","flag"]},{"unicode":"🇬🇭","tags":["GH","flag"]},{"unicode":"🇬🇮","tags":["GI","flag"]},{"unicode":"🇬🇱","tags":["GL","flag"]},{"unicode":"🇬🇲","tags":["GM","flag"]},{"unicode":"🇬🇳","tags":["GN","flag"]},{"unicode":"🇬🇵","tags":["GP","flag"]},{"unicode":"🇬🇶","tags":["GQ","flag"]},{"unicode":"🇬🇷","tags":["GR","flag"]},{"unicode":"🇬🇸","tags":["GS","flag"]},{"unicode":"🇬🇹","tags":["GT","flag"]},{"unicode":"🇬🇺","tags":["GU","flag"]},{"unicode":"🇬🇼","tags":["GW","flag"]},{"unicode":"🇬🇾","tags":["GY","flag"]},{"unicode":"🇭🇰","tags":["HK","flag"]},{"unicode":"🇭🇲","tags":["HM","flag"]},{"unicode":"🇭🇳","tags":["HN","flag"]},{"unicode":"🇭🇷","tags":["HR","flag"]},{"unicode":"🇭🇹","tags":["HT","flag"]},{"unicode":"🇭🇺","tags":["HU","flag"]},{"unicode":"🇮🇨","tags":["IC","flag"]},{"unicode":"🇮🇩","tags":["ID","flag"]},{"unicode":"🇮🇪","tags":["IE","flag"]},{"unicode":"🇮🇱","tags":["IL","flag"]},{"unicode":"🇮🇲","tags":["IM","flag"]},{"unicode":"🇮🇳","tags":["IN","flag"]},{"unicode":"🇮🇴","tags":["IO","flag"]},{"unicode":"🇮🇶","tags":["IQ","flag"]},{"unicode":"🇮🇷","tags":["IR","flag"]},{"unicode":"🇮🇸","tags":["IS","flag"]},{"unicode":"🇮🇹","tags":["IT","flag"]},{"unicode":"🇯🇪","tags":["JE","flag"]},{"unicode":"🇯🇲","tags":["JM","flag"]},{"unicode":"🇯🇴","tags":["JO","flag"]},{"unicode":"🇯🇵","tags":["JP","flag"]},{"unicode":"🇰🇪","tags":["KE","flag"]},{"unicode":"🇰🇬","tags":["KG","flag"]},{"unicode":"🇰🇭","tags":["KH","flag"]},{"unicode":"🇰🇮","tags":["KI","flag"]},{"unicode":"🇰🇲","tags":["KM","flag"]},{"unicode":"🇰🇳","tags":["KN","flag"]},{"unicode":"🇰🇵","tags":["KP","flag"]},{"unicode":"🇰🇷","tags":["KR","flag"]},{"unicode":"🇰🇼","tags":["KW","flag"]},{"unicode":"🇰🇾","tags":["KY","flag"]},{"unicode":"🇰🇿","tags":["KZ","flag"]},{"unicode":"🇱🇦","tags":["LA","flag"]},{"unicode":"🇱🇧","tags":["LB","flag"]},{"unicode":"🇱🇨","tags":["LC","flag"]},{"unicode":"🇱🇮","tags":["LI","flag"]},{"unicode":"🇱🇰","tags":["LK","flag"]},{"unicode":"🇱🇷","tags":["LR","flag"]},{"unicode":"🇱🇸","tags":["LS","flag"]},{"unicode":"🇱🇹","tags":["LT","flag"]},{"unicode":"🇱🇺","tags":["LU","flag"]},{"unicode":"🇱🇻","tags":["LV","flag"]},{"unicode":"🇱🇾","tags":["LY","flag"]},{"unicode":"🇲🇦","tags":["MA","flag"]},{"unicode":"🇲🇨","tags":["MC","flag"]},{"unicode":"🇲🇩","tags":["MD","flag"]},{"unicode":"🇲🇪","tags":["ME","flag"]},{"unicode":"🇲🇫","tags":["MF","flag"]},{"unicode":"🇲🇬","tags":["MG","flag"]},{"unicode":"🇲🇭","tags":["MH","flag"]},{"unicode":"🇲🇰","tags":["MK","flag"]},{"unicode":"🇲🇱","tags":["ML","flag"]},{"unicode":"🇲🇲","tags":["MM","flag"]},{"unicode":"🇲🇳","tags":["MN","flag"]},{"unicode":"🇲🇴","tags":["MO","flag"]},{"unicode":"🇲🇵","tags":["MP","flag"]},{"unicode":"🇲🇶","tags":["MQ","flag"]},{"unicode":"🇲🇷","tags":["MR","flag"]},{"unicode":"🇲🇸","tags":["MS","flag"]},{"unicode":"🇲🇹","tags":["MT","flag"]},{"unicode":"🇲🇺","tags":["MU","flag"]},{"unicode":"🇲🇻","tags":["MV","flag"]},{"unicode":"🇲🇼","tags":["MW","flag"]},{"unicode":"🇲🇽","tags":["MX","flag"]},{"unicode":"🇲🇾","tags":["MY","flag"]},{"unicode":"🇲🇿","tags":["MZ","flag"]},{"unicode":"🇳🇦","tags":["NA","flag"]},{"unicode":"🇳🇨","tags":["NC","flag"]},{"unicode":"🇳🇪","tags":["NE","flag"]},{"unicode":"🇳🇫","tags":["NF","flag"]},{"unicode":"🇳🇬","tags":["NG","flag"]},{"unicode":"🇳🇮","tags":["NI","flag"]},{"unicode":"🇳🇱","tags":["NL","flag"]},{"unicode":"🇳🇴","tags":["NO","flag"]},{"unicode":"🇳🇵","tags":["NP","flag"]},{"unicode":"🇳🇷","tags":["NR","flag"]},{"unicode":"🇳🇺","tags":["NU","flag"]},{"unicode":"🇳🇿","tags":["NZ","flag"]},{"unicode":"🇴🇲","tags":["OM","flag"]},{"unicode":"🇵🇦","tags":["PA","flag"]},{"unicode":"🇵🇪","tags":["PE","flag"]},{"unicode":"🇵🇫","tags":["PF","flag"]},{"unicode":"🇵🇬","tags":["PG","flag"]},{"unicode":"🇵🇭","tags":["PH","flag"]},{"unicode":"🇵🇰","tags":["PK","flag"]},{"unicode":"🇵🇱","tags":["PL","flag"]},{"unicode":"🇵🇲","tags":["PM","flag"]},{"unicode":"🇵🇳","tags":["PN","flag"]},{"unicode":"🇵🇷","tags":["PR","flag"]},{"unicode":"🇵🇸","tags":["PS","flag"]},{"unicode":"🇵🇹","tags":["PT","flag"]},{"unicode":"🇵🇼","tags":["PW","flag"]},{"unicode":"🇵🇾","tags":["PY","flag"]},{"unicode":"🇶🇦","tags":["QA","flag"]},{"unicode":"🇷🇪","tags":["RE","flag"]},{"unicode":"🇷🇴","tags":["RO","flag"]},{"unicode":"🇷🇸","tags":["RS","flag"]},{"unicode":"🇷🇺","tags":["RU","flag"]},{"unicode":"🇷🇼","tags":["RW","flag"]},{"unicode":"🇸🇦","tags":["SA","flag"]},{"unicode":"🇸🇧","tags":["SB","flag"]},{"unicode":"🇸🇨","tags":["SC","flag"]},{"unicode":"🇸🇩","tags":["SD","flag"]},{"unicode":"🇸🇪","tags":["SE","flag"]},{"unicode":"🇸🇬","tags":["SG","flag"]},{"unicode":"🇸🇭","tags":["SH","flag"]},{"unicode":"🇸🇮","tags":["SI","flag"]},{"unicode":"🇸🇯","tags":["SJ","flag"]},{"unicode":"🇸🇰","tags":["SK","flag"]},{"unicode":"🇸🇱","tags":["SL","flag"]},{"unicode":"🇸🇲","tags":["SM","flag"]},{"unicode":"🇸🇳","tags":["SN","flag"]},{"unicode":"🇸🇴","tags":["SO","flag"]},{"unicode":"🇸🇷","tags":["SR","flag"]},{"unicode":"🇸🇸","tags":["SS","flag"]},{"unicode":"🇸🇹","tags":["ST","flag"]},{"unicode":"🇸🇻","tags":["SV","flag"]},{"unicode":"🇸🇽","tags":["SX","flag"]},{"unicode":"🇸🇾","tags":["SY","flag"]},{"unicode":"🇸🇿","tags":["SZ","flag"]},{"unicode":"🇹🇦","tags":["TA","flag"]},{"unicode":"🇹🇨","tags":["TC","flag"]},{"unicode":"🇹🇩","tags":["TD","flag"]},{"unicode":"🇹🇫","tags":["TF","flag"]},{"unicode":"🇹🇬","tags":["TG","flag"]},{"unicode":"🇹🇭","tags":["TH","flag"]},{"unicode":"🇹🇯","tags":["TJ","flag"]},{"unicode":"🇹🇰","tags":["TK","flag"]},{"unicode":"🇹🇱","tags":["TL","flag"]},{"unicode":"🇹🇲","tags":["TM","flag"]},{"unicode":"🇹🇳","tags":["TN","flag"]},{"unicode":"🇹🇴","tags":["TO","flag"]},{"unicode":"🇹🇷","tags":["TR","flag"]},{"unicode":"🇹🇹","tags":["TT","flag"]},{"unicode":"🇹🇻","tags":["TV","flag"]},{"unicode":"🇹🇼","tags":["TW","flag"]},{"unicode":"🇹🇿","tags":["TZ","flag"]},{"unicode":"🇺🇦","tags":["UA","flag"]},{"unicode":"🇺🇬","tags":["UG","flag"]},{"unicode":"🇺🇲","tags":["UM","flag"]},{"unicode":"🇺🇳","tags":["UN","flag"]},{"unicode":"🇺🇸","tags":["US","flag"]},{"unicode":"🇺🇾","tags":["UY","flag"]},{"unicode":"🇺🇿","tags":["UZ","flag"]},{"unicode":"🇻🇦","tags":["VA","flag"]},{"unicode":"🇻🇨","tags":["VC","flag"]},{"unicode":"🇻🇪","tags":["VE","flag"]},{"unicode":"🇻🇬","tags":["VG","flag"]},{"unicode":"🇻🇮","tags":["VI","flag"]},{"unicode":"🇻🇳","tags":["VN","flag"]},{"unicode":"🇻🇺","tags":["VU","flag"]},{"unicode":"🇼🇫","tags":["WF","flag"]},{"unicode":"🇼🇸","tags":["WS","flag"]},{"unicode":"🇽🇰","tags":["XK","flag"]},{"unicode":"🇾🇪","tags":["YE","flag"]},{"unicode":"🇾🇹","tags":["YT","flag"]},{"unicode":"🇿🇦","tags":["ZA","flag"]},{"unicode":"🇿🇲","tags":["ZM","flag"]},{"unicode":"🇿🇼","tags":["ZW","flag"]},{"unicode":"🏴󠁧󠁢󠁥󠁮󠁧󠁿","tags":["flag","gbeng"]},{"unicode":"🏴󠁧󠁢󠁳󠁣󠁴󠁿","tags":["flag","gbsct"]},{"unicode":"🏴󠁧󠁢󠁷󠁬󠁳󠁿","tags":["flag","gbwls"]}]}]')},"35a1":function(e,t,n){var i=n("f5df"),r=n("3f8c"),o=n("b622"),a=o("iterator");e.exports=function(e){if(void 0!=e)return e[a]||e["@@iterator"]||r[i(e)]}},"365c":function(e,t,n){"use strict";n.d(t,"a",(function(){return a})),n.d(t,"b",(function(){return s}));var i=n("2326"),r=n("6c06"),o=n("7b1e"),a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e=Object(i["b"])(e).filter(r["a"]),e.some((function(e){return t[e]||n[e]}))},s=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};e=Object(i["b"])(e).filter(r["a"]);for(var c=0;cc)r.f(e,n=i[c++],t[n]);return e}},"387f":function(e,t,n){"use strict";e.exports=function(e,t,n,i,r){return e.config=t,n&&(e.code=n),e.request=i,e.response=r,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},3886:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10,n=1===~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n}});return e}))},3934:function(t,e,n){"use strict";var r=n("c532");t.exports=r.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(t){var r=t;return e&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return t=i(window.location.href),function(e){var n=r.isString(e)?i(e):e;return n.protocol===t.protocol&&n.host===t.host}}():function(){return function(){return!0}}()},"39a6":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}});return t}))},3934:function(e,t,n){"use strict";var i=n("c532");e.exports=i.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function r(e){var i=e;return t&&(n.setAttribute("href",i),i=n.href),n.setAttribute("href",i),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=r(window.location.href),function(t){var n=i.isString(t)?r(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return function(){return!0}}()},"39a6":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10,n=1===~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n},week:{dow:1,doy:4}});return e}))},"39bd":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n},week:{dow:1,doy:4}});return t}))},"39bd":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function r(t,e,n,r){var i="";if(e)switch(n){case"s":i="काही सेकंद";break;case"ss":i="%d सेकंद";break;case"m":i="एक मिनिट";break;case"mm":i="%d मिनिटे";break;case"h":i="एक तास";break;case"hh":i="%d तास";break;case"d":i="एक दिवस";break;case"dd":i="%d दिवस";break;case"M":i="एक महिना";break;case"MM":i="%d महिने";break;case"y":i="एक वर्ष";break;case"yy":i="%d वर्षे";break}else switch(n){case"s":i="काही सेकंदां";break;case"ss":i="%d सेकंदां";break;case"m":i="एका मिनिटा";break;case"mm":i="%d मिनिटां";break;case"h":i="एका तासा";break;case"hh":i="%d तासां";break;case"d":i="एका दिवसा";break;case"dd":i="%d दिवसां";break;case"M":i="एका महिन्या";break;case"MM":i="%d महिन्यां";break;case"y":i="एका वर्षा";break;case"yy":i="%d वर्षां";break}return i.replace(/%d/i,t)}var i=t.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,meridiemHour:function(t,e){return 12===t&&(t=0),"पहाटे"===e||"सकाळी"===e?t:"दुपारी"===e||"सायंकाळी"===e||"रात्री"===e?t>=12?t:t+12:void 0},meridiem:function(t,e,n){return t>=0&&t<6?"पहाटे":t<12?"सकाळी":t<17?"दुपारी":t<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}});return i}))},"3a39":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function i(e,t,n,i){var r="";if(t)switch(n){case"s":r="काही सेकंद";break;case"ss":r="%d सेकंद";break;case"m":r="एक मिनिट";break;case"mm":r="%d मिनिटे";break;case"h":r="एक तास";break;case"hh":r="%d तास";break;case"d":r="एक दिवस";break;case"dd":r="%d दिवस";break;case"M":r="एक महिना";break;case"MM":r="%d महिने";break;case"y":r="एक वर्ष";break;case"yy":r="%d वर्षे";break}else switch(n){case"s":r="काही सेकंदां";break;case"ss":r="%d सेकंदां";break;case"m":r="एका मिनिटा";break;case"mm":r="%d मिनिटां";break;case"h":r="एका तासा";break;case"hh":r="%d तासां";break;case"d":r="एका दिवसा";break;case"dd":r="%d दिवसां";break;case"M":r="एका महिन्या";break;case"MM":r="%d महिन्यां";break;case"y":r="एका वर्षा";break;case"yy":r="%d वर्षां";break}return r.replace(/%d/i,e)}var r=e.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,meridiemHour:function(e,t){return 12===e&&(e=0),"पहाटे"===t||"सकाळी"===t?e:"दुपारी"===t||"सायंकाळी"===t||"रात्री"===t?e>=12?e:e+12:void 0},meridiem:function(e,t,n){return e>=0&&e<6?"पहाटे":e<12?"सकाळी":e<17?"दुपारी":e<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}});return r}))},"39c3":function(e,t,n){"use strict";function i(e){var t=e.getBoundingClientRect();return{width:t.width,height:t.height,top:t.top,right:t.right,bottom:t.bottom,left:t.left,x:t.left,y:t.top}}function r(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function o(e){var t=r(e),n=t.pageXOffset,i=t.pageYOffset;return{scrollLeft:n,scrollTop:i}}function a(e){var t=r(e).Element;return e instanceof t||e instanceof Element}function s(e){var t=r(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function c(e){if("undefined"===typeof ShadowRoot)return!1;var t=r(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function u(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function d(e){return e!==r(e)&&s(e)?u(e):o(e)}function l(e){return e?(e.nodeName||"").toLowerCase():null}function f(e){return((a(e)?e.ownerDocument:e.document)||window.document).documentElement}function p(e){return i(f(e)).left+o(e).scrollLeft}function h(e){return r(e).getComputedStyle(e)}function m(e){var t=h(e),n=t.overflow,i=t.overflowX,r=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+r+i)}function b(e,t,n){void 0===n&&(n=!1);var r=f(t),o=i(e),a=s(t),c={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(a||!a&&!n)&&(("body"!==l(t)||m(r))&&(c=d(t)),s(t)?(u=i(t),u.x+=t.clientLeft,u.y+=t.clientTop):r&&(u.x=p(r))),{x:o.left+c.scrollLeft-u.x,y:o.top+c.scrollTop-u.y,width:o.width,height:o.height}}function g(e){var t=i(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function v(e){return"html"===l(e)?e:e.assignedSlot||e.parentNode||(c(e)?e.host:null)||f(e)}function y(e){return["html","body","#document"].indexOf(l(e))>=0?e.ownerDocument.body:s(e)&&m(e)?e:y(v(e))}function _(e,t){var n;void 0===t&&(t=[]);var i=y(e),o=i===(null==(n=e.ownerDocument)?void 0:n.body),a=r(i),s=o?[a].concat(a.visualViewport||[],m(i)?i:[]):i,c=t.concat(s);return o?c:c.concat(_(v(s)))}function O(e){return["table","td","th"].indexOf(l(e))>=0}function j(e){return s(e)&&"fixed"!==h(e).position?e.offsetParent:null}function w(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox"),n=-1!==navigator.userAgent.indexOf("Trident");if(n&&s(e)){var i=h(e);if("fixed"===i.position)return null}var r=v(e);while(s(r)&&["html","body"].indexOf(l(r))<0){var o=h(r);if("none"!==o.transform||"none"!==o.perspective||"paint"===o.contain||-1!==["transform","perspective"].indexOf(o.willChange)||t&&"filter"===o.willChange||t&&o.filter&&"none"!==o.filter)return r;r=r.parentNode}return null}function k(e){var t=r(e),n=j(e);while(n&&O(n)&&"static"===h(n).position)n=j(n);return n&&("html"===l(n)||"body"===l(n)&&"static"===h(n).position)?t:n||w(e)||t}n.d(t,"a",(function(){return rt}));var M="top",L="bottom",x="right",T="left",S="auto",D=[M,L,x,T],A="start",P="end",Y="clippingParents",C="viewport",E="popper",H="reference",$=D.reduce((function(e,t){return e.concat([t+"-"+A,t+"-"+P])}),[]),F=[].concat(D,[S]).reduce((function(e,t){return e.concat([t,t+"-"+A,t+"-"+P])}),[]),I="beforeRead",B="read",R="afterRead",N="beforeMain",z="main",W="afterMain",V="beforeWrite",U="write",G="afterWrite",q=[I,B,R,N,z,W,V,U,G];function J(e){var t=new Map,n=new Set,i=[];function r(e){n.add(e.name);var o=[].concat(e.requires||[],e.requiresIfExists||[]);o.forEach((function(e){if(!n.has(e)){var i=t.get(e);i&&r(i)}})),i.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||r(e)})),i}function K(e){var t=J(e);return q.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}function X(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=void 0,n(e())}))}))),t}}function Z(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}var Q={placement:"bottom",modifiers:[],strategy:"absolute"};function ee(){for(var e=arguments.length,t=new Array(e),n=0;n=0?"x":"y"}function ce(e){var t,n=e.reference,i=e.element,r=e.placement,o=r?oe(r):null,a=r?ae(r):null,s=n.x+n.width/2-i.width/2,c=n.y+n.height/2-i.height/2;switch(o){case M:t={x:s,y:n.y-i.height};break;case L:t={x:s,y:n.y+n.height};break;case x:t={x:n.x+n.width,y:c};break;case T:t={x:n.x-i.width,y:c};break;default:t={x:n.x,y:n.y}}var u=o?se(o):null;if(null!=u){var d="y"===u?"height":"width";switch(a){case A:t[u]=t[u]-(n[d]/2-i[d]/2);break;case P:t[u]=t[u]+(n[d]/2-i[d]/2);break;default:}}return t}function ue(e){var t=e.state,n=e.name;t.modifiersData[n]=ce({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}var de={name:"popperOffsets",enabled:!0,phase:"read",fn:ue,data:{}},le=Math.max,fe=Math.min,pe=Math.round,he={top:"auto",right:"auto",bottom:"auto",left:"auto"};function me(e){var t=e.x,n=e.y,i=window,r=i.devicePixelRatio||1;return{x:pe(pe(t*r)/r)||0,y:pe(pe(n*r)/r)||0}}function be(e){var t,n=e.popper,i=e.popperRect,o=e.placement,a=e.offsets,s=e.position,c=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,l=!0===d?me(a):"function"===typeof d?d(a):a,p=l.x,m=void 0===p?0:p,b=l.y,g=void 0===b?0:b,v=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),_=T,O=M,j=window;if(u){var w=k(n),S="clientHeight",D="clientWidth";w===r(n)&&(w=f(n),"static"!==h(w).position&&(S="scrollHeight",D="scrollWidth")),w=w,o===M&&(O=L,g-=w[S]-i.height,g*=c?1:-1),o===T&&(_=x,m-=w[D]-i.width,m*=c?1:-1)}var A,P=Object.assign({position:s},u&&he);return c?Object.assign({},P,(A={},A[O]=y?"0":"",A[_]=v?"0":"",A.transform=(j.devicePixelRatio||1)<2?"translate("+m+"px, "+g+"px)":"translate3d("+m+"px, "+g+"px, 0)",A)):Object.assign({},P,(t={},t[O]=y?g+"px":"",t[_]=v?m+"px":"",t.transform="",t))}function ge(e){var t=e.state,n=e.options,i=n.gpuAcceleration,r=void 0===i||i,o=n.adaptive,a=void 0===o||o,s=n.roundOffsets,c=void 0===s||s,u={placement:oe(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,be(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:c})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,be(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var ve={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:ge,data:{}};function ye(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},i=t.attributes[e]||{},r=t.elements[e];s(r)&&l(r)&&(Object.assign(r.style,n),Object.keys(i).forEach((function(e){var t=i[e];!1===t?r.removeAttribute(e):r.setAttribute(e,!0===t?"":t)})))}))}function _e(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var i=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]),a=o.reduce((function(e,t){return e[t]="",e}),{});s(i)&&l(i)&&(Object.assign(i.style,a),Object.keys(r).forEach((function(e){i.removeAttribute(e)})))}))}}var Oe={name:"applyStyles",enabled:!0,phase:"write",fn:ye,effect:_e,requires:["computeStyles"]};function je(e,t,n){var i=oe(e),r=[T,M].indexOf(i)>=0?-1:1,o="function"===typeof n?n(Object.assign({},t,{placement:e})):n,a=o[0],s=o[1];return a=a||0,s=(s||0)*r,[T,x].indexOf(i)>=0?{x:s,y:a}:{x:a,y:s}}function we(e){var t=e.state,n=e.options,i=e.name,r=n.offset,o=void 0===r?[0,0]:r,a=F.reduce((function(e,n){return e[n]=je(n,t.rects,o),e}),{}),s=a[t.placement],c=s.x,u=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=u),t.modifiersData[i]=a}var ke={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:we},Me={left:"right",right:"left",bottom:"top",top:"bottom"};function Le(e){return e.replace(/left|right|bottom|top/g,(function(e){return Me[e]}))}var xe={start:"end",end:"start"};function Te(e){return e.replace(/start|end/g,(function(e){return xe[e]}))}function Se(e){var t=r(e),n=f(e),i=t.visualViewport,o=n.clientWidth,a=n.clientHeight,s=0,c=0;return i&&(o=i.width,a=i.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(s=i.offsetLeft,c=i.offsetTop)),{width:o,height:a,x:s+p(e),y:c}}function De(e){var t,n=f(e),i=o(e),r=null==(t=e.ownerDocument)?void 0:t.body,a=le(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),s=le(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),c=-i.scrollLeft+p(e),u=-i.scrollTop;return"rtl"===h(r||n).direction&&(c+=le(n.clientWidth,r?r.clientWidth:0)-a),{width:a,height:s,x:c,y:u}}function Ae(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&c(n)){var i=t;do{if(i&&e.isSameNode(i))return!0;i=i.parentNode||i.host}while(i)}return!1}function Pe(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Ye(e){var t=i(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function Ce(e,t){return t===C?Pe(Se(e)):s(t)?Ye(t):Pe(De(f(e)))}function Ee(e){var t=_(v(e)),n=["absolute","fixed"].indexOf(h(e).position)>=0,i=n&&s(e)?k(e):e;return a(i)?t.filter((function(e){return a(e)&&Ae(e,i)&&"body"!==l(e)})):[]}function He(e,t,n){var i="clippingParents"===t?Ee(e):[].concat(t),r=[].concat(i,[n]),o=r[0],a=r.reduce((function(t,n){var i=Ce(e,n);return t.top=le(i.top,t.top),t.right=fe(i.right,t.right),t.bottom=fe(i.bottom,t.bottom),t.left=le(i.left,t.left),t}),Ce(e,o));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function $e(){return{top:0,right:0,bottom:0,left:0}}function Fe(e){return Object.assign({},$e(),e)}function Ie(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function Be(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=void 0===r?e.placement:r,s=n.boundary,c=void 0===s?Y:s,u=n.rootBoundary,d=void 0===u?C:u,l=n.elementContext,p=void 0===l?E:l,h=n.altBoundary,m=void 0!==h&&h,b=n.padding,g=void 0===b?0:b,v=Fe("number"!==typeof g?g:Ie(g,D)),y=p===E?H:E,_=e.elements.reference,O=e.rects.popper,j=e.elements[m?y:p],w=He(a(j)?j:j.contextElement||f(e.elements.popper),c,d),k=i(_),T=ce({reference:k,element:O,strategy:"absolute",placement:o}),S=Pe(Object.assign({},O,T)),A=p===E?S:k,P={top:w.top-A.top+v.top,bottom:A.bottom-w.bottom+v.bottom,left:w.left-A.left+v.left,right:A.right-w.right+v.right},$=e.modifiersData.offset;if(p===E&&$){var F=$[o];Object.keys(P).forEach((function(e){var t=[x,L].indexOf(e)>=0?1:-1,n=[M,L].indexOf(e)>=0?"y":"x";P[e]+=F[n]*t}))}return P}function Re(e,t){void 0===t&&(t={});var n=t,i=n.placement,r=n.boundary,o=n.rootBoundary,a=n.padding,s=n.flipVariations,c=n.allowedAutoPlacements,u=void 0===c?F:c,d=ae(i),l=d?s?$:$.filter((function(e){return ae(e)===d})):D,f=l.filter((function(e){return u.indexOf(e)>=0}));0===f.length&&(f=l);var p=f.reduce((function(t,n){return t[n]=Be(e,{placement:n,boundary:r,rootBoundary:o,padding:a})[oe(n)],t}),{});return Object.keys(p).sort((function(e,t){return p[e]-p[t]}))}function Ne(e){if(oe(e)===S)return[];var t=Le(e);return[Te(e),t,Te(t)]}function ze(e){var t=e.state,n=e.options,i=e.name;if(!t.modifiersData[i]._skip){for(var r=n.mainAxis,o=void 0===r||r,a=n.altAxis,s=void 0===a||a,c=n.fallbackPlacements,u=n.padding,d=n.boundary,l=n.rootBoundary,f=n.altBoundary,p=n.flipVariations,h=void 0===p||p,m=n.allowedAutoPlacements,b=t.options.placement,g=oe(b),v=g===b,y=c||(v||!h?[Le(b)]:Ne(b)),_=[b].concat(y).reduce((function(e,n){return e.concat(oe(n)===S?Re(t,{placement:n,boundary:d,rootBoundary:l,padding:u,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),O=t.rects.reference,j=t.rects.popper,w=new Map,k=!0,D=_[0],P=0;P<_.length;P++){var Y=_[P],C=oe(Y),E=ae(Y)===A,H=[M,L].indexOf(C)>=0,$=H?"width":"height",F=Be(t,{placement:Y,boundary:d,rootBoundary:l,altBoundary:f,padding:u}),I=H?E?x:T:E?L:M;O[$]>j[$]&&(I=Le(I));var B=Le(I),R=[];if(o&&R.push(F[C]<=0),s&&R.push(F[I]<=0,F[B]<=0),R.every((function(e){return e}))){D=Y,k=!1;break}w.set(Y,R)}if(k)for(var N=h?3:1,z=function(e){var t=_.find((function(t){var n=w.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return D=t,"break"},W=N;W>0;W--){var V=z(W);if("break"===V)break}t.placement!==D&&(t.modifiersData[i]._skip=!0,t.placement=D,t.reset=!0)}}var We={name:"flip",enabled:!0,phase:"main",fn:ze,requiresIfExists:["offset"],data:{_skip:!1}};function Ve(e){return"x"===e?"y":"x"}function Ue(e,t,n){return le(e,fe(t,n))}function Ge(e){var t=e.state,n=e.options,i=e.name,r=n.mainAxis,o=void 0===r||r,a=n.altAxis,s=void 0!==a&&a,c=n.boundary,u=n.rootBoundary,d=n.altBoundary,l=n.padding,f=n.tether,p=void 0===f||f,h=n.tetherOffset,m=void 0===h?0:h,b=Be(t,{boundary:c,rootBoundary:u,padding:l,altBoundary:d}),v=oe(t.placement),y=ae(t.placement),_=!y,O=se(v),j=Ve(O),w=t.modifiersData.popperOffsets,S=t.rects.reference,D=t.rects.popper,P="function"===typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,Y={x:0,y:0};if(w){if(o||s){var C="y"===O?M:T,E="y"===O?L:x,H="y"===O?"height":"width",$=w[O],F=w[O]+b[C],I=w[O]-b[E],B=p?-D[H]/2:0,R=y===A?S[H]:D[H],N=y===A?-D[H]:-S[H],z=t.elements.arrow,W=p&&z?g(z):{width:0,height:0},V=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:$e(),U=V[C],G=V[E],q=Ue(0,S[H],W[H]),J=_?S[H]/2-B-q-U-P:R-q-U-P,K=_?-S[H]/2+B+q+G+P:N+q+G+P,X=t.elements.arrow&&k(t.elements.arrow),Z=X?"y"===O?X.clientTop||0:X.clientLeft||0:0,Q=t.modifiersData.offset?t.modifiersData.offset[t.placement][O]:0,ee=w[O]+J-Q-Z,te=w[O]+K-Q;if(o){var ne=Ue(p?fe(F,ee):F,$,p?le(I,te):I);w[O]=ne,Y[O]=ne-$}if(s){var ie="x"===O?M:T,re="x"===O?L:x,ce=w[j],ue=ce+b[ie],de=ce-b[re],pe=Ue(p?fe(ue,ee):ue,ce,p?le(de,te):de);w[j]=pe,Y[j]=pe-ce}}t.modifiersData[i]=Y}}var qe={name:"preventOverflow",enabled:!0,phase:"main",fn:Ge,requiresIfExists:["offset"]},Je=function(e,t){return e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e,Fe("number"!==typeof e?e:Ie(e,D))};function Ke(e){var t,n=e.state,i=e.name,r=e.options,o=n.elements.arrow,a=n.modifiersData.popperOffsets,s=oe(n.placement),c=se(s),u=[T,x].indexOf(s)>=0,d=u?"height":"width";if(o&&a){var l=Je(r.padding,n),f=g(o),p="y"===c?M:T,h="y"===c?L:x,m=n.rects.reference[d]+n.rects.reference[c]-a[c]-n.rects.popper[d],b=a[c]-n.rects.reference[c],v=k(o),y=v?"y"===c?v.clientHeight||0:v.clientWidth||0:0,_=m/2-b/2,O=l[p],j=y-f[d]-l[h],w=y/2-f[d]/2+_,S=Ue(O,w,j),D=c;n.modifiersData[i]=(t={},t[D]=S,t.centerOffset=S-w,t)}}function Xe(e){var t=e.state,n=e.options,i=n.element,r=void 0===i?"[data-popper-arrow]":i;null!=r&&("string"!==typeof r||(r=t.elements.popper.querySelector(r),r))&&Ae(t.elements.popper,r)&&(t.elements.arrow=r)}var Ze={name:"arrow",enabled:!0,phase:"main",fn:Ke,effect:Xe,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Qe(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function et(e){return[M,x,L,T].some((function(t){return e[t]>=0}))}function tt(e){var t=e.state,n=e.name,i=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,a=Be(t,{elementContext:"reference"}),s=Be(t,{altBoundary:!0}),c=Qe(a,i),u=Qe(s,r,o),d=et(c),l=et(u);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:l},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":l})}var nt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:tt},it=[re,de,ve,Oe,ke,We,qe,Ze,nt],rt=te({defaultModifiers:it})},"3a39":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},r=t.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(t,e){return 12===t&&(t=0),"राति"===e?t<4?t:t+12:"बिहान"===e?t:"दिउँसो"===e?t>=10?t:t+12:"साँझ"===e?t+12:void 0},meridiem:function(t,e,n){return t<3?"राति":t<12?"बिहान":t<16?"दिउँसो":t<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}});return r}))},"3a58":function(t,e,n){"use strict";n.d(e,"c",(function(){return r})),n.d(e,"b",(function(){return i})),n.d(e,"a",(function(){return a}));var r=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:NaN,n=parseInt(t,10);return isNaN(n)?e:n},i=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:NaN,n=parseFloat(t);return isNaN(n)?e:n},a=function(t,e){return i(t).toFixed(r(e,0))}},"3a6c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},i=e.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(e,t){return 12===e&&(e=0),"राति"===t?e<4?e:e+12:"बिहान"===t?e:"दिउँसो"===t?e>=10?e:e+12:"साँझ"===t?e+12:void 0},meridiem:function(e,t,n){return e<3?"राति":e<12?"बिहान":e<16?"दिउँसो":e<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}});return i}))},"3a58":function(e,t,n){"use strict";n.d(t,"c",(function(){return i})),n.d(t,"b",(function(){return r})),n.d(t,"a",(function(){return o}));var i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:NaN,n=parseInt(e,10);return isNaN(n)?t:n},r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:NaN,n=parseFloat(e);return isNaN(n)?t:n},o=function(e,t){return r(e).toFixed(i(t,0))}},"3a6c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("zh-mo",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"D/M/YYYY",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"中午"===e?t>=11?t:t+12:"下午"===e||"晚上"===e?t+12:void 0},meridiem:function(t,e,n){var r=100*t+e;return r<600?"凌晨":r<900?"早上":r<1130?"上午":r<1230?"中午":r<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"週";default:return t}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}});return e}))},"3b1b":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("zh-mo",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"D/M/YYYY",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,n){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1130?"上午":i<1230?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}});return t}))},"3b1b":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"},n=t.defineLocale("tg",{months:{format:"январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри".split("_"),standalone:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_")},monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Имрӯз соати] LT",nextDay:"[Фардо соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(t,e){return 12===t&&(t=0),"шаб"===e?t<4?t:t+12:"субҳ"===e?t:"рӯз"===e?t>=11?t:t+12:"бегоҳ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"шаб":t<11?"субҳ":t<16?"рӯз":t<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(t){var n=t%10,r=t>=100?100:null;return t+(e[t]||e[n]||e[r])},week:{dow:1,doy:7}});return n}))},"3bbe":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},"3c0d":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"},n=e.defineLocale("tg",{months:{format:"январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри".split("_"),standalone:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_")},monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Имрӯз соати] LT",nextDay:"[Фардо соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(e,t){return 12===e&&(e=0),"шаб"===t?e<4?e:e+12:"субҳ"===t?e:"рӯз"===t?e>=11?e:e+12:"бегоҳ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"шаб":e<11?"субҳ":e<16?"рӯз":e<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(e){var n=e%10,i=e>=100?100:null;return e+(t[e]||t[n]||t[i])},week:{dow:1,doy:7}});return n}))},"3bbe":function(e,t,n){var i=n("861d");e.exports=function(e){if(!i(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},"3c0d":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),n="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),r=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],i=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function a(t){return t>1&&t<5&&1!==~~(t/10)}function o(t,e,n,r){var i=t+" ";switch(n){case"s":return e||r?"pár sekund":"pár sekundami";case"ss":return e||r?i+(a(t)?"sekundy":"sekund"):i+"sekundami";case"m":return e?"minuta":r?"minutu":"minutou";case"mm":return e||r?i+(a(t)?"minuty":"minut"):i+"minutami";case"h":return e?"hodina":r?"hodinu":"hodinou";case"hh":return e||r?i+(a(t)?"hodiny":"hodin"):i+"hodinami";case"d":return e||r?"den":"dnem";case"dd":return e||r?i+(a(t)?"dny":"dní"):i+"dny";case"M":return e||r?"měsíc":"měsícem";case"MM":return e||r?i+(a(t)?"měsíce":"měsíců"):i+"měsíci";case"y":return e||r?"rok":"rokem";case"yy":return e||r?i+(a(t)?"roky":"let"):i+"lety"}}var s=t.defineLocale("cs",{months:e,monthsShort:n,monthsRegex:i,monthsShortRegex:i,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:r,longMonthsParse:r,shortMonthsParse:r,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:o,ss:o,m:o,mm:o,h:o,hh:o,d:o,dd:o,M:o,MM:o,y:o,yy:o},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return s}))},"3c21":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("d82f"),i=n("7b1e"),a=function(t,e){if(t.length!==e.length)return!1;for(var n=!0,r=0;n&&r=n.length?{value:void 0,done:!0}:(t=r(n,i),e.index+=t.length,{value:t,done:!1})}))},"3de5":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),n="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),i=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],r=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function o(e){return e>1&&e<5&&1!==~~(e/10)}function a(e,t,n,i){var r=e+" ";switch(n){case"s":return t||i?"pár sekund":"pár sekundami";case"ss":return t||i?r+(o(e)?"sekundy":"sekund"):r+"sekundami";case"m":return t?"minuta":i?"minutu":"minutou";case"mm":return t||i?r+(o(e)?"minuty":"minut"):r+"minutami";case"h":return t?"hodina":i?"hodinu":"hodinou";case"hh":return t||i?r+(o(e)?"hodiny":"hodin"):r+"hodinami";case"d":return t||i?"den":"dnem";case"dd":return t||i?r+(o(e)?"dny":"dní"):r+"dny";case"M":return t||i?"měsíc":"měsícem";case"MM":return t||i?r+(o(e)?"měsíce":"měsíců"):r+"měsíci";case"y":return t||i?"rok":"rokem";case"yy":return t||i?r+(o(e)?"roky":"let"):r+"lety"}}var s=e.defineLocale("cs",{months:t,monthsShort:n,monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return s}))},"3c21":function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var i=n("d82f"),r=n("7b1e"),o=function(e,t){if(e.length!==t.length)return!1;for(var n=!0,i=0;n&&i=n.length?{value:void 0,done:!0}:(e=i(n,r),t.index+=e.length,{value:e,done:!1})}))},"3de5":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},n={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"},r=t.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(t){return t+"வது"},preparse:function(t){return t.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(t,e,n){return t<2?" யாமம்":t<6?" வைகறை":t<10?" காலை":t<14?" நண்பகல்":t<18?" எற்பாடு":t<22?" மாலை":" யாமம்"},meridiemHour:function(t,e){return 12===t&&(t=0),"யாமம்"===e?t<2?t:t+12:"வைகறை"===e||"காலை"===e||"நண்பகல்"===e&&t>=10?t:t+12},week:{dow:0,doy:6}});return r}))},"3e92":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},n={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"},i=e.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(e){return e+"வது"},preparse:function(e){return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(e,t,n){return e<2?" யாமம்":e<6?" வைகறை":e<10?" காலை":e<14?" நண்பகல்":e<18?" எற்பாடு":e<22?" மாலை":" யாமம்"},meridiemHour:function(e,t){return 12===e&&(e=0),"யாமம்"===t?e<2?e:e+12:"வைகறை"===t||"காலை"===t||"நண்பகல்"===t&&e>=10?e:e+12},week:{dow:0,doy:6}});return i}))},"3e92":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},n={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"},r=t.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(t){return t.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(t,e){return 12===t&&(t=0),"ರಾತ್ರಿ"===e?t<4?t:t+12:"ಬೆಳಿಗ್ಗೆ"===e?t:"ಮಧ್ಯಾಹ್ನ"===e?t>=10?t:t+12:"ಸಂಜೆ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"ರಾತ್ರಿ":t<10?"ಬೆಳಿಗ್ಗೆ":t<17?"ಮಧ್ಯಾಹ್ನ":t<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(t){return t+"ನೇ"},week:{dow:0,doy:6}});return r}))},"3f8c":function(t,e){t.exports={}},"408c":function(t,e,n){var r=n("2b3e"),i=function(){return r.Date.now()};t.exports=i},"423e":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},n={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"},i=e.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(e){return e.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ರಾತ್ರಿ"===t?e<4?e:e+12:"ಬೆಳಿಗ್ಗೆ"===t?e:"ಮಧ್ಯಾಹ್ನ"===t?e>=10?e:e+12:"ಸಂಜೆ"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"ರಾತ್ರಿ":e<10?"ಬೆಳಿಗ್ಗೆ":e<17?"ಮಧ್ಯಾಹ್ನ":e<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(e){return e+"ನೇ"},week:{dow:0,doy:6}});return i}))},"3f8c":function(e,t){e.exports={}},"408c":function(e,t,n){var i=n("2b3e"),r=function(){return i.Date.now()};e.exports=r},"423e":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}});return e}))},"428f":function(t,e,n){var r=n("da84");t.exports=r},4362:function(t,e,n){e.nextTick=function(t){var e=Array.prototype.slice.call(arguments);e.shift(),setTimeout((function(){t.apply(null,e)}),0)},e.platform=e.arch=e.execPath=e.title="browser",e.pid=1,e.browser=!0,e.env={},e.argv=[],e.binding=function(t){throw new Error("No such module. (Possibly not yet loaded)")},function(){var t,r="/";e.cwd=function(){return r},e.chdir=function(e){t||(t=n("df7c")),r=t.resolve(e,r)}}(),e.exit=e.kill=e.umask=e.dlopen=e.uptime=e.memoryUsage=e.uvCounters=function(){},e.features={}},"440c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}});return t}))},"428f":function(e,t,n){var i=n("da84");e.exports=i},4362:function(e,t,n){t.nextTick=function(e){var t=Array.prototype.slice.call(arguments);t.shift(),setTimeout((function(){e.apply(null,t)}),0)},t.platform=t.arch=t.execPath=t.title="browser",t.pid=1,t.browser=!0,t.env={},t.argv=[],t.binding=function(e){throw new Error("No such module. (Possibly not yet loaded)")},function(){var e,i="/";t.cwd=function(){return i},t.chdir=function(t){e||(e=n("df7c")),i=e.resolve(t,i)}}(),t.exit=t.kill=t.umask=t.dlopen=t.uptime=t.memoryUsage=t.uvCounters=function(){},t.features={}},"440c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e,n,r){var i={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return e?i[n][0]:i[n][1]}function n(t){var e=t.substr(0,t.indexOf(" "));return i(e)?"a "+t:"an "+t}function r(t){var e=t.substr(0,t.indexOf(" "));return i(e)?"viru "+t:"virun "+t}function i(t){if(t=parseInt(t,10),isNaN(t))return!1;if(t<0)return!0;if(t<10)return 4<=t&&t<=7;if(t<100){var e=t%10,n=t/10;return i(0===e?n:e)}if(t<1e4){while(t>=10)t/=10;return i(t)}return t/=1e3,i(t)}var a=t.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:n,past:r,s:"e puer Sekonnen",ss:"%d Sekonnen",m:e,mm:"%d Minutten",h:e,hh:"%d Stonnen",d:e,dd:"%d Deeg",M:e,MM:"%d Méint",y:e,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a}))},"44ad":function(t,e,n){var r=n("d039"),i=n("c6b6"),a="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==i(t)?a.call(t,""):Object(t)}:Object},"44d2":function(t,e,n){var r=n("b622"),i=n("7c73"),a=n("9bf2"),o=r("unscopables"),s=Array.prototype;void 0==s[o]&&a.f(s,o,{configurable:!0,value:i(null)}),t.exports=function(t){s[o][t]=!0}},"44de":function(t,e,n){var r=n("da84");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},"44e7":function(t,e,n){var r=n("861d"),i=n("c6b6"),a=n("b622"),o=a("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[o])?!!e:"RegExp"==i(t))}},"466d":function(t,e,n){"use strict";var r=n("d784"),i=n("825a"),a=n("50c4"),o=n("1d80"),s=n("8aa5"),c=n("14c3");r("match",1,(function(t,e,n){return[function(e){var n=o(this),r=void 0==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var o=i(t),u=String(this);if(!o.global)return c(o,u);var l=o.unicode;o.lastIndex=0;var d,f=[],h=0;while(null!==(d=c(o,u))){var p=String(d[0]);f[h]=p,""===p&&(o.lastIndex=s(u,a(o.lastIndex),l)),h++}return 0===h?null:f}]}))},"467f":function(t,e,n){"use strict";var r=n("2d83");t.exports=function(t,e,n){var i=n.config.validateStatus;n.status&&i&&!i(n.status)?e(r("Request failed with status code "+n.status,n.config,null,n.request,n)):t(n)}},4840:function(t,e,n){var r=n("825a"),i=n("1c0b"),a=n("b622"),o=a("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||void 0==(n=r(a)[o])?e:i(n)}},"485c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t,n,i){var r={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return t?r[n][0]:r[n][1]}function n(e){var t=e.substr(0,e.indexOf(" "));return r(t)?"a "+e:"an "+e}function i(e){var t=e.substr(0,e.indexOf(" "));return r(t)?"viru "+e:"virun "+e}function r(e){if(e=parseInt(e,10),isNaN(e))return!1;if(e<0)return!0;if(e<10)return 4<=e&&e<=7;if(e<100){var t=e%10,n=e/10;return r(0===t?n:t)}if(e<1e4){while(e>=10)e/=10;return r(e)}return e/=1e3,r(e)}var o=e.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:n,past:i,s:"e puer Sekonnen",ss:"%d Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d Méint",y:t,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return o}))},"44ad":function(e,t,n){var i=n("d039"),r=n("c6b6"),o="".split;e.exports=i((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==r(e)?o.call(e,""):Object(e)}:Object},"44d2":function(e,t,n){var i=n("b622"),r=n("7c73"),o=n("9bf2"),a=i("unscopables"),s=Array.prototype;void 0==s[a]&&o.f(s,a,{configurable:!0,value:r(null)}),e.exports=function(e){s[a][e]=!0}},"44de":function(e,t,n){var i=n("da84");e.exports=function(e,t){var n=i.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},"44e7":function(e,t,n){var i=n("861d"),r=n("c6b6"),o=n("b622"),a=o("match");e.exports=function(e){var t;return i(e)&&(void 0!==(t=e[a])?!!t:"RegExp"==r(e))}},"466d":function(e,t,n){"use strict";var i=n("d784"),r=n("825a"),o=n("50c4"),a=n("1d80"),s=n("8aa5"),c=n("14c3");i("match",1,(function(e,t,n){return[function(t){var n=a(this),i=void 0==t?void 0:t[e];return void 0!==i?i.call(t,n):new RegExp(t)[e](String(n))},function(e){var i=n(t,e,this);if(i.done)return i.value;var a=r(e),u=String(this);if(!a.global)return c(a,u);var d=a.unicode;a.lastIndex=0;var l,f=[],p=0;while(null!==(l=c(a,u))){var h=String(l[0]);f[p]=h,""===h&&(a.lastIndex=s(u,o(a.lastIndex),d)),p++}return 0===p?null:f}]}))},"467f":function(e,t,n){"use strict";var i=n("2d83");e.exports=function(e,t,n){var r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(i("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},4840:function(e,t,n){var i=n("825a"),r=n("1c0b"),o=n("b622"),a=o("species");e.exports=function(e,t){var n,o=i(e).constructor;return void 0===o||void 0==(n=i(o)[a])?t:r(n)}},"485c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"},n=t.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"bir neçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(t){return/^(gündüz|axşam)$/.test(t)},meridiem:function(t,e,n){return t<4?"gecə":t<12?"səhər":t<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(t){if(0===t)return t+"-ıncı";var n=t%10,r=t%100-n,i=t>=100?100:null;return t+(e[n]||e[r]||e[i])},week:{dow:1,doy:7}});return n}))},4930:function(t,e,n){var r=n("2d00"),i=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!i((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},"493b":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("8c4e"),i=Object(r["a"])("$attrs","bvAttrs")},"49ab":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"},n=e.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"bir neçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(e){return/^(gündüz|axşam)$/.test(e)},meridiem:function(e,t,n){return e<4?"gecə":e<12?"səhər":e<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(e){if(0===e)return e+"-ıncı";var n=e%10,i=e%100-n,r=e>=100?100:null;return e+(t[n]||t[i]||t[r])},week:{dow:1,doy:7}});return n}))},4930:function(e,t,n){var i=n("2d00"),r=n("d039");e.exports=!!Object.getOwnPropertySymbols&&!r((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&i&&i<41}))},"493b":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var i=n("8c4e"),r=Object(i["a"])("$attrs","bvAttrs")},"49ab":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"中午"===e?t>=11?t:t+12:"下午"===e||"晚上"===e?t+12:void 0},meridiem:function(t,e,n){var r=100*t+e;return r<600?"凌晨":r<900?"早上":r<1200?"上午":1200===r?"中午":r<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"週";default:return t}},relativeTime:{future:"%s後",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}});return e}))},"4a38":function(t,e,n){"use strict";n.d(e,"f",(function(){return h})),n.d(e,"d",(function(){return p})),n.d(e,"e",(function(){return m})),n.d(e,"c",(function(){return b})),n.d(e,"b",(function(){return v})),n.d(e,"a",(function(){return _}));var r=n("992e"),i=n("906c"),a=n("7b1e"),o=n("d82f"),s=n("fa73"),c="a",u=function(t){return"%"+t.charCodeAt(0).toString(16)},l=function(t){return encodeURIComponent(Object(s["g"])(t)).replace(r["j"],u).replace(r["i"],",")},d=decodeURIComponent,f=function(t){if(!Object(a["k"])(t))return"";var e=Object(o["h"])(t).map((function(e){var n=t[e];return Object(a["o"])(n)?"":Object(a["g"])(n)?l(e):Object(a["a"])(n)?n.reduce((function(t,n){return Object(a["g"])(n)?t.push(l(e)):Object(a["o"])(n)||t.push(l(e)+"="+l(n)),t}),[]).join("&"):l(e)+"="+l(n)})).filter((function(t){return t.length>0})).join("&");return e?"?".concat(e):""},h=function(t){var e={};return t=Object(s["g"])(t).trim().replace(r["u"],""),t?(t.split("&").forEach((function(t){var n=t.replace(r["t"]," ").split("="),i=d(n.shift()),o=n.length>0?d(n.join("=")):null;Object(a["o"])(e[i])?e[i]=o:Object(a["a"])(e[i])?e[i].push(o):e[i]=[e[i],o]})),e):e},p=function(t){return!(!t.href&&!t.to)},m=function(t){return!(!t||Object(i["t"])(t,"a"))},b=function(t,e){var n=t.to,r=t.disabled,i=t.routerComponentName,a=!!e.$router;return!a||a&&(r||!n)?c:i||(e.$nuxt?"nuxt-link":"router-link")},v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.target,n=t.rel;return"_blank"===e&&Object(a["g"])(n)?"noopener":n||null},_=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.href,n=t.to,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"#",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"/";if(e)return e;if(m(r))return null;if(Object(a["n"])(n))return n||o;if(Object(a["k"])(n)&&(n.path||n.query||n.hash)){var u=Object(s["g"])(n.path),l=f(n.query),d=Object(s["g"])(n.hash);return d=d&&"#"!==d.charAt(0)?"#".concat(d):d,"".concat(u).concat(l).concat(d)||o}return i}},"4a7b":function(t,e,n){"use strict";var r=n("c532");t.exports=function(t,e){e=e||{};var n={},i=["url","method","data"],a=["headers","auth","proxy","params"],o=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function c(t,e){return r.isPlainObject(t)&&r.isPlainObject(e)?r.merge(t,e):r.isPlainObject(e)?r.merge({},e):r.isArray(e)?e.slice():e}function u(i){r.isUndefined(e[i])?r.isUndefined(t[i])||(n[i]=c(void 0,t[i])):n[i]=c(t[i],e[i])}r.forEach(i,(function(t){r.isUndefined(e[t])||(n[t]=c(void 0,e[t]))})),r.forEach(a,u),r.forEach(o,(function(i){r.isUndefined(e[i])?r.isUndefined(t[i])||(n[i]=c(void 0,t[i])):n[i]=c(void 0,e[i])})),r.forEach(s,(function(r){r in e?n[r]=c(t[r],e[r]):r in t&&(n[r]=c(void 0,t[r]))}));var l=i.concat(a).concat(o).concat(s),d=Object.keys(t).concat(Object.keys(e)).filter((function(t){return-1===l.indexOf(t)}));return r.forEach(d,u),n}},"4ba9":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,n){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1200?"上午":1200===i?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}});return t}))},"4a38":function(e,t,n){"use strict";n.d(t,"f",(function(){return p})),n.d(t,"d",(function(){return h})),n.d(t,"e",(function(){return m})),n.d(t,"c",(function(){return b})),n.d(t,"b",(function(){return g})),n.d(t,"a",(function(){return v}));var i=n("992e"),r=n("906c"),o=n("7b1e"),a=n("d82f"),s=n("fa73"),c="a",u=function(e){return"%"+e.charCodeAt(0).toString(16)},d=function(e){return encodeURIComponent(Object(s["g"])(e)).replace(i["j"],u).replace(i["i"],",")},l=decodeURIComponent,f=function(e){if(!Object(o["k"])(e))return"";var t=Object(a["h"])(e).map((function(t){var n=e[t];return Object(o["o"])(n)?"":Object(o["g"])(n)?d(t):Object(o["a"])(n)?n.reduce((function(e,n){return Object(o["g"])(n)?e.push(d(t)):Object(o["o"])(n)||e.push(d(t)+"="+d(n)),e}),[]).join("&"):d(t)+"="+d(n)})).filter((function(e){return e.length>0})).join("&");return t?"?".concat(t):""},p=function(e){var t={};return e=Object(s["g"])(e).trim().replace(i["u"],""),e?(e.split("&").forEach((function(e){var n=e.replace(i["t"]," ").split("="),r=l(n.shift()),a=n.length>0?l(n.join("=")):null;Object(o["o"])(t[r])?t[r]=a:Object(o["a"])(t[r])?t[r].push(a):t[r]=[t[r],a]})),t):t},h=function(e){return!(!e.href&&!e.to)},m=function(e){return!(!e||Object(r["t"])(e,"a"))},b=function(e,t){var n=e.to,i=e.disabled,r=e.routerComponentName,o=!!t.$router;return!o||o&&(i||!n)?c:r||(t.$nuxt?"nuxt-link":"router-link")},g=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=e.rel;return"_blank"===t&&Object(o["g"])(n)?"noopener":n||null},v=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.href,n=e.to,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"#",a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"/";if(t)return t;if(m(i))return null;if(Object(o["n"])(n))return n||a;if(Object(o["k"])(n)&&(n.path||n.query||n.hash)){var u=Object(s["g"])(n.path),d=f(n.query),l=Object(s["g"])(n.hash);return l=l&&"#"!==l.charAt(0)?"#".concat(l):l,"".concat(u).concat(d).concat(l)||a}return r}},"4a7b":function(e,t,n){"use strict";var i=n("c532");e.exports=function(e,t){t=t||{};var n={},r=["url","method","data"],o=["headers","auth","proxy","params"],a=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function c(e,t){return i.isPlainObject(e)&&i.isPlainObject(t)?i.merge(e,t):i.isPlainObject(t)?i.merge({},t):i.isArray(t)?t.slice():t}function u(r){i.isUndefined(t[r])?i.isUndefined(e[r])||(n[r]=c(void 0,e[r])):n[r]=c(e[r],t[r])}i.forEach(r,(function(e){i.isUndefined(t[e])||(n[e]=c(void 0,t[e]))})),i.forEach(o,u),i.forEach(a,(function(r){i.isUndefined(t[r])?i.isUndefined(e[r])||(n[r]=c(void 0,e[r])):n[r]=c(void 0,t[r])})),i.forEach(s,(function(i){i in t?n[i]=c(e[i],t[i]):i in e&&(n[i]=c(void 0,e[i]))}));var d=r.concat(o).concat(a).concat(s),l=Object.keys(e).concat(Object.keys(t)).filter((function(e){return-1===d.indexOf(e)}));return i.forEach(l,u),n}},"4ba9":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e,n){var r=t+" ";switch(n){case"ss":return r+=1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi",r;case"m":return e?"jedna minuta":"jedne minute";case"mm":return r+=1===t?"minuta":2===t||3===t||4===t?"minute":"minuta",r;case"h":return e?"jedan sat":"jednog sata";case"hh":return r+=1===t?"sat":2===t||3===t||4===t?"sata":"sati",r;case"dd":return r+=1===t?"dan":"dana",r;case"MM":return r+=1===t?"mjesec":2===t||3===t||4===t?"mjeseca":"mjeseci",r;case"yy":return r+=1===t?"godina":2===t||3===t||4===t?"godine":"godina",r}}var n=t.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"Do MMMM YYYY",LLL:"Do MMMM YYYY H:mm",LLLL:"dddd, Do MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:return"[prošlu] [nedjelju] [u] LT";case 3:return"[prošlu] [srijedu] [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:e,m:e,mm:e,h:e,hh:e,d:"dan",dd:e,M:"mjesec",MM:e,y:"godinu",yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"4cef":function(t,e){var n=/\s/;function r(t){var e=t.length;while(e--&&n.test(t.charAt(e)));return e}t.exports=r},"4d64":function(t,e,n){var r=n("fc6a"),i=n("50c4"),a=n("23cb"),o=function(t){return function(e,n,o){var s,c=r(e),u=i(c.length),l=a(o,u);if(t&&n!=n){while(u>l)if(s=c[l++],s!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:o(!0),indexOf:o(!1)}},"4de4":function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").filter,a=n("1dde"),o=a("filter");r({target:"Array",proto:!0,forced:!o},{filter:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},"4df4":function(t,e,n){"use strict";var r=n("0366"),i=n("7b0b"),a=n("9bdd"),o=n("e95a"),s=n("50c4"),c=n("8418"),u=n("35a1");t.exports=function(t){var e,n,l,d,f,h,p=i(t),m="function"==typeof this?this:Array,b=arguments.length,v=b>1?arguments[1]:void 0,_=void 0!==v,g=u(p),y=0;if(_&&(v=r(v,b>2?arguments[2]:void 0,2)),void 0==g||m==Array&&o(g))for(e=s(p.length),n=new m(e);e>y;y++)h=_?v(p[y],y):p[y],c(n,y,h);else for(d=g.call(p),f=d.next,n=new m;!(l=f.call(d)).done;y++)h=_?a(d,v,[l.value,y],!0):l.value,c(n,y,h);return n.length=y,n}},5038:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t,n){var i=e+" ";switch(n){case"ss":return i+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi",i;case"m":return t?"jedna minuta":"jedne minute";case"mm":return i+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta",i;case"h":return t?"jedan sat":"jednog sata";case"hh":return i+=1===e?"sat":2===e||3===e||4===e?"sata":"sati",i;case"dd":return i+=1===e?"dan":"dana",i;case"MM":return i+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci",i;case"yy":return i+=1===e?"godina":2===e||3===e||4===e?"godine":"godina",i}}var n=e.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"Do MMMM YYYY",LLL:"Do MMMM YYYY H:mm",LLLL:"dddd, Do MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:return"[prošlu] [nedjelju] [u] LT";case 3:return"[prošlu] [srijedu] [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"4cef":function(e,t){var n=/\s/;function i(e){var t=e.length;while(t--&&n.test(e.charAt(t)));return t}e.exports=i},"4d64":function(e,t,n){var i=n("fc6a"),r=n("50c4"),o=n("23cb"),a=function(e){return function(t,n,a){var s,c=i(t),u=r(c.length),d=o(a,u);if(e&&n!=n){while(u>d)if(s=c[d++],s!=s)return!0}else for(;u>d;d++)if((e||d in c)&&c[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},"4de4":function(e,t,n){"use strict";var i=n("23e7"),r=n("b727").filter,o=n("1dde"),a=o("filter");i({target:"Array",proto:!0,forced:!a},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}})},"4df4":function(e,t,n){"use strict";var i=n("0366"),r=n("7b0b"),o=n("9bdd"),a=n("e95a"),s=n("50c4"),c=n("8418"),u=n("35a1");e.exports=function(e){var t,n,d,l,f,p,h=r(e),m="function"==typeof this?this:Array,b=arguments.length,g=b>1?arguments[1]:void 0,v=void 0!==g,y=u(h),_=0;if(v&&(g=i(g,b>2?arguments[2]:void 0,2)),void 0==y||m==Array&&a(y))for(t=s(h.length),n=new m(t);t>_;_++)p=v?g(h[_],_):h[_],c(n,_,p);else for(l=y.call(h),f=l.next,n=new m;!(d=f.call(l)).done;_++)p=v?o(l,g,[d.value,_],!0):d.value,c(n,_,p);return n.length=_,n}},5038:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"siang"===e?t>=11?t:t+12:"sore"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"siang":t<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:0,doy:6}});return e}))},"50c4":function(t,e,n){var r=n("a691"),i=Math.min;t.exports=function(t){return t>0?i(r(t),9007199254740991):0}},"50d3":function(t,e,n){"use strict";n.d(e,"b",(function(){return r})),n.d(e,"c",(function(){return i})),n.d(e,"a",(function(){return a}));var r="BvConfig",i="$bvConfig",a=["xs","sm","md","lg","xl"]},5120:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"siang"===t?e>=11?e:e+12:"sore"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){return e<11?"pagi":e<15?"siang":e<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:0,doy:6}});return t}))},"50c4":function(e,t,n){var i=n("a691"),r=Math.min;e.exports=function(e){return e>0?r(i(e),9007199254740991):0}},"50d3":function(e,t,n){"use strict";n.d(t,"b",(function(){return i})),n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return o}));var i="BvConfig",r="$bvConfig",o=["xs","sm","md","lg","xl"]},5120:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig"],n=["Ean","Feabh","Márt","Aib","Beal","Meith","Iúil","Lún","M.F.","D.F.","Samh","Noll"],r=["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"],i=["Domh","Luan","Máirt","Céad","Déar","Aoine","Sath"],a=["Do","Lu","Má","Cé","Dé","A","Sa"],o=t.defineLocale("ga",{months:e,monthsShort:n,monthsParseExact:!0,weekdays:r,weekdaysShort:i,weekdaysMin:a,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Amárach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné ag] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d míonna",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(t){var e=1===t?"d":t%10===2?"na":"mh";return t+e},week:{dow:1,doy:4}});return o}))},5135:function(t,e,n){var r=n("7b0b"),i={}.hasOwnProperty;t.exports=Object.hasOwn||function(t,e){return i.call(r(t),e)}},5270:function(t,e,n){"use strict";var r=n("c532"),i=n("c401"),a=n("2e67"),o=n("2444");function s(t){t.cancelToken&&t.cancelToken.throwIfRequested()}t.exports=function(t){s(t),t.headers=t.headers||{},t.data=i(t.data,t.headers,t.transformRequest),t.headers=r.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]}));var e=t.adapter||o.adapter;return e(t).then((function(e){return s(t),e.data=i(e.data,e.headers,t.transformResponse),e}),(function(e){return a(e)||(s(t),e&&e.response&&(e.response.data=i(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)}))}},5294:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig"],n=["Ean","Feabh","Márt","Aib","Beal","Meith","Iúil","Lún","M.F.","D.F.","Samh","Noll"],i=["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"],r=["Domh","Luan","Máirt","Céad","Déar","Aoine","Sath"],o=["Do","Lu","Má","Cé","Dé","A","Sa"],a=e.defineLocale("ga",{months:t,monthsShort:n,monthsParseExact:!0,weekdays:i,weekdaysShort:r,weekdaysMin:o,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Amárach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné ag] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d míonna",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){var t=1===e?"d":e%10===2?"na":"mh";return e+t},week:{dow:1,doy:4}});return a}))},5135:function(e,t,n){var i=n("7b0b"),r={}.hasOwnProperty;e.exports=Object.hasOwn||function(e,t){return r.call(i(e),t)}},5270:function(e,t,n){"use strict";var i=n("c532"),r=n("c401"),o=n("2e67"),a=n("2444");function s(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){s(e),e.headers=e.headers||{},e.data=r(e.data,e.headers,e.transformRequest),e.headers=i.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),i.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]}));var t=e.adapter||a.adapter;return t(e).then((function(t){return s(e),t.data=r(t.data,t.headers,e.transformResponse),t}),(function(t){return o(t)||(s(e),t&&t.response&&(t.response.data=r(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},5294:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"],r=t.defineLocale("ur",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(t){return"شام"===t},meridiem:function(t,e,n){return t<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:4}});return r}))},"52bd":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"],i=e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return e<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}});return i}))},"52bd":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(t,e,n){return t<11?"ekuseni":t<15?"emini":t<19?"entsambama":"ebusuku"},meridiemHour:function(t,e){return 12===t&&(t=0),"ekuseni"===e?t:"emini"===e?t>=11?t:t+12:"entsambama"===e||"ebusuku"===e?0===t?0:t+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}});return e}))},5319:function(t,e,n){"use strict";var r=n("d784"),i=n("825a"),a=n("50c4"),o=n("a691"),s=n("1d80"),c=n("8aa5"),u=n("0cb2"),l=n("14c3"),d=Math.max,f=Math.min,h=function(t){return void 0===t?t:String(t)};r("replace",2,(function(t,e,n,r){var p=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,m=r.REPLACE_KEEPS_$0,b=p?"$":"$0";return[function(n,r){var i=s(this),a=void 0==n?void 0:n[t];return void 0!==a?a.call(n,i,r):e.call(String(i),n,r)},function(t,r){if(!p&&m||"string"===typeof r&&-1===r.indexOf(b)){var s=n(e,t,this,r);if(s.done)return s.value}var v=i(t),_=String(this),g="function"===typeof r;g||(r=String(r));var y=v.global;if(y){var O=v.unicode;v.lastIndex=0}var j=[];while(1){var w=l(v,_);if(null===w)break;if(j.push(w),!y)break;var M=String(w[0]);""===M&&(v.lastIndex=c(_,a(v.lastIndex),O))}for(var L="",k=0,T=0;T=k&&(L+=_.slice(k,S)+E,k=S+D.length)}return L+_.slice(k)}]}))},"55c9":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(e,t,n){return e<11?"ekuseni":e<15?"emini":e<19?"entsambama":"ebusuku"},meridiemHour:function(e,t){return 12===e&&(e=0),"ekuseni"===t?e:"emini"===t?e>=11?e:e+12:"entsambama"===t||"ebusuku"===t?0===e?0:e+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}});return t}))},5319:function(e,t,n){"use strict";var i=n("d784"),r=n("825a"),o=n("50c4"),a=n("a691"),s=n("1d80"),c=n("8aa5"),u=n("0cb2"),d=n("14c3"),l=Math.max,f=Math.min,p=function(e){return void 0===e?e:String(e)};i("replace",2,(function(e,t,n,i){var h=i.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,m=i.REPLACE_KEEPS_$0,b=h?"$":"$0";return[function(n,i){var r=s(this),o=void 0==n?void 0:n[e];return void 0!==o?o.call(n,r,i):t.call(String(r),n,i)},function(e,i){if(!h&&m||"string"===typeof i&&-1===i.indexOf(b)){var s=n(t,e,this,i);if(s.done)return s.value}var g=r(e),v=String(this),y="function"===typeof i;y||(i=String(i));var _=g.global;if(_){var O=g.unicode;g.lastIndex=0}var j=[];while(1){var w=d(g,v);if(null===w)break;if(j.push(w),!_)break;var k=String(w[0]);""===k&&(g.lastIndex=c(v,o(g.lastIndex),O))}for(var M="",L=0,x=0;x=L&&(M+=v.slice(L,S)+C,L=S+T.length)}return M+v.slice(L)}]}))},"53ca":function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));n("a4d3"),n("e01a"),n("d3b7"),n("d28b"),n("3ca3"),n("ddb0");function i(e){return i="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}},"55c9":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),r=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],i=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,a=t.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,r){return t?/-MMM-/.test(r)?n[t.month()]:e[t.month()]:e},monthsRegex:i,monthsShortRegex:i,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:r,longMonthsParse:r,shortMonthsParse:r,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}});return a}))},5692:function(t,e,n){var r=n("c430"),i=n("c6cd");(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.14.0",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(t,e,n){var r=n("d066"),i=n("241c"),a=n("7418"),o=n("825a");t.exports=r("Reflect","ownKeys")||function(t){var e=i.f(o(t)),n=a.f;return n?e.concat(n(t)):e}},"576c":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,o=e.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}});return o}))},5692:function(e,t,n){var i=n("c430"),r=n("c6cd");(e.exports=function(e,t){return r[e]||(r[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.14.0",mode:i?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(e,t,n){var i=n("d066"),r=n("241c"),o=n("7418"),a=n("825a");e.exports=i("Reflect","ownKeys")||function(e){var t=r.f(a(e)),n=o.f;return n?t.concat(n(e)):t}},"576c":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"segundu balun",ss:"segundu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10,n=1===~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n},week:{dow:1,doy:4}});return e}))},"585a":function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n("c8ba"))},5899:function(t,e){t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},"58a8":function(t,e,n){var r=n("1d80"),i=n("5899"),a="["+i+"]",o=RegExp("^"+a+a+"*"),s=RegExp(a+a+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(o,"")),2&t&&(n=n.replace(s,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},"58f2":function(t,e,n){"use strict";n.d(e,"a",(function(){return c}));var r=n("a026"),i=n("0056"),a=n("a723"),o=n("cf75");function s(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var c=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.type,c=void 0===n?a["a"]:n,u=e.defaultValue,l=void 0===u?void 0:u,d=e.validator,f=void 0===d?void 0:d,h=e.event,p=void 0===h?i["y"]:h,m=s({},t,Object(o["c"])(c,l,f)),b=r["default"].extend({model:{prop:t,event:p},props:m});return{mixin:b,props:m,prop:t,event:p}}},"598a":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"segundu balun",ss:"segundu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n},week:{dow:1,doy:4}});return t}))},"585a":function(e,t,n){(function(t){var n="object"==typeof t&&t&&t.Object===Object&&t;e.exports=n}).call(this,n("c8ba"))},5899:function(e,t){e.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},"58a8":function(e,t,n){var i=n("1d80"),r=n("5899"),o="["+r+"]",a=RegExp("^"+o+o+"*"),s=RegExp(o+o+"*$"),c=function(e){return function(t){var n=String(i(t));return 1&e&&(n=n.replace(a,"")),2&e&&(n=n.replace(s,"")),n}};e.exports={start:c(1),end:c(2),trim:c(3)}},"58f2":function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var i=n("a026"),r=n("0056"),o=n("a723"),a=n("cf75");function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.type,c=void 0===n?o["a"]:n,u=t.defaultValue,d=void 0===u?void 0:u,l=t.validator,f=void 0===l?void 0:l,p=t.event,h=void 0===p?r["y"]:p,m=s({},e,Object(a["c"])(c,d,f)),b=i["default"].extend({model:{prop:e,event:h},props:m});return{mixin:b,props:m,prop:e,event:h}}},"598a":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],n=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],r=t.defineLocale("dv",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(t){return"މފ"===t},meridiem:function(t,e,n){return t<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:7,doy:12}});return r}))},"59e4":function(t,e,n){"use strict";n.d(e,"b",(function(){return I})),n.d(e,"a",(function(){return B}));var r,i=n("2b88"),a=n("a026"),o=n("2f79"),s=n("c637"),c=n("0056"),u=n("a723"),l=n("9b76"),d=n("6d40"),f=n("906c"),h=n("6b77"),p=n("a8c8"),m=n("58f2"),b=n("3a58"),v=n("d82f"),_=n("cf75"),g=n("4a38"),y=n("493b"),O=n("90ef"),j=n("602d"),w=n("8c18"),M=n("8d32"),L=n("f29e"),k=n("aa59"),T=n("ce2a"),D=n("0f65");function S(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Y(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:{};return new d["a"](t,Y(Y({cancelable:!1,target:this.$el||null,relatedTarget:null},e),{},{vueTarget:this,componentId:this.safeId()}))},emitEvent:function(t){var e=t.type;this.emitOnRoot(Object(h["e"])(s["pc"],e),t),this.$emit(e,t)},ensureToaster:function(){if(!this.static){var t=this.computedToaster;if(!i["Wormhole"].hasTarget(t)){var e=document.createElement("div");document.body.appendChild(e);var n=new D["a"]({parent:this.$root,propsData:{name:t}});n.$mount(e)}}},startDismissTimer:function(){this.clearDismissTimer(),this.noAutoHide||(this.$_dismissTimer=setTimeout(this.hide,this.resumeDismiss||this.computedDuration),this.dismissStarted=Date.now(),this.resumeDismiss=0)},clearDismissTimer:function(){clearTimeout(this.$_dismissTimer),this.$_dismissTimer=null},setHoverHandler:function(t){var e=this.$refs["b-toast"];Object(h["c"])(t,e,"mouseenter",this.onPause,c["cb"]),Object(h["c"])(t,e,"mouseleave",this.onUnPause,c["cb"])},onPause:function(){if(!this.noAutoHide&&!this.noHoverPause&&this.$_dismissTimer&&!this.resumeDismiss){var t=Date.now()-this.dismissStarted;t>0&&(this.clearDismissTimer(),this.resumeDismiss=Object(p["d"])(this.computedDuration-t,$))}},onUnPause:function(){this.noAutoHide||this.noHoverPause||!this.resumeDismiss?this.resumeDismiss=this.dismissStarted=0:this.startDismissTimer()},onLinkClick:function(){var t=this;this.$nextTick((function(){Object(f["D"])((function(){t.hide()}))}))},onBeforeEnter:function(){this.isTransitioning=!0},onAfterEnter:function(){this.isTransitioning=!1;var t=this.buildEvent(c["U"]);this.emitEvent(t),this.startDismissTimer(),this.setHoverHandler(!0)},onBeforeLeave:function(){this.isTransitioning=!0},onAfterLeave:function(){this.isTransitioning=!1,this.order=0,this.resumeDismiss=this.dismissStarted=0;var t=this.buildEvent(c["v"]);this.emitEvent(t),this.doRender=!1},makeToast:function(t){var e=this,n=this.title,r=this.slotScope,i=Object(g["d"])(this),a=[],s=this.normalizeSlot(l["jb"],r);s?a.push(s):n&&a.push(t("strong",{staticClass:"mr-2"},n)),this.noCloseButton||a.push(t(L["a"],{staticClass:"ml-auto mb-1",on:{click:function(){e.hide()}}}));var c=t();a.length>0&&(c=t("header",{staticClass:"toast-header",class:this.headerClass},a));var u=t(i?k["a"]:"div",{staticClass:"toast-body",class:this.bodyClass,props:i?Object(_["e"])(F,this):{},on:i?{click:this.onLinkClick}:{}},this.normalizeSlot(l["i"],r));return t("div",{staticClass:"toast",class:this.toastClass,attrs:this.computedAttrs,key:"toast-".concat(this[o["a"]]),ref:"toast"},[c,u])}},render:function(t){if(!this.doRender||!this.isMounted)return t();var e=this.order,n=this.static,r=this.isHiding,a=this.isStatus,s="b-toast-".concat(this[o["a"]]),c=t("div",{staticClass:"b-toast",class:this.toastClasses,attrs:Y(Y({},n?{}:this.scopedStyleAttrs),{},{id:this.safeId("_toast_outer"),role:r?null:a?"status":"alert","aria-live":r?null:a?"polite":"assertive","aria-atomic":r?null:"true"}),key:s,ref:"b-toast"},[t(T["a"],{props:{noFade:this.noFade},on:this.transitionHandlers},[this.localShow?this.makeToast(t):t()])]);return t(i["Portal"],{props:{name:s,to:this.computedToaster,order:e,slim:!0,disabled:n}},[c])}})},"5a34":function(t,e,n){var r=n("44e7");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},"5aff":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],n=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],i=e.defineLocale("dv",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(e){return"މފ"===e},meridiem:function(e,t,n){return e<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:7,doy:12}});return i}))},"59e4":function(e,t,n){"use strict";n.d(t,"b",(function(){return I})),n.d(t,"a",(function(){return B}));var i,r=n("2b88"),o=n("a026"),a=n("2f79"),s=n("c637"),c=n("0056"),u=n("a723"),d=n("9b76"),l=n("6d40"),f=n("906c"),p=n("6b77"),h=n("a8c8"),m=n("58f2"),b=n("3a58"),g=n("d82f"),v=n("cf75"),y=n("4a38"),_=n("493b"),O=n("90ef"),j=n("602d"),w=n("8c18"),k=n("8d32"),M=n("f29e"),L=n("aa59"),x=n("ce2a"),T=n("0f65");function S(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function D(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};return new l["a"](e,D(D({cancelable:!1,target:this.$el||null,relatedTarget:null},t),{},{vueTarget:this,componentId:this.safeId()}))},emitEvent:function(e){var t=e.type;this.emitOnRoot(Object(p["e"])(s["pc"],t),e),this.$emit(t,e)},ensureToaster:function(){if(!this.static){var e=this.computedToaster;if(!r["Wormhole"].hasTarget(e)){var t=document.createElement("div");document.body.appendChild(t);var n=new T["a"]({parent:this.$root,propsData:{name:e}});n.$mount(t)}}},startDismissTimer:function(){this.clearDismissTimer(),this.noAutoHide||(this.$_dismissTimer=setTimeout(this.hide,this.resumeDismiss||this.computedDuration),this.dismissStarted=Date.now(),this.resumeDismiss=0)},clearDismissTimer:function(){clearTimeout(this.$_dismissTimer),this.$_dismissTimer=null},setHoverHandler:function(e){var t=this.$refs["b-toast"];Object(p["c"])(e,t,"mouseenter",this.onPause,c["cb"]),Object(p["c"])(e,t,"mouseleave",this.onUnPause,c["cb"])},onPause:function(){if(!this.noAutoHide&&!this.noHoverPause&&this.$_dismissTimer&&!this.resumeDismiss){var e=Date.now()-this.dismissStarted;e>0&&(this.clearDismissTimer(),this.resumeDismiss=Object(h["d"])(this.computedDuration-e,$))}},onUnPause:function(){this.noAutoHide||this.noHoverPause||!this.resumeDismiss?this.resumeDismiss=this.dismissStarted=0:this.startDismissTimer()},onLinkClick:function(){var e=this;this.$nextTick((function(){Object(f["D"])((function(){e.hide()}))}))},onBeforeEnter:function(){this.isTransitioning=!0},onAfterEnter:function(){this.isTransitioning=!1;var e=this.buildEvent(c["U"]);this.emitEvent(e),this.startDismissTimer(),this.setHoverHandler(!0)},onBeforeLeave:function(){this.isTransitioning=!0},onAfterLeave:function(){this.isTransitioning=!1,this.order=0,this.resumeDismiss=this.dismissStarted=0;var e=this.buildEvent(c["v"]);this.emitEvent(e),this.doRender=!1},makeToast:function(e){var t=this,n=this.title,i=this.slotScope,r=Object(y["d"])(this),o=[],s=this.normalizeSlot(d["jb"],i);s?o.push(s):n&&o.push(e("strong",{staticClass:"mr-2"},n)),this.noCloseButton||o.push(e(M["a"],{staticClass:"ml-auto mb-1",on:{click:function(){t.hide()}}}));var c=e();o.length>0&&(c=e("header",{staticClass:"toast-header",class:this.headerClass},o));var u=e(r?L["a"]:"div",{staticClass:"toast-body",class:this.bodyClass,props:r?Object(v["e"])(F,this):{},on:r?{click:this.onLinkClick}:{}},this.normalizeSlot(d["i"],i));return e("div",{staticClass:"toast",class:this.toastClass,attrs:this.computedAttrs,key:"toast-".concat(this[a["a"]]),ref:"toast"},[c,u])}},render:function(e){if(!this.doRender||!this.isMounted)return e();var t=this.order,n=this.static,i=this.isHiding,o=this.isStatus,s="b-toast-".concat(this[a["a"]]),c=e("div",{staticClass:"b-toast",class:this.toastClasses,attrs:D(D({},n?{}:this.scopedStyleAttrs),{},{id:this.safeId("_toast_outer"),role:i?null:o?"status":"alert","aria-live":i?null:o?"polite":"assertive","aria-atomic":i?null:"true"}),key:s,ref:"b-toast"},[e(x["a"],{props:{noFade:this.noFade},on:this.transitionHandlers},[this.localShow?this.makeToast(e):e()])]);return e(r["Portal"],{props:{name:s,to:this.computedToaster,order:t,slim:!0,disabled:n}},[c])}})},"5a34":function(e,t,n){var i=n("44e7");e.exports=function(e){if(i(e))throw TypeError("The method doesn't accept regular expressions");return e}},"5aff":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"'inji",5:"'inji",8:"'inji",70:"'inji",80:"'inji",2:"'nji",7:"'nji",20:"'nji",50:"'nji",3:"'ünji",4:"'ünji",100:"'ünji",6:"'njy",9:"'unjy",10:"'unjy",30:"'unjy",60:"'ynjy",90:"'ynjy"},n=t.defineLocale("tk",{months:"Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr".split("_"),monthsShort:"Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek".split("_"),weekdays:"Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe".split("_"),weekdaysShort:"Ýek_Duş_Siş_Çar_Pen_Ann_Şen".split("_"),weekdaysMin:"Ýk_Dş_Sş_Çr_Pn_An_Şn".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün sagat] LT",nextDay:"[ertir sagat] LT",nextWeek:"[indiki] dddd [sagat] LT",lastDay:"[düýn] LT",lastWeek:"[geçen] dddd [sagat] LT",sameElse:"L"},relativeTime:{future:"%s soň",past:"%s öň",s:"birnäçe sekunt",m:"bir minut",mm:"%d minut",h:"bir sagat",hh:"%d sagat",d:"bir gün",dd:"%d gün",M:"bir aý",MM:"%d aý",y:"bir ýyl",yy:"%d ýyl"},ordinal:function(t,n){switch(n){case"d":case"D":case"Do":case"DD":return t;default:if(0===t)return t+"'unjy";var r=t%10,i=t%100-r,a=t>=100?100:null;return t+(e[r]||e[i]||e[a])}},week:{dow:1,doy:7}});return n}))},"5b14":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"'inji",5:"'inji",8:"'inji",70:"'inji",80:"'inji",2:"'nji",7:"'nji",20:"'nji",50:"'nji",3:"'ünji",4:"'ünji",100:"'ünji",6:"'njy",9:"'unjy",10:"'unjy",30:"'unjy",60:"'ynjy",90:"'ynjy"},n=e.defineLocale("tk",{months:"Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr".split("_"),monthsShort:"Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek".split("_"),weekdays:"Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe".split("_"),weekdaysShort:"Ýek_Duş_Siş_Çar_Pen_Ann_Şen".split("_"),weekdaysMin:"Ýk_Dş_Sş_Çr_Pn_An_Şn".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün sagat] LT",nextDay:"[ertir sagat] LT",nextWeek:"[indiki] dddd [sagat] LT",lastDay:"[düýn] LT",lastWeek:"[geçen] dddd [sagat] LT",sameElse:"L"},relativeTime:{future:"%s soň",past:"%s öň",s:"birnäçe sekunt",m:"bir minut",mm:"%d minut",h:"bir sagat",hh:"%d sagat",d:"bir gün",dd:"%d gün",M:"bir aý",MM:"%d aý",y:"bir ýyl",yy:"%d ýyl"},ordinal:function(e,n){switch(n){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'unjy";var i=e%10,r=e%100-i,o=e>=100?100:null;return e+(t[i]||t[r]||t[o])}},week:{dow:1,doy:7}});return n}))},"5b14":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function n(t,e,n,r){var i=t;switch(n){case"s":return r||e?"néhány másodperc":"néhány másodperce";case"ss":return i+(r||e)?" másodperc":" másodperce";case"m":return"egy"+(r||e?" perc":" perce");case"mm":return i+(r||e?" perc":" perce");case"h":return"egy"+(r||e?" óra":" órája");case"hh":return i+(r||e?" óra":" órája");case"d":return"egy"+(r||e?" nap":" napja");case"dd":return i+(r||e?" nap":" napja");case"M":return"egy"+(r||e?" hónap":" hónapja");case"MM":return i+(r||e?" hónap":" hónapja");case"y":return"egy"+(r||e?" év":" éve");case"yy":return i+(r||e?" év":" éve")}return""}function r(t){return(t?"":"[múlt] ")+"["+e[this.day()]+"] LT[-kor]"}var i=t.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(t){return"u"===t.charAt(1).toLowerCase()},meridiem:function(t,e,n){return t<12?!0===n?"de":"DE":!0===n?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return r.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return r.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i}))},"5c3a":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function n(e,t,n,i){var r=e;switch(n){case"s":return i||t?"néhány másodperc":"néhány másodperce";case"ss":return r+(i||t)?" másodperc":" másodperce";case"m":return"egy"+(i||t?" perc":" perce");case"mm":return r+(i||t?" perc":" perce");case"h":return"egy"+(i||t?" óra":" órája");case"hh":return r+(i||t?" óra":" órája");case"d":return"egy"+(i||t?" nap":" napja");case"dd":return r+(i||t?" nap":" napja");case"M":return"egy"+(i||t?" hónap":" hónapja");case"MM":return r+(i||t?" hónap":" hónapja");case"y":return"egy"+(i||t?" év":" éve");case"yy":return r+(i||t?" év":" éve")}return""}function i(e){return(e?"":"[múlt] ")+"["+t[this.day()]+"] LT[-kor]"}var r=e.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(e){return"u"===e.charAt(1).toLowerCase()},meridiem:function(e,t,n){return e<12?!0===n?"de":"DE":!0===n?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return i.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return i.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r}))},"5c3a":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"下午"===e||"晚上"===e?t+12:t>=11?t:t+12},meridiem:function(t,e,n){var r=100*t+e;return r<600?"凌晨":r<900?"早上":r<1130?"上午":r<1230?"中午":r<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:function(t){return t.week()!==this.week()?"[下]dddLT":"[本]dddLT"},lastDay:"[昨天]LT",lastWeek:function(t){return this.week()!==t.week()?"[上]dddLT":"[本]dddLT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"周";default:return t}},relativeTime:{future:"%s后",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",w:"1 周",ww:"%d 周",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}});return e}))},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"5cbb":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"下午"===t||"晚上"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,n){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1130?"上午":i<1230?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:function(e){return e.week()!==this.week()?"[下]dddLT":"[本]dddLT"},lastDay:"[昨天]LT",lastWeek:function(e){return this.week()!==e.week()?"[上]dddLT":"[本]dddLT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"周";default:return e}},relativeTime:{future:"%s后",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",w:"1 周",ww:"%d 周",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}});return t}))},"5c6c":function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"5cbb":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(t,e){return 12===t&&(t=0),"రాత్రి"===e?t<4?t:t+12:"ఉదయం"===e?t:"మధ్యాహ్నం"===e?t>=10?t:t+12:"సాయంత్రం"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"రాత్రి":t<10?"ఉదయం":t<17?"మధ్యాహ్నం":t<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}});return e}))},"5f02":function(t,e,n){"use strict";t.exports=function(t){return"object"===typeof t&&!0===t.isAxiosError}},"5f5b":function(t,e,n){"use strict";n.d(e,"a",(function(){return _M}));var r=n("a026"),i=n("e863"),a=n("50d3"),o=n("c9a9"),s=n("992e"),c=n("6c06"),u=n("7b1e"),l=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(e=Object(u["a"])(e)?e.join("."):e,!e||!Object(u["j"])(t))return n;if(e in t)return t[e];e=String(e).replace(s["a"],".$1");var r=e.split(".").filter(c["a"]);return 0===r.length?n:r.every((function(e){return Object(u["j"])(t)&&e in t&&!Object(u["p"])(t=t[e])}))?t:Object(u["g"])(t)?null:n},d=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=l(t,e);return Object(u["p"])(r)?n:r},f=n("d82f"),h=n("686b");function p(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function m(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};if(Object(u["k"])(e)){var n=Object(f["f"])(e);n.forEach((function(n){var r=e[n];"breakpoints"===n?!Object(u["a"])(r)||r.length<2||r.some((function(t){return!Object(u["n"])(t)||0===t.length}))?Object(h["a"])('"breakpoints" must be an array of at least 2 breakpoint names',a["b"]):t.$_config[n]=Object(o["a"])(r):Object(u["k"])(r)&&(t.$_config[n]=Object(f["f"])(r).reduce((function(t,e){return Object(u["o"])(r[e])||(t[e]=Object(o["a"])(r[e])),t}),t.$_config[n]||{}))}))}}},{key:"resetConfig",value:function(){this.$_config={}}},{key:"getConfig",value:function(){return Object(o["a"])(this.$_config)}},{key:"getConfigValue",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return Object(o["a"])(l(this.$_config,t,e))}}]),t}(),_=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r["default"];e.prototype[a["c"]]=r["default"].prototype[a["c"]]=e.prototype[a["c"]]||r["default"].prototype[a["c"]]||new v,e.prototype[a["c"]].setConfig(t)};function g(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function y(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},e=t.components,n=t.directives,r=t.plugins,i=function t(i){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.installed||(t.installed=!0,w(i),_(a,i),D(i,e),Y(i,n),k(i,r))};return i.installed=!1,i},L=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return y(y({},e),{},{install:M(t)})},k=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in e)n&&e[n]&&t.use(e[n])},T=function(t,e,n){t&&e&&n&&t.component(e,n)},D=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in e)T(t,n,e[n])},S=function(t,e,n){t&&e&&n&&t.directive(e.replace(/^VB/,"B"),n)},Y=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in e)S(t,n,e[n])},x=n("2f79"),P=n("c637"),C=n("0056"),E=n("a723"),H=n("9b76"),A=n("906c"),$=n("58f2"),F=n("3a58"),I=n("cf75"),B=n("8c18"),R=n("f29e"),N=n("ce2a");function V(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function z(t){for(var e=1;e0?t:0)},Z=function(t){return""===t||!0===t||!(Object(F["c"])(t,0)<1)&&!!t},Q=Object(I["d"])(Object(f["m"])(z(z({},J),{},{dismissLabel:Object(I["c"])(E["u"],"Close"),dismissible:Object(I["c"])(E["g"],!1),fade:Object(I["c"])(E["g"],!1),variant:Object(I["c"])(E["u"],"info")})),P["a"]),tt=r["default"].extend({name:P["a"],mixins:[G,B["a"]],props:Q,data:function(){return{countDown:0,localShow:Z(this[q])}},watch:(j={},W(j,q,(function(t){this.countDown=X(t),this.localShow=Z(t)})),W(j,"countDown",(function(t){var e=this;this.clearCountDownInterval();var n=this[q];Object(u["i"])(n)&&(this.$emit(C["n"],t),n!==t&&this.$emit(K,t),t>0?(this.localShow=!0,this.$_countDownTimeout=setTimeout((function(){e.countDown--}),1e3)):this.$nextTick((function(){Object(A["D"])((function(){e.localShow=!1}))})))})),W(j,"localShow",(function(t){var e=this[q];t||!this.dismissible&&!Object(u["i"])(e)||this.$emit(C["m"]),Object(u["i"])(e)||e===t||this.$emit(K,t)})),j),created:function(){this.$_filterTimer=null;var t=this[q];this.countDown=X(t),this.localShow=Z(t)},beforeDestroy:function(){this.clearCountDownInterval()},methods:{dismiss:function(){this.clearCountDownInterval(),this.countDown=0,this.localShow=!1},clearCountDownInterval:function(){clearTimeout(this.$_countDownTimeout),this.$_countDownTimeout=null}},render:function(t){var e=t();if(this.localShow){var n=this.dismissible,r=this.variant,i=t();n&&(i=t(R["a"],{attrs:{"aria-label":this.dismissLabel},on:{click:this.dismiss}},[this.normalizeSlot(H["k"])])),e=t("div",{staticClass:"alert",class:W({"alert-dismissible":n},"alert-".concat(r),r),attrs:{role:"alert","aria-live":"polite","aria-atomic":!0},key:this[x["a"]]},[i,this.normalizeSlot()])}return t(N["a"],{props:{noFade:!this.fade}},[e])}}),et=L({components:{BAlert:tt}}),nt=n("a8c8");function rt(t,e){return ct(t)||st(t,e)||at(t,e)||it()}function it(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function at(t,e){if(t){if("string"===typeof t)return ot(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ot(t,e):void 0}}function ot(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n'),Tt=Mt("CalendarFill",''),Dt=Mt("ChevronBarLeft",''),St=Mt("ChevronDoubleLeft",''),Yt=Mt("ChevronDown",''),xt=Mt("ChevronLeft",''),Pt=Mt("ChevronUp",''),Ct=Mt("CircleFill",''),Et=Mt("Clock",''),Ht=Mt("ClockFill",''),At=Mt("Dash",''),$t=Mt("PersonFill",''),Ft=Mt("Plus",''),It=Mt("Star",''),Bt=Mt("StarFill",''),Rt=Mt("StarHalf",''),Nt=Mt("X",''); +var t=e.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(e,t){return 12===e&&(e=0),"రాత్రి"===t?e<4?e:e+12:"ఉదయం"===t?e:"మధ్యాహ్నం"===t?e>=10?e:e+12:"సాయంత్రం"===t?e+12:void 0},meridiem:function(e,t,n){return e<4?"రాత్రి":e<10?"ఉదయం":e<17?"మధ్యాహ్నం":e<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}});return t}))},"5f02":function(e,t,n){"use strict";e.exports=function(e){return"object"===typeof e&&!0===e.isAxiosError}},"5f5b":function(e,t,n){"use strict";n.d(t,"a",(function(){return vk}));var i=n("a026"),r=n("e863"),o=n("50d3"),a=n("c9a9"),s=n("992e"),c=n("6c06"),u=n("7b1e"),d=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(t=Object(u["a"])(t)?t.join("."):t,!t||!Object(u["j"])(e))return n;if(t in e)return e[t];t=String(t).replace(s["a"],".$1");var i=t.split(".").filter(c["a"]);return 0===i.length?n:i.every((function(t){return Object(u["j"])(e)&&t in e&&!Object(u["p"])(e=e[t])}))?e:Object(u["g"])(e)?null:n},l=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=d(e,t);return Object(u["p"])(i)?n:i},f=n("d82f"),p=n("686b");function h(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function m(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};if(Object(u["k"])(t)){var n=Object(f["f"])(t);n.forEach((function(n){var i=t[n];"breakpoints"===n?!Object(u["a"])(i)||i.length<2||i.some((function(e){return!Object(u["n"])(e)||0===e.length}))?Object(p["a"])('"breakpoints" must be an array of at least 2 breakpoint names',o["b"]):e.$_config[n]=Object(a["a"])(i):Object(u["k"])(i)&&(e.$_config[n]=Object(f["f"])(i).reduce((function(e,t){return Object(u["o"])(i[t])||(e[t]=Object(a["a"])(i[t])),e}),e.$_config[n]||{}))}))}}},{key:"resetConfig",value:function(){this.$_config={}}},{key:"getConfig",value:function(){return Object(a["a"])(this.$_config)}},{key:"getConfigValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return Object(a["a"])(d(this.$_config,e,t))}}]),e}(),v=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i["default"];t.prototype[o["c"]]=i["default"].prototype[o["c"]]=t.prototype[o["c"]]||i["default"].prototype[o["c"]]||new g,t.prototype[o["c"]].setConfig(e)};function y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function _(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.components,n=e.directives,i=e.plugins,r=function e(r){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.installed||(e.installed=!0,w(r),v(o,r),T(r,t),D(r,n),L(r,i))};return r.installed=!1,r},M=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _(_({},t),{},{install:k(e)})},L=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in t)n&&t[n]&&e.use(t[n])},x=function(e,t,n){e&&t&&n&&e.component(t,n)},T=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in t)x(e,n,t[n])},S=function(e,t,n){e&&t&&n&&e.directive(t.replace(/^VB/,"B"),n)},D=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in t)S(e,n,t[n])},A=n("2f79"),P=n("c637"),Y=n("0056"),C=n("a723"),E=n("9b76"),H=n("906c"),$=n("58f2"),F=n("3a58"),I=n("cf75"),B=n("8c18"),R=n("f29e"),N=n("ce2a");function z(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function W(e){for(var t=1;t0?e:0)},Z=function(e){return""===e||!0===e||!(Object(F["c"])(e,0)<1)&&!!e},Q=Object(I["d"])(Object(f["m"])(W(W({},q),{},{dismissLabel:Object(I["c"])(C["u"],"Close"),dismissible:Object(I["c"])(C["g"],!1),fade:Object(I["c"])(C["g"],!1),variant:Object(I["c"])(C["u"],"info")})),P["a"]),ee=i["default"].extend({name:P["a"],mixins:[G,B["a"]],props:Q,data:function(){return{countDown:0,localShow:Z(this[J])}},watch:(j={},V(j,J,(function(e){this.countDown=X(e),this.localShow=Z(e)})),V(j,"countDown",(function(e){var t=this;this.clearCountDownInterval();var n=this[J];Object(u["i"])(n)&&(this.$emit(Y["n"],e),n!==e&&this.$emit(K,e),e>0?(this.localShow=!0,this.$_countDownTimeout=setTimeout((function(){t.countDown--}),1e3)):this.$nextTick((function(){Object(H["D"])((function(){t.localShow=!1}))})))})),V(j,"localShow",(function(e){var t=this[J];e||!this.dismissible&&!Object(u["i"])(t)||this.$emit(Y["m"]),Object(u["i"])(t)||t===e||this.$emit(K,e)})),j),created:function(){this.$_filterTimer=null;var e=this[J];this.countDown=X(e),this.localShow=Z(e)},beforeDestroy:function(){this.clearCountDownInterval()},methods:{dismiss:function(){this.clearCountDownInterval(),this.countDown=0,this.localShow=!1},clearCountDownInterval:function(){clearTimeout(this.$_countDownTimeout),this.$_countDownTimeout=null}},render:function(e){var t=e();if(this.localShow){var n=this.dismissible,i=this.variant,r=e();n&&(r=e(R["a"],{attrs:{"aria-label":this.dismissLabel},on:{click:this.dismiss}},[this.normalizeSlot(E["k"])])),t=e("div",{staticClass:"alert",class:V({"alert-dismissible":n},"alert-".concat(i),i),attrs:{role:"alert","aria-live":"polite","aria-atomic":!0},key:this[A["a"]]},[r,this.normalizeSlot()])}return e(N["a"],{props:{noFade:!this.fade}},[t])}}),te=M({components:{BAlert:ee}}),ne=n("a8c8");function ie(e,t){return ce(e)||se(e,t)||oe(e,t)||re()}function re(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function oe(e,t){if(e){if("string"===typeof e)return ae(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ae(e,t):void 0}}function ae(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n'),xe=ke("CalendarFill",''),Te=ke("ChevronBarLeft",''),Se=ke("ChevronDoubleLeft",''),De=ke("ChevronDown",''),Ae=ke("ChevronLeft",''),Pe=ke("ChevronUp",''),Ye=ke("CircleFill",''),Ce=ke("Clock",''),Ee=ke("ClockFill",''),He=ke("Dash",''),$e=ke("PersonFill",''),Fe=ke("Plus",''),Ie=ke("Star",''),Be=ke("StarFill",''),Re=ke("StarHalf",''),Ne=ke("X",''); /*! * BootstrapVue Icons, generated from Bootstrap Icons 1.2.2 * * @link https://icons.getbootstrap.com/ * @license MIT * https://github.com/twbs/icons/blob/master/LICENSE.md - */function Vt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function zt(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:"";return String(t).replace(s["o"],"")},Je=function(t,e){return t?{innerHTML:t}:e?{textContent:e}:{}};function qe(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Ke(t){for(var e=1;e-1&&(e=e.slice(0,n).reverse(),Object(A["d"])(e[0]))},focusNext:function(t){var e=this.getItems(),n=e.indexOf(t.target);n>-1&&(e=e.slice(n+1),Object(A["d"])(e[0]))},focusLast:function(){var t=this.getItems().reverse();Object(A["d"])(t[0])},onFocusin:function(t){var e=this.$el;t.target!==e||Object(A["f"])(e,t.relatedTarget)||(Object(le["f"])(t),this.focusFirst(t))},onKeydown:function(t){var e=t.keyCode,n=t.shiftKey;e===ce||e===re?(Object(le["f"])(t),n?this.focusFirst(t):this.focusPrev(t)):e!==Zt&&e!==oe||(Object(le["f"])(t),n?this.focusLast(t):this.focusNext(t))}},render:function(t){var e=this.keyNav;return t("div",{staticClass:"btn-toolbar",class:{"justify-content-between":this.justify},attrs:{role:"toolbar",tabindex:e?"0":null},on:e?{focusin:this.onFocusin,keydown:this.onKeydown}:{}},[this.normalizeSlot()])}}),gn=L({components:{BButtonToolbar:_n,BBtnToolbar:_n}}),yn="gregory",On="long",jn="narrow",wn="short",Mn="2-digit",Ln="numeric";function kn(t,e){return xn(t)||Yn(t,e)||Dn(t,e)||Tn()}function Tn(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function Dn(t,e){if(t){if("string"===typeof t)return Sn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sn(t,e):void 0}}function Sn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&void 0!==arguments[1]?arguments[1]:yn;t=Object(ue["b"])(t).filter(c["a"]);var n=new Intl.DateTimeFormat(t,{calendar:e});return n.resolvedOptions().locale},Bn=function(t,e){var n=new Intl.DateTimeFormat(t,e);return n.format},Rn=function(t,e){return Fn(t)===Fn(e)},Nn=function(t){return t=An(t),t.setDate(1),t},Vn=function(t){return t=An(t),t.setMonth(t.getMonth()+1),t.setDate(0),t},zn=function(t,e){t=An(t);var n=t.getMonth();return t.setFullYear(t.getFullYear()+e),t.getMonth()!==n&&t.setDate(0),t},Wn=function(t){t=An(t);var e=t.getMonth();return t.setMonth(e-1),t.getMonth()===e&&t.setDate(0),t},Un=function(t){t=An(t);var e=t.getMonth();return t.setMonth(e+1),t.getMonth()===(e+2)%12&&t.setDate(0),t},Gn=function(t){return zn(t,-1)},Jn=function(t){return zn(t,1)},qn=function(t){return zn(t,-10)},Kn=function(t){return zn(t,10)},Xn=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return t=$n(t),e=$n(e)||t,n=$n(n)||t,t?tn?n:t:null},Zn=["ar","az","ckb","fa","he","ks","lrc","mzn","ps","sd","te","ug","ur","yi"].map((function(t){return t.toLowerCase()})),Qn=function(t){var e=Object(mt["g"])(t).toLowerCase().replace(s["A"],"").split("-"),n=e.slice(0,2).join("-"),r=e[0];return Object(ue["a"])(Zn,n)||Object(ue["a"])(Zn,r)},tr=n("3c21"),er=n("493b"),nr=n("90ef");function rr(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ir(t){for(var e=1;ee}},dateDisabled:function(){var t=this,e=this.dateOutOfRange;return function(n){n=$n(n);var r=Fn(n);return!(!e(n)&&!t.computedDateDisabledFn(r,n))}},formatDateString:function(){return Bn(this.calendarLocale,ir(ir({year:Ln,month:Mn,day:Mn},this.dateFormatOptions),{},{hour:void 0,minute:void 0,second:void 0,calendar:yn}))},formatYearMonth:function(){return Bn(this.calendarLocale,{year:Ln,month:On,calendar:yn})},formatWeekdayName:function(){return Bn(this.calendarLocale,{weekday:On,calendar:yn})},formatWeekdayNameShort:function(){return Bn(this.calendarLocale,{weekday:this.weekdayHeaderFormat||wn,calendar:yn})},formatDay:function(){var t=new Intl.NumberFormat([this.computedLocale],{style:"decimal",minimumIntegerDigits:1,minimumFractionDigits:0,maximumFractionDigits:0,notation:"standard"});return function(e){return t.format(e.getDate())}},prevDecadeDisabled:function(){var t=this.computedMin;return this.disabled||t&&Vn(qn(this.activeDate))t},nextYearDisabled:function(){var t=this.computedMax;return this.disabled||t&&Nn(Jn(this.activeDate))>t},nextDecadeDisabled:function(){var t=this.computedMax;return this.disabled||t&&Nn(Kn(this.activeDate))>t},calendar:function(){for(var t=[],e=this.calendarFirstDay,n=e.getFullYear(),r=e.getMonth(),i=this.calendarDaysInMonth,a=e.getDay(),o=(this.computedWeekStarts>a?7:0)-this.computedWeekStarts,s=0-o-a,c=0;c<6&&s0);n!==this.visible&&(this.visible=n,this.callback(n),this.once&&this.visible&&(this.doneOnce=!0,this.stop()))}},{key:"stop",value:function(){this.observer&&this.observer.disconnect(),this.observer=null}}]),t}(),ri=function(t){var e=t[ei];e&&e.stop&&e.stop(),delete t[ei]},ii=function(t,e,n){var r=e.value,i=e.modifiers,a={margin:"0px",once:!1,callback:r};Object(f["h"])(i).forEach((function(t){s["h"].test(t)?a.margin="".concat(t,"px"):"once"===t.toLowerCase()&&(a.once=!0)})),ri(t),t[ei]=new ni(t,a,n),t[ei]._prevModifiers=Object(f["b"])(i)},ai=function(t,e,n){var r=e.value,i=e.oldValue,a=e.modifiers;a=Object(f["b"])(a),!t||r===i&&t[ei]&&Object(tr["a"])(a,t[ei]._prevModifiers)||ii(t,{value:r,modifiers:a},n)},oi=function(t){ri(t)},si={bind:ii,componentUpdated:ai,unbind:oi};function ci(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ui(t){for(var e=1;e0||i.removedNodes.length>0))&&(n=!0)}n&&e()}));return r.observe(t,Di({childList:!0,subtree:!0},n)),r};function Pi(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Ci(t){for(var e=1;e0),touchStartX:0,touchDeltaX:0}},computed:{numSlides:function(){return this.slides.length}},watch:(Yi={},Ei(Yi,Fi,(function(t,e){t!==e&&this.setSlide(Object(F["c"])(t,0))})),Ei(Yi,"interval",(function(t,e){t!==e&&(t?(this.pause(!0),this.start(!1)):this.pause(!1))})),Ei(Yi,"isPaused",(function(t,e){t!==e&&this.$emit(t?C["G"]:C["ab"])})),Ei(Yi,"index",(function(t,e){t===e||this.isSliding||this.doSlide(t,e)})),Yi),created:function(){this.$_interval=null,this.$_animationTimeout=null,this.$_touchTimeout=null,this.$_observer=null,this.isPaused=!(Object(F["c"])(this.interval,0)>0)},mounted:function(){this.transitionEndEvent=Ui(this.$el)||null,this.updateSlides(),this.setObserver(!0)},beforeDestroy:function(){this.clearInterval(),this.clearAnimationTimeout(),this.clearTouchTimeout(),this.setObserver(!1)},methods:{clearInterval:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(){clearInterval(this.$_interval),this.$_interval=null})),clearAnimationTimeout:function(){clearTimeout(this.$_animationTimeout),this.$_animationTimeout=null},clearTouchTimeout:function(){clearTimeout(this.$_touchTimeout),this.$_touchTimeout=null},setObserver:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.$_observer&&this.$_observer.disconnect(),this.$_observer=null,t&&(this.$_observer=xi(this.$refs.inner,this.updateSlides.bind(this),{subtree:!1,childList:!0,attributes:!0,attributeFilter:["id"]}))},setSlide:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!(i["i"]&&document.visibilityState&&document.hidden)){var r=this.noWrap,a=this.numSlides;t=Object(nt["c"])(t),0!==a&&(this.isSliding?this.$once(C["V"],(function(){Object(A["D"])((function(){return e.setSlide(t,n)}))})):(this.direction=n,this.index=t>=a?r?a-1:0:t<0?r?0:a-1:t,r&&this.index!==t&&this.index!==this[Fi]&&this.$emit(Ii,this.index)))}},prev:function(){this.setSlide(this.index-1,"prev")},next:function(){this.setSlide(this.index+1,"next")},pause:function(t){t||(this.isPaused=!0),this.clearInterval()},start:function(t){t||(this.isPaused=!1),this.clearInterval(),this.interval&&this.numSlides>1&&(this.$_interval=setInterval(this.next,Object(nt["d"])(1e3,this.interval)))},restart:function(){this.$el.contains(Object(A["g"])())||this.start()},doSlide:function(t,e){var n=this,r=Boolean(this.interval),i=this.calcDirection(this.direction,e,t),a=i.overlayClass,o=i.dirClass,s=this.slides[e],c=this.slides[t];if(s&&c){if(this.isSliding=!0,r&&this.pause(!1),this.$emit(C["W"],t),this.$emit(Ii,this.index),this.noAnimation)Object(A["b"])(c,"active"),Object(A["A"])(s,"active"),this.isSliding=!1,this.$nextTick((function(){return n.$emit(C["V"],t)}));else{Object(A["b"])(c,a),Object(A["y"])(c),Object(A["b"])(s,o),Object(A["b"])(c,o);var u=!1,l=function e(){if(!u){if(u=!0,n.transitionEndEvent){var r=n.transitionEndEvent.split(/\s+/);r.forEach((function(t){return Object(le["a"])(c,t,e,C["cb"])}))}n.clearAnimationTimeout(),Object(A["A"])(c,o),Object(A["A"])(c,a),Object(A["b"])(c,"active"),Object(A["A"])(s,"active"),Object(A["A"])(s,o),Object(A["A"])(s,a),Object(A["G"])(s,"aria-current","false"),Object(A["G"])(c,"aria-current","true"),Object(A["G"])(s,"aria-hidden","true"),Object(A["G"])(c,"aria-hidden","false"),n.isSliding=!1,n.direction=null,n.$nextTick((function(){return n.$emit(C["V"],t)}))}};if(this.transitionEndEvent){var d=this.transitionEndEvent.split(/\s+/);d.forEach((function(t){return Object(le["b"])(c,t,l,C["cb"])}))}this.$_animationTimeout=setTimeout(l,Ri)}r&&this.start(!1)}},updateSlides:function(){this.pause(!0),this.slides=Object(A["F"])(".carousel-item",this.$refs.inner);var t=this.slides.length,e=Object(nt["d"])(0,Object(nt["e"])(Object(nt["c"])(this.index),t-1));this.slides.forEach((function(n,r){var i=r+1;r===e?(Object(A["b"])(n,"active"),Object(A["G"])(n,"aria-current","true")):(Object(A["A"])(n,"active"),Object(A["G"])(n,"aria-current","false")),Object(A["G"])(n,"aria-posinset",String(i)),Object(A["G"])(n,"aria-setsize",String(t))})),this.setSlide(e),this.start(this.isPaused)},calcDirection:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return t?Bi[t]:n>e?Bi.next:Bi.prev},handleClick:function(t,e){var n=t.keyCode;"click"!==t.type&&n!==se&&n!==te||(Object(le["f"])(t),e())},handleSwipe:function(){var t=Object(nt["a"])(this.touchDeltaX);if(!(t<=Vi)){var e=t/this.touchDeltaX;this.touchDeltaX=0,e>0?this.prev():e<0&&this.next()}},touchStart:function(t){i["e"]&&zi[t.pointerType.toUpperCase()]?this.touchStartX=t.clientX:i["e"]||(this.touchStartX=t.touches[0].clientX)},touchMove:function(t){t.touches&&t.touches.length>1?this.touchDeltaX=0:this.touchDeltaX=t.touches[0].clientX-this.touchStartX},touchEnd:function(t){i["e"]&&zi[t.pointerType.toUpperCase()]&&(this.touchDeltaX=t.clientX-this.touchStartX),this.handleSwipe(),this.pause(!1),this.clearTouchTimeout(),this.$_touchTimeout=setTimeout(this.start,Ni+Object(nt["d"])(1e3,this.interval))}},render:function(t){var e=this,n=this.indicators,r=this.background,a=this.noAnimation,o=this.noHoverPause,s=this.noTouch,c=this.index,u=this.isSliding,l=this.pause,d=this.restart,f=this.touchStart,h=this.touchEnd,p=this.safeId("__BV_inner_"),m=t("div",{staticClass:"carousel-inner",attrs:{id:p,role:"list"},ref:"inner"},[this.normalizeSlot()]),b=t();if(this.controls){var v=function(n,r,i){var a=function(t){u?Object(le["f"])(t,{propagation:!1}):e.handleClick(t,i)};return t("a",{staticClass:"carousel-control-".concat(n),attrs:{href:"#",role:"button","aria-controls":p,"aria-disabled":u?"true":null},on:{click:a,keydown:a}},[t("span",{staticClass:"carousel-control-".concat(n,"-icon"),attrs:{"aria-hidden":"true"}}),t("span",{class:"sr-only"},[r])])};b=[v("prev",this.labelPrev,this.prev),v("next",this.labelNext,this.next)]}var _=t("ol",{staticClass:"carousel-indicators",directives:[{name:"show",value:n}],attrs:{id:this.safeId("__BV_indicators_"),"aria-hidden":n?"false":"true","aria-label":this.labelIndicators,"aria-owns":p}},this.slides.map((function(r,i){var a=function(t){e.handleClick(t,(function(){e.setSlide(i)}))};return t("li",{class:{active:i===c},attrs:{role:"button",id:e.safeId("__BV_indicator_".concat(i+1,"_")),tabindex:n?"0":"-1","aria-current":i===c?"true":"false","aria-label":"".concat(e.labelGotoSlide," ").concat(i+1),"aria-describedby":r.id||null,"aria-controls":p},on:{click:a,keydown:a},key:"slide_".concat(i)})}))),g={mouseenter:o?ki:l,mouseleave:o?ki:d,focusin:l,focusout:d,keydown:function(t){if(!/input|textarea/i.test(t.target.tagName)){var n=t.keyCode;n!==re&&n!==oe||(Object(le["f"])(t),e[n===re?"prev":"next"]())}}};return i["g"]&&!s&&(i["e"]?(g["&pointerdown"]=f,g["&pointerup"]=h):(g["&touchstart"]=f,g["&touchmove"]=this.touchMove,g["&touchend"]=h)),t("div",{staticClass:"carousel",class:{slide:!a,"carousel-fade":!a&&this.fade,"pointer-event":i["g"]&&i["e"]&&!s},style:{background:r},attrs:{role:"region",id:this.safeId(),"aria-busy":u?"true":"false"},on:g},[m,b,_])}});function qi(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Ki(t){for(var e=1;e0?(Object(A["G"])(t,$a,r.join(" ")),Object(A["H"])(t,Ra,"none")):(Object(A["z"])(t,$a),Object(A["C"])(t,Ra)),Object(A["D"])((function(){Ka(t,n)})),Object(tr["a"])(r,t[Ea])||(t[Ea]=r,r.forEach((function(t){n.context.$root.$emit(Wa,t)})))}},no={bind:function(t,e,n){t[Ca]=!1,t[Ea]=[],Za(t,n),eo(t,e,n)},componentUpdated:eo,updated:eo,unbind:function(t,e,n){qa(t),Xa(t,n),to(t,xa),to(t,Pa),to(t,Ca),to(t,Ea),Object(A["A"])(t,Da),Object(A["A"])(t,Sa),Object(A["z"])(t,Fa),Object(A["z"])(t,$a),Object(A["z"])(t,Ia),Object(A["C"])(t,Ra)}},ro=L({directives:{VBToggle:no}}),io=L({components:{BCollapse:Ta},plugins:{VBTogglePlugin:ro}}),ao=n("f0bd"),oo="top-start",so="top-end",co="bottom-start",uo="bottom-end",lo="right-start",fo="left-start",ho=n("ca88"),po=n("6d40"),mo=r["default"].extend({data:function(){return{listenForClickOut:!1}},watch:{listenForClickOut:function(t,e){t!==e&&(Object(le["a"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,C["cb"]),t&&Object(le["b"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,C["cb"]))}},beforeCreate:function(){this.clickOutElement=null,this.clickOutEventName=null},mounted:function(){this.clickOutElement||(this.clickOutElement=document),this.clickOutEventName||(this.clickOutEventName="click"),this.listenForClickOut&&Object(le["b"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,C["cb"])},beforeDestroy:function(){Object(le["a"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,C["cb"])},methods:{isClickOut:function(t){return!Object(A["f"])(this.$el,t.target)},_clickOutHandler:function(t){this.clickOutHandler&&this.isClickOut(t)&&this.clickOutHandler(t)}}}),bo=r["default"].extend({data:function(){return{listenForFocusIn:!1}},watch:{listenForFocusIn:function(t,e){t!==e&&(Object(le["a"])(this.focusInElement,"focusin",this._focusInHandler,C["cb"]),t&&Object(le["b"])(this.focusInElement,"focusin",this._focusInHandler,C["cb"]))}},beforeCreate:function(){this.focusInElement=null},mounted:function(){this.focusInElement||(this.focusInElement=document),this.listenForFocusIn&&Object(le["b"])(this.focusInElement,"focusin",this._focusInHandler,C["cb"])},beforeDestroy:function(){Object(le["a"])(this.focusInElement,"focusin",this._focusInHandler,C["cb"])},methods:{_focusInHandler:function(t){this.focusInHandler&&this.focusInHandler(t)}}});function vo(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function _o(t){for(var e=1;e0&&void 0!==arguments[0]&&arguments[0];this.disabled||(this.visible=!1,t&&this.$once(C["v"],this.focusToggler))},toggle:function(t){t=t||{};var e=t,n=e.type,r=e.keyCode;("click"===n||"keydown"===n&&-1!==[te,se,Zt].indexOf(r))&&(this.disabled?this.visible=!1:(this.$emit(C["Z"],t),Object(le["f"])(t),this.visible?this.hide(!0):this.show()))},onMousedown:function(t){Object(le["f"])(t,{propagation:!1})},onKeydown:function(t){var e=t.keyCode;e===ee?this.onEsc(t):e===Zt?this.focusNext(t,!1):e===ce&&this.focusNext(t,!0)},onEsc:function(t){this.visible&&(this.visible=!1,Object(le["f"])(t),this.$once(C["v"],this.focusToggler))},onSplitClick:function(t){this.disabled?this.visible=!1:this.$emit(C["f"],t)},hideHandler:function(t){var e=this,n=t.target;!this.visible||Object(A["f"])(this.$refs.menu,n)||Object(A["f"])(this.toggler,n)||(this.clearHideTimeout(),this.$_hideTimeout=setTimeout((function(){return e.hide()}),this.inNavbar?300:0))},clickOutHandler:function(t){this.hideHandler(t)},focusInHandler:function(t){this.hideHandler(t)},focusNext:function(t,e){var n=this,r=t.target;!this.visible||t&&Object(A["e"])(jo,r)||(Object(le["f"])(t),this.$nextTick((function(){var t=n.getItems();if(!(t.length<1)){var i=t.indexOf(r);e&&i>0?i--:!e&&i1&&void 0!==arguments[1]?arguments[1]:null;if(Object(u["k"])(t)){var n=d(t,this.valueField),r=d(t,this.textField);return{value:Object(u["o"])(n)?e||r:n,text:Ge(String(Object(u["o"])(r)?e:r)),html:d(t,this.htmlField),disabled:Boolean(d(t,this.disabledField))}}return{value:e||t,text:Ge(String(t)),disabled:!1}},normalizeOptions:function(t){var e=this;return Object(u["a"])(t)?t.map((function(t){return e.normalizeOption(t)})):Object(u["k"])(t)?(Object(h["a"])(ys,this.$options.name),Object(f["h"])(t).map((function(n){return e.normalizeOption(t[n]||{},n)}))):[]}}});function ws(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Ms(t){for(var e=1;e-1:Object(tr["a"])(e,t)},isRadio:function(){return!1}},watch:uc({},lc,(function(t,e){Object(tr["a"])(t,e)||this.setIndeterminate(t)})),mounted:function(){this.setIndeterminate(this[lc])},methods:{computedLocalCheckedWatcher:function(t,e){if(!Object(tr["a"])(t,e)){this.$emit(ic,t);var n=this.$refs.input;n&&this.$emit(dc,n.indeterminate)}},handleChange:function(t){var e=this,n=t.target,r=n.checked,i=n.indeterminate,a=this.value,o=this.uncheckedValue,s=this.computedLocalChecked;if(Object(u["a"])(s)){var c=Bs(s,a);r&&c<0?s=s.concat(a):!r&&c>-1&&(s=s.slice(0,c).concat(s.slice(c+1)))}else s=r?a:o;this.computedLocalChecked=s,this.$nextTick((function(){e.$emit(C["d"],s),e.isGroup&&e.bvGroup.$emit(C["d"],s),e.$emit(dc,i)}))},setIndeterminate:function(t){Object(u["a"])(this.computedLocalChecked)&&(t=!1);var e=this.$refs.input;e&&(e.indeterminate=t,this.$emit(dc,t))}}});function pc(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function mc(t){for(var e=1;e0&&(c=[t("div",{staticClass:"b-form-date-controls d-flex flex-wrap",class:{"justify-content-between":c.length>1,"justify-content-end":c.length<2}},c)]);var p=t(fr,{staticClass:"b-form-date-calendar w-100",props:Zc(Zc({},Object(I["e"])(ou,a)),{},{hidden:!this.isVisible,value:e,valueAsDate:!1,width:this.calendarWidth}),on:{selected:this.onSelected,input:this.onInput,context:this.onContext},scopedSlots:Object(f["k"])(o,["nav-prev-decade","nav-prev-year","nav-prev-month","nav-this-month","nav-next-month","nav-next-year","nav-next-decade"]),key:"calendar",ref:"calendar"},c);return t(Kc,{staticClass:"b-form-datepicker",props:Zc(Zc({},Object(I["e"])(su,a)),{},{formattedValue:e?this.formattedValue:"",id:this.safeId(),lang:this.computedLang,menuClass:[{"bg-dark":i,"text-light":i},this.menuClass],placeholder:s,rtl:this.isRTL,value:e}),on:{show:this.onShow,shown:this.onShown,hidden:this.onHidden},scopedSlots:Qc({},H["f"],o[H["f"]]||this.defaultButtonFn),ref:"control"},[p])}}),lu=L({components:{BFormDatepicker:uu,BDatepicker:uu}});function du(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function fu(t){for(var e=1;e1&&void 0!==arguments[1])||arguments[1];return Promise.all(Object(ue["f"])(t).filter((function(t){return"file"===t.kind})).map((function(t){var n=Ou(t);if(n){if(n.isDirectory&&e)return wu(n.createReader(),"".concat(n.name,"/"));if(n.isFile)return new Promise((function(t){n.file((function(e){e.$path="",t(e)}))}))}return null})).filter(c["a"]))},wu=function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return new Promise((function(r){var i=[],a=function a(){e.readEntries((function(e){0===e.length?r(Promise.all(i).then((function(t){return Object(ue["d"])(t)}))):(i.push(Promise.all(e.map((function(e){if(e){if(e.isDirectory)return t(e.createReader(),"".concat(n).concat(e.name,"/"));if(e.isFile)return new Promise((function(t){e.file((function(e){e.$path="".concat(n).concat(e.name),t(e)}))}))}return null})).filter(c["a"]))),a())}))};a()}))},Mu=Object(I["d"])(Object(f["m"])(fu(fu(fu(fu(fu(fu(fu({},nr["b"]),bu),Ns),zs),Js),Us),{},{accept:Object(I["c"])(E["u"],""),browseText:Object(I["c"])(E["u"],"Browse"),capture:Object(I["c"])(E["g"],!1),directory:Object(I["c"])(E["g"],!1),dropPlaceholder:Object(I["c"])(E["u"],"Drop files here"),fileNameFormatter:Object(I["c"])(E["l"]),multiple:Object(I["c"])(E["g"],!1),noDrop:Object(I["c"])(E["g"],!1),noDropPlaceholder:Object(I["c"])(E["u"],"Not allowed"),noTraverse:Object(I["c"])(E["g"],!1),placeholder:Object(I["c"])(E["u"],"No file chosen")})),P["S"]),Lu=r["default"].extend({name:P["S"],mixins:[er["a"],nr["a"],mu,B["a"],Vs,qs,Ws,B["a"]],inheritAttrs:!1,props:Mu,data:function(){return{files:[],dragging:!1,dropAllowed:!this.noDrop,hasFocus:!1}},computed:{computedAccept:function(){var t=this.accept;return t=(t||"").trim().split(/[,\s]+/).filter(c["a"]),0===t.length?null:t.map((function(t){var e="name",n="^",r="$";s["k"].test(t)?n="":(e="type",s["y"].test(t)&&(r=".+$",t=t.slice(0,-1))),t=Object(mt["a"])(t);var i=new RegExp("".concat(n).concat(t).concat(r));return{rx:i,prop:e}}))},computedCapture:function(){var t=this.capture;return!0===t||""===t||(t||null)},computedAttrs:function(){var t=this.name,e=this.disabled,n=this.required,r=this.form,i=this.computedCapture,a=this.accept,o=this.multiple,s=this.directory;return fu(fu({},this.bvAttrs),{},{type:"file",id:this.safeId(),name:t,disabled:e,required:n,form:r||null,capture:i,accept:a||null,multiple:o,directory:s,webkitdirectory:s,"aria-required":n?"true":null})},computedFileNameFormatter:function(){var t=this.fileNameFormatter;return Object(I["b"])(t)?t:this.defaultFileNameFormatter},clonedFiles:function(){return Object(o["a"])(this.files)},flattenedFiles:function(){return Object(ue["e"])(this.files)},fileNames:function(){return this.flattenedFiles.map((function(t){return t.name}))},labelContent:function(){if(this.dragging&&!this.noDrop)return this.normalizeSlot(H["l"],{allowed:this.dropAllowed})||(this.dropAllowed?this.dropPlaceholder:this.$createElement("span",{staticClass:"text-danger"},this.noDropPlaceholder));if(0===this.files.length)return this.normalizeSlot(H["X"])||this.placeholder;var t=this.flattenedFiles,e=this.clonedFiles,n=this.fileNames,r=this.computedFileNameFormatter;return this.hasNormalizedSlot(H["p"])?this.normalizeSlot(H["p"],{files:t,filesTraversed:e,names:n}):r(t,e,n)}},watch:(tu={},hu(tu,vu,(function(t){(!t||Object(u["a"])(t)&&0===t.length)&&this.reset()})),hu(tu,"files",(function(t,e){if(!Object(tr["a"])(t,e)){var n=this.multiple,r=this.noTraverse,i=!n||r?Object(ue["e"])(t):t;this.$emit(_u,n?i:i[0]||null)}})),tu),created:function(){this.$_form=null},mounted:function(){var t=Object(A["e"])("form",this.$el);t&&(Object(le["b"])(t,"reset",this.reset,C["db"]),this.$_form=t)},beforeDestroy:function(){var t=this.$_form;t&&Object(le["a"])(t,"reset",this.reset,C["db"])},methods:{isFileValid:function(t){if(!t)return!1;var e=this.computedAccept;return!e||e.some((function(e){return e.rx.test(t[e.prop])}))},isFilesArrayValid:function(t){var e=this;return Object(u["a"])(t)?t.every((function(t){return e.isFileValid(t)})):this.isFileValid(t)},defaultFileNameFormatter:function(t,e,n){return n.join(", ")},setFiles:function(t){this.dropAllowed=!this.noDrop,this.dragging=!1,this.files=this.multiple?this.directory?t:Object(ue["e"])(t):Object(ue["e"])(t).slice(0,1)},setInputFiles:function(t){try{var e=new ClipboardEvent("").clipboardData||new DataTransfer;Object(ue["e"])(Object(o["a"])(t)).forEach((function(t){delete t.$path,e.items.add(t)})),this.$refs.input.files=e.files}catch(n){}},reset:function(){try{var t=this.$refs.input;t.value="",t.type="",t.type="file"}catch(e){}this.files=[]},handleFiles:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(e){var n=t.filter(this.isFilesArrayValid);n.length>0&&(this.setFiles(n),this.setInputFiles(n))}else this.setFiles(t)},focusHandler:function(t){this.plain||"focusout"===t.type?this.hasFocus=!1:this.hasFocus=!0},onChange:function(t){var e=this,n=t.type,r=t.target,a=t.dataTransfer,o=void 0===a?{}:a,s="drop"===n;this.$emit(C["d"],t);var c=Object(ue["f"])(o.items||[]);if(i["f"]&&c.length>0&&!Object(u["g"])(Ou(c[0])))ju(c,this.directory).then((function(t){return e.handleFiles(t,s)}));else{var l=Object(ue["f"])(r.files||o.files||[]).map((function(t){return t.$path=t.webkitRelativePath||"",t}));this.handleFiles(l,s)}},onDragenter:function(t){Object(le["f"])(t),this.dragging=!0;var e=t.dataTransfer,n=void 0===e?{}:e;if(this.noDrop||this.disabled||!this.dropAllowed)return n.dropEffect="none",void(this.dropAllowed=!1);n.dropEffect="copy"},onDragover:function(t){Object(le["f"])(t),this.dragging=!0;var e=t.dataTransfer,n=void 0===e?{}:e;if(this.noDrop||this.disabled||!this.dropAllowed)return n.dropEffect="none",void(this.dropAllowed=!1);n.dropEffect="copy"},onDragleave:function(t){var e=this;Object(le["f"])(t),this.$nextTick((function(){e.dragging=!1,e.dropAllowed=!e.noDrop}))},onDrop:function(t){var e=this;Object(le["f"])(t),this.dragging=!1,this.noDrop||this.disabled||!this.dropAllowed?this.$nextTick((function(){e.dropAllowed=!e.noDrop})):this.onChange(t)}},render:function(t){var e=this.custom,n=this.plain,r=this.size,i=this.dragging,a=this.stateClass,o=this.bvAttrs,s=t("input",{class:[{"form-control-file":n,"custom-file-input":e,focus:e&&this.hasFocus},a],style:e?{zIndex:-5}:{},attrs:this.computedAttrs,on:{change:this.onChange,focusin:this.focusHandler,focusout:this.focusHandler,reset:this.reset},ref:"input"});if(n)return s;var c=t("label",{staticClass:"custom-file-label",class:{dragging:i},attrs:{for:this.safeId(),"data-browse":this.browseText||null}},[t("span",{staticClass:"d-block form-file-text",style:{pointerEvents:"none"}},[this.labelContent])]);return t("div",{staticClass:"custom-file b-form-file",class:[hu({},"b-custom-control-".concat(r),r),a,o.class],style:o.style,attrs:{id:this.safeId("_BV_file_outer_")},on:{dragenter:this.onDragenter,dragover:this.onDragover,dragleave:this.onDragleave,drop:this.onDrop}},[s,c])}}),ku=L({components:{BFormFile:Lu,BFile:Lu}}),Tu=n("228e"),Du=function(t){return"\\"+t},Su=function(t){t=Object(mt["g"])(t);var e=t.length,n=t.charCodeAt(0);return t.split("").reduce((function(r,i,a){var o=t.charCodeAt(a);return 0===o?r+"�":127===o||o>=1&&o<=31||0===a&&o>=48&&o<=57||1===a&&o>=48&&o<=57&&45===n?r+Du("".concat(o.toString(16)," ")):0===a&&45===o&&1===e?r+Du(i):o>=128||45===o||95===o||o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122?r+i:r+Du(i)}),"")},Yu=n("b508");function xu(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Pu(t){for(var e=1;e0||Object(f["h"])(this.labelColProps).length>0}},watch:{ariaDescribedby:function(t,e){t!==e&&this.updateAriaDescribedby(t,e)}},mounted:function(){var t=this;this.$nextTick((function(){t.updateAriaDescribedby(t.ariaDescribedby)}))},methods:{getAlignClasses:function(t,e){return Object(Tu["b"])().reduce((function(n,r){var i=t[Object(I["g"])(r,"".concat(e,"Align"))]||null;return i&&n.push(["text",r,i].filter(c["a"]).join("-")),n}),[])},getColProps:function(t,e){return Object(Tu["b"])().reduce((function(n,r){var i=t[Object(I["g"])(r,"".concat(e,"Cols"))];return i=""===i||(i||!1),Object(u["b"])(i)||"auto"===i||(i=Object(F["c"])(i,0),i=i>0&&i),i&&(n[r||(Object(u["b"])(i)?"col":"cols")]=i),n}),{})},updateAriaDescribedby:function(t,e){var n=this.labelFor;if(i["i"]&&n){var r=Object(A["E"])("#".concat(Su(n)),this.$refs.content);if(r){var a="aria-describedby",o=(t||"").split(s["x"]),u=(e||"").split(s["x"]),l=(Object(A["h"])(r,a)||"").split(s["x"]).filter((function(t){return!Object(ue["a"])(u,t)})).concat(o).filter((function(t,e,n){return n.indexOf(t)===e})).filter(c["a"]).join(" ").trim();l?Object(A["G"])(r,a,l):Object(A["z"])(r,a)}}},onLegendClick:function(t){if(!this.labelFor){var e=t.target,n=e?e.tagName:"";if(-1===Wu.indexOf(n)){var r=Object(A["F"])(zu,this.$refs.content).filter(A["u"]);1===r.length&&Object(A["d"])(r[0])}}}},render:function(t){var e=this.computedState,n=this.feedbackAriaLive,r=this.isHorizontal,i=this.labelFor,a=this.normalizeSlot,o=this.safeId,s=this.tooltip,u=o(),l=!i,d=t(),f=a(H["C"])||this.label,h=f?o("_BV_label_"):null;if(f||r){var p=this.labelSize,m=this.labelColProps,b=l?"legend":"label";this.labelSrOnly?(f&&(d=t(b,{class:"sr-only",attrs:{id:h,for:i||null}},[f])),d=t(r?Iu:"div",{props:r?m:{}},[d])):d=t(r?Iu:b,{on:l?{click:this.onLegendClick}:{},props:r?Ru(Ru({},m),{},{tag:b}):{},attrs:{id:h,for:i||null,tabindex:l?"-1":null},class:[l?"bv-no-focus-ring":"",r||l?"col-form-label":"",!r&&l?"pt-0":"",r||l?"":"d-block",p?"col-form-label-".concat(p):"",this.labelAlignClasses,this.labelClass]},[f])}var v=t(),_=a(H["B"])||this.invalidFeedback,g=_?o("_BV_feedback_invalid_"):null;_&&(v=t(Es,{props:{ariaLive:n,id:g,role:n?"alert":null,state:e,tooltip:s},attrs:{tabindex:_?"-1":null}},[_]));var y=t(),O=a(H["lb"])||this.validFeedback,j=O?o("_BV_feedback_valid_"):null;O&&(y=t(As,{props:{ariaLive:n,id:j,role:n?"alert":null,state:e,tooltip:s},attrs:{tabindex:O?"-1":null}},[O]));var w=t(),M=a(H["j"])||this.description,L=M?o("_BV_description_"):null;M&&(w=t(Ps,{attrs:{id:L,tabindex:"-1"}},[M]));var k=this.ariaDescribedby=[L,!1===e?g:null,!0===e?j:null].filter(c["a"]).join(" ")||null,T=t(r?Iu:"div",{props:r?this.contentColProps:{},ref:"content"},[a(H["i"],{ariaDescribedby:k,descriptionId:L,id:u,labelId:h})||t(),v,y,w]);return t(l?"fieldset":r?Fs:"div",{staticClass:"form-group",class:[{"was-validated":this.validated},this.stateClass],attrs:{id:u,disabled:l?this.disabled:null,role:l?null:"group","aria-invalid":this.computedAriaInvalid,"aria-labelledby":l&&r?h:null}},r&&l?[t(Fs,[d,T])]:[d,T])}},Ju=L({components:{BFormGroup:Gu,BFormFieldset:Gu}}),qu=r["default"].extend({computed:{selectionStart:{cache:!1,get:function(){return this.$refs.input.selectionStart},set:function(t){this.$refs.input.selectionStart=t}},selectionEnd:{cache:!1,get:function(){return this.$refs.input.selectionEnd},set:function(t){this.$refs.input.selectionEnd=t}},selectionDirection:{cache:!1,get:function(){return this.$refs.input.selectionDirection},set:function(t){this.$refs.input.selectionDirection=t}}},methods:{select:function(){var t;(t=this.$refs.input).select.apply(t,arguments)},setSelectionRange:function(){var t;(t=this.$refs.input).setSelectionRange.apply(t,arguments)},setRangeText:function(){var t;(t=this.$refs.input).setRangeText.apply(t,arguments)}}});function Ku(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Xu(t){for(var e=1;e2&&void 0!==arguments[2]&&arguments[2];return t=Object(mt["g"])(t),!this.hasFormatter||this.lazyFormatter&&!n||(t=this.formatter(t,e)),t},modifyValue:function(t){return t=Object(mt["g"])(t),this.trim&&(t=t.trim()),this.number&&(t=Object(F["b"])(t,t)),t},updateValue:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.lazy;if(!r||n){this.clearDebounce();var i=function(){if(t=e.modifyValue(t),t!==e.vModelValue)e.vModelValue=t,e.$emit(rl,t);else if(e.hasFormatter){var n=e.$refs.input;n&&t!==n.value&&(n.value=t)}},a=this.computedDebounce;a>0&&!r&&!n?this.$_inputDebounceTimer=setTimeout(i,a):i()}},onInput:function(t){if(!t.target.composing){var e=t.target.value,n=this.formatValue(e,t);!1===n||t.defaultPrevented?Object(le["f"])(t,{propagation:!1}):(this.localValue=n,this.updateValue(n),this.$emit(C["y"],n))}},onChange:function(t){var e=t.target.value,n=this.formatValue(e,t);!1===n||t.defaultPrevented?Object(le["f"])(t,{propagation:!1}):(this.localValue=n,this.updateValue(n,!0),this.$emit(C["d"],n))},onBlur:function(t){var e=t.target.value,n=this.formatValue(e,t,!0);!1!==n&&(this.localValue=Object(mt["g"])(this.modifyValue(n)),this.updateValue(n,!0)),this.$emit(C["b"],t)},focus:function(){this.disabled||Object(A["d"])(this.$el)},blur:function(){this.disabled||Object(A["c"])(this.$el)}}}),ol=r["default"].extend({computed:{validity:{cache:!1,get:function(){return this.$refs.input.validity}},validationMessage:{cache:!1,get:function(){return this.$refs.input.validationMessage}},willValidate:{cache:!1,get:function(){return this.$refs.input.willValidate}}},methods:{setCustomValidity:function(){var t;return(t=this.$refs.input).setCustomValidity.apply(t,arguments)},checkValidity:function(){var t;return(t=this.$refs.input).checkValidity.apply(t,arguments)},reportValidity:function(){var t;return(t=this.$refs.input).reportValidity.apply(t,arguments)}}}),sl=n("bc9a");function cl(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ul(t){for(var e=1;e=n?"full":e>=n-.5?"half":"empty",l={variant:a,disabled:o,readonly:s};return t("span",{staticClass:"b-rating-star",class:{focused:r&&e===n||!Object(F["c"])(e)&&n===c,"b-rating-star-empty":"empty"===u,"b-rating-star-half":"half"===u,"b-rating-star-full":"full"===u},attrs:{tabindex:o||s?null:"-1"},on:{click:this.onClick}},[t("span",{staticClass:"b-rating-icon"},[this.normalizeSlot(u,l)])])}}),Pl=Object(I["d"])(Object(f["m"])(yl(yl(yl(yl(yl({},nr["b"]),Ml),Object(f["j"])(Ns,["required","autofocus"])),Us),{},{color:Object(I["c"])(E["u"]),iconClear:Object(I["c"])(E["u"],"x"),iconEmpty:Object(I["c"])(E["u"],"star"),iconFull:Object(I["c"])(E["u"],"star-fill"),iconHalf:Object(I["c"])(E["u"],"star-half"),inline:Object(I["c"])(E["g"],!1),locale:Object(I["c"])(E["f"]),noBorder:Object(I["c"])(E["g"],!1),precision:Object(I["c"])(E["p"]),readonly:Object(I["c"])(E["g"],!1),showClear:Object(I["c"])(E["g"],!1),showValue:Object(I["c"])(E["g"],!1),showValueMax:Object(I["c"])(E["g"],!1),stars:Object(I["c"])(E["p"],Dl,(function(t){return Object(F["c"])(t)>=Tl})),variant:Object(I["c"])(E["u"])})),P["Y"]),Cl=r["default"].extend({name:P["Y"],components:{BIconStar:It,BIconStarHalf:Rt,BIconStarFill:Bt,BIconX:Nt},mixins:[nr["a"],wl,Gs],props:Pl,data:function(){var t=Object(F["b"])(this[Ll],null),e=Sl(this.stars);return{localValue:Object(u["g"])(t)?null:Yl(t,0,e),hasFocus:!1}},computed:{computedStars:function(){return Sl(this.stars)},computedRating:function(){var t=Object(F["b"])(this.localValue,0),e=Object(F["c"])(this.precision,3);return Yl(Object(F["b"])(t.toFixed(e)),0,this.computedStars)},computedLocale:function(){var t=Object(ue["b"])(this.locale).filter(c["a"]),e=new Intl.NumberFormat(t);return e.resolvedOptions().locale},isInteractive:function(){return!this.disabled&&!this.readonly},isRTL:function(){return Qn(this.computedLocale)},formattedRating:function(){var t=Object(F["c"])(this.precision),e=this.showValueMax,n=this.computedLocale,r={notation:"standard",minimumFractionDigits:isNaN(t)?0:t,maximumFractionDigits:isNaN(t)?3:t},i=this.computedStars.toLocaleString(n),a=this.localValue;return a=Object(u["g"])(a)?e?"-":"":a.toLocaleString(n,r),e?"".concat(a,"/").concat(i):a}},watch:(dl={},Ol(dl,Ll,(function(t,e){if(t!==e){var n=Object(F["b"])(t,null);this.localValue=Object(u["g"])(n)?null:Yl(n,0,this.computedStars)}})),Ol(dl,"localValue",(function(t,e){t!==e&&t!==(this.value||0)&&this.$emit(kl,t||null)})),Ol(dl,"disabled",(function(t){t&&(this.hasFocus=!1,this.blur())})),dl),methods:{focus:function(){this.disabled||Object(A["d"])(this.$el)},blur:function(){this.disabled||Object(A["c"])(this.$el)},onKeydown:function(t){var e=t.keyCode;if(this.isInteractive&&Object(ue["a"])([re,Zt,oe,ce],e)){Object(le["f"])(t,{propagation:!1});var n=Object(F["c"])(this.localValue,0),r=this.showClear?0:1,i=this.computedStars,a=this.isRTL?-1:1;e===re?this.localValue=Yl(n-a,r,i)||null:e===oe?this.localValue=Yl(n+a,r,i):e===Zt?this.localValue=Yl(n-1,r,i)||null:e===ce&&(this.localValue=Yl(n+1,r,i))}},onSelected:function(t){this.isInteractive&&(this.localValue=t)},onFocus:function(t){this.hasFocus=!!this.isInteractive&&"focus"===t.type},renderIcon:function(t){return this.$createElement(qt,{props:{icon:t,variant:this.disabled||this.color?null:this.variant||null}})},iconEmptyFn:function(){return this.renderIcon(this.iconEmpty)},iconHalfFn:function(){return this.renderIcon(this.iconHalf)},iconFullFn:function(){return this.renderIcon(this.iconFull)},iconClearFn:function(){return this.$createElement(qt,{props:{icon:this.iconClear}})}},render:function(t){var e=this,n=this.disabled,r=this.readonly,i=this.name,a=this.form,o=this.inline,s=this.variant,c=this.color,l=this.noBorder,d=this.hasFocus,f=this.computedRating,h=this.computedStars,p=this.formattedRating,m=this.showClear,b=this.isRTL,v=this.isInteractive,_=this.$scopedSlots,g=[];if(m&&!n&&!r){var y=t("span",{staticClass:"b-rating-icon"},[(_[H["v"]]||this.iconClearFn)()]);g.push(t("span",{staticClass:"b-rating-star b-rating-star-clear flex-grow-1",class:{focused:d&&0===f},attrs:{tabindex:v?"-1":null},on:{click:function(){return e.onSelected(null)}},key:"clear"},[y]))}for(var O=0;O1&&void 0!==arguments[1]?arguments[1]:null;if(Object(u["k"])(t)){var n=d(t,this.valueField),r=d(t,this.textField),i=d(t,this.optionsField,null);return Object(u["g"])(i)?{value:Object(u["o"])(n)?e||r:n,text:String(Object(u["o"])(r)?e:r),html:d(t,this.htmlField),disabled:Boolean(d(t,this.disabledField))}:{label:String(d(t,this.labelField)||r),options:this.normalizeOptions(i)}}return{value:e||t,text:String(t),disabled:!1}}}}),Wl=Object(I["d"])({disabled:Object(I["c"])(E["g"],!1),value:Object(I["c"])(E["a"],void 0,!0)},P["cb"]),Ul=r["default"].extend({name:P["cb"],functional:!0,props:Wl,render:function(t,e){var n=e.props,r=e.data,i=e.children,a=n.value,o=n.disabled;return t("option",Object(pt["a"])(r,{attrs:{disabled:o},domProps:{value:a}}),i)}});function Gl(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Jl(t){for(var e=1;e0?t:bd},computedInterval:function(){var t=Object(F["c"])(this.repeatInterval,0);return t>0?t:vd},computedThreshold:function(){return Object(nt["d"])(Object(F["c"])(this.repeatThreshold,_d),1)},computedStepMultiplier:function(){return Object(nt["d"])(Object(F["c"])(this.repeatStepMultiplier,gd),1)},computedPrecision:function(){var t=this.computedStep;return Object(nt["c"])(t)===t?0:(t.toString().split(".")[1]||"").length},computedMultiplier:function(){return Object(nt["f"])(10,this.computedPrecision||0)},valueAsFixed:function(){var t=this.localValue;return Object(u["g"])(t)?"":t.toFixed(this.computedPrecision)},computedLocale:function(){var t=Object(ue["b"])(this.locale).filter(c["a"]),e=new Intl.NumberFormat(t);return e.resolvedOptions().locale},computedRTL:function(){return Qn(this.computedLocale)},defaultFormatter:function(){var t=this.computedPrecision,e=new Intl.NumberFormat(this.computedLocale,{style:"decimal",useGrouping:!1,minimumIntegerDigits:1,minimumFractionDigits:t,maximumFractionDigits:t,notation:"standard"});return e.format},computedFormatter:function(){var t=this.formatterFn;return Object(I["b"])(t)?t:this.defaultFormatter},computedAttrs:function(){return od(od({},this.bvAttrs),{},{role:"group",lang:this.computedLocale,tabindex:this.disabled?null:"-1",title:this.ariaLabel})},computedSpinAttrs:function(){var t=this.spinId,e=this.localValue,n=this.computedRequired,r=this.disabled,i=this.state,a=this.computedFormatter,o=!Object(u["g"])(e);return od(od({dir:this.computedRTL?"rtl":"ltr"},this.bvAttrs),{},{id:t,role:"spinbutton",tabindex:r?null:"0","aria-live":"off","aria-label":this.ariaLabel||null,"aria-controls":this.ariaControls||null,"aria-invalid":!1===i||!o&&n?"true":null,"aria-required":n?"true":null,"aria-valuemin":Object(mt["g"])(this.computedMin),"aria-valuemax":Object(mt["g"])(this.computedMax),"aria-valuenow":o?e:null,"aria-valuetext":o?a(e):null})}},watch:(ed={},sd(ed,dd,(function(t){this.localValue=Object(F["b"])(t,null)})),sd(ed,"localValue",(function(t){this.$emit(fd,t)})),sd(ed,"disabled",(function(t){t&&this.clearRepeat()})),sd(ed,"readonly",(function(t){t&&this.clearRepeat()})),ed),created:function(){this.$_autoDelayTimer=null,this.$_autoRepeatTimer=null,this.$_keyIsDown=!1},beforeDestroy:function(){this.clearRepeat()},deactivated:function(){this.clearRepeat()},methods:{focus:function(){this.disabled||Object(A["d"])(this.$refs.spinner)},blur:function(){this.disabled||Object(A["c"])(this.$refs.spinner)},emitChange:function(){this.$emit(C["d"],this.localValue)},stepValue:function(t){var e=this.localValue;if(!this.disabled&&!Object(u["g"])(e)){var n=this.computedStep*t,r=this.computedMin,i=this.computedMax,a=this.computedMultiplier,o=this.wrap;e=Object(nt["g"])((e-r)/n)*n+r+n,e=Object(nt["g"])(e*a)/a,this.localValue=e>i?o?r:i:e0&&void 0!==arguments[0]?arguments[0]:1,e=this.localValue;Object(u["g"])(e)?this.localValue=this.computedMin:this.stepValue(1*t)},stepDown:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,e=this.localValue;Object(u["g"])(e)?this.localValue=this.wrap?this.computedMax:this.computedMin:this.stepValue(-1*t)},onKeydown:function(t){var e=t.keyCode,n=t.altKey,r=t.ctrlKey,i=t.metaKey;if(!(this.disabled||this.readonly||n||r||i)&&Object(ue["a"])(yd,e)){if(Object(le["f"])(t,{propagation:!1}),this.$_keyIsDown)return;this.resetTimers(),Object(ue["a"])([ce,Zt],e)?(this.$_keyIsDown=!0,e===ce?this.handleStepRepeat(t,this.stepUp):e===Zt&&this.handleStepRepeat(t,this.stepDown)):e===ae?this.stepUp(this.computedStepMultiplier):e===ie?this.stepDown(this.computedStepMultiplier):e===ne?this.localValue=this.computedMin:e===Qt&&(this.localValue=this.computedMax)}},onKeyup:function(t){var e=t.keyCode,n=t.altKey,r=t.ctrlKey,i=t.metaKey;this.disabled||this.readonly||n||r||i||Object(ue["a"])(yd,e)&&(Object(le["f"])(t,{propagation:!1}),this.resetTimers(),this.$_keyIsDown=!1,this.emitChange())},handleStepRepeat:function(t,e){var n=this,r=t||{},i=r.type,a=r.button;if(!this.disabled&&!this.readonly){if("mousedown"===i&&a)return;this.resetTimers(),e(1);var o=this.computedThreshold,s=this.computedStepMultiplier,c=this.computedDelay,u=this.computedInterval;this.$_autoDelayTimer=setTimeout((function(){var t=0;n.$_autoRepeatTimer=setInterval((function(){e(tt.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&n.indexOf(t)===e}))},Jd=function(t){return Object(u["n"])(t)?t:Object(u["d"])(t)&&t.target.value||""},qd=function(){return{all:[],valid:[],invalid:[],duplicate:[]}},Kd=Object(I["d"])(Object(f["m"])($d($d($d($d($d($d({},nr["b"]),Rd),Ns),Us),Js),{},{addButtonText:Object(I["c"])(E["u"],"Add"),addButtonVariant:Object(I["c"])(E["u"],"outline-secondary"),addOnChange:Object(I["c"])(E["g"],!1),duplicateTagText:Object(I["c"])(E["u"],"Duplicate tag(s)"),ignoreInputFocusSelector:Object(I["c"])(E["f"],Wd),inputAttrs:Object(I["c"])(E["q"],{}),inputClass:Object(I["c"])(E["e"]),inputId:Object(I["c"])(E["u"]),inputType:Object(I["c"])(E["u"],"text",(function(t){return Object(ue["a"])(zd,t)})),invalidTagText:Object(I["c"])(E["u"],"Invalid tag(s)"),limit:Object(I["c"])(E["n"]),limitTagsText:Object(I["c"])(E["u"],"Tag limit reached"),noAddOnEnter:Object(I["c"])(E["g"],!1),noOuterFocus:Object(I["c"])(E["g"],!1),noTagRemove:Object(I["c"])(E["g"],!1),placeholder:Object(I["c"])(E["u"],"Add tag..."),removeOnDelete:Object(I["c"])(E["g"],!1),separator:Object(I["c"])(E["f"]),tagClass:Object(I["c"])(E["e"]),tagPills:Object(I["c"])(E["g"],!1),tagRemoveLabel:Object(I["c"])(E["u"],"Remove tag"),tagRemovedLabel:Object(I["c"])(E["u"],"Tag removed"),tagValidator:Object(I["c"])(E["l"]),tagVariant:Object(I["c"])(E["u"],"secondary")})),P["gb"]),Xd=r["default"].extend({name:P["gb"],mixins:[nr["a"],Bd,Vs,Gs,qs,B["a"]],props:Kd,data:function(){return{hasFocus:!1,newTag:"",tags:[],removedTags:[],tagsState:qd()}},computed:{computedInputId:function(){return this.inputId||this.safeId("__input__")},computedInputType:function(){return Object(ue["a"])(zd,this.inputType)?this.inputType:"text"},computedInputAttrs:function(){var t=this.disabled,e=this.form;return $d($d({},this.inputAttrs),{},{id:this.computedInputId,value:this.newTag,disabled:t,form:e})},computedInputHandlers:function(){return{input:this.onInputInput,change:this.onInputChange,keydown:this.onInputKeydown,reset:this.reset}},computedSeparator:function(){return Object(ue["b"])(this.separator).filter(u["n"]).filter(c["a"]).join("")},computedSeparatorRegExp:function(){var t=this.computedSeparator;return t?new RegExp("[".concat(Ud(t),"]+")):null},computedJoiner:function(){var t=this.computedSeparator.charAt(0);return" "!==t?"".concat(t," "):t},computeIgnoreInputFocusSelector:function(){return Object(ue["b"])(this.ignoreInputFocusSelector).filter(c["a"]).join(",").trim()},disableAddButton:function(){var t=this,e=Object(mt["h"])(this.newTag);return""===e||!this.splitTags(e).some((function(e){return!Object(ue["a"])(t.tags,e)&&t.validateTag(e)}))},duplicateTags:function(){return this.tagsState.duplicate},hasDuplicateTags:function(){return this.duplicateTags.length>0},invalidTags:function(){return this.tagsState.invalid},hasInvalidTags:function(){return this.invalidTags.length>0},isLimitReached:function(){var t=this.limit;return Object(u["h"])(t)&&t>=0&&this.tags.length>=t}},watch:(Td={},Fd(Td,Nd,(function(t){this.tags=Gd(t)})),Fd(Td,"tags",(function(t,e){Object(tr["a"])(t,this[Nd])||this.$emit(Vd,t),Object(tr["a"])(t,e)||(t=Object(ue["b"])(t).filter(c["a"]),e=Object(ue["b"])(e).filter(c["a"]),this.removedTags=e.filter((function(e){return!Object(ue["a"])(t,e)})))})),Fd(Td,"tagsState",(function(t,e){Object(tr["a"])(t,e)||this.$emit(C["Y"],t.valid,t.invalid,t.duplicate)})),Td),created:function(){this.tags=Gd(this[Nd])},mounted:function(){var t=this,e=Object(A["e"])("form",this.$el);e&&(Object(le["b"])(e,"reset",this.reset,C["db"]),this.$on(C["eb"],(function(){Object(le["a"])(e,"reset",t.reset,C["db"])})))},methods:{addTag:function(t){if(t=Object(u["n"])(t)?t:this.newTag,!this.disabled&&""!==Object(mt["h"])(t)&&!this.isLimitReached){var e=this.parseTags(t);if(e.valid.length>0||0===e.all.length)if(Object(A["v"])(this.getInput(),"select"))this.newTag="";else{var n=[].concat(Yd(e.invalid),Yd(e.duplicate));this.newTag=e.all.filter((function(t){return Object(ue["a"])(n,t)})).join(this.computedJoiner).concat(n.length>0?this.computedJoiner.charAt(0):"")}e.valid.length>0&&(this.tags=Object(ue["b"])(this.tags,e.valid)),this.tagsState=e,this.focus()}},removeTag:function(t){var e=this;this.disabled||(this.tags=this.tags.filter((function(e){return e!==t})),this.$nextTick((function(){e.focus()})))},reset:function(){var t=this;this.newTag="",this.tags=[],this.$nextTick((function(){t.removedTags=[],t.tagsState=qd()}))},onInputInput:function(t){if(!(this.disabled||Object(u["d"])(t)&&t.target.composing)){var e=Jd(t),n=this.computedSeparatorRegExp;this.newTag!==e&&(this.newTag=e),e=Object(mt["i"])(e),n&&n.test(e.slice(-1))?this.addTag():this.tagsState=""===e?qd():this.parseTags(e)}},onInputChange:function(t){if(!this.disabled&&this.addOnChange){var e=Jd(t);this.newTag!==e&&(this.newTag=e),this.addTag()}},onInputKeydown:function(t){if(!this.disabled&&Object(u["d"])(t)){var e=t.keyCode,n=t.target.value||"";this.noAddOnEnter||e!==te?!this.removeOnDelete||e!==Kt&&e!==Xt||""!==n||(Object(le["f"])(t,{propagation:!1}),this.tags=this.tags.slice(0,-1)):(Object(le["f"])(t,{propagation:!1}),this.addTag())}},onClick:function(t){var e=this,n=this.computeIgnoreInputFocusSelector,r=t.target;this.disabled||Object(A["q"])(r)||n&&Object(A["e"])(n,r,!0)||this.$nextTick((function(){e.focus()}))},onFocusin:function(){this.hasFocus=!0},onFocusout:function(){this.hasFocus=!1},handleAutofocus:function(){var t=this;this.$nextTick((function(){Object(A["D"])((function(){t.autofocus&&!t.disabled&&t.focus()}))}))},focus:function(){this.disabled||Object(A["d"])(this.getInput())},blur:function(){this.disabled||Object(A["c"])(this.getInput())},splitTags:function(t){t=Object(mt["g"])(t);var e=this.computedSeparatorRegExp;return(e?t.split(e):[t]).map(mt["h"]).filter(c["a"])},parseTags:function(t){var e=this,n=this.splitTags(t),r={all:n,valid:[],invalid:[],duplicate:[]};return n.forEach((function(t){Object(ue["a"])(e.tags,t)||Object(ue["a"])(r.valid,t)?Object(ue["a"])(r.duplicate,t)||r.duplicate.push(t):e.validateTag(t)?r.valid.push(t):Object(ue["a"])(r.invalid,t)||r.invalid.push(t)})),r},validateTag:function(t){var e=this.tagValidator;return!Object(I["b"])(e)||e(t)},getInput:function(){return Object(A["E"])("#".concat(Su(this.computedInputId)),this.$el)},defaultRender:function(t){var e=t.addButtonText,n=t.addButtonVariant,r=t.addTag,i=t.disableAddButton,a=t.disabled,o=t.duplicateTagText,s=t.inputAttrs,u=t.inputClass,l=t.inputHandlers,d=t.inputType,f=t.invalidTagText,h=t.isDuplicate,p=t.isInvalid,m=t.isLimitReached,b=t.limitTagsText,v=t.noTagRemove,_=t.placeholder,g=t.removeTag,y=t.tagClass,O=t.tagPills,j=t.tagRemoveLabel,w=t.tagVariant,M=t.tags,L=this.$createElement,k=M.map((function(t){return t=Object(mt["g"])(t),L(Sd,{class:y,props:{disabled:a,noRemove:v,pill:O,removeLabel:j,tag:"li",title:t,variant:w},on:{remove:function(){return g(t)}},key:"tags_".concat(t)},t)})),T=f&&p?this.safeId("__invalid_feedback__"):null,D=o&&h?this.safeId("__duplicate_feedback__"):null,S=b&&m?this.safeId("__limit_feedback__"):null,Y=[s["aria-describedby"],T,D,S].filter(c["a"]).join(" "),x=L("input",{staticClass:"b-form-tags-input w-100 flex-grow-1 p-0 m-0 bg-transparent border-0",class:u,style:{outline:0,minWidth:"5rem"},attrs:$d($d({},s),{},{"aria-describedby":Y||null,type:d,placeholder:_||null}),domProps:{value:s.value},on:l,directives:[{name:"model",value:s.value}],ref:"input"}),P=L(Le,{staticClass:"b-form-tags-button py-0",class:{invisible:i},style:{fontSize:"90%"},props:{disabled:i||m,variant:n},on:{click:function(){return r()}},ref:"button"},[this.normalizeSlot(H["a"])||e]),C=this.safeId("__tag_list__"),E=L("li",{staticClass:"b-from-tags-field flex-grow-1",attrs:{role:"none","aria-live":"off","aria-controls":C},key:"tags_field"},[L("div",{staticClass:"d-flex",attrs:{role:"group"}},[x,P])]),A=L("ul",{staticClass:"b-form-tags-list list-unstyled mb-0 d-flex flex-wrap align-items-center",attrs:{id:C},key:"tags_list"},[k,E]),$=L();if(f||o||b){var F=this.computedJoiner,I=L();T&&(I=L(Es,{props:{id:T,forceShow:!0},key:"tags_invalid_feedback"},[this.invalidTagText,": ",this.invalidTags.join(F)]));var B=L();D&&(B=L(Ps,{props:{id:D},key:"tags_duplicate_feedback"},[this.duplicateTagText,": ",this.duplicateTags.join(F)]));var R=L();S&&(R=L(Ps,{props:{id:S},key:"tags_limit_feedback"},[b])),$=L("div",{attrs:{"aria-live":"polite","aria-atomic":"true"},key:"tags_feedback"},[I,B,R])}return[A,$]}},render:function(t){var e=this.name,n=this.disabled,r=this.required,i=this.form,a=this.tags,o=this.computedInputId,s=this.hasFocus,c=this.noOuterFocus,u=$d({tags:a.slice(),inputAttrs:this.computedInputAttrs,inputType:this.computedInputType,inputHandlers:this.computedInputHandlers,removeTag:this.removeTag,addTag:this.addTag,reset:this.reset,inputId:o,isInvalid:this.hasInvalidTags,invalidTags:this.invalidTags.slice(),isDuplicate:this.hasDuplicateTags,duplicateTags:this.duplicateTags.slice(),isLimitReached:this.isLimitReached,disableAddButton:this.disableAddButton},Object(f["k"])(this.$props,["addButtonText","addButtonVariant","disabled","duplicateTagText","form","inputClass","invalidTagText","limit","limitTagsText","noTagRemove","placeholder","required","separator","size","state","tagClass","tagPills","tagRemoveLabel","tagVariant"])),l=this.normalizeSlot(H["i"],u)||this.defaultRender(u),d=t("output",{staticClass:"sr-only",attrs:{id:this.safeId("__selected_tags__"),role:"status",for:o,"aria-live":s?"polite":"off","aria-atomic":"true","aria-relevant":"additions text"}},this.tags.join(", ")),h=t("div",{staticClass:"sr-only",attrs:{id:this.safeId("__removed_tags__"),role:"status","aria-live":s?"assertive":"off","aria-atomic":"true"}},this.removedTags.length>0?"(".concat(this.tagRemovedLabel,") ").concat(this.removedTags.join(", ")):""),p=t();if(e&&!n){var m=a.length>0;p=(m?a:[""]).map((function(n){return t("input",{class:{"sr-only":!m},attrs:{type:m?"hidden":"text",value:n,required:r,name:e,form:i},key:"tag_input_".concat(n)})}))}return t("div",{staticClass:"b-form-tags form-control h-auto",class:[{focus:s&&!c&&!n,disabled:n},this.sizeFormClass,this.stateClass],attrs:{id:this.safeId(),role:"group",tabindex:n||c?null:"-1","aria-describedby":this.safeId("__selected_tags__")},on:{click:this.onClick,focusin:this.onFocusin,focusout:this.onFocusout}},[d,h,l,p])}}),Zd=L({components:{BFormTags:Xd,BTags:Xd,BFormTag:Sd,BTag:Sd}});function Qd(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function tf(t){for(var e=1;ef?s:"".concat(f,"px")}},render:function(t){return t("textarea",{class:this.computedClass,style:this.computedStyle,directives:[{name:"b-visible",value:this.visibleCallback,modifiers:{640:!0}}],attrs:this.computedAttrs,domProps:{value:this.localValue},on:this.computedListeners,ref:"input"})}}),of=L({components:{BFormTextarea:af,BTextarea:af}});function sf(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function cf(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&void 0!==arguments[1]&&arguments[1];if(Object(u["g"])(e)||Object(u["g"])(n)||i&&Object(u["g"])(r))return"";var a=[e,n,i?r:0];return a.map(wf).join(":")},kf=Object(I["d"])(Object(f["m"])(cf(cf(cf(cf({},nr["b"]),gf),Object(f["k"])(Od,["labelIncrement","labelDecrement"])),{},{ariaLabelledby:Object(I["c"])(E["u"]),disabled:Object(I["c"])(E["g"],!1),hidden:Object(I["c"])(E["g"],!1),hideHeader:Object(I["c"])(E["g"],!1),hour12:Object(I["c"])(E["g"],null),labelAm:Object(I["c"])(E["u"],"AM"),labelAmpm:Object(I["c"])(E["u"],"AM/PM"),labelHours:Object(I["c"])(E["u"],"Hours"),labelMinutes:Object(I["c"])(E["u"],"Minutes"),labelNoTimeSelected:Object(I["c"])(E["u"],"No time selected"),labelPm:Object(I["c"])(E["u"],"PM"),labelSeconds:Object(I["c"])(E["u"],"Seconds"),labelSelected:Object(I["c"])(E["u"],"Selected time"),locale:Object(I["c"])(E["f"]),minutesStep:Object(I["c"])(E["p"],1),readonly:Object(I["c"])(E["g"],!1),secondsStep:Object(I["c"])(E["p"],1),showSeconds:Object(I["c"])(E["g"],!1)})),P["oc"]),Tf=r["default"].extend({name:P["oc"],mixins:[nr["a"],_f,B["a"]],props:kf,data:function(){var t=Mf(this[yf]||"");return{modelHours:t.hours,modelMinutes:t.minutes,modelSeconds:t.seconds,modelAmpm:t.ampm,isLive:!1}},computed:{computedHMS:function(){var t=this.modelHours,e=this.modelMinutes,n=this.modelSeconds;return Lf({hours:t,minutes:e,seconds:n},this.showSeconds)},resolvedOptions:function(){var t=Object(ue["b"])(this.locale).filter(c["a"]),e={hour:jf,minute:jf,second:jf};Object(u["p"])(this.hour12)||(e.hour12=!!this.hour12);var n=new Intl.DateTimeFormat(t,e),r=n.resolvedOptions(),i=r.hour12||!1,a=r.hourCycle||(i?"h12":"h23");return{locale:r.locale,hour12:i,hourCycle:a}},computedLocale:function(){return this.resolvedOptions.locale},computedLang:function(){return(this.computedLocale||"").replace(/-u-.*$/,"")},computedRTL:function(){return Qn(this.computedLang)},computedHourCycle:function(){return this.resolvedOptions.hourCycle},is12Hour:function(){return!!this.resolvedOptions.hour12},context:function(){return{locale:this.computedLocale,isRTL:this.computedRTL,hourCycle:this.computedHourCycle,hour12:this.is12Hour,hours:this.modelHours,minutes:this.modelMinutes,seconds:this.showSeconds?this.modelSeconds:0,value:this.computedHMS,formatted:this.formattedTimeString}},valueId:function(){return this.safeId()||null},computedAriaLabelledby:function(){return[this.ariaLabelledby,this.valueId].filter(c["a"]).join(" ")||null},timeFormatter:function(){var t={hour12:this.is12Hour,hourCycle:this.computedHourCycle,hour:jf,minute:jf,timeZone:"UTC"};return this.showSeconds&&(t.second=jf),Bn(this.computedLocale,t)},numberFormatter:function(){var t=new Intl.NumberFormat(this.computedLocale,{style:"decimal",minimumIntegerDigits:2,minimumFractionDigits:0,maximumFractionDigits:0,notation:"standard"});return t.format},formattedTimeString:function(){var t=this.modelHours,e=this.modelMinutes,n=this.showSeconds&&this.modelSeconds||0;return this.computedHMS?this.timeFormatter(An(Date.UTC(0,0,1,t,e,n))):this.labelNoTimeSelected||" "},spinScopedSlots:function(){var t=this.$createElement;return{increment:function(e){var n=e.hasFocus;return t(Pt,{props:{scale:n?1.5:1.25},attrs:{"aria-hidden":"true"}})},decrement:function(e){var n=e.hasFocus;return t(Pt,{props:{flipV:!0,scale:n?1.5:1.25},attrs:{"aria-hidden":"true"}})}}}},watch:(nf={},uf(nf,yf,(function(t,e){if(t!==e&&!Object(tr["a"])(Mf(t),Mf(this.computedHMS))){var n=Mf(t),r=n.hours,i=n.minutes,a=n.seconds,o=n.ampm;this.modelHours=r,this.modelMinutes=i,this.modelSeconds=a,this.modelAmpm=o}})),uf(nf,"computedHMS",(function(t,e){t!==e&&this.$emit(Of,t)})),uf(nf,"context",(function(t,e){Object(tr["a"])(t,e)||this.$emit(C["h"],t)})),uf(nf,"modelAmpm",(function(t,e){var n=this;if(t!==e){var r=Object(u["g"])(this.modelHours)?0:this.modelHours;this.$nextTick((function(){0===t&&r>11?n.modelHours=r-12:1===t&&r<12&&(n.modelHours=r+12)}))}})),uf(nf,"modelHours",(function(t,e){t!==e&&(this.modelAmpm=t>11?1:0)})),nf),created:function(){var t=this;this.$nextTick((function(){t.$emit(C["h"],t.context)}))},mounted:function(){this.setLive(!0)},activated:function(){this.setLive(!0)},deactivated:function(){this.setLive(!1)},beforeDestroy:function(){this.setLive(!1)},methods:{focus:function(){this.disabled||Object(A["d"])(this.$refs.spinners[0])},blur:function(){if(!this.disabled){var t=Object(A["g"])();Object(A["f"])(this.$el,t)&&Object(A["c"])(t)}},formatHours:function(t){var e=this.computedHourCycle;return t=this.is12Hour&&t>12?t-12:t,t=0===t&&"h12"===e?12:0===t&&"h24"===e?24:12===t&&"h11"===e?0:t,this.numberFormatter(t)},formatMinutes:function(t){return this.numberFormatter(t)},formatSeconds:function(t){return this.numberFormatter(t)},formatAmpm:function(t){return 0===t?this.labelAm:1===t?this.labelPm:""},setHours:function(t){this.modelHours=t},setMinutes:function(t){this.modelMinutes=t},setSeconds:function(t){this.modelSeconds=t},setAmpm:function(t){this.modelAmpm=t},onSpinLeftRight:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.type,n=t.keyCode;if(!this.disabled&&"keydown"===e&&(n===re||n===oe)){Object(le["f"])(t);var r=this.$refs.spinners||[],i=r.map((function(t){return!!t.hasFocus})).indexOf(!0);i+=n===re?-1:1,i=i>=r.length?0:i<0?r.length-1:i,Object(A["d"])(r[i])}},setLive:function(t){var e=this;t?this.$nextTick((function(){Object(A["D"])((function(){e.isLive=!0}))})):this.isLive=!1}},render:function(t){var e=this;if(this.hidden)return t();var n=this.valueId,r=this.computedAriaLabelledby,i=[],a=function(r,a,o){var s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},c=e.safeId("_spinbutton_".concat(a,"_"))||null;return i.push(c),t(jd,{class:o,props:cf({id:c,placeholder:"--",vertical:!0,required:!0,disabled:e.disabled,readonly:e.readonly,locale:e.computedLocale,labelIncrement:e.labelIncrement,labelDecrement:e.labelDecrement,wrap:!0,ariaControls:n,min:0},s),scopedSlots:e.spinScopedSlots,on:{change:r},key:a,ref:"spinners",refInFor:!0})},o=function(){return t("div",{staticClass:"d-flex flex-column",class:{"text-muted":e.disabled||e.readonly},attrs:{"aria-hidden":"true"}},[t(Ct,{props:{shiftV:4,scale:.5}}),t(Ct,{props:{shiftV:-4,scale:.5}})])},s=[];s.push(a(this.setHours,"hours","b-time-hours",{value:this.modelHours,max:23,step:1,formatterFn:this.formatHours,ariaLabel:this.labelHours})),s.push(o()),s.push(a(this.setMinutes,"minutes","b-time-minutes",{value:this.modelMinutes,max:59,step:this.minutesStep||1,formatterFn:this.formatMinutes,ariaLabel:this.labelMinutes})),this.showSeconds&&(s.push(o()),s.push(a(this.setSeconds,"seconds","b-time-seconds",{value:this.modelSeconds,max:59,step:this.secondsStep||1,formatterFn:this.formatSeconds,ariaLabel:this.labelSeconds}))),this.is12Hour&&s.push(a(this.setAmpm,"ampm","b-time-ampm",{value:this.modelAmpm,max:1,formatterFn:this.formatAmpm,ariaLabel:this.labelAmpm,required:!1})),s=t("div",{staticClass:"d-flex align-items-center justify-content-center mx-auto",attrs:{role:"group",tabindex:this.disabled||this.readonly?null:"-1","aria-labelledby":r},on:{keydown:this.onSpinLeftRight,click:function(t){t.target===t.currentTarget&&e.focus()}}},s);var u=t("output",{staticClass:"form-control form-control-sm text-center",class:{disabled:this.disabled||this.readonly},attrs:{id:n,role:"status",for:i.filter(c["a"]).join(" ")||null,tabindex:this.disabled?null:"-1","aria-live":this.isLive?"polite":"off","aria-atomic":"true"},on:{click:this.focus,focus:this.focus}},[t("bdi",this.formattedTimeString),this.computedHMS?t("span",{staticClass:"sr-only"}," (".concat(this.labelSelected,") ")):""]),l=t("header",{staticClass:"b-time-header",class:{"sr-only":this.hideHeader}},[u]),d=this.normalizeSlot();return d=d?t("footer",{staticClass:"b-time-footer"},d):t(),t("div",{staticClass:"b-time d-inline-flex flex-column text-center",attrs:{role:"group",lang:this.computedLang||null,"aria-labelledby":r||null,"aria-disabled":this.disabled?"true":null,"aria-readonly":this.readonly&&!this.disabled?"true":null}},[l,s,d])}});function Df(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Sf(t){for(var e=1;e0&&o.push(t("span"," "));var c=this.labelResetButton;o.push(t(Le,{props:{size:"sm",disabled:n||r,variant:this.resetButtonVariant},attrs:{"aria-label":c||null},on:{click:this.onResetButton},key:"reset-btn"},c))}if(!this.noCloseButton){o.length>0&&o.push(t("span"," "));var l=this.labelCloseButton;o.push(t(Le,{props:{size:"sm",disabled:n,variant:this.closeButtonVariant},attrs:{"aria-label":l||null},on:{click:this.onCloseButton},key:"close-btn"},l))}o.length>0&&(o=[t("div",{staticClass:"b-form-date-controls d-flex flex-wrap",class:{"justify-content-between":o.length>1,"justify-content-end":o.length<2}},o)]);var d=t(Tf,{staticClass:"b-form-time-control",props:Sf(Sf({},Object(I["e"])(Af,i)),{},{value:e,hidden:!this.isVisible}),on:{input:this.onInput,context:this.onContext},ref:"time"},o);return t(Kc,{staticClass:"b-form-timepicker",props:Sf(Sf({},Object(I["e"])($f,i)),{},{id:this.safeId(),value:e,formattedValue:e?this.formattedValue:"",placeholder:a,rtl:this.isRTL,lang:this.computedLang}),on:{show:this.onShow,shown:this.onShown,hidden:this.onHidden},scopedSlots:Yf({},H["f"],this.$scopedSlots[H["f"]]||this.defaultButtonFn),ref:"control"},[d])}}),Bf=L({components:{BFormTimepicker:If,BTimepicker:If}}),Rf=L({components:{BImg:Ir,BImgLazy:mi}}),Nf=Object(I["d"])({tag:Object(I["c"])(E["u"],"div")},P["tb"]),Vf=r["default"].extend({name:P["tb"],functional:!0,props:Nf,render:function(t,e){var n=e.props,r=e.data,i=e.children;return t(n.tag,Object(pt["a"])(r,{staticClass:"input-group-text"}),i)}}),zf=Object(I["d"])({append:Object(I["c"])(E["g"],!1),id:Object(I["c"])(E["u"]),isText:Object(I["c"])(E["g"],!1),tag:Object(I["c"])(E["u"],"div")},P["qb"]),Wf=r["default"].extend({name:P["qb"],functional:!0,props:zf,render:function(t,e){var n=e.props,r=e.data,i=e.children,a=n.append;return t(n.tag,Object(pt["a"])(r,{class:{"input-group-append":a,"input-group-prepend":!a},attrs:{id:n.id}}),n.isText?[t(Vf,i)]:i)}});function Uf(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Gf(t){for(var e=1;e0&&!n[0].text?n[0]:t()}}),qh={container:Object(I["c"])([ho["c"],E["u"]],"body"),disabled:Object(I["c"])(E["g"],!1),tag:Object(I["c"])(E["u"],"div")},Kh=r["default"].extend({name:P["xc"],mixins:[B["a"]],props:qh,watch:{disabled:{immediate:!0,handler:function(t){t?this.unmountTarget():this.$nextTick(this.mountTarget)}}},created:function(){this.$_defaultFn=null,this.$_target=null},beforeMount:function(){this.mountTarget()},updated:function(){this.updateTarget()},beforeDestroy:function(){this.unmountTarget(),this.$_defaultFn=null},methods:{getContainer:function(){if(i["i"]){var t=this.container;return Object(u["n"])(t)?Object(A["E"])(t):t}return null},mountTarget:function(){if(!this.$_target){var t=this.getContainer();if(t){var e=document.createElement("div");t.appendChild(e),this.$_target=new Jh({el:e,parent:this,propsData:{nodes:Object(ue["b"])(this.normalizeSlot())}})}}},updateTarget:function(){if(i["i"]&&this.$_target){var t=this.$scopedSlots.default;this.disabled||(t&&this.$_defaultFn!==t?this.$_target.updatedNodes=t:t||(this.$_target.updatedNodes=this.$slots.default)),this.$_defaultFn=t}},unmountTarget:function(){this.$_target&&this.$_target.$destroy(),this.$_target=null}},render:function(t){if(this.disabled){var e=Object(ue["b"])(this.normalizeSlot()).filter(c["a"]);if(e.length>0&&!e[0].text)return e[0]}return t()}});function Xh(t){return Xh="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xh(t)}function Zh(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Qh(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:{};return ep(this,n),r=e.call(this,t,i),Object(f["d"])(lp(r),{trigger:Object(f["l"])()}),r}return rp(n,null,[{key:"Defaults",get:function(){return Qh(Qh({},ip(fp(n),"Defaults",this)),{},{trigger:null})}}]),n}(po["a"]),pp=1040,mp=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",bp=".sticky-top",vp=".navbar-toggler",_p=r["default"].extend({data:function(){return{modals:[],baseZIndex:null,scrollbarWidth:null,isBodyOverflowing:!1}},computed:{modalCount:function(){return this.modals.length},modalsAreOpen:function(){return this.modalCount>0}},watch:{modalCount:function(t,e){i["i"]&&(this.getScrollbarWidth(),t>0&&0===e?(this.checkScrollbar(),this.setScrollbar(),Object(A["b"])(document.body,"modal-open")):0===t&&e>0&&(this.resetScrollbar(),Object(A["A"])(document.body,"modal-open")),Object(A["G"])(document.body,"data-modal-open-count",String(t)))},modals:function(t){var e=this;this.checkScrollbar(),Object(A["D"])((function(){e.updateModals(t||[])}))}},methods:{registerModal:function(t){var e=this;t&&-1===this.modals.indexOf(t)&&(this.modals.push(t),t.$once(C["eb"],(function(){e.unregisterModal(t)})))},unregisterModal:function(t){var e=this.modals.indexOf(t);e>-1&&(this.modals.splice(e,1),t._isBeingDestroyed||t._isDestroyed||this.resetModal(t))},getBaseZIndex:function(){if(Object(u["g"])(this.baseZIndex)&&i["i"]){var t=document.createElement("div");Object(A["b"])(t,"modal-backdrop"),Object(A["b"])(t,"d-none"),Object(A["H"])(t,"display","none"),document.body.appendChild(t),this.baseZIndex=Object(F["c"])(Object(A["k"])(t).zIndex,pp),document.body.removeChild(t)}return this.baseZIndex||pp},getScrollbarWidth:function(){if(Object(u["g"])(this.scrollbarWidth)&&i["i"]){var t=document.createElement("div");Object(A["b"])(t,"modal-scrollbar-measure"),document.body.appendChild(t),this.scrollbarWidth=Object(A["i"])(t).width-t.clientWidth,document.body.removeChild(t)}return this.scrollbarWidth||0},updateModals:function(t){var e=this,n=this.getBaseZIndex(),r=this.getScrollbarWidth();t.forEach((function(t,i){t.zIndex=n+i,t.scrollbarWidth=r,t.isTop=i===e.modals.length-1,t.isBodyOverflowing=e.isBodyOverflowing}))},resetModal:function(t){t&&(t.zIndex=this.getBaseZIndex(),t.isTop=!0,t.isBodyOverflowing=!1)},checkScrollbar:function(){var t=Object(A["i"])(document.body),e=t.left,n=t.right;this.isBodyOverflowing=e+n0&&void 0!==arguments[0]&&arguments[0];this.$_observer&&this.$_observer.disconnect(),this.$_observer=null,t&&(this.$_observer=xi(this.$refs.content,this.checkModalOverflow.bind(this),Ap))},updateModel:function(t){t!==this[kp]&&this.$emit(Tp,t)},buildEvent:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new hp(t,Op(Op({cancelable:!1,target:this.$refs.modal||this.$el||null,relatedTarget:null,trigger:null},e),{},{vueTarget:this,componentId:this.modalId}))},show:function(){if(!this.isVisible&&!this.isOpening)if(this.isClosing)this.$once(C["v"],this.show);else{this.isOpening=!0,this.$_returnFocus=this.$_returnFocus||this.getActiveElement();var t=this.buildEvent(C["T"],{cancelable:!0});if(this.emitEvent(t),t.defaultPrevented||this.isVisible)return this.isOpening=!1,void this.updateModel(!1);this.doShow()}},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(this.isVisible&&!this.isClosing){this.isClosing=!0;var e=this.buildEvent(C["w"],{cancelable:t!==Yp,trigger:t||null});if(t===Ep?this.$emit(C["D"],e):t===Pp?this.$emit(C["c"],e):t===Cp&&this.$emit(C["g"],e),this.emitEvent(e),e.defaultPrevented||!this.isVisible)return this.isClosing=!1,void this.updateModel(!0);this.setObserver(!1),this.isVisible=!1,this.updateModel(!1)}},toggle:function(t){t&&(this.$_returnFocus=t),this.isVisible?this.hide(xp):this.show()},getActiveElement:function(){var t=Object(A["g"])(i["i"]?[document.body]:[]);return t&&t.focus?t:null},doShow:function(){var t=this;gp.modalsAreOpen&&this.noStacking?this.listenOnRootOnce(Object(le["e"])(P["Bb"],C["v"]),this.doShow):(gp.registerModal(this),this.isHidden=!1,this.$nextTick((function(){t.isVisible=!0,t.isOpening=!1,t.updateModel(!0),t.$nextTick((function(){t.setObserver(!0)}))})))},onBeforeEnter:function(){this.isTransitioning=!0,this.setResizeEvent(!0)},onEnter:function(){var t=this;this.isBlock=!0,Object(A["D"])((function(){Object(A["D"])((function(){t.isShow=!0}))}))},onAfterEnter:function(){var t=this;this.checkModalOverflow(),this.isTransitioning=!1,Object(A["D"])((function(){t.emitEvent(t.buildEvent(C["U"])),t.setEnforceFocus(!0),t.$nextTick((function(){t.focusFirst()}))}))},onBeforeLeave:function(){this.isTransitioning=!0,this.setResizeEvent(!1),this.setEnforceFocus(!1)},onLeave:function(){this.isShow=!1},onAfterLeave:function(){var t=this;this.isBlock=!1,this.isTransitioning=!1,this.isModalOverflowing=!1,this.isHidden=!0,this.$nextTick((function(){t.isClosing=!1,gp.unregisterModal(t),t.returnFocusTo(),t.emitEvent(t.buildEvent(C["v"]))}))},emitEvent:function(t){var e=t.type;this.emitOnRoot(Object(le["e"])(P["Bb"],e),t,t.componentId),this.$emit(e,t)},onDialogMousedown:function(){var t=this,e=this.$refs.modal,n=function n(r){Object(le["a"])(e,"mouseup",n,C["cb"]),r.target===e&&(t.ignoreBackdropClick=!0)};Object(le["b"])(e,"mouseup",n,C["cb"])},onClickOut:function(t){this.ignoreBackdropClick?this.ignoreBackdropClick=!1:this.isVisible&&!this.noCloseOnBackdrop&&Object(A["f"])(document.body,t.target)&&(Object(A["f"])(this.$refs.content,t.target)||this.hide(Dp))},onOk:function(){this.hide(Ep)},onCancel:function(){this.hide(Pp)},onClose:function(){this.hide(Cp)},onEsc:function(t){t.keyCode===ee&&this.isVisible&&!this.noCloseOnEsc&&this.hide(Sp)},focusHandler:function(t){var e=this.$refs.content,n=t.target;if(!(this.noEnforceFocus||!this.isTop||!this.isVisible||!e||document===n||Object(A["f"])(e,n)||this.computeIgnoreEnforceFocusSelector&&Object(A["e"])(this.computeIgnoreEnforceFocusSelector,n,!0))){var r=Object(A["n"])(this.$refs.content),i=this.$refs["bottom-trap"],a=this.$refs["top-trap"];if(i&&n===i){if(Object(A["d"])(r[0]))return}else if(a&&n===a&&Object(A["d"])(r[r.length-1]))return;Object(A["d"])(e,{preventScroll:!0})}},setEnforceFocus:function(t){this.listenDocument(t,"focusin",this.focusHandler)},setResizeEvent:function(t){this.listenWindow(t,"resize",this.checkModalOverflow),this.listenWindow(t,"orientationchange",this.checkModalOverflow)},showHandler:function(t,e){t===this.modalId&&(this.$_returnFocus=e||this.getActiveElement(),this.show())},hideHandler:function(t){t===this.modalId&&this.hide("event")},toggleHandler:function(t,e){t===this.modalId&&this.toggle(e)},modalListener:function(t){this.noStacking&&t.vueTarget!==this&&this.hide()},focusFirst:function(){var t=this;i["i"]&&Object(A["D"])((function(){var e=t.$refs.modal,n=t.$refs.content,r=t.getActiveElement();if(e&&n&&(!r||!Object(A["f"])(n,r))){var i=t.$refs["ok-button"],a=t.$refs["cancel-button"],o=t.$refs["close-button"],s=t.autoFocusButton,c=s===Ep&&i?i.$el||i:s===Pp&&a?a.$el||a:s===Cp&&o?o.$el||o:n;Object(A["d"])(c),c===n&&t.$nextTick((function(){e.scrollTop=0}))}}))},returnFocusTo:function(){var t=this.returnFocus||this.$_returnFocus||null;this.$_returnFocus=null,this.$nextTick((function(){t=Object(u["n"])(t)?Object(A["E"])(t):t,t&&(t=t.$el||t,Object(A["d"])(t))}))},checkModalOverflow:function(){if(this.isVisible){var t=this.$refs.modal;this.isModalOverflowing=t.scrollHeight>document.documentElement.clientHeight}},makeModal:function(t){var e=t();if(!this.hideHeader){var n=this.normalizeSlot(H["J"],this.slotScope);if(!n){var r=t();this.hideHeaderClose||(r=t(R["a"],{props:{content:this.headerCloseContent,disabled:this.isTransitioning,ariaLabel:this.headerCloseLabel,textVariant:this.headerCloseVariant||this.headerTextVariant},on:{click:this.onClose},ref:"close-button"},[this.normalizeSlot(H["K"])])),n=[t(this.titleTag,{staticClass:"modal-title",class:this.titleClasses,attrs:{id:this.modalTitleId},domProps:this.hasNormalizedSlot(H["M"])?{}:Je(this.titleHtml,this.title)},this.normalizeSlot(H["M"],this.slotScope)),r]}e=t("header",{staticClass:"modal-header",class:this.headerClasses,attrs:{id:this.modalHeaderId},ref:"header"},[n])}var i=t("div",{staticClass:"modal-body",class:this.bodyClasses,attrs:{id:this.modalBodyId},ref:"body"},this.normalizeSlot(H["i"],this.slotScope)),a=t();if(!this.hideFooter){var o=this.normalizeSlot(H["I"],this.slotScope);if(!o){var s=t();this.okOnly||(s=t(Le,{props:{variant:this.cancelVariant,size:this.buttonSize,disabled:this.cancelDisabled||this.busy||this.isTransitioning},domProps:this.hasNormalizedSlot(H["H"])?{}:Je(this.cancelTitleHtml,this.cancelTitle),on:{click:this.onCancel},ref:"cancel-button"},this.normalizeSlot(H["H"])));var c=t(Le,{props:{variant:this.okVariant,size:this.buttonSize,disabled:this.okDisabled||this.busy||this.isTransitioning},domProps:this.hasNormalizedSlot(H["L"])?{}:Je(this.okTitleHtml,this.okTitle),on:{click:this.onOk},ref:"ok-button"},this.normalizeSlot(H["L"]));o=[s,c]}a=t("footer",{staticClass:"modal-footer",class:this.footerClasses,attrs:{id:this.modalFooterId},ref:"footer"},[o])}var u=t("div",{staticClass:"modal-content",class:this.contentClass,attrs:{id:this.modalContentId,tabindex:"-1"},ref:"content"},[e,i,a]),l=t(),d=t();this.isVisible&&!this.noEnforceFocus&&(l=t("span",{attrs:{tabindex:"0"},ref:"top-trap"}),d=t("span",{attrs:{tabindex:"0"},ref:"bottom-trap"}));var f=t("div",{staticClass:"modal-dialog",class:this.dialogClasses,on:{mousedown:this.onDialogMousedown},ref:"dialog"},[l,u,d]),h=t("div",{staticClass:"modal",class:this.modalClasses,style:this.modalStyles,attrs:this.computedModalAttrs,on:{keydown:this.onEsc,click:this.onClickOut},directives:[{name:"show",value:this.isVisible}],ref:"modal"},[f]);h=t("transition",{props:{enterClass:"",enterToClass:"",enterActiveClass:"",leaveClass:"",leaveActiveClass:"",leaveToClass:""},on:{beforeEnter:this.onBeforeEnter,enter:this.onEnter,afterEnter:this.onAfterEnter,beforeLeave:this.onBeforeLeave,leave:this.onLeave,afterLeave:this.onAfterLeave}},[h]);var p=t();return!this.hideBackdrop&&this.isVisible&&(p=t("div",{staticClass:"modal-backdrop",attrs:{id:this.modalBackdropId}},this.normalizeSlot(H["G"]))),p=t(N["a"],{props:{noFade:this.noFade}},[p]),t("div",{style:this.modalOuterStyle,attrs:this.computedAttrs,key:"modal-outer-".concat(this[x["a"]])},[h,p])}},render:function(t){return this.static?this.lazy&&this.isHidden?t():this.makeModal(t):this.isHidden?t():t(Kh,[this.makeModal(t)])}}),Ip=Object(le["d"])(P["Bb"],C["T"]),Bp="__bv_modal_directive__",Rp=function(t){var e=t.modifiers,n=void 0===e?{}:e,r=t.arg,i=t.value;return Object(u["n"])(i)?i:Object(u["n"])(r)?r:Object(f["h"])(n).reverse()[0]},Np=function(t){return t&&Object(A["v"])(t,".dropdown-menu > li, li.nav-item")&&Object(A["E"])("a, button",t)||t},Vp=function(t){t&&"BUTTON"!==t.tagName&&(Object(A["o"])(t,"role")||Object(A["G"])(t,"role","button"),"A"===t.tagName||Object(A["o"])(t,"tabindex")||Object(A["G"])(t,"tabindex","0"))},zp=function(t,e,n){var r=Rp(e),i=Np(t);if(r&&i){var a=function(t){var e=t.currentTarget;if(!Object(A["r"])(e)){var i=t.type,a=t.keyCode;"click"!==i&&("keydown"!==i||a!==te&&a!==se)||n.context.$root.$emit(Ip,r,e)}};t[Bp]={handler:a,target:r,trigger:i},Vp(i),Object(le["b"])(i,"click",a,C["db"]),"BUTTON"!==i.tagName&&"button"===Object(A["h"])(i,"role")&&Object(le["b"])(i,"keydown",a,C["db"])}},Wp=function(t){var e=t[Bp]||{},n=e.trigger,r=e.handler;n&&r&&(Object(le["a"])(n,"click",r,C["db"]),Object(le["a"])(n,"keydown",r,C["db"]),Object(le["a"])(t,"click",r,C["db"]),Object(le["a"])(t,"keydown",r,C["db"])),delete t[Bp]},Up=function(t,e,n){var r=t[Bp]||{},i=Rp(e),a=Np(t);i===r.target&&a===r.trigger||(Wp(t,e,n),zp(t,e,n)),Vp(a)},Gp=function(){},Jp={inserted:Up,updated:Gp,componentUpdated:Up,unbind:Wp};function qp(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Kp(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,r=new Array(e);n2&&void 0!==arguments[2]?arguments[2]:lm;if(!Object(h["d"])(sm)&&!Object(h["c"])(sm)){var i=new e({parent:t,propsData:Qp(Qp(Qp({},fm(Object(Tu["c"])(P["Bb"]))),{},{hideHeaderClose:!0,hideHeader:!(n.title||n.titleHtml)},Object(f["j"])(n,Object(f["h"])(dm))),{},{lazy:!1,busy:!1,visible:!1,noStacking:!1,noEnforceFocus:!1})});return Object(f["h"])(dm).forEach((function(t){Object(u["o"])(n[t])||(i.$slots[dm[t]]=Object(ue["b"])(n[t]))})),new Promise((function(t,e){var n=!1;i.$once(C["fb"],(function(){n||e(new Error("BootstrapVue MsgBox destroyed before resolve"))})),i.$on(C["w"],(function(e){if(!e.defaultPrevented){var i=r(e);e.defaultPrevented||(n=!0,t(i))}}));var a=document.createElement("div");document.body.appendChild(a),i.$mount(a)}))}},r=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;if(e&&!Object(h["c"])(sm)&&!Object(h["d"])(sm)&&Object(u["f"])(i))return n(t,Qp(Qp({},fm(r)),{},{msgBoxContent:e}),i)},i=function(){function t(e){qp(this,t),Object(f["a"])(this,{_vm:e,_root:e.$root}),Object(f["d"])(this,{_vm:Object(f["l"])(),_root:Object(f["l"])()})}return Xp(t,[{key:"show",value:function(t){if(t&&this._root){for(var e,n=arguments.length,r=new Array(n>1?n-1:0),i=1;i1?n-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{},n=Qp(Qp({},e),{},{okOnly:!0,okDisabled:!1,hideFooter:!1,msgBoxContent:t});return r(this._vm,t,n,(function(){return!0}))}},{key:"msgBoxConfirm",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Qp(Qp({},e),{},{okOnly:!1,okDisabled:!1,cancelDisabled:!1,hideFooter:!1});return r(this._vm,t,n,(function(t){var e=t.trigger;return"ok"===e||"cancel"!==e&&null}))}}]),t}();t.mixin({beforeCreate:function(){this[cm]=new i(this)}}),Object(f["g"])(t.prototype,sm)||Object(f["e"])(t.prototype,sm,{get:function(){return this&&this[cm]||Object(h["a"])('"'.concat(sm,'" must be accessed from a Vue instance "this" context.'),P["Bb"]),this[cm]}})},pm=L({plugins:{plugin:hm}}),mm=L({components:{BModal:Fp},directives:{VBModal:Jp},plugins:{BVModalPlugin:pm}});function bm(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var vm=function(t){return t="left"===t?"start":"right"===t?"end":t,"justify-content-".concat(t)},_m=Object(I["d"])({align:Object(I["c"])(E["u"]),cardHeader:Object(I["c"])(E["g"],!1),fill:Object(I["c"])(E["g"],!1),justified:Object(I["c"])(E["g"],!1),pills:Object(I["c"])(E["g"],!1),small:Object(I["c"])(E["g"],!1),tabs:Object(I["c"])(E["g"],!1),tag:Object(I["c"])(E["u"],"ul"),vertical:Object(I["c"])(E["g"],!1)},P["Db"]),gm=r["default"].extend({name:P["Db"],functional:!0,props:_m,render:function(t,e){var n,r=e.props,i=e.data,a=e.children,o=r.tabs,s=r.pills,c=r.vertical,u=r.align,l=r.cardHeader;return t(r.tag,Object(pt["a"])(i,{staticClass:"nav",class:(n={"nav-tabs":o,"nav-pills":s&&!o,"card-header-tabs":!c&&l&&o,"card-header-pills":!c&&l&&s&&!o,"flex-column":c,"nav-fill":!c&&r.fill,"nav-justified":!c&&r.justified},bm(n,vm(u),!c&&u),bm(n,"small",r.small),n)}),a)}});function ym(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Om(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n=0&&e<=1})),overlayTag:Object(I["c"])(E["u"],"div"),rounded:Object(I["c"])(E["j"],!1),show:Object(I["c"])(E["g"],!1),spinnerSmall:Object(I["c"])(E["g"],!1),spinnerType:Object(I["c"])(E["u"],"border"),spinnerVariant:Object(I["c"])(E["u"]),variant:Object(I["c"])(E["u"],"light"),wrapTag:Object(I["c"])(E["u"],"div"),zIndex:Object(I["c"])(E["p"],10)},P["Mb"]),yb=r["default"].extend({name:P["Mb"],mixins:[B["a"]],props:gb,computed:{computedRounded:function(){var t=this.rounded;return!0===t||""===t?"rounded":t?"rounded-".concat(t):""},computedVariant:function(){var t=this.variant;return t&&!this.bgColor?"bg-".concat(t):""},slotScope:function(){return{spinnerType:this.spinnerType||null,spinnerVariant:this.spinnerVariant||null,spinnerSmall:this.spinnerSmall}}},methods:{defaultOverlayFn:function(t){var e=t.spinnerType,n=t.spinnerVariant,r=t.spinnerSmall;return this.$createElement(hb,{props:{type:e,variant:n,small:r}})}},render:function(t){var e=this,n=this.show,r=this.fixed,i=this.noFade,a=this.noWrap,o=this.slotScope,s=t();if(n){var c=t("div",{staticClass:"position-absolute",class:[this.computedVariant,this.computedRounded],style:mb(mb({},_b),{},{opacity:this.opacity,backgroundColor:this.bgColor||null,backdropFilter:this.blur?"blur(".concat(this.blur,")"):null})}),u=t("div",{staticClass:"position-absolute",style:this.noCenter?mb({},_b):{top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"}},[this.normalizeSlot(H["V"],o)||this.defaultOverlayFn(o)]);s=t(this.overlayTag,{staticClass:"b-overlay",class:{"position-absolute":!a||a&&!r,"position-fixed":a&&r},style:mb(mb({},_b),{},{zIndex:this.zIndex||10}),on:{click:function(t){return e.$emit(C["f"],t)}},key:"overlay"},[c,u])}return s=t(N["a"],{props:{noFade:i,appear:!0},on:{"after-enter":function(){return e.$emit(C["U"])},"after-leave":function(){return e.$emit(C["v"])}}},[s]),a?s:t(this.wrapTag,{staticClass:"b-overlay-wrap position-relative",attrs:{"aria-busy":n?"true":null}},a?[s]:[this.normalizeSlot(),s])}}),Ob=L({components:{BOverlay:yb}});function jb(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function wb(t){for(var e=1;ee?e:n<1?1:n},Hb=function(t){if(t.keyCode===se)return Object(le["f"])(t,{immediatePropagation:!0}),t.currentTarget.click(),!1},Ab=Object(I["d"])(Object(f["m"])(wb(wb({},Tb),{},{align:Object(I["c"])(E["u"],"left"),ariaLabel:Object(I["c"])(E["u"],"Pagination"),disabled:Object(I["c"])(E["g"],!1),ellipsisClass:Object(I["c"])(E["e"]),ellipsisText:Object(I["c"])(E["u"],"…"),firstClass:Object(I["c"])(E["e"]),firstNumber:Object(I["c"])(E["g"],!1),firstText:Object(I["c"])(E["u"],"«"),hideEllipsis:Object(I["c"])(E["g"],!1),hideGotoEndButtons:Object(I["c"])(E["g"],!1),labelFirstPage:Object(I["c"])(E["u"],"Go to first page"),labelLastPage:Object(I["c"])(E["u"],"Go to last page"),labelNextPage:Object(I["c"])(E["u"],"Go to next page"),labelPage:Object(I["c"])(E["m"],"Go to page"),labelPrevPage:Object(I["c"])(E["u"],"Go to previous page"),lastClass:Object(I["c"])(E["e"]),lastNumber:Object(I["c"])(E["g"],!1),lastText:Object(I["c"])(E["u"],"»"),limit:Object(I["c"])(E["p"],xb,(function(t){return!(Object(F["c"])(t,0)<1)||(Object(h["a"])('Prop "limit" must be a number greater than "0"',P["Nb"]),!1)})),nextClass:Object(I["c"])(E["e"]),nextText:Object(I["c"])(E["u"],"›"),pageClass:Object(I["c"])(E["e"]),pills:Object(I["c"])(E["g"],!1),prevClass:Object(I["c"])(E["e"]),prevText:Object(I["c"])(E["u"],"‹"),size:Object(I["c"])(E["u"])})),"pagination"),$b=r["default"].extend({mixins:[kb,B["a"]],props:Ab,data:function(){var t=Object(F["c"])(this[Db],0);return t=t>0?t:-1,{currentPage:t,localNumberOfPages:1,localLimit:xb}},computed:{btnSize:function(){var t=this.size;return t?"pagination-".concat(t):""},alignment:function(){var t=this.align;return"center"===t?"justify-content-center":"end"===t||"right"===t?"justify-content-end":"fill"===t?"text-center":""},styleClass:function(){return this.pills?"b-pagination-pills":""},computedCurrentPage:function(){return Eb(this.currentPage,this.localNumberOfPages)},paginationParams:function(){var t=this.localLimit,e=this.localNumberOfPages,n=this.computedCurrentPage,r=this.hideEllipsis,i=this.firstNumber,a=this.lastNumber,o=!1,s=!1,c=t,u=1;e<=t?c=e:nYb?(r&&!a||(s=!0,c=t-(i?0:1)),c=Object(nt["e"])(c,t)):e-n+2Yb?(r&&!i||(o=!0,c=t-(a?0:1)),u=e-c+1):(t>Yb&&(c=t-(r?0:2),o=!(r&&!i),s=!(r&&!a)),u=n-Object(nt["c"])(c/2)),u<1?(u=1,o=!1):u>e-c&&(u=e-c+1,s=!1),o&&i&&u<4&&(c+=2,u=1,o=!1);var l=u+c-1;return s&&a&&l>e-3&&(c+=l===e-2?2:3,s=!1),t<=Yb&&(i&&1===u?c=Object(nt["e"])(c+1,e,t+1):a&&e===u+c-1&&(u=Object(nt["d"])(u-1,1),c=Object(nt["e"])(e-u+1,e,t+1))),c=Object(nt["e"])(c,e-u+1),{showFirstDots:o,showLastDots:s,numberOfLinks:c,startNumber:u}},pageList:function(){var t=this.paginationParams,e=t.numberOfLinks,n=t.startNumber,r=this.computedCurrentPage,i=Pb(n,e);if(i.length>3){var a=r-n,o="bv-d-xs-down-none";if(0===a)for(var s=3;sa+1;l--)i[l].classes=o}}return i}},watch:(vb={},Mb(vb,Db,(function(t,e){t!==e&&(this.currentPage=Eb(t,this.localNumberOfPages))})),Mb(vb,"currentPage",(function(t,e){t!==e&&this.$emit(Sb,t>0?t:null)})),Mb(vb,"limit",(function(t,e){t!==e&&(this.localLimit=Cb(t))})),vb),created:function(){var t=this;this.localLimit=Cb(this.limit),this.$nextTick((function(){t.currentPage=t.currentPage>t.localNumberOfPages?t.localNumberOfPages:t.currentPage}))},methods:{handleKeyNav:function(t){var e=t.keyCode,n=t.shiftKey;this.isNav||(e===re||e===ce?(Object(le["f"])(t,{propagation:!1}),n?this.focusFirst():this.focusPrev()):e!==oe&&e!==Zt||(Object(le["f"])(t,{propagation:!1}),n?this.focusLast():this.focusNext()))},getButtons:function(){return Object(A["F"])("button.page-link, a.page-link",this.$el).filter((function(t){return Object(A["u"])(t)}))},focusCurrent:function(){var t=this;this.$nextTick((function(){var e=t.getButtons().find((function(e){return Object(F["c"])(Object(A["h"])(e,"aria-posinset"),0)===t.computedCurrentPage}));Object(A["d"])(e)||t.focusFirst()}))},focusFirst:function(){var t=this;this.$nextTick((function(){var e=t.getButtons().find((function(t){return!Object(A["r"])(t)}));Object(A["d"])(e)}))},focusLast:function(){var t=this;this.$nextTick((function(){var e=t.getButtons().reverse().find((function(t){return!Object(A["r"])(t)}));Object(A["d"])(e)}))},focusPrev:function(){var t=this;this.$nextTick((function(){var e=t.getButtons(),n=e.indexOf(Object(A["g"])());n>0&&!Object(A["r"])(e[n-1])&&Object(A["d"])(e[n-1])}))},focusNext:function(){var t=this;this.$nextTick((function(){var e=t.getButtons(),n=e.indexOf(Object(A["g"])());no,p=r<1?1:r>o?o:r,v={disabled:f,page:p,index:p-1},_=e.normalizeSlot(s,v)||Object(mt["g"])(c)||t(),g=t(f?"span":a?de["a"]:"button",{staticClass:"page-link",class:{"flex-grow-1":!a&&!f&&h},props:f||!a?{}:e.linkProps(r),attrs:{role:a?null:"menuitem",type:a||f?null:"button",tabindex:f||a?null:"-1","aria-label":i,"aria-controls":e.ariaControls||null,"aria-disabled":f?"true":null},on:f?{}:{"!click":function(t){e.onClick(t,r)},keydown:Hb}},[_]);return t("li",{key:d,staticClass:"page-item",class:[{disabled:f,"flex-fill":h,"d-flex":h&&!a&&!f},u],attrs:{role:a?null:"presentation","aria-hidden":f?"true":null}},[g])},_=function(n){return t("li",{staticClass:"page-item",class:["disabled","bv-d-xs-down-none",h?"flex-fill":"",e.ellipsisClass],attrs:{role:"separator"},key:"ellipsis-".concat(n?"last":"first")},[t("span",{staticClass:"page-link"},[e.normalizeSlot(H["m"])||Object(mt["g"])(e.ellipsisText)||t()])])},g=function(i,s){var c=i.number,l=m(c)&&!b,d=n?null:l||b&&0===s?"0":"-1",f={role:a?null:"menuitemradio",type:a||n?null:"button","aria-disabled":n?"true":null,"aria-controls":e.ariaControls||null,"aria-label":Object(I["b"])(r)?r(c):"".concat(Object(u["f"])(r)?r():r," ").concat(c),"aria-checked":a?null:l?"true":"false","aria-current":a&&l?"page":null,"aria-posinset":a?null:c,"aria-setsize":a?null:o,tabindex:a?null:d},p=Object(mt["g"])(e.makePage(c)),v={page:c,index:c-1,content:p,active:l,disabled:n},_=t(n?"span":a?de["a"]:"button",{props:n||!a?{}:e.linkProps(c),staticClass:"page-link",class:{"flex-grow-1":!a&&!n&&h},attrs:f,on:n?{}:{"!click":function(t){e.onClick(t,c)},keydown:Hb}},[e.normalizeSlot(H["W"],v)||p]);return t("li",{staticClass:"page-item",class:[{disabled:n,active:l,"flex-fill":h,"d-flex":h&&!a&&!n},i.classes,e.pageClass],attrs:{role:a?null:"presentation"},key:"page-".concat(c)},[_])},y=t();this.firstNumber||this.hideGotoEndButtons||(y=v(1,this.labelFirstPage,H["r"],this.firstText,this.firstClass,1,"pagination-goto-first")),p.push(y),p.push(v(s-1,this.labelPrevPage,H["Z"],this.prevText,this.prevClass,1,"pagination-goto-prev")),p.push(this.firstNumber&&1!==c[0]?g({number:1},0):t()),p.push(d?_(!1):t()),this.pageList.forEach((function(t,n){var r=d&&e.firstNumber&&1!==c[0]?1:0;p.push(g(t,n+r))})),p.push(f?_(!0):t()),p.push(this.lastNumber&&c[c.length-1]!==o?g({number:o},-1):t()),p.push(v(s+1,this.labelNextPage,H["U"],this.nextText,this.nextClass,o,"pagination-goto-next"));var O=t();this.lastNumber||this.hideGotoEndButtons||(O=v(o,this.labelLastPage,H["D"],this.lastText,this.lastClass,o,"pagination-goto-last")),p.push(O);var j=t("ul",{staticClass:"pagination",class:["b-pagination",this.btnSize,this.alignment,this.styleClass],attrs:{role:a?null:"menubar","aria-disabled":n?"true":"false","aria-label":a?null:i||null},on:a?{}:{keydown:this.handleKeyNav},ref:"ul"},p);return a?t("nav",{attrs:{"aria-disabled":n?"true":null,"aria-hidden":n?"true":"false","aria-label":a&&i||null}},[j]):j}});function Fb(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Ib(t){for(var e=1;et.numberOfPages)&&(this.currentPage=1),this.localNumberOfPages=t.numberOfPages}},created:function(){var t=this;this.localNumberOfPages=this.numberOfPages;var e=Object(F["c"])(this[Db],0);e>0?this.currentPage=e:this.$nextTick((function(){t.currentPage=0}))},methods:{onClick:function(t,e){var n=this;if(e!==this.currentPage){var r=t.target,i=new po["a"](C["F"],{cancelable:!0,vueTarget:this,target:r});this.$emit(i.type,i,e),i.defaultPrevented||(this.currentPage=e,this.$emit(C["d"],this.currentPage),this.$nextTick((function(){Object(A["u"])(r)&&n.$el.contains(r)?Object(A["d"])(r):n.focusCurrent()})))}},makePage:function(t){return t},linkProps:function(){return{}}}}),Gb=L({components:{BPagination:Ub}});function Jb(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function qb(t){for(var e=1;e0?this.localNumberOfPages=this.pages.length:this.localNumberOfPages=Xb(this.numberOfPages),this.$nextTick((function(){t.guessCurrentPage()}))},onClick:function(t,e){var n=this;if(e!==this.currentPage){var r=t.currentTarget||t.target,i=new po["a"](C["F"],{cancelable:!0,vueTarget:this,target:r});this.$emit(i.type,i,e),i.defaultPrevented||(Object(A["D"])((function(){n.currentPage=e,n.$emit(C["d"],e)})),this.$nextTick((function(){Object(A["c"])(r)})))}},getPageInfo:function(t){if(!Object(u["a"])(this.pages)||0===this.pages.length||Object(u["o"])(this.pages[t-1])){var e="".concat(this.baseUrl).concat(t);return{link:this.useRouter?{path:e}:e,text:Object(mt["g"])(t)}}var n=this.pages[t-1];if(Object(u["j"])(n)){var r=n.link;return{link:Object(u["j"])(r)?r:this.useRouter?{path:r}:r,text:Object(mt["g"])(n.text||t)}}return{link:Object(mt["g"])(n),text:Object(mt["g"])(t)}},makePage:function(t){var e=this.pageGen,n=this.getPageInfo(t);return Object(I["b"])(e)?e(t,n):n.text},makeLink:function(t){var e=this.linkGen,n=this.getPageInfo(t);return Object(I["b"])(e)?e(t,n):n.link},linkProps:function(t){var e=Object(I["e"])(Zb,this),n=this.makeLink(t);return this.useRouter||Object(u["j"])(n)?e.to=n:e.href=n,e},resolveLink:function(){var t,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";try{t=document.createElement("a"),t.href=Object(ht["a"])({to:e},"a","/","/"),document.body.appendChild(t);var n=t,r=n.pathname,i=n.hash,a=n.search;return document.body.removeChild(t),{path:r,hash:i,query:Object(ht["f"])(a)}}catch(o){try{t&&t.parentNode&&t.parentNode.removeChild(t)}catch(s){}return{}}},resolveRoute:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";try{var e=this.$router.resolve(t,this.$route).route;return{path:e.path,hash:e.hash,query:e.query}}catch(n){return{}}},guessCurrentPage:function(){var t=this.$router,e=this.$route,n=this.computedValue;if(!this.noPageDetect&&!n&&(i["i"]||!i["i"]&&t))for(var r=t&&e?{path:e.path,hash:e.hash,query:e.query}:{},a=i["i"]?window.location||document.location:null,o=a?{path:a.pathname,hash:a.hash,query:Object(ht["f"])(a.search)}:{},s=1;!n&&s<=this.localNumberOfPages;s++){var c=this.makeLink(s);n=t&&(Object(u["j"])(c)||this.useRouter)?Object(tr["a"])(this.resolveRoute(c),r)?s:null:i["i"]?Object(tr["a"])(this.resolveLink(c),o)?s:null:-1}this.currentPage=n>0?n:0}}}),ev=L({components:{BPaginationNav:tv}}),nv=n("be29"),rv={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left",TOPLEFT:"top",TOPRIGHT:"top",RIGHTTOP:"right",RIGHTBOTTOM:"right",BOTTOMLEFT:"bottom",BOTTOMRIGHT:"bottom",LEFTTOP:"left",LEFTBOTTOM:"left"},iv={AUTO:0,TOPLEFT:-1,TOP:0,TOPRIGHT:1,RIGHTTOP:-1,RIGHT:0,RIGHTBOTTOM:1,BOTTOMLEFT:-1,BOTTOM:0,BOTTOMRIGHT:1,LEFTTOP:-1,LEFT:0,LEFTBOTTOM:1},av={arrowPadding:Object(I["c"])(E["p"],6),boundary:Object(I["c"])([ho["c"],E["u"]],"scrollParent"),boundaryPadding:Object(I["c"])(E["p"],5),fallbackPlacement:Object(I["c"])(E["f"],"flip"),offset:Object(I["c"])(E["p"],0),placement:Object(I["c"])(E["u"],"top"),target:Object(I["c"])([ho["c"],ho["d"]])},ov=r["default"].extend({name:P["Sb"],props:av,data:function(){return{noFade:!1,localShow:!0,attachment:this.getAttachment(this.placement)}},computed:{templateType:function(){return"unknown"},popperConfig:function(){var t=this,e=this.placement;return{placement:this.getAttachment(e),modifiers:{offset:{offset:this.getOffset(e)},flip:{behavior:this.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{padding:this.boundaryPadding,boundariesElement:this.boundary}},onCreate:function(e){e.originalPlacement!==e.placement&&t.popperPlacementChange(e)},onUpdate:function(e){t.popperPlacementChange(e)}}}},created:function(){var t=this;this.$_popper=null,this.localShow=!0,this.$on(C["T"],(function(e){t.popperCreate(e)}));var e=function(){t.$nextTick((function(){Object(A["D"])((function(){t.$destroy()}))}))};this.$parent.$once(C["fb"],e),this.$once(C["v"],e)},beforeMount:function(){this.attachment=this.getAttachment(this.placement)},updated:function(){this.updatePopper()},beforeDestroy:function(){this.destroyPopper()},destroyed:function(){var t=this.$el;t&&t.parentNode&&t.parentNode.removeChild(t)},methods:{hide:function(){this.localShow=!1},getAttachment:function(t){return rv[String(t).toUpperCase()]||"auto"},getOffset:function(t){if(!this.offset){var e=this.$refs.arrow||Object(A["E"])(".arrow",this.$el),n=Object(F["b"])(Object(A["k"])(e).width,0)+Object(F["b"])(this.arrowPadding,0);switch(iv[String(t).toUpperCase()]||0){case 1:return"+50%p - ".concat(n,"px");case-1:return"-50%p + ".concat(n,"px");default:return 0}}return this.offset},popperCreate:function(t){this.destroyPopper(),this.$_popper=new ao["a"](this.target,t,this.popperConfig)},destroyPopper:function(){this.$_popper&&this.$_popper.destroy(),this.$_popper=null},updatePopper:function(){this.$_popper&&this.$_popper.scheduleUpdate()},popperPlacementChange:function(t){this.attachment=this.getAttachment(t.placement)},renderTemplate:function(t){return t("div")}},render:function(t){var e=this,n=this.noFade;return t(N["a"],{props:{appear:!0,noFade:n},on:{beforeEnter:function(t){return e.$emit(C["T"],t)},afterEnter:function(t){return e.$emit(C["U"],t)},beforeLeave:function(t){return e.$emit(C["w"],t)},afterLeave:function(t){return e.$emit(C["v"],t)}}},[this.localShow?this.renderTemplate(t):t()])}});function sv(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function cv(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},n=!1;Object(f["h"])(Mv).forEach((function(r){Object(u["o"])(e[r])||t[r]===e[r]||(t[r]=e[r],"title"===r&&(n=!0))})),n&&this.localShow&&this.fixTitle()},createTemplateAndShow:function(){var t=this.getContainer(),e=this.getTemplate(),n=this.$_tip=new e({parent:this,propsData:{id:this.computedId,html:this.html,placement:this.placement,fallbackPlacement:this.fallbackPlacement,target:this.getPlacementTarget(),boundary:this.getBoundary(),offset:Object(F["c"])(this.offset,0),arrowPadding:Object(F["c"])(this.arrowPadding,0),boundaryPadding:Object(F["c"])(this.boundaryPadding,0)}});this.handleTemplateUpdate(),n.$once(C["T"],this.onTemplateShow),n.$once(C["U"],this.onTemplateShown),n.$once(C["w"],this.onTemplateHide),n.$once(C["v"],this.onTemplateHidden),n.$once(C["fb"],this.destroyTemplate),n.$on(C["s"],this.handleEvent),n.$on(C["t"],this.handleEvent),n.$on(C["A"],this.handleEvent),n.$on(C["B"],this.handleEvent),n.$mount(t.appendChild(document.createElement("div")))},hideTemplate:function(){this.$_tip&&this.$_tip.hide(),this.clearActiveTriggers(),this.$_hoverState=""},destroyTemplate:function(){this.setWhileOpenListeners(!1),this.clearHoverTimeout(),this.$_hoverState="",this.clearActiveTriggers(),this.localPlacementTarget=null;try{this.$_tip.$destroy()}catch(t){}this.$_tip=null,this.removeAriaDescribedby(),this.restoreTitle(),this.localShow=!1},getTemplateElement:function(){return this.$_tip?this.$_tip.$el:null},handleTemplateUpdate:function(){var t=this,e=this.$_tip;if(e){var n=["title","content","variant","customClass","noFade","interactive"];n.forEach((function(n){e[n]!==t[n]&&(e[n]=t[n])}))}},show:function(){var t=this.getTarget();if(t&&Object(A["f"])(document.body,t)&&Object(A["u"])(t)&&!this.dropdownOpen()&&(!Object(u["p"])(this.title)&&""!==this.title||!Object(u["p"])(this.content)&&""!==this.content)&&!this.$_tip&&!this.localShow){this.localShow=!0;var e=this.buildEvent(C["T"],{cancelable:!0});this.emitEvent(e),e.defaultPrevented?this.destroyTemplate():(this.fixTitle(),this.addAriaDescribedby(),this.createTemplateAndShow())}},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.getTemplateElement();if(e&&this.localShow){var n=this.buildEvent(C["w"],{cancelable:!t});this.emitEvent(n),n.defaultPrevented||this.hideTemplate()}else this.restoreTitle()},forceHide:function(){var t=this.getTemplateElement();t&&this.localShow&&(this.setWhileOpenListeners(!1),this.clearHoverTimeout(),this.$_hoverState="",this.clearActiveTriggers(),this.$_tip&&(this.$_tip.noFade=!0),this.hide(!0))},enable:function(){this.$_enabled=!0,this.emitEvent(this.buildEvent(C["p"]))},disable:function(){this.$_enabled=!1,this.emitEvent(this.buildEvent(C["l"]))},onTemplateShow:function(){this.setWhileOpenListeners(!0)},onTemplateShown:function(){var t=this.$_hoverState;this.$_hoverState="","out"===t&&this.leave(null),this.emitEvent(this.buildEvent(C["U"]))},onTemplateHide:function(){this.setWhileOpenListeners(!1)},onTemplateHidden:function(){this.destroyTemplate(),this.emitEvent(this.buildEvent(C["v"]))},getTarget:function(){var t=this.target;return Object(u["n"])(t)?t=Object(A["j"])(t.replace(/^#/,"")):Object(u["f"])(t)?t=t():t&&(t=t.$el||t),Object(A["s"])(t)?t:null},getPlacementTarget:function(){return this.getTarget()},getTargetId:function(){var t=this.getTarget();return t&&t.id?t.id:null},getContainer:function(){var t=!!this.container&&(this.container.$el||this.container),e=document.body,n=this.getTarget();return!1===t?Object(A["e"])(yv,n)||e:Object(u["n"])(t)&&Object(A["j"])(t.replace(/^#/,""))||e},getBoundary:function(){return this.boundary?this.boundary.$el||this.boundary:"scrollParent"},isInModal:function(){var t=this.getTarget();return t&&Object(A["e"])(vv,t)},isDropdown:function(){var t=this.getTarget();return t&&Object(A["p"])(t,Ov)},dropdownOpen:function(){var t=this.getTarget();return this.isDropdown()&&t&&Object(A["E"])(jv,t)},clearHoverTimeout:function(){clearTimeout(this.$_hoverTimeout),this.$_hoverTimeout=null},clearVisibilityInterval:function(){clearInterval(this.$_visibleInterval),this.$_visibleInterval=null},clearActiveTriggers:function(){for(var t in this.activeTrigger)this.activeTrigger[t]=!1},addAriaDescribedby:function(){var t=this.getTarget(),e=Object(A["h"])(t,"aria-describedby")||"";e=e.split(/\s+/).concat(this.computedId).join(" ").trim(),Object(A["G"])(t,"aria-describedby",e)},removeAriaDescribedby:function(){var t=this,e=this.getTarget(),n=Object(A["h"])(e,"aria-describedby")||"";n=n.split(/\s+/).filter((function(e){return e!==t.computedId})).join(" ").trim(),n?Object(A["G"])(e,"aria-describedby",n):Object(A["z"])(e,"aria-describedby")},fixTitle:function(){var t=this.getTarget();if(Object(A["o"])(t,"title")){var e=Object(A["h"])(t,"title");Object(A["G"])(t,"title",""),e&&Object(A["G"])(t,wv,e)}},restoreTitle:function(){var t=this.getTarget();if(Object(A["o"])(t,wv)){var e=Object(A["h"])(t,wv);Object(A["z"])(t,wv),e&&Object(A["G"])(t,"title",e)}},buildEvent:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new po["a"](t,hv({cancelable:!1,target:this.getTarget(),relatedTarget:this.getTemplateElement()||null,componentId:this.computedId,vueTarget:this},e))},emitEvent:function(t){var e=t.type;this.emitOnRoot(Object(le["e"])(this.templateType,e),t),this.$emit(e,t)},listen:function(){var t=this,e=this.getTarget();e&&(this.setRootListener(!0),this.computedTriggers.forEach((function(n){"click"===n?Object(le["b"])(e,"click",t.handleEvent,C["cb"]):"focus"===n?(Object(le["b"])(e,"focusin",t.handleEvent,C["cb"]),Object(le["b"])(e,"focusout",t.handleEvent,C["cb"])):"blur"===n?Object(le["b"])(e,"focusout",t.handleEvent,C["cb"]):"hover"===n&&(Object(le["b"])(e,"mouseenter",t.handleEvent,C["cb"]),Object(le["b"])(e,"mouseleave",t.handleEvent,C["cb"]))}),this))},unListen:function(){var t=this,e=["click","focusin","focusout","mouseenter","mouseleave"],n=this.getTarget();this.setRootListener(!1),e.forEach((function(e){n&&Object(le["a"])(n,e,t.handleEvent,C["cb"])}),this)},setRootListener:function(t){var e=this.$root;if(e){var n=t?"$on":"$off",r=this.templateType;e[n](Object(le["d"])(r,C["w"]),this.doHide),e[n](Object(le["d"])(r,C["T"]),this.doShow),e[n](Object(le["d"])(r,C["k"]),this.doDisable),e[n](Object(le["d"])(r,C["o"]),this.doEnable)}},setWhileOpenListeners:function(t){this.setModalListener(t),this.setDropdownListener(t),this.visibleCheck(t),this.setOnTouchStartListener(t)},visibleCheck:function(t){var e=this;this.clearVisibilityInterval();var n=this.getTarget(),r=this.getTemplateElement();t&&(this.$_visibleInterval=setInterval((function(){!r||!e.localShow||n.parentNode&&Object(A["u"])(n)||e.forceHide()}),100))},setModalListener:function(t){this.isInModal()&&this.$root[t?"$on":"$off"](_v,this.forceHide)},setOnTouchStartListener:function(t){var e=this;"ontouchstart"in document.documentElement&&Object(ue["f"])(document.body.children).forEach((function(n){Object(le["c"])(t,n,"mouseover",e.$_noop)}))},setDropdownListener:function(t){var e=this.getTarget();e&&this.$root&&this.isDropdown&&e.__vue__&&e.__vue__[t?"$on":"$off"](C["U"],this.forceHide)},handleEvent:function(t){var e=this.getTarget();if(e&&!Object(A["r"])(e)&&this.$_enabled&&!this.dropdownOpen()){var n=t.type,r=this.computedTriggers;if("click"===n&&Object(ue["a"])(r,"click"))this.click(t);else if("mouseenter"===n&&Object(ue["a"])(r,"hover"))this.enter(t);else if("focusin"===n&&Object(ue["a"])(r,"focus"))this.enter(t);else if("focusout"===n&&(Object(ue["a"])(r,"focus")||Object(ue["a"])(r,"blur"))||"mouseleave"===n&&Object(ue["a"])(r,"hover")){var i=this.getTemplateElement(),a=t.target,o=t.relatedTarget;if(i&&Object(A["f"])(i,a)&&Object(A["f"])(e,o)||i&&Object(A["f"])(e,a)&&Object(A["f"])(i,o)||i&&Object(A["f"])(i,a)&&Object(A["f"])(i,o)||Object(A["f"])(e,a)&&Object(A["f"])(e,o))return;this.leave(t)}}},doHide:function(t){t&&this.getTargetId()!==t&&this.computedId!==t||this.forceHide()},doShow:function(t){t&&this.getTargetId()!==t&&this.computedId!==t||this.show()},doDisable:function(t){t&&this.getTargetId()!==t&&this.computedId!==t||this.disable()},doEnable:function(t){t&&this.getTargetId()!==t&&this.computedId!==t||this.enable()},click:function(t){this.$_enabled&&!this.dropdownOpen()&&(Object(A["d"])(t.currentTarget),this.activeTrigger.click=!this.activeTrigger.click,this.isWithActiveTrigger?this.enter(null):this.leave(null))},toggle:function(){this.$_enabled&&!this.dropdownOpen()&&(this.localShow?this.leave(null):this.enter(null))},enter:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;e&&(this.activeTrigger["focusin"===e.type?"focus":"hover"]=!0),this.localShow||"in"===this.$_hoverState?this.$_hoverState="in":(this.clearHoverTimeout(),this.$_hoverState="in",this.computedDelay.show?(this.fixTitle(),this.$_hoverTimeout=setTimeout((function(){"in"===t.$_hoverState?t.show():t.localShow||t.restoreTitle()}),this.computedDelay.show)):this.show())},leave:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;e&&(this.activeTrigger["focusout"===e.type?"focus":"hover"]=!1,"focusout"===e.type&&Object(ue["a"])(this.computedTriggers,"blur")&&(this.activeTrigger.click=!1,this.activeTrigger.hover=!1)),this.isWithActiveTrigger||(this.clearHoverTimeout(),this.$_hoverState="out",this.computedDelay.hide?this.$_hoverTimeout=setTimeout((function(){"out"===t.$_hoverState&&t.hide()}),this.computedDelay.hide):this.hide())}}});function kv(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Tv(t){for(var e=1;e0&&t[Wv].updateData(e)}))}var o={title:r.title,content:r.content,triggers:r.trigger,placement:r.placement,fallbackPlacement:r.fallbackPlacement,variant:r.variant,customClass:r.customClass,container:r.container,boundary:r.boundary,delay:r.delay,offset:r.offset,noFade:!r.animation,id:r.id,disabled:r.disabled,html:r.html},s=t[Wv].__bv_prev_data__;if(t[Wv].__bv_prev_data__=o,!Object(tr["a"])(o,s)){var c={target:t};Object(f["h"])(o).forEach((function(e){o[e]!==s[e]&&(c[e]="title"!==e&&"content"!==e||!Object(u["f"])(o[e])?o[e]:o[e](t))})),t[Wv].updateData(c)}}},o_=function(t){t[Wv]&&(t[Wv].$destroy(),t[Wv]=null),delete t[Wv]},s_={bind:function(t,e,n){a_(t,e,n)},componentUpdated:function(t,e,n){n.context.$nextTick((function(){a_(t,e,n)}))},unbind:function(t){o_(t)}},c_=L({directives:{VBPopover:s_}}),u_=L({components:{BPopover:Rv},plugins:{VBPopoverPlugin:c_}}),l_=Object(I["d"])({animated:Object(I["c"])(E["g"],null),label:Object(I["c"])(E["u"]),labelHtml:Object(I["c"])(E["u"]),max:Object(I["c"])(E["p"],null),precision:Object(I["c"])(E["p"],null),showProgress:Object(I["c"])(E["g"],null),showValue:Object(I["c"])(E["g"],null),striped:Object(I["c"])(E["g"],null),value:Object(I["c"])(E["p"],0),variant:Object(I["c"])(E["u"])},P["Ub"]),d_=r["default"].extend({name:P["Ub"],mixins:[B["a"]],inject:{bvProgress:{default:function(){return{}}}},props:l_,computed:{progressBarClasses:function(){var t=this.computedAnimated,e=this.computedVariant;return[e?"bg-".concat(e):"",this.computedStriped||t?"progress-bar-striped":"",t?"progress-bar-animated":""]},progressBarStyles:function(){return{width:this.computedValue/this.computedMax*100+"%"}},computedValue:function(){return Object(F["b"])(this.value,0)},computedMax:function(){var t=Object(F["b"])(this.max)||Object(F["b"])(this.bvProgress.max,0);return t>0?t:100},computedPrecision:function(){return Object(nt["d"])(Object(F["c"])(this.precision,Object(F["c"])(this.bvProgress.precision,0)),0)},computedProgress:function(){var t=this.computedPrecision,e=Object(nt["f"])(10,t);return Object(F["a"])(100*e*this.computedValue/this.computedMax/e,t)},computedVariant:function(){return this.variant||this.bvProgress.variant},computedStriped:function(){return Object(u["b"])(this.striped)?this.striped:this.bvProgress.striped||!1},computedAnimated:function(){return Object(u["b"])(this.animated)?this.animated:this.bvProgress.animated||!1},computedShowProgress:function(){return Object(u["b"])(this.showProgress)?this.showProgress:this.bvProgress.showProgress||!1},computedShowValue:function(){return Object(u["b"])(this.showValue)?this.showValue:this.bvProgress.showValue||!1}},render:function(t){var e,n=this.label,r=this.labelHtml,i=this.computedValue,a=this.computedPrecision,o={};return this.hasNormalizedSlot()?e=this.normalizeSlot():n||r?o=Je(r,n):this.computedShowProgress?e=this.computedProgress:this.computedShowValue&&(e=Object(F["a"])(i,a)),t("div",{staticClass:"progress-bar",class:this.progressBarClasses,style:this.progressBarStyles,attrs:{role:"progressbar","aria-valuemin":"0","aria-valuemax":Object(mt["g"])(this.computedMax),"aria-valuenow":Object(F["a"])(i,a)},domProps:o},e)}});function f_(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function h_(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.noCloseOnRouteChange||t.fullPath===e.fullPath||this.hide()})),m_),created:function(){this.$_returnFocusEl=null},mounted:function(){var t=this;this.listenOnRoot(L_,this.handleToggle),this.listenOnRoot(M_,this.handleSync),this.$nextTick((function(){t.emitState(t.localShow)}))},activated:function(){this.emitSync()},beforeDestroy:function(){this.localShow=!1,this.$_returnFocusEl=null},methods:{hide:function(){this.localShow=!1},emitState:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.localShow;this.emitOnRoot(k_,this.safeId(),t)},emitSync:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.localShow;this.emitOnRoot(T_,this.safeId(),t)},handleToggle:function(t){t&&t===this.safeId()&&(this.localShow=!this.localShow)},handleSync:function(t){var e=this;t&&t===this.safeId()&&this.$nextTick((function(){e.emitSync(e.localShow)}))},onKeydown:function(t){var e=t.keyCode;!this.noCloseOnEsc&&e===ee&&this.localShow&&this.hide()},onBackdropClick:function(){this.localShow&&!this.noCloseOnBackdrop&&this.hide()},onTopTrapFocus:function(){var t=Object(A["n"])(this.$refs.content);this.enforceFocus(t.reverse()[0])},onBottomTrapFocus:function(){var t=Object(A["n"])(this.$refs.content);this.enforceFocus(t[0])},onBeforeEnter:function(){this.$_returnFocusEl=Object(A["g"])(i["i"]?[document.body]:[]),this.isOpen=!0},onAfterEnter:function(t){Object(A["f"])(t,Object(A["g"])())||this.enforceFocus(t),this.$emit(C["U"])},onAfterLeave:function(){this.enforceFocus(this.$_returnFocusEl),this.$_returnFocusEl=null,this.isOpen=!1,this.$emit(C["v"])},enforceFocus:function(t){this.noEnforceFocus||Object(A["d"])(t)}},render:function(t){var e,n=this.bgVariant,r=this.width,i=this.textVariant,a=this.localShow,o=""===this.shadow||this.shadow,s=t(this.tag,{staticClass:w_,class:[(e={shadow:!0===o},j_(e,"shadow-".concat(o),o&&!0!==o),j_(e,"".concat(w_,"-right"),this.right),j_(e,"bg-".concat(n),n),j_(e,"text-".concat(i),i),e),this.sidebarClass],style:{width:r},attrs:this.computedAttrs,directives:[{name:"show",value:a}],ref:"content"},[I_(t,this)]);s=t("transition",{props:this.transitionProps,on:{beforeEnter:this.onBeforeEnter,afterEnter:this.onAfterEnter,afterLeave:this.onAfterLeave}},[s]);var c=t(N["a"],{props:{noFade:this.noSlide}},[B_(t,this)]),u=t(),l=t();return this.backdrop&&a&&(u=t("div",{attrs:{tabindex:"0"},on:{focus:this.onTopTrapFocus}}),l=t("div",{attrs:{tabindex:"0"},on:{focus:this.onBottomTrapFocus}})),t("div",{staticClass:"b-sidebar-outer",style:{zIndex:this.zIndex},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown}},[u,s,l,c])}}),N_=L({components:{BSidebar:R_},plugins:{VBTogglePlugin:ro}});function V_(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var z_=Object(I["d"])({animation:Object(I["c"])(E["u"],"wave"),height:Object(I["c"])(E["u"]),size:Object(I["c"])(E["u"]),type:Object(I["c"])(E["u"],"text"),variant:Object(I["c"])(E["u"]),width:Object(I["c"])(E["u"])},P["Xb"]),W_=r["default"].extend({name:P["Xb"],functional:!0,props:z_,render:function(t,e){var n,r=e.data,i=e.props,a=i.size,o=i.animation,s=i.variant;return t("div",Object(pt["a"])(r,{staticClass:"b-skeleton",style:{width:a||i.width,height:a||i.height},class:(n={},V_(n,"b-skeleton-".concat(i.type),!0),V_(n,"b-skeleton-animate-".concat(o),o),V_(n,"bg-".concat(s),s),n)}))}});function U_(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function G_(t){for(var e=1;e0}}});function eg(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var ng={stacked:Object(I["c"])(E["j"],!1)},rg=r["default"].extend({props:ng,computed:{isStacked:function(){var t=this.stacked;return""===t||t},isStackedAlways:function(){return!0===this.isStacked},stackedTableClasses:function(){var t=this.isStackedAlways;return eg({"b-table-stacked":t},"b-table-stacked-".concat(this.stacked),!t&&this.isStacked)}}});function ig(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ag(t){for(var e=1;e0&&!this.computedBusy,[this.tableClass,{"table-striped":this.striped,"table-hover":t,"table-dark":this.dark,"table-bordered":this.bordered,"table-borderless":this.borderless,"table-sm":this.small,border:this.outlined,"b-table-fixed":this.fixed,"b-table-caption-top":this.captionTop,"b-table-no-border-collapse":this.noBorderCollapse},e?"".concat(this.dark?"bg":"table","-").concat(e):"",this.stackedTableClasses,this.selectableTableClasses]},tableAttrs:function(){var t=this.computedItems,e=this.filteredItems,n=this.computedFields,r=this.selectableTableAttrs,i=this.isTableSimple?{}:{"aria-busy":this.computedBusy?"true":"false","aria-colcount":Object(mt["g"])(n.length),"aria-describedby":this.bvAttrs["aria-describedby"]||this.$refs.caption?this.captionId:null},a=t&&e&&e.length>t.length?Object(mt["g"])(e.length):null;return ag(ag(ag({"aria-rowcount":a},this.bvAttrs),{},{id:this.safeId(),role:"table"},i),r)}},render:function(t){var e=this.wrapperClasses,n=this.renderCaption,r=this.renderColgroup,i=this.renderThead,a=this.renderTbody,o=this.renderTfoot,s=[];this.isTableSimple?s.push(this.normalizeSlot()):(s.push(n?n():null),s.push(r?r():null),s.push(i?i():null),s.push(a?a():null),s.push(o?o():null));var u=t("table",{staticClass:"table b-table",class:this.tableClasses,attrs:this.tableAttrs,key:"b-table"},s.filter(c["a"]));return e.length>0?t("div",{class:e,style:this.wrapperStyles,key:"wrap"},[u]):u}});function ug(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function lg(t){for(var e=1;e0},_g=Object(I["d"])({animation:Object(I["c"])(E["u"]),columns:Object(I["c"])(E["n"],5,vg),hideHeader:Object(I["c"])(E["g"],!1),rows:Object(I["c"])(E["n"],3,vg),showFooter:Object(I["c"])(E["g"],!1),tableProps:Object(I["c"])(E["q"],{})},P["ac"]),gg=r["default"].extend({name:P["ac"],functional:!0,props:_g,render:function(t,e){var n=e.props,r=n.animation,i=n.columns,a=t("th",[t(W_,{props:{animation:r}})]),o=t("tr",Object(ue["c"])(i,a)),s=t("td",[t(W_,{props:{width:"75%",animation:r}})]),c=t("tr",Object(ue["c"])(i,s)),u=t("tbody",Object(ue["c"])(n.rows,c)),l=n.hideHeader?t():t("thead",[o]),d=n.showFooter?t("tfoot",[o]):t();return t(hg,{props:mg({},n.tableProps)},[l,u,d])}}),yg=Object(I["d"])({loading:Object(I["c"])(E["g"],!1)},P["bc"]),Og=r["default"].extend({name:P["bc"],functional:!0,props:yg,render:function(t,e){var n=e.data,r=e.props,i=e.slots,a=e.scopedSlots,o=i(),s=a||{},c={};return r.loading?t("div",Object(pt["a"])(n,{attrs:{role:"alert","aria-live":"polite","aria-busy":!0},staticClass:"b-skeleton-wrapper",key:"loading"}),Object(pr["b"])(H["F"],c,s,o)):Object(pr["b"])(H["i"],c,s,o)}}),jg=L({components:{BSkeleton:W_,BSkeletonIcon:K_,BSkeletonImg:Q_,BSkeletonTable:gg,BSkeletonWrapper:Og}}),wg=L({components:{BSpinner:hb}});function Mg(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Lg(t){for(var e=1;e0?t:null},$g=function(t){return Object(u["p"])(t)||Ag(t)>0},Fg=Object(I["d"])({colspan:Object(I["c"])(E["p"],null,$g),rowspan:Object(I["c"])(E["p"],null,$g),stackedHeading:Object(I["c"])(E["u"]),stickyColumn:Object(I["c"])(E["g"],!1),variant:Object(I["c"])(E["u"])},P["fc"]),Ig=r["default"].extend({name:P["fc"],mixins:[er["a"],sl["a"],B["a"]],inject:{bvTableTr:{default:function(){return{}}}},inheritAttrs:!1,props:Fg,computed:{tag:function(){return"td"},inTbody:function(){return this.bvTableTr.inTbody},inThead:function(){return this.bvTableTr.inThead},inTfoot:function(){return this.bvTableTr.inTfoot},isDark:function(){return this.bvTableTr.isDark},isStacked:function(){return this.bvTableTr.isStacked},isStackedCell:function(){return this.inTbody&&this.isStacked},isResponsive:function(){return this.bvTableTr.isResponsive},isStickyHeader:function(){return this.bvTableTr.isStickyHeader},hasStickyHeader:function(){return this.bvTableTr.hasStickyHeader},isStickyColumn:function(){return!this.isStacked&&(this.isResponsive||this.hasStickyHeader)&&this.stickyColumn},rowVariant:function(){return this.bvTableTr.variant},headVariant:function(){return this.bvTableTr.headVariant},footVariant:function(){return this.bvTableTr.footVariant},tableVariant:function(){return this.bvTableTr.tableVariant},computedColspan:function(){return Ag(this.colspan)},computedRowspan:function(){return Ag(this.rowspan)},cellClasses:function(){var t=this.variant,e=this.headVariant,n=this.isStickyColumn;return(!t&&this.isStickyHeader&&!e||!t&&n&&this.inTfoot&&!this.footVariant||!t&&n&&this.inThead&&!e||!t&&n&&this.inTbody)&&(t=this.rowVariant||this.tableVariant||"b-table-default"),[t?"".concat(this.isDark?"bg":"table","-").concat(t):null,n?"b-table-sticky-column":null]},cellAttrs:function(){var t=this.stackedHeading,e=this.inThead||this.inTfoot,n=this.computedColspan,r=this.computedRowspan,i="cell",a=null;return e?(i="columnheader",a=n>0?"colspan":"col"):Object(A["t"])(this.tag,"th")&&(i="rowheader",a=r>0?"rowgroup":"row"),Eg(Eg({colspan:n,rowspan:r,role:i,scope:a},this.bvAttrs),{},{"data-label":this.isStackedCell&&!Object(u["p"])(t)?Object(mt["g"])(t):null})}},render:function(t){var e=[this.normalizeSlot()];return t(this.tag,{class:this.cellClasses,attrs:this.cellAttrs,on:this.bvListeners},[this.isStackedCell?t("div",[e]):e])}});function Bg(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Rg="busy",Ng=C["gb"]+Rg,Vg=Bg({},Rg,Object(I["c"])(E["g"],!1)),zg=r["default"].extend({props:Vg,data:function(){return{localBusy:!1}},computed:{computedBusy:function(){return this[Rg]||this.localBusy}},watch:{localBusy:function(t,e){t!==e&&this.$emit(Ng,t)}},methods:{stopIfBusy:function(t){return!!this.computedBusy&&(Object(le["f"])(t),!0)},renderBusy:function(){var t=this.tbodyTrClass,e=this.tbodyTrAttr,n=this.$createElement;return this.computedBusy&&this.hasNormalizedSlot(H["bb"])?n(Yg,{staticClass:"b-table-busy-slot",class:[Object(u["f"])(t)?t(null,H["bb"]):t],attrs:Object(u["f"])(e)?e(null,H["bb"]):e,key:"table-busy-slot"},[n(Ig,{props:{colspan:this.computedFields.length||null}},[this.normalizeSlot(H["bb"])])]):null}}}),Wg={caption:Object(I["c"])(E["u"]),captionHtml:Object(I["c"])(E["u"])},Ug=r["default"].extend({props:Wg,computed:{captionId:function(){return this.isStacked?this.safeId("_caption_"):null}},methods:{renderCaption:function(){var t=this.caption,e=this.captionHtml,n=this.$createElement,r=n(),i=this.hasNormalizedSlot(H["cb"]);return(i||t||e)&&(r=n("caption",{attrs:{id:this.captionId},domProps:i?{}:Je(e,t),key:"caption",ref:"caption"},this.normalizeSlot(H["cb"]))),r}}}),Gg={},Jg=r["default"].extend({methods:{renderColgroup:function(){var t=this.computedFields,e=this.$createElement,n=e();return this.hasNormalizedSlot(H["db"])&&(n=e("colgroup",{key:"colgroup"},[this.normalizeSlot(H["db"],{columns:t.length,fields:t})])),n}}}),qg={emptyFilteredHtml:Object(I["c"])(E["u"]),emptyFilteredText:Object(I["c"])(E["u"],"There are no records matching your request"),emptyHtml:Object(I["c"])(E["u"]),emptyText:Object(I["c"])(E["u"],"There are no records to show"),showEmpty:Object(I["c"])(E["g"],!1)},Kg=r["default"].extend({props:qg,methods:{renderEmpty:function(){var t=this.computedItems,e=this.$createElement,n=e();if(this.showEmpty&&(!t||0===t.length)&&(!this.computedBusy||!this.hasNormalizedSlot(H["bb"]))){var r=this.computedFields,i=this.isFiltered,a=this.emptyText,o=this.emptyHtml,s=this.emptyFilteredText,c=this.emptyFilteredHtml,l=this.tbodyTrClass,d=this.tbodyTrAttr;n=this.normalizeSlot(i?H["o"]:H["n"],{emptyFilteredHtml:c,emptyFilteredText:s,emptyHtml:o,emptyText:a,fields:r,items:t}),n||(n=e("div",{class:["text-center","my-2"],domProps:i?Je(c,s):Je(o,a)})),n=e(Ig,{props:{colspan:r.length||null}},[e("div",{attrs:{role:"alert","aria-live":"polite"}},[n])]),n=e(Yg,{staticClass:"b-table-empty-row",class:[Object(u["f"])(l)?l(null,"row-empty"):l],attrs:Object(u["f"])(d)?d(null,"row-empty"):d,key:i?"b-empty-filtered-row":"b-empty-row"},[n])}return n}}}),Xg=function t(e){return Object(u["p"])(e)?"":Object(u["j"])(e)&&!Object(u["c"])(e)?Object(f["h"])(e).sort().map((function(n){return t(e[n])})).filter((function(t){return!!t})).join(" "):Object(mt["g"])(e)};function Zg(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Qg(t){for(var e=1;e3&&void 0!==arguments[3]?arguments[3]:{},i=Object(f["h"])(r).reduce((function(e,n){var i=r[n],a=i.filterByFormatted,o=Object(u["f"])(a)?a:a?i.formatter:null;return Object(u["f"])(o)&&(e[n]=o(t[n],n,t)),e}),Object(f["b"])(t)),a=Object(f["h"])(i).filter((function(t){return!iy[t]&&!(Object(u["a"])(e)&&e.length>0&&Object(ue["a"])(e,t))&&!(Object(u["a"])(n)&&n.length>0&&!Object(ue["a"])(n,t))}));return Object(f["k"])(i,a)},sy=function(t,e,n,r){return Object(u["j"])(t)?Xg(oy(t,e,n,r)):""};function cy(t){return fy(t)||dy(t)||ly(t)||uy()}function uy(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function ly(t,e){if(t){if("string"===typeof t)return hy(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?hy(t,e):void 0}}function dy(t){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}function fy(t){if(Array.isArray(t))return hy(t)}function hy(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&Object(h["a"])(py,P["ec"]),t},localFiltering:function(){return!this.hasProvider||!!this.noProviderFiltering},filteredCheck:function(){var t=this.filteredItems,e=this.localItems,n=this.localFilter;return{filteredItems:t,localItems:e,localFilter:n}},localFilterFn:function(){var t=this.filterFunction;return Object(I["b"])(t)?t:null},filteredItems:function(){var t=this.localItems,e=this.localFilter,n=this.localFiltering?this.filterFnFactory(this.localFilterFn,e)||this.defaultFilterFnFactory(e):null;return n&&t.length>0?t.filter(n):t}},watch:{computedFilterDebounce:function(t){!t&&this.$_filterTimer&&(this.clearFilterTimer(),this.localFilter=this.filterSanitize(this.filter))},filter:{deep:!0,handler:function(t){var e=this,n=this.computedFilterDebounce;this.clearFilterTimer(),n&&n>0?this.$_filterTimer=setTimeout((function(){e.localFilter=e.filterSanitize(t)}),n):this.localFilter=this.filterSanitize(t)}},filteredCheck:function(t){var e=t.filteredItems,n=t.localFilter,r=!1;n?Object(tr["a"])(n,[])||Object(tr["a"])(n,{})?r=!1:n&&(r=!0):r=!1,r&&this.$emit(C["q"],e,e.length),this.isFiltered=r},isFiltered:function(t,e){if(!1===t&&!0===e){var n=this.localItems;this.$emit(C["q"],n,n.length)}}},created:function(){var t=this;this.$_filterTimer=null,this.$nextTick((function(){t.isFiltered=Boolean(t.localFilter)}))},beforeDestroy:function(){this.clearFilterTimer()},methods:{clearFilterTimer:function(){clearTimeout(this.$_filterTimer),this.$_filterTimer=null},filterSanitize:function(t){return!this.localFiltering||this.localFilterFn||Object(u["n"])(t)||Object(u["m"])(t)?Object(o["a"])(t):""},filterFnFactory:function(t,e){if(!t||!Object(u["f"])(t)||!e||Object(tr["a"])(e,[])||Object(tr["a"])(e,{}))return null;var n=function(n){return t(n,e)};return n},defaultFilterFnFactory:function(t){var e=this;if(!t||!Object(u["n"])(t)&&!Object(u["m"])(t))return null;var n=t;if(Object(u["n"])(n)){var r=Object(mt["a"])(t).replace(s["w"],"\\s+");n=new RegExp(".*".concat(r,".*"),"i")}var i=function(t){return n.lastIndex=0,n.test(sy(t,e.computedFilterIgnored,e.computedFilterIncluded,e.computedFieldsObj))};return i}}}),vy=function(t,e){var n=null;return Object(u["n"])(e)?n={key:t,label:e}:Object(u["f"])(e)?n={key:t,formatter:e}:Object(u["j"])(e)?(n=Object(f["b"])(e),n.key=n.key||t):!1!==e&&(n={key:t}),n},_y=function(t,e){var n=[];if(Object(u["a"])(t)&&t.filter(c["a"]).forEach((function(t){if(Object(u["n"])(t))n.push({key:t,label:Object(mt["f"])(t)});else if(Object(u["j"])(t)&&t.key&&Object(u["n"])(t.key))n.push(Object(f["b"])(t));else if(Object(u["j"])(t)&&1===Object(f["h"])(t).length){var e=Object(f["h"])(t)[0],r=vy(e,t[e]);r&&n.push(r)}})),0===n.length&&Object(u["a"])(e)&&e.length>0){var r=e[0];Object(f["h"])(r).forEach((function(t){iy[t]||n.push({key:t,label:Object(mt["f"])(t)})}))}var i={};return n.filter((function(t){return!i[t.key]&&(i[t.key]=!0,t.label=Object(u["n"])(t.label)?t.label:Object(mt["f"])(t.key),!0)}))};function gy(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function yy(t){for(var e=1;e0&&t.some(c["a"])},selectableIsMultiSelect:function(){return this.isSelectable&&Object(ue["a"])(["range","multi"],this.selectMode)},selectableTableClasses:function(){var t,e=this.isSelectable;return t={"b-table-selectable":e},Hy(t,"b-table-select-".concat(this.selectMode),e),Hy(t,"b-table-selecting",this.selectableHasSelection),Hy(t,"b-table-selectable-no-click",e&&!this.hasSelectableRowClick),t},selectableTableAttrs:function(){return{"aria-multiselectable":this.isSelectable?this.selectableIsMultiSelect?"true":"false":null}}},watch:{computedItems:function(t,e){var n=!1;if(this.isSelectable&&this.selectedRows.length>0){n=Object(u["a"])(t)&&Object(u["a"])(e)&&t.length===e.length;for(var r=0;n&&r=0&&t0&&(this.selectedLastClicked=-1,this.selectedRows=this.selectableIsMultiSelect?Object(ue["c"])(t,!0):[!0])},isRowSelected:function(t){return!(!Object(u["h"])(t)||!this.selectedRows[t])},clearSelected:function(){this.selectedLastClicked=-1,this.selectedRows=[]},selectableRowClasses:function(t){if(this.isSelectable&&this.isRowSelected(t)){var e=this.selectedVariant;return Hy({"b-table-row-selected":!0},"".concat(this.dark?"bg":"table","-").concat(e),e)}return{}},selectableRowAttrs:function(t){return{"aria-selected":this.isSelectable?this.isRowSelected(t)?"true":"false":null}},setSelectionHandlers:function(t){var e=t&&!this.noSelectOnClick?"$on":"$off";this[e](C["L"],this.selectionHandler),this[e](C["q"],this.clearSelected),this[e](C["i"],this.clearSelected)},selectionHandler:function(t,e,n){if(this.isSelectable&&!this.noSelectOnClick){var r=this.selectMode,i=this.selectedLastRow,a=this.selectedRows.slice(),o=!a[e];if("single"===r)a=[];else if("range"===r)if(i>-1&&n.shiftKey){for(var s=Object(nt["e"])(i,e);s<=Object(nt["d"])(i,e);s++)a[s]=!0;o=!0}else n.ctrlKey||n.metaKey||(a=[],o=!0),this.selectedLastRow=o?e:-1;a[e]=o,this.selectedRows=a}else this.clearSelected()}}}),Ry=function(t,e){return t.map((function(t,e){return[e,t]})).sort(function(t,e){return this(t[1],e[1])||t[0]-e[0]}.bind(e)).map((function(t){return t[1]}))},Ny=function(t){return Object(u["p"])(t)?"":Object(u["i"])(t)?Object(F["b"])(t,t):t},Vy=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.sortBy,i=void 0===r?null:r,a=n.formatter,o=void 0===a?null:a,s=n.locale,c=void 0===s?void 0:s,l=n.localeOptions,f=void 0===l?{}:l,h=n.nullLast,p=void 0!==h&&h,m=d(t,i,null),b=d(e,i,null);return Object(u["f"])(o)&&(m=o(m,i,t),b=o(b,i,e)),m=Ny(m),b=Ny(b),Object(u["c"])(m)&&Object(u["c"])(b)||Object(u["h"])(m)&&Object(u["h"])(b)?mb?1:0:p&&""===m&&""!==b?1:p&&""!==m&&""===b?-1:Xg(m).localeCompare(Xg(b),c,f)};function zy(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Wy(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:document,e=Object(A["l"])();return!!(e&&""!==e.toString().trim()&&e.containsNode&&Object(A["s"])(t))&&e.containsNode(t,!0)},dO=Object(I["d"])(Fg,P["mc"]),fO=r["default"].extend({name:P["mc"],extends:Ig,props:dO,computed:{tag:function(){return"th"}}});function hO(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function pO(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&(g=String((o-1)*s+e+1));var y=Object(mt["g"])(d(t,a))||null,O=y||Object(mt["g"])(e),j=y?this.safeId("_row_".concat(y)):null,w=this.selectableRowClasses?this.selectableRowClasses(e):{},M=this.selectableRowAttrs?this.selectableRowAttrs(e):{},L=Object(u["f"])(c)?c(t,"row"):c,k=Object(u["f"])(l)?l(t,"row"):l;if(b.push(f(Yg,{class:[L,w,p?"b-table-has-details":""],props:{variant:t[ny]||null},attrs:pO(pO({id:j},k),{},{tabindex:m?"0":null,"data-pk":y||null,"aria-details":v,"aria-owns":v,"aria-rowindex":g},M),on:{mouseenter:this.rowHovered,mouseleave:this.rowUnhovered},key:"__b-table-row-".concat(O,"__"),ref:"item-rows",refInFor:!0},_)),p){var T={item:t,index:e,fields:r,toggleDetails:this.toggleDetailsFactory(h,t)};this.supportsSelectableRows&&(T.rowSelected=this.isRowSelected(e),T.selectRow=function(){return n.selectRow(e)},T.unselectRow=function(){return n.unselectRow(e)});var D=f(Ig,{props:{colspan:r.length},class:this.detailsTdClass},[this.normalizeSlot(H["ab"],T)]);i&&b.push(f("tr",{staticClass:"d-none",attrs:{"aria-hidden":"true",role:"presentation"},key:"__b-table-details-stripe__".concat(O)}));var S=Object(u["f"])(this.tbodyTrClass)?this.tbodyTrClass(t,H["ab"]):this.tbodyTrClass,Y=Object(u["f"])(this.tbodyTrAttr)?this.tbodyTrAttr(t,H["ab"]):this.tbodyTrAttr;b.push(f(Yg,{staticClass:"b-table-details",class:[S],props:{variant:t[ny]||null},attrs:pO(pO({},Y),{},{id:v,tabindex:"-1"}),key:"__b-table-details__".concat(O)},[D]))}else h&&(b.push(f()),i&&b.push(f()));return b}}});function MO(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function LO(t){for(var e=1;e0&&n&&n.length>0?Object(ue["f"])(e.children).filter((function(t){return Object(ue["a"])(n,t)})):[]},getTbodyTrIndex:function(t){if(!Object(A["s"])(t))return-1;var e="TR"===t.tagName?t:Object(A["e"])("tr",t,!0);return e?this.getTbodyTrs().indexOf(e):-1},emitTbodyRowEvent:function(t,e){if(t&&this.hasListener(t)&&e&&e.target){var n=this.getTbodyTrIndex(e.target);if(n>-1){var r=this.computedItems[n];this.$emit(t,r,n,e)}}},tbodyRowEvtStopped:function(t){return this.stopIfBusy&&this.stopIfBusy(t)},onTbodyRowKeydown:function(t){var e=t.target,n=t.keyCode;if(!this.tbodyRowEvtStopped(t)&&"TR"===e.tagName&&Object(A["q"])(e)&&0===e.tabIndex)if(Object(ue["a"])([te,se],n))Object(le["f"])(t),this.onTBodyRowClicked(t);else if(Object(ue["a"])([ce,Zt,ne,Qt],n)){var r=this.getTbodyTrIndex(e);if(r>-1){Object(le["f"])(t);var i=this.getTbodyTrs(),a=t.shiftKey;n===ne||a&&n===ce?Object(A["d"])(i[0]):n===Qt||a&&n===Zt?Object(A["d"])(i[i.length-1]):n===ce&&r>0?Object(A["d"])(i[r-1]):n===Zt&&rt.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0]&&arguments[0],n=this.computedFields,r=this.isSortable,i=this.isSelectable,a=this.headVariant,o=this.footVariant,s=this.headRowVariant,l=this.footRowVariant,d=this.$createElement;if(this.isStackedAlways||0===n.length)return d();var f=r||this.hasListener(C["u"]),h=i?this.selectAllRows:ki,p=i?this.clearSelected:ki,m=function(n,i){var a=n.label,o=n.labelHtml,s=n.variant,u=n.stickyColumn,l=n.key,m=null;n.label.trim()||n.headerTitle||(m=Object(mt["f"])(n.key));var b={};f&&(b.click=function(r){t.headClicked(r,n,e)},b.keydown=function(r){var i=r.keyCode;i!==te&&i!==se||t.headClicked(r,n,e)});var v=r?t.sortTheadThAttrs(l,n,e):{},_=r?t.sortTheadThClasses(l,n,e):null,g=r?t.sortTheadThLabel(l,n,e):null,y={class:[t.fieldClasses(n),_],props:{variant:s,stickyColumn:u},style:n.thStyle||{},attrs:qO(qO({tabindex:f&&n.sortable?"0":null,abbr:n.headerAbbr||null,title:n.headerTitle||null,"aria-colindex":i+1,"aria-label":m},t.getThValues(null,l,n.thAttr,e?"foot":"head",{})),v),on:b,key:l},O=[XO(l),XO(l.toLowerCase()),XO()];e&&(O=[ZO(l),ZO(l.toLowerCase()),ZO()].concat(NO(O)));var j={label:a,column:l,field:n,isFoot:e,selectAllRows:h,clearSelected:p},w=t.normalizeSlot(O,j)||d("div",{domProps:Je(o,a)}),M=g?d("span",{staticClass:"sr-only"}," (".concat(g,")")):null;return d(fO,y,[w,M].filter(c["a"]))},b=n.map(m).filter(c["a"]),v=[];if(e)v.push(d(Yg,{class:this.tfootTrClass,props:{variant:Object(u["p"])(l)?s:l}},b));else{var _={columns:n.length,fields:n,selectAllRows:h,clearSelected:p};v.push(this.normalizeSlot(H["hb"],_)||d()),v.push(d(Yg,{class:this.theadTrClass,props:{variant:s}},b))}return d(e?EO:RO,{class:(e?this.tfootClass:this.theadClass)||null,props:e?{footVariant:o||a||null}:{headVariant:a||null},key:e?"bv-tfoot":"bv-thead"},v)}}}),ej={},nj=r["default"].extend({methods:{renderTopRow:function(){var t=this.computedFields,e=this.stacked,n=this.tbodyTrClass,r=this.tbodyTrAttr,i=this.$createElement;return this.hasNormalizedSlot(H["kb"])&&!0!==e&&""!==e?i(Yg,{staticClass:"b-table-top-row",class:[Object(u["f"])(n)?n(null,"row-top"):n],attrs:Object(u["f"])(r)?r(null,"row-top"):r,key:"b-top-row"},[this.normalizeSlot(H["kb"],{columns:t.length,fields:t})]):i()}}});function rj(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ij(t){for(var e=1;e0&&void 0!==arguments[0])||arguments[0];if(this.$_observer&&this.$_observer.disconnect(),this.$_observer=null,e){var n=function(){t.$nextTick((function(){Object(A["D"])((function(){t.updateTabs()}))}))};this.$_observer=xi(this.$refs.content,n,{childList:!0,subtree:!1,attributes:!0,attributeFilter:["id"]})}},getTabs:function(){var t=this.registeredTabs.filter((function(t){return 0===t.$children.filter((function(t){return t._isTab})).length})),e=[];if(i["i"]&&t.length>0){var n=t.map((function(t){return"#".concat(t.safeId())})).join(", ");e=Object(A["F"])(n,this.$el).map((function(t){return t.id})).filter(c["a"])}return Ry(t,(function(t,n){return e.indexOf(t.safeId())-e.indexOf(n.safeId())}))},updateTabs:function(){var t=this.getTabs(),e=t.indexOf(t.slice().reverse().find((function(t){return t.localActive&&!t.disabled})));if(e<0){var n=this.currentTab;n>=t.length?e=t.indexOf(t.slice().reverse().find(Tj)):t[n]&&!t[n].disabled&&(e=n)}e<0&&(e=t.indexOf(t.find(Tj))),t.forEach((function(t,n){t.localActive=n===e})),this.tabs=t,this.currentTab=e},getButtonForTab:function(t){return(this.$refs.buttons||[]).find((function(e){return e.tab===t}))},updateButton:function(t){var e=this.getButtonForTab(t);e&&e.$forceUpdate&&e.$forceUpdate()},activateTab:function(t){var e=this.currentTab,n=this.tabs,r=!1;if(t){var i=n.indexOf(t);if(i!==e&&i>-1&&!t.disabled){var a=new po["a"](C["a"],{cancelable:!0,vueTarget:this,componentId:this.safeId()});this.$emit(a.type,i,e,a),a.defaultPrevented||(this.currentTab=i,r=!0)}}return r||this[Lj]===e||this.$emit(kj,e),r},deactivateTab:function(t){return!!t&&this.activateTab(this.tabs.filter((function(e){return e!==t})).find(Tj))},focusButton:function(t){var e=this;this.$nextTick((function(){Object(A["d"])(e.getButtonForTab(t))}))},emitTabClick:function(t,e){Object(u["d"])(e)&&t&&t.$emit&&!t.disabled&&t.$emit(C["f"],e)},clickTab:function(t,e){this.activateTab(t),this.emitTabClick(t,e)},firstTab:function(t){var e=this.tabs.find(Tj);this.activateTab(e)&&t&&(this.focusButton(e),this.emitTabClick(e,t))},previousTab:function(t){var e=Object(nt["d"])(this.currentTab,0),n=this.tabs.slice(0,e).reverse().find(Tj);this.activateTab(n)&&t&&(this.focusButton(n),this.emitTabClick(n,t))},nextTab:function(t){var e=Object(nt["d"])(this.currentTab,-1),n=this.tabs.slice(e+1).find(Tj);this.activateTab(n)&&t&&(this.focusButton(n),this.emitTabClick(n,t))},lastTab:function(t){var e=this.tabs.slice().reverse().find(Tj);this.activateTab(e)&&t&&(this.focusButton(e),this.emitTabClick(e,t))}},render:function(t){var e=this,n=this.align,r=this.card,i=this.end,a=this.fill,o=this.firstTab,s=this.justified,c=this.lastTab,u=this.nextTab,l=this.noKeyNav,d=this.noNavStyle,f=this.pills,h=this.previousTab,p=this.small,m=this.tabs,b=this.vertical,v=m.find((function(t){return t.localActive&&!t.disabled})),_=m.find((function(t){return!t.disabled})),g=m.map((function(n,r){var i,a=n.safeId,s=null;return l||(s=-1,(n===v||!v&&n===_)&&(s=null)),t(Dj,{props:{controls:a?a():null,id:n.controlledBy||(a?a("_BV_tab_button_"):null),noKeyNav:l,posInSet:r+1,setSize:m.length,tab:n,tabIndex:s},on:(i={},gj(i,C["f"],(function(t){e.clickTab(n,t)})),gj(i,C["r"],o),gj(i,C["H"],h),gj(i,C["C"],u),gj(i,C["z"],c),i),key:n[x["a"]]||r,ref:"buttons",refInFor:!0})})),y=t(gm,{class:this.localNavClass,attrs:{role:"tablist",id:this.safeId("_BV_tab_controls_")},props:{fill:a,justified:s,align:n,tabs:!d&&!f,pills:!d&&f,vertical:b,small:p,cardHeader:r&&!b},ref:"nav"},[this.normalizeSlot(H["fb"])||t(),g,this.normalizeSlot(H["eb"])||t()]);y=t("div",{class:[{"card-header":r&&!b&&!i,"card-footer":r&&!b&&i,"col-auto":b},this.navWrapperClass],key:"bv-tabs-nav"},[y]);var O=this.normalizeSlot()||[],j=t();0===O.length&&(j=t("div",{class:["tab-pane","active",{"card-body":r}],key:"bv-empty-tab"},this.normalizeSlot(H["n"])));var w=t("div",{staticClass:"tab-content",class:[{col:b},this.contentClass],attrs:{id:this.safeId("_BV_tab_container_")},key:"bv-content",ref:"content"},[O,j]);return t(this.tag,{staticClass:"tabs",class:{row:b,"no-gutters":b&&r},attrs:{id:this.safeId()}},[i?w:t(),y,i?t():w])}});function Pj(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Cj(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&void 0!==arguments[1]?arguments[1]:{};t&&!Object(h["d"])(tw)&&n(Uj(Uj({},iw(e)),{},{toastContent:t}),this._vm)}},{key:"show",value:function(t){t&&this._root.$emit(Object(le["d"])(P["pc"],C["T"]),t)}},{key:"hide",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this._root.$emit(Object(le["d"])(P["pc"],C["w"]),t)}}]),t}();t.mixin({beforeCreate:function(){this[ew]=new r(this)}}),Object(f["g"])(t.prototype,tw)||Object(f["e"])(t.prototype,tw,{get:function(){return this&&this[ew]||Object(h["a"])('"'.concat(tw,'" must be accessed from a Vue instance "this" context.'),P["pc"]),this[ew]}})},ow=L({plugins:{plugin:aw}}),sw=n("0f65"),cw=L({components:{BToast:Rj["a"],BToaster:sw["a"]},plugins:{BVToastPlugin:ow}});function uw(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function lw(t){for(var e=1;e=n){var r=this.$targets[this.$targets.length-1];this.$activeTarget!==r&&this.activate(r)}else{if(this.$activeTarget&&t0)return this.$activeTarget=null,void this.clear();for(var i=this.$offsets.length;i--;){var a=this.$activeTarget!==this.$targets[i]&&t>=this.$offsets[i]&&(Object(u["o"])(this.$offsets[i+1])||t0&&this.$root&&this.$root.$emit(Xw,t,n)}},{key:"clear",value:function(){var t=this;Object(A["F"])("".concat(this.$selector,", ").concat(Uw),this.$el).filter((function(t){return Object(A["p"])(t,Vw)})).forEach((function(e){return t.setActiveState(e,!1)}))}},{key:"setActiveState",value:function(t,e){t&&(e?Object(A["b"])(t,Vw):Object(A["A"])(t,Vw))}}],[{key:"Name",get:function(){return Rw}},{key:"Default",get:function(){return tM}},{key:"DefaultType",get:function(){return eM}}]),t}(),oM="__BV_ScrollSpy__",sM=/^\d+$/,cM=/^(auto|position|offset)$/,uM=function(t){var e={};return t.arg&&(e.element="#".concat(t.arg)),Object(f["h"])(t.modifiers).forEach((function(t){sM.test(t)?e.offset=Object(F["c"])(t,0):cM.test(t)&&(e.method=t)})),Object(u["n"])(t.value)?e.element=t.value:Object(u["h"])(t.value)?e.offset=Object(nt["g"])(t.value):Object(u["j"])(t.value)&&Object(f["h"])(t.value).filter((function(t){return!!aM.DefaultType[t]})).forEach((function(n){e[n]=t.value[n]})),e},lM=function(t,e,n){if(i["i"]){var r=uM(e);t[oM]?t[oM].updateConfig(r,n.context.$root):t[oM]=new aM(t,r,n.context.$root)}},dM=function(t){t[oM]&&(t[oM].dispose(),t[oM]=null,delete t[oM])},fM={bind:function(t,e,n){lM(t,e,n)},inserted:function(t,e,n){lM(t,e,n)},update:function(t,e,n){e.value!==e.oldValue&&lM(t,e,n)},componentUpdated:function(t,e,n){e.value!==e.oldValue&&lM(t,e,n)},unbind:function(t){dM(t)}},hM=L({directives:{VBScrollspy:fM}}),pM=L({directives:{VBVisible:si}}),mM=L({plugins:{VBHoverPlugin:Cw,VBModalPlugin:Ew,VBPopoverPlugin:c_,VBScrollspyPlugin:hM,VBTogglePlugin:ro,VBTooltipPlugin:Yw,VBVisiblePlugin:pM}}),bM="BootstrapVue",vM=M({plugins:{componentsPlugin:Pw,directivesPlugin:mM}}),_M={install:vM,NAME:bM}},"5fb2":function(t,e,n){"use strict";var r=2147483647,i=36,a=1,o=26,s=38,c=700,u=72,l=128,d="-",f=/[^\0-\u007E]/,h=/[.\u3002\uFF0E\uFF61]/g,p="Overflow: input needs wider integers to process",m=i-a,b=Math.floor,v=String.fromCharCode,_=function(t){var e=[],n=0,r=t.length;while(n=55296&&i<=56319&&n>1,t+=b(t/e);t>m*o>>1;r+=i)t=b(t/m);return b(r+(m+1)*t/(t+s))},O=function(t){var e=[];t=_(t);var n,s,c=t.length,f=l,h=0,m=u;for(n=0;n=f&&sb((r-h)/M))throw RangeError(p);for(h+=(w-f)*M,f=w,n=0;nr)throw RangeError(p);if(s==f){for(var L=h,k=i;;k+=i){var T=k<=m?a:k>=m+o?o:k-m;if(L0&&void 0!==arguments[0]?arguments[0]:"";return String(e).replace(s["o"],"")},qt=function(e,t){return e?{innerHTML:e}:t?{textContent:t}:{}};function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Kt(e){for(var t=1;t-1&&(t=t.slice(0,n).reverse(),Object(H["d"])(t[0]))},focusNext:function(e){var t=this.getItems(),n=t.indexOf(e.target);n>-1&&(t=t.slice(n+1),Object(H["d"])(t[0]))},focusLast:function(){var e=this.getItems().reverse();Object(H["d"])(e[0])},onFocusin:function(e){var t=this.$el;e.target!==t||Object(H["f"])(t,e.relatedTarget)||(Object(dt["f"])(e),this.focusFirst(e))},onKeydown:function(e){var t=e.keyCode,n=e.shiftKey;t===ct||t===it?(Object(dt["f"])(e),n?this.focusFirst(e):this.focusPrev(e)):t!==Ze&&t!==at||(Object(dt["f"])(e),n?this.focusLast(e):this.focusNext(e))}},render:function(e){var t=this.keyNav;return e("div",{staticClass:"btn-toolbar",class:{"justify-content-between":this.justify},attrs:{role:"toolbar",tabindex:t?"0":null},on:t?{focusin:this.onFocusin,keydown:this.onKeydown}:{}},[this.normalizeSlot()])}}),yn=M({components:{BButtonToolbar:vn,BBtnToolbar:vn}}),_n="gregory",On="long",jn="narrow",wn="short",kn="2-digit",Mn="numeric";function Ln(e,t){return An(e)||Dn(e,t)||Tn(e,t)||xn()}function xn(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function Tn(e,t){if(e){if("string"===typeof e)return Sn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sn(e,t):void 0}}function Sn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n1&&void 0!==arguments[1]?arguments[1]:_n;e=Object(ut["b"])(e).filter(c["a"]);var n=new Intl.DateTimeFormat(e,{calendar:t});return n.resolvedOptions().locale},Bn=function(e,t){var n=new Intl.DateTimeFormat(e,t);return n.format},Rn=function(e,t){return Fn(e)===Fn(t)},Nn=function(e){return e=Hn(e),e.setDate(1),e},zn=function(e){return e=Hn(e),e.setMonth(e.getMonth()+1),e.setDate(0),e},Wn=function(e,t){e=Hn(e);var n=e.getMonth();return e.setFullYear(e.getFullYear()+t),e.getMonth()!==n&&e.setDate(0),e},Vn=function(e){e=Hn(e);var t=e.getMonth();return e.setMonth(t-1),e.getMonth()===t&&e.setDate(0),e},Un=function(e){e=Hn(e);var t=e.getMonth();return e.setMonth(t+1),e.getMonth()===(t+2)%12&&e.setDate(0),e},Gn=function(e){return Wn(e,-1)},qn=function(e){return Wn(e,1)},Jn=function(e){return Wn(e,-10)},Kn=function(e){return Wn(e,10)},Xn=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return e=$n(e),t=$n(t)||e,n=$n(n)||e,e?en?n:e:null},Zn=["ar","az","ckb","fa","he","ks","lrc","mzn","ps","sd","te","ug","ur","yi"].map((function(e){return e.toLowerCase()})),Qn=function(e){var t=Object(me["g"])(e).toLowerCase().replace(s["A"],"").split("-"),n=t.slice(0,2).join("-"),i=t[0];return Object(ut["a"])(Zn,n)||Object(ut["a"])(Zn,i)},ei=n("3c21"),ti=n("493b"),ni=n("90ef");function ii(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ri(e){for(var t=1;tt}},dateDisabled:function(){var e=this,t=this.dateOutOfRange;return function(n){n=$n(n);var i=Fn(n);return!(!t(n)&&!e.computedDateDisabledFn(i,n))}},formatDateString:function(){return Bn(this.calendarLocale,ri(ri({year:Mn,month:kn,day:kn},this.dateFormatOptions),{},{hour:void 0,minute:void 0,second:void 0,calendar:_n}))},formatYearMonth:function(){return Bn(this.calendarLocale,{year:Mn,month:On,calendar:_n})},formatWeekdayName:function(){return Bn(this.calendarLocale,{weekday:On,calendar:_n})},formatWeekdayNameShort:function(){return Bn(this.calendarLocale,{weekday:this.weekdayHeaderFormat||wn,calendar:_n})},formatDay:function(){var e=new Intl.NumberFormat([this.computedLocale],{style:"decimal",minimumIntegerDigits:1,minimumFractionDigits:0,maximumFractionDigits:0,notation:"standard"});return function(t){return e.format(t.getDate())}},prevDecadeDisabled:function(){var e=this.computedMin;return this.disabled||e&&zn(Jn(this.activeDate))e},nextYearDisabled:function(){var e=this.computedMax;return this.disabled||e&&Nn(qn(this.activeDate))>e},nextDecadeDisabled:function(){var e=this.computedMax;return this.disabled||e&&Nn(Kn(this.activeDate))>e},calendar:function(){for(var e=[],t=this.calendarFirstDay,n=t.getFullYear(),i=t.getMonth(),r=this.calendarDaysInMonth,o=t.getDay(),a=(this.computedWeekStarts>o?7:0)-this.computedWeekStarts,s=0-a-o,c=0;c<6&&s0);n!==this.visible&&(this.visible=n,this.callback(n),this.once&&this.visible&&(this.doneOnce=!0,this.stop()))}},{key:"stop",value:function(){this.observer&&this.observer.disconnect(),this.observer=null}}]),e}(),ir=function(e){var t=e[tr];t&&t.stop&&t.stop(),delete e[tr]},rr=function(e,t,n){var i=t.value,r=t.modifiers,o={margin:"0px",once:!1,callback:i};Object(f["h"])(r).forEach((function(e){s["h"].test(e)?o.margin="".concat(e,"px"):"once"===e.toLowerCase()&&(o.once=!0)})),ir(e),e[tr]=new nr(e,o,n),e[tr]._prevModifiers=Object(f["b"])(r)},or=function(e,t,n){var i=t.value,r=t.oldValue,o=t.modifiers;o=Object(f["b"])(o),!e||i===r&&e[tr]&&Object(ei["a"])(o,e[tr]._prevModifiers)||rr(e,{value:i,modifiers:o},n)},ar=function(e){ir(e)},sr={bind:rr,componentUpdated:or,unbind:ar};function cr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ur(e){for(var t=1;t0||r.removedNodes.length>0))&&(n=!0)}n&&t()}));return i.observe(e,Tr({childList:!0,subtree:!0},n)),i};function Pr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Yr(e){for(var t=1;t0),touchStartX:0,touchDeltaX:0}},computed:{numSlides:function(){return this.slides.length}},watch:(Dr={},Cr(Dr,Fr,(function(e,t){e!==t&&this.setSlide(Object(F["c"])(e,0))})),Cr(Dr,"interval",(function(e,t){e!==t&&(e?(this.pause(!0),this.start(!1)):this.pause(!1))})),Cr(Dr,"isPaused",(function(e,t){e!==t&&this.$emit(e?Y["G"]:Y["ab"])})),Cr(Dr,"index",(function(e,t){e===t||this.isSliding||this.doSlide(e,t)})),Dr),created:function(){this.$_interval=null,this.$_animationTimeout=null,this.$_touchTimeout=null,this.$_observer=null,this.isPaused=!(Object(F["c"])(this.interval,0)>0)},mounted:function(){this.transitionEndEvent=Ur(this.$el)||null,this.updateSlides(),this.setObserver(!0)},beforeDestroy:function(){this.clearInterval(),this.clearAnimationTimeout(),this.clearTouchTimeout(),this.setObserver(!1)},methods:{clearInterval:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(){clearInterval(this.$_interval),this.$_interval=null})),clearAnimationTimeout:function(){clearTimeout(this.$_animationTimeout),this.$_animationTimeout=null},clearTouchTimeout:function(){clearTimeout(this.$_touchTimeout),this.$_touchTimeout=null},setObserver:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.$_observer&&this.$_observer.disconnect(),this.$_observer=null,e&&(this.$_observer=Ar(this.$refs.inner,this.updateSlides.bind(this),{subtree:!1,childList:!0,attributes:!0,attributeFilter:["id"]}))},setSlide:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!(r["i"]&&document.visibilityState&&document.hidden)){var i=this.noWrap,o=this.numSlides;e=Object(ne["c"])(e),0!==o&&(this.isSliding?this.$once(Y["V"],(function(){Object(H["D"])((function(){return t.setSlide(e,n)}))})):(this.direction=n,this.index=e>=o?i?o-1:0:e<0?i?0:o-1:e,i&&this.index!==e&&this.index!==this[Fr]&&this.$emit(Ir,this.index)))}},prev:function(){this.setSlide(this.index-1,"prev")},next:function(){this.setSlide(this.index+1,"next")},pause:function(e){e||(this.isPaused=!0),this.clearInterval()},start:function(e){e||(this.isPaused=!1),this.clearInterval(),this.interval&&this.numSlides>1&&(this.$_interval=setInterval(this.next,Object(ne["d"])(1e3,this.interval)))},restart:function(){this.$el.contains(Object(H["g"])())||this.start()},doSlide:function(e,t){var n=this,i=Boolean(this.interval),r=this.calcDirection(this.direction,t,e),o=r.overlayClass,a=r.dirClass,s=this.slides[t],c=this.slides[e];if(s&&c){if(this.isSliding=!0,i&&this.pause(!1),this.$emit(Y["W"],e),this.$emit(Ir,this.index),this.noAnimation)Object(H["b"])(c,"active"),Object(H["A"])(s,"active"),this.isSliding=!1,this.$nextTick((function(){return n.$emit(Y["V"],e)}));else{Object(H["b"])(c,o),Object(H["y"])(c),Object(H["b"])(s,a),Object(H["b"])(c,a);var u=!1,d=function t(){if(!u){if(u=!0,n.transitionEndEvent){var i=n.transitionEndEvent.split(/\s+/);i.forEach((function(e){return Object(dt["a"])(c,e,t,Y["cb"])}))}n.clearAnimationTimeout(),Object(H["A"])(c,a),Object(H["A"])(c,o),Object(H["b"])(c,"active"),Object(H["A"])(s,"active"),Object(H["A"])(s,a),Object(H["A"])(s,o),Object(H["G"])(s,"aria-current","false"),Object(H["G"])(c,"aria-current","true"),Object(H["G"])(s,"aria-hidden","true"),Object(H["G"])(c,"aria-hidden","false"),n.isSliding=!1,n.direction=null,n.$nextTick((function(){return n.$emit(Y["V"],e)}))}};if(this.transitionEndEvent){var l=this.transitionEndEvent.split(/\s+/);l.forEach((function(e){return Object(dt["b"])(c,e,d,Y["cb"])}))}this.$_animationTimeout=setTimeout(d,Rr)}i&&this.start(!1)}},updateSlides:function(){this.pause(!0),this.slides=Object(H["F"])(".carousel-item",this.$refs.inner);var e=this.slides.length,t=Object(ne["d"])(0,Object(ne["e"])(Object(ne["c"])(this.index),e-1));this.slides.forEach((function(n,i){var r=i+1;i===t?(Object(H["b"])(n,"active"),Object(H["G"])(n,"aria-current","true")):(Object(H["A"])(n,"active"),Object(H["G"])(n,"aria-current","false")),Object(H["G"])(n,"aria-posinset",String(r)),Object(H["G"])(n,"aria-setsize",String(e))})),this.setSlide(t),this.start(this.isPaused)},calcDirection:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return e?Br[e]:n>t?Br.next:Br.prev},handleClick:function(e,t){var n=e.keyCode;"click"!==e.type&&n!==st&&n!==et||(Object(dt["f"])(e),t())},handleSwipe:function(){var e=Object(ne["a"])(this.touchDeltaX);if(!(e<=zr)){var t=e/this.touchDeltaX;this.touchDeltaX=0,t>0?this.prev():t<0&&this.next()}},touchStart:function(e){r["e"]&&Wr[e.pointerType.toUpperCase()]?this.touchStartX=e.clientX:r["e"]||(this.touchStartX=e.touches[0].clientX)},touchMove:function(e){e.touches&&e.touches.length>1?this.touchDeltaX=0:this.touchDeltaX=e.touches[0].clientX-this.touchStartX},touchEnd:function(e){r["e"]&&Wr[e.pointerType.toUpperCase()]&&(this.touchDeltaX=e.clientX-this.touchStartX),this.handleSwipe(),this.pause(!1),this.clearTouchTimeout(),this.$_touchTimeout=setTimeout(this.start,Nr+Object(ne["d"])(1e3,this.interval))}},render:function(e){var t=this,n=this.indicators,i=this.background,o=this.noAnimation,a=this.noHoverPause,s=this.noTouch,c=this.index,u=this.isSliding,d=this.pause,l=this.restart,f=this.touchStart,p=this.touchEnd,h=this.safeId("__BV_inner_"),m=e("div",{staticClass:"carousel-inner",attrs:{id:h,role:"list"},ref:"inner"},[this.normalizeSlot()]),b=e();if(this.controls){var g=function(n,i,r){var o=function(e){u?Object(dt["f"])(e,{propagation:!1}):t.handleClick(e,r)};return e("a",{staticClass:"carousel-control-".concat(n),attrs:{href:"#",role:"button","aria-controls":h,"aria-disabled":u?"true":null},on:{click:o,keydown:o}},[e("span",{staticClass:"carousel-control-".concat(n,"-icon"),attrs:{"aria-hidden":"true"}}),e("span",{class:"sr-only"},[i])])};b=[g("prev",this.labelPrev,this.prev),g("next",this.labelNext,this.next)]}var v=e("ol",{staticClass:"carousel-indicators",directives:[{name:"show",value:n}],attrs:{id:this.safeId("__BV_indicators_"),"aria-hidden":n?"false":"true","aria-label":this.labelIndicators,"aria-owns":h}},this.slides.map((function(i,r){var o=function(e){t.handleClick(e,(function(){t.setSlide(r)}))};return e("li",{class:{active:r===c},attrs:{role:"button",id:t.safeId("__BV_indicator_".concat(r+1,"_")),tabindex:n?"0":"-1","aria-current":r===c?"true":"false","aria-label":"".concat(t.labelGotoSlide," ").concat(r+1),"aria-describedby":i.id||null,"aria-controls":h},on:{click:o,keydown:o},key:"slide_".concat(r)})}))),y={mouseenter:a?Lr:d,mouseleave:a?Lr:l,focusin:d,focusout:l,keydown:function(e){if(!/input|textarea/i.test(e.target.tagName)){var n=e.keyCode;n!==it&&n!==at||(Object(dt["f"])(e),t[n===it?"prev":"next"]())}}};return r["g"]&&!s&&(r["e"]?(y["&pointerdown"]=f,y["&pointerup"]=p):(y["&touchstart"]=f,y["&touchmove"]=this.touchMove,y["&touchend"]=p)),e("div",{staticClass:"carousel",class:{slide:!o,"carousel-fade":!o&&this.fade,"pointer-event":r["g"]&&r["e"]&&!s},style:{background:i},attrs:{role:"region",id:this.safeId(),"aria-busy":u?"true":"false"},on:y},[m,b,v])}});function Jr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Kr(e){for(var t=1;t0?(Object(H["G"])(e,Fo,i.join(" ")),Object(H["H"])(e,No,"none")):(Object(H["z"])(e,Fo),Object(H["C"])(e,No)),Object(H["D"])((function(){Xo(e,n)})),Object(ei["a"])(i,e[Eo])||(e[Eo]=i,i.forEach((function(e){n.context.$root.$emit(Uo,e)})))}},ia={bind:function(e,t,n){e[Co]=!1,e[Eo]=[],Qo(e,n),na(e,t,n)},componentUpdated:na,updated:na,unbind:function(e,t,n){Ko(e),Zo(e,n),ta(e,Po),ta(e,Yo),ta(e,Co),ta(e,Eo),Object(H["A"])(e,So),Object(H["A"])(e,Do),Object(H["z"])(e,Io),Object(H["z"])(e,Fo),Object(H["z"])(e,Bo),Object(H["C"])(e,No)}},ra=M({directives:{VBToggle:ia}}),oa=M({components:{BCollapse:To},plugins:{VBTogglePlugin:ra}}),aa=n("f0bd"),sa="top-start",ca="top-end",ua="bottom-start",da="bottom-end",la="right-start",fa="left-start",pa=n("ca88"),ha=n("6d40"),ma=i["default"].extend({data:function(){return{listenForClickOut:!1}},watch:{listenForClickOut:function(e,t){e!==t&&(Object(dt["a"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,Y["cb"]),e&&Object(dt["b"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,Y["cb"]))}},beforeCreate:function(){this.clickOutElement=null,this.clickOutEventName=null},mounted:function(){this.clickOutElement||(this.clickOutElement=document),this.clickOutEventName||(this.clickOutEventName="click"),this.listenForClickOut&&Object(dt["b"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,Y["cb"])},beforeDestroy:function(){Object(dt["a"])(this.clickOutElement,this.clickOutEventName,this._clickOutHandler,Y["cb"])},methods:{isClickOut:function(e){return!Object(H["f"])(this.$el,e.target)},_clickOutHandler:function(e){this.clickOutHandler&&this.isClickOut(e)&&this.clickOutHandler(e)}}}),ba=i["default"].extend({data:function(){return{listenForFocusIn:!1}},watch:{listenForFocusIn:function(e,t){e!==t&&(Object(dt["a"])(this.focusInElement,"focusin",this._focusInHandler,Y["cb"]),e&&Object(dt["b"])(this.focusInElement,"focusin",this._focusInHandler,Y["cb"]))}},beforeCreate:function(){this.focusInElement=null},mounted:function(){this.focusInElement||(this.focusInElement=document),this.listenForFocusIn&&Object(dt["b"])(this.focusInElement,"focusin",this._focusInHandler,Y["cb"])},beforeDestroy:function(){Object(dt["a"])(this.focusInElement,"focusin",this._focusInHandler,Y["cb"])},methods:{_focusInHandler:function(e){this.focusInHandler&&this.focusInHandler(e)}}});function ga(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function va(e){for(var t=1;t0&&void 0!==arguments[0]&&arguments[0];this.disabled||(this.visible=!1,e&&this.$once(Y["v"],this.focusToggler))},toggle:function(e){e=e||{};var t=e,n=t.type,i=t.keyCode;("click"===n||"keydown"===n&&-1!==[et,st,Ze].indexOf(i))&&(this.disabled?this.visible=!1:(this.$emit(Y["Z"],e),Object(dt["f"])(e),this.visible?this.hide(!0):this.show()))},onMousedown:function(e){Object(dt["f"])(e,{propagation:!1})},onKeydown:function(e){var t=e.keyCode;t===tt?this.onEsc(e):t===Ze?this.focusNext(e,!1):t===ct&&this.focusNext(e,!0)},onEsc:function(e){this.visible&&(this.visible=!1,Object(dt["f"])(e),this.$once(Y["v"],this.focusToggler))},onSplitClick:function(e){this.disabled?this.visible=!1:this.$emit(Y["f"],e)},hideHandler:function(e){var t=this,n=e.target;!this.visible||Object(H["f"])(this.$refs.menu,n)||Object(H["f"])(this.toggler,n)||(this.clearHideTimeout(),this.$_hideTimeout=setTimeout((function(){return t.hide()}),this.inNavbar?300:0))},clickOutHandler:function(e){this.hideHandler(e)},focusInHandler:function(e){this.hideHandler(e)},focusNext:function(e,t){var n=this,i=e.target;!this.visible||e&&Object(H["e"])(ja,i)||(Object(dt["f"])(e),this.$nextTick((function(){var e=n.getItems();if(!(e.length<1)){var r=e.indexOf(i);t&&r>0?r--:!t&&r1&&void 0!==arguments[1]?arguments[1]:null;if(Object(u["k"])(e)){var n=l(e,this.valueField),i=l(e,this.textField);return{value:Object(u["o"])(n)?t||i:n,text:Gt(String(Object(u["o"])(i)?t:i)),html:l(e,this.htmlField),disabled:Boolean(l(e,this.disabledField))}}return{value:t||e,text:Gt(String(e)),disabled:!1}},normalizeOptions:function(e){var t=this;return Object(u["a"])(e)?e.map((function(e){return t.normalizeOption(e)})):Object(u["k"])(e)?(Object(p["a"])(_s,this.$options.name),Object(f["h"])(e).map((function(n){return t.normalizeOption(e[n]||{},n)}))):[]}}});function ws(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ks(e){for(var t=1;t-1:Object(ei["a"])(t,e)},isRadio:function(){return!1}},watch:uc({},dc,(function(e,t){Object(ei["a"])(e,t)||this.setIndeterminate(e)})),mounted:function(){this.setIndeterminate(this[dc])},methods:{computedLocalCheckedWatcher:function(e,t){if(!Object(ei["a"])(e,t)){this.$emit(rc,e);var n=this.$refs.input;n&&this.$emit(lc,n.indeterminate)}},handleChange:function(e){var t=this,n=e.target,i=n.checked,r=n.indeterminate,o=this.value,a=this.uncheckedValue,s=this.computedLocalChecked;if(Object(u["a"])(s)){var c=Bs(s,o);i&&c<0?s=s.concat(o):!i&&c>-1&&(s=s.slice(0,c).concat(s.slice(c+1)))}else s=i?o:a;this.computedLocalChecked=s,this.$nextTick((function(){t.$emit(Y["d"],s),t.isGroup&&t.bvGroup.$emit(Y["d"],s),t.$emit(lc,r)}))},setIndeterminate:function(e){Object(u["a"])(this.computedLocalChecked)&&(e=!1);var t=this.$refs.input;t&&(t.indeterminate=e,this.$emit(lc,e))}}});function hc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function mc(e){for(var t=1;t0&&(c=[e("div",{staticClass:"b-form-date-controls d-flex flex-wrap",class:{"justify-content-between":c.length>1,"justify-content-end":c.length<2}},c)]);var h=e(fi,{staticClass:"b-form-date-calendar w-100",props:Zc(Zc({},Object(I["e"])(au,o)),{},{hidden:!this.isVisible,value:t,valueAsDate:!1,width:this.calendarWidth}),on:{selected:this.onSelected,input:this.onInput,context:this.onContext},scopedSlots:Object(f["k"])(a,["nav-prev-decade","nav-prev-year","nav-prev-month","nav-this-month","nav-next-month","nav-next-year","nav-next-decade"]),key:"calendar",ref:"calendar"},c);return e(Kc,{staticClass:"b-form-datepicker",props:Zc(Zc({},Object(I["e"])(su,o)),{},{formattedValue:t?this.formattedValue:"",id:this.safeId(),lang:this.computedLang,menuClass:[{"bg-dark":r,"text-light":r},this.menuClass],placeholder:s,rtl:this.isRTL,value:t}),on:{show:this.onShow,shown:this.onShown,hidden:this.onHidden},scopedSlots:Qc({},E["f"],a[E["f"]]||this.defaultButtonFn),ref:"control"},[h])}}),du=M({components:{BFormDatepicker:uu,BDatepicker:uu}});function lu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function fu(e){for(var t=1;t1&&void 0!==arguments[1])||arguments[1];return Promise.all(Object(ut["f"])(e).filter((function(e){return"file"===e.kind})).map((function(e){var n=Ou(e);if(n){if(n.isDirectory&&t)return wu(n.createReader(),"".concat(n.name,"/"));if(n.isFile)return new Promise((function(e){n.file((function(t){t.$path="",e(t)}))}))}return null})).filter(c["a"]))},wu=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return new Promise((function(i){var r=[],o=function o(){t.readEntries((function(t){0===t.length?i(Promise.all(r).then((function(e){return Object(ut["d"])(e)}))):(r.push(Promise.all(t.map((function(t){if(t){if(t.isDirectory)return e(t.createReader(),"".concat(n).concat(t.name,"/"));if(t.isFile)return new Promise((function(e){t.file((function(t){t.$path="".concat(n).concat(t.name),e(t)}))}))}return null})).filter(c["a"]))),o())}))};o()}))},ku=Object(I["d"])(Object(f["m"])(fu(fu(fu(fu(fu(fu(fu({},ni["b"]),bu),Ns),Ws),qs),Us),{},{accept:Object(I["c"])(C["u"],""),browseText:Object(I["c"])(C["u"],"Browse"),capture:Object(I["c"])(C["g"],!1),directory:Object(I["c"])(C["g"],!1),dropPlaceholder:Object(I["c"])(C["u"],"Drop files here"),fileNameFormatter:Object(I["c"])(C["l"]),multiple:Object(I["c"])(C["g"],!1),noDrop:Object(I["c"])(C["g"],!1),noDropPlaceholder:Object(I["c"])(C["u"],"Not allowed"),noTraverse:Object(I["c"])(C["g"],!1),placeholder:Object(I["c"])(C["u"],"No file chosen")})),P["S"]),Mu=i["default"].extend({name:P["S"],mixins:[ti["a"],ni["a"],mu,B["a"],zs,Js,Vs,B["a"]],inheritAttrs:!1,props:ku,data:function(){return{files:[],dragging:!1,dropAllowed:!this.noDrop,hasFocus:!1}},computed:{computedAccept:function(){var e=this.accept;return e=(e||"").trim().split(/[,\s]+/).filter(c["a"]),0===e.length?null:e.map((function(e){var t="name",n="^",i="$";s["k"].test(e)?n="":(t="type",s["y"].test(e)&&(i=".+$",e=e.slice(0,-1))),e=Object(me["a"])(e);var r=new RegExp("".concat(n).concat(e).concat(i));return{rx:r,prop:t}}))},computedCapture:function(){var e=this.capture;return!0===e||""===e||(e||null)},computedAttrs:function(){var e=this.name,t=this.disabled,n=this.required,i=this.form,r=this.computedCapture,o=this.accept,a=this.multiple,s=this.directory;return fu(fu({},this.bvAttrs),{},{type:"file",id:this.safeId(),name:e,disabled:t,required:n,form:i||null,capture:r,accept:o||null,multiple:a,directory:s,webkitdirectory:s,"aria-required":n?"true":null})},computedFileNameFormatter:function(){var e=this.fileNameFormatter;return Object(I["b"])(e)?e:this.defaultFileNameFormatter},clonedFiles:function(){return Object(a["a"])(this.files)},flattenedFiles:function(){return Object(ut["e"])(this.files)},fileNames:function(){return this.flattenedFiles.map((function(e){return e.name}))},labelContent:function(){if(this.dragging&&!this.noDrop)return this.normalizeSlot(E["l"],{allowed:this.dropAllowed})||(this.dropAllowed?this.dropPlaceholder:this.$createElement("span",{staticClass:"text-danger"},this.noDropPlaceholder));if(0===this.files.length)return this.normalizeSlot(E["X"])||this.placeholder;var e=this.flattenedFiles,t=this.clonedFiles,n=this.fileNames,i=this.computedFileNameFormatter;return this.hasNormalizedSlot(E["p"])?this.normalizeSlot(E["p"],{files:e,filesTraversed:t,names:n}):i(e,t,n)}},watch:(eu={},pu(eu,gu,(function(e){(!e||Object(u["a"])(e)&&0===e.length)&&this.reset()})),pu(eu,"files",(function(e,t){if(!Object(ei["a"])(e,t)){var n=this.multiple,i=this.noTraverse,r=!n||i?Object(ut["e"])(e):e;this.$emit(vu,n?r:r[0]||null)}})),eu),created:function(){this.$_form=null},mounted:function(){var e=Object(H["e"])("form",this.$el);e&&(Object(dt["b"])(e,"reset",this.reset,Y["db"]),this.$_form=e)},beforeDestroy:function(){var e=this.$_form;e&&Object(dt["a"])(e,"reset",this.reset,Y["db"])},methods:{isFileValid:function(e){if(!e)return!1;var t=this.computedAccept;return!t||t.some((function(t){return t.rx.test(e[t.prop])}))},isFilesArrayValid:function(e){var t=this;return Object(u["a"])(e)?e.every((function(e){return t.isFileValid(e)})):this.isFileValid(e)},defaultFileNameFormatter:function(e,t,n){return n.join(", ")},setFiles:function(e){this.dropAllowed=!this.noDrop,this.dragging=!1,this.files=this.multiple?this.directory?e:Object(ut["e"])(e):Object(ut["e"])(e).slice(0,1)},setInputFiles:function(e){try{var t=new ClipboardEvent("").clipboardData||new DataTransfer;Object(ut["e"])(Object(a["a"])(e)).forEach((function(e){delete e.$path,t.items.add(e)})),this.$refs.input.files=t.files}catch(n){}},reset:function(){try{var e=this.$refs.input;e.value="",e.type="",e.type="file"}catch(t){}this.files=[]},handleFiles:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(t){var n=e.filter(this.isFilesArrayValid);n.length>0&&(this.setFiles(n),this.setInputFiles(n))}else this.setFiles(e)},focusHandler:function(e){this.plain||"focusout"===e.type?this.hasFocus=!1:this.hasFocus=!0},onChange:function(e){var t=this,n=e.type,i=e.target,o=e.dataTransfer,a=void 0===o?{}:o,s="drop"===n;this.$emit(Y["d"],e);var c=Object(ut["f"])(a.items||[]);if(r["f"]&&c.length>0&&!Object(u["g"])(Ou(c[0])))ju(c,this.directory).then((function(e){return t.handleFiles(e,s)}));else{var d=Object(ut["f"])(i.files||a.files||[]).map((function(e){return e.$path=e.webkitRelativePath||"",e}));this.handleFiles(d,s)}},onDragenter:function(e){Object(dt["f"])(e),this.dragging=!0;var t=e.dataTransfer,n=void 0===t?{}:t;if(this.noDrop||this.disabled||!this.dropAllowed)return n.dropEffect="none",void(this.dropAllowed=!1);n.dropEffect="copy"},onDragover:function(e){Object(dt["f"])(e),this.dragging=!0;var t=e.dataTransfer,n=void 0===t?{}:t;if(this.noDrop||this.disabled||!this.dropAllowed)return n.dropEffect="none",void(this.dropAllowed=!1);n.dropEffect="copy"},onDragleave:function(e){var t=this;Object(dt["f"])(e),this.$nextTick((function(){t.dragging=!1,t.dropAllowed=!t.noDrop}))},onDrop:function(e){var t=this;Object(dt["f"])(e),this.dragging=!1,this.noDrop||this.disabled||!this.dropAllowed?this.$nextTick((function(){t.dropAllowed=!t.noDrop})):this.onChange(e)}},render:function(e){var t=this.custom,n=this.plain,i=this.size,r=this.dragging,o=this.stateClass,a=this.bvAttrs,s=e("input",{class:[{"form-control-file":n,"custom-file-input":t,focus:t&&this.hasFocus},o],style:t?{zIndex:-5}:{},attrs:this.computedAttrs,on:{change:this.onChange,focusin:this.focusHandler,focusout:this.focusHandler,reset:this.reset},ref:"input"});if(n)return s;var c=e("label",{staticClass:"custom-file-label",class:{dragging:r},attrs:{for:this.safeId(),"data-browse":this.browseText||null}},[e("span",{staticClass:"d-block form-file-text",style:{pointerEvents:"none"}},[this.labelContent])]);return e("div",{staticClass:"custom-file b-form-file",class:[pu({},"b-custom-control-".concat(i),i),o,a.class],style:a.style,attrs:{id:this.safeId("_BV_file_outer_")},on:{dragenter:this.onDragenter,dragover:this.onDragover,dragleave:this.onDragleave,drop:this.onDrop}},[s,c])}}),Lu=M({components:{BFormFile:Mu,BFile:Mu}}),xu=n("228e"),Tu=function(e){return"\\"+e},Su=function(e){e=Object(me["g"])(e);var t=e.length,n=e.charCodeAt(0);return e.split("").reduce((function(i,r,o){var a=e.charCodeAt(o);return 0===a?i+"�":127===a||a>=1&&a<=31||0===o&&a>=48&&a<=57||1===o&&a>=48&&a<=57&&45===n?i+Tu("".concat(a.toString(16)," ")):0===o&&45===a&&1===t?i+Tu(r):a>=128||45===a||95===a||a>=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+r:i+Tu(r)}),"")},Du=n("b508");function Au(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Pu(e){for(var t=1;t0||Object(f["h"])(this.labelColProps).length>0}},watch:{ariaDescribedby:function(e,t){e!==t&&this.updateAriaDescribedby(e,t)}},mounted:function(){var e=this;this.$nextTick((function(){e.updateAriaDescribedby(e.ariaDescribedby)}))},methods:{getAlignClasses:function(e,t){return Object(xu["b"])().reduce((function(n,i){var r=e[Object(I["g"])(i,"".concat(t,"Align"))]||null;return r&&n.push(["text",i,r].filter(c["a"]).join("-")),n}),[])},getColProps:function(e,t){return Object(xu["b"])().reduce((function(n,i){var r=e[Object(I["g"])(i,"".concat(t,"Cols"))];return r=""===r||(r||!1),Object(u["b"])(r)||"auto"===r||(r=Object(F["c"])(r,0),r=r>0&&r),r&&(n[i||(Object(u["b"])(r)?"col":"cols")]=r),n}),{})},updateAriaDescribedby:function(e,t){var n=this.labelFor;if(r["i"]&&n){var i=Object(H["E"])("#".concat(Su(n)),this.$refs.content);if(i){var o="aria-describedby",a=(e||"").split(s["x"]),u=(t||"").split(s["x"]),d=(Object(H["h"])(i,o)||"").split(s["x"]).filter((function(e){return!Object(ut["a"])(u,e)})).concat(a).filter((function(e,t,n){return n.indexOf(e)===t})).filter(c["a"]).join(" ").trim();d?Object(H["G"])(i,o,d):Object(H["z"])(i,o)}}},onLegendClick:function(e){if(!this.labelFor){var t=e.target,n=t?t.tagName:"";if(-1===Vu.indexOf(n)){var i=Object(H["F"])(Wu,this.$refs.content).filter(H["u"]);1===i.length&&Object(H["d"])(i[0])}}}},render:function(e){var t=this.computedState,n=this.feedbackAriaLive,i=this.isHorizontal,r=this.labelFor,o=this.normalizeSlot,a=this.safeId,s=this.tooltip,u=a(),d=!r,l=e(),f=o(E["C"])||this.label,p=f?a("_BV_label_"):null;if(f||i){var h=this.labelSize,m=this.labelColProps,b=d?"legend":"label";this.labelSrOnly?(f&&(l=e(b,{class:"sr-only",attrs:{id:p,for:r||null}},[f])),l=e(i?Iu:"div",{props:i?m:{}},[l])):l=e(i?Iu:b,{on:d?{click:this.onLegendClick}:{},props:i?Ru(Ru({},m),{},{tag:b}):{},attrs:{id:p,for:r||null,tabindex:d?"-1":null},class:[d?"bv-no-focus-ring":"",i||d?"col-form-label":"",!i&&d?"pt-0":"",i||d?"":"d-block",h?"col-form-label-".concat(h):"",this.labelAlignClasses,this.labelClass]},[f])}var g=e(),v=o(E["B"])||this.invalidFeedback,y=v?a("_BV_feedback_invalid_"):null;v&&(g=e(Cs,{props:{ariaLive:n,id:y,role:n?"alert":null,state:t,tooltip:s},attrs:{tabindex:v?"-1":null}},[v]));var _=e(),O=o(E["lb"])||this.validFeedback,j=O?a("_BV_feedback_valid_"):null;O&&(_=e(Hs,{props:{ariaLive:n,id:j,role:n?"alert":null,state:t,tooltip:s},attrs:{tabindex:O?"-1":null}},[O]));var w=e(),k=o(E["j"])||this.description,M=k?a("_BV_description_"):null;k&&(w=e(Ps,{attrs:{id:M,tabindex:"-1"}},[k]));var L=this.ariaDescribedby=[M,!1===t?y:null,!0===t?j:null].filter(c["a"]).join(" ")||null,x=e(i?Iu:"div",{props:i?this.contentColProps:{},ref:"content"},[o(E["i"],{ariaDescribedby:L,descriptionId:M,id:u,labelId:p})||e(),g,_,w]);return e(d?"fieldset":i?Fs:"div",{staticClass:"form-group",class:[{"was-validated":this.validated},this.stateClass],attrs:{id:u,disabled:d?this.disabled:null,role:d?null:"group","aria-invalid":this.computedAriaInvalid,"aria-labelledby":d&&i?p:null}},i&&d?[e(Fs,[l,x])]:[l,x])}},qu=M({components:{BFormGroup:Gu,BFormFieldset:Gu}}),Ju=i["default"].extend({computed:{selectionStart:{cache:!1,get:function(){return this.$refs.input.selectionStart},set:function(e){this.$refs.input.selectionStart=e}},selectionEnd:{cache:!1,get:function(){return this.$refs.input.selectionEnd},set:function(e){this.$refs.input.selectionEnd=e}},selectionDirection:{cache:!1,get:function(){return this.$refs.input.selectionDirection},set:function(e){this.$refs.input.selectionDirection=e}}},methods:{select:function(){var e;(e=this.$refs.input).select.apply(e,arguments)},setSelectionRange:function(){var e;(e=this.$refs.input).setSelectionRange.apply(e,arguments)},setRangeText:function(){var e;(e=this.$refs.input).setRangeText.apply(e,arguments)}}});function Ku(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Xu(e){for(var t=1;t2&&void 0!==arguments[2]&&arguments[2];return e=Object(me["g"])(e),!this.hasFormatter||this.lazyFormatter&&!n||(e=this.formatter(e,t)),e},modifyValue:function(e){return e=Object(me["g"])(e),this.trim&&(e=e.trim()),this.number&&(e=Object(F["b"])(e,e)),e},updateValue:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.lazy;if(!i||n){this.clearDebounce();var r=function(){if(e=t.modifyValue(e),e!==t.vModelValue)t.vModelValue=e,t.$emit(id,e);else if(t.hasFormatter){var n=t.$refs.input;n&&e!==n.value&&(n.value=e)}},o=this.computedDebounce;o>0&&!i&&!n?this.$_inputDebounceTimer=setTimeout(r,o):r()}},onInput:function(e){if(!e.target.composing){var t=e.target.value,n=this.formatValue(t,e);!1===n||e.defaultPrevented?Object(dt["f"])(e,{propagation:!1}):(this.localValue=n,this.updateValue(n),this.$emit(Y["y"],n))}},onChange:function(e){var t=e.target.value,n=this.formatValue(t,e);!1===n||e.defaultPrevented?Object(dt["f"])(e,{propagation:!1}):(this.localValue=n,this.updateValue(n,!0),this.$emit(Y["d"],n))},onBlur:function(e){var t=e.target.value,n=this.formatValue(t,e,!0);!1!==n&&(this.localValue=Object(me["g"])(this.modifyValue(n)),this.updateValue(n,!0)),this.$emit(Y["b"],e)},focus:function(){this.disabled||Object(H["d"])(this.$el)},blur:function(){this.disabled||Object(H["c"])(this.$el)}}}),ad=i["default"].extend({computed:{validity:{cache:!1,get:function(){return this.$refs.input.validity}},validationMessage:{cache:!1,get:function(){return this.$refs.input.validationMessage}},willValidate:{cache:!1,get:function(){return this.$refs.input.willValidate}}},methods:{setCustomValidity:function(){var e;return(e=this.$refs.input).setCustomValidity.apply(e,arguments)},checkValidity:function(){var e;return(e=this.$refs.input).checkValidity.apply(e,arguments)},reportValidity:function(){var e;return(e=this.$refs.input).reportValidity.apply(e,arguments)}}}),sd=n("bc9a");function cd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ud(e){for(var t=1;t=n?"full":t>=n-.5?"half":"empty",d={variant:o,disabled:a,readonly:s};return e("span",{staticClass:"b-rating-star",class:{focused:i&&t===n||!Object(F["c"])(t)&&n===c,"b-rating-star-empty":"empty"===u,"b-rating-star-half":"half"===u,"b-rating-star-full":"full"===u},attrs:{tabindex:a||s?null:"-1"},on:{click:this.onClick}},[e("span",{staticClass:"b-rating-icon"},[this.normalizeSlot(u,d)])])}}),Pd=Object(I["d"])(Object(f["m"])(_d(_d(_d(_d(_d({},ni["b"]),kd),Object(f["j"])(Ns,["required","autofocus"])),Us),{},{color:Object(I["c"])(C["u"]),iconClear:Object(I["c"])(C["u"],"x"),iconEmpty:Object(I["c"])(C["u"],"star"),iconFull:Object(I["c"])(C["u"],"star-fill"),iconHalf:Object(I["c"])(C["u"],"star-half"),inline:Object(I["c"])(C["g"],!1),locale:Object(I["c"])(C["f"]),noBorder:Object(I["c"])(C["g"],!1),precision:Object(I["c"])(C["p"]),readonly:Object(I["c"])(C["g"],!1),showClear:Object(I["c"])(C["g"],!1),showValue:Object(I["c"])(C["g"],!1),showValueMax:Object(I["c"])(C["g"],!1),stars:Object(I["c"])(C["p"],Td,(function(e){return Object(F["c"])(e)>=xd})),variant:Object(I["c"])(C["u"])})),P["Y"]),Yd=i["default"].extend({name:P["Y"],components:{BIconStar:Ie,BIconStarHalf:Re,BIconStarFill:Be,BIconX:Ne},mixins:[ni["a"],wd,Gs],props:Pd,data:function(){var e=Object(F["b"])(this[Md],null),t=Sd(this.stars);return{localValue:Object(u["g"])(e)?null:Dd(e,0,t),hasFocus:!1}},computed:{computedStars:function(){return Sd(this.stars)},computedRating:function(){var e=Object(F["b"])(this.localValue,0),t=Object(F["c"])(this.precision,3);return Dd(Object(F["b"])(e.toFixed(t)),0,this.computedStars)},computedLocale:function(){var e=Object(ut["b"])(this.locale).filter(c["a"]),t=new Intl.NumberFormat(e);return t.resolvedOptions().locale},isInteractive:function(){return!this.disabled&&!this.readonly},isRTL:function(){return Qn(this.computedLocale)},formattedRating:function(){var e=Object(F["c"])(this.precision),t=this.showValueMax,n=this.computedLocale,i={notation:"standard",minimumFractionDigits:isNaN(e)?0:e,maximumFractionDigits:isNaN(e)?3:e},r=this.computedStars.toLocaleString(n),o=this.localValue;return o=Object(u["g"])(o)?t?"-":"":o.toLocaleString(n,i),t?"".concat(o,"/").concat(r):o}},watch:(ld={},Od(ld,Md,(function(e,t){if(e!==t){var n=Object(F["b"])(e,null);this.localValue=Object(u["g"])(n)?null:Dd(n,0,this.computedStars)}})),Od(ld,"localValue",(function(e,t){e!==t&&e!==(this.value||0)&&this.$emit(Ld,e||null)})),Od(ld,"disabled",(function(e){e&&(this.hasFocus=!1,this.blur())})),ld),methods:{focus:function(){this.disabled||Object(H["d"])(this.$el)},blur:function(){this.disabled||Object(H["c"])(this.$el)},onKeydown:function(e){var t=e.keyCode;if(this.isInteractive&&Object(ut["a"])([it,Ze,at,ct],t)){Object(dt["f"])(e,{propagation:!1});var n=Object(F["c"])(this.localValue,0),i=this.showClear?0:1,r=this.computedStars,o=this.isRTL?-1:1;t===it?this.localValue=Dd(n-o,i,r)||null:t===at?this.localValue=Dd(n+o,i,r):t===Ze?this.localValue=Dd(n-1,i,r)||null:t===ct&&(this.localValue=Dd(n+1,i,r))}},onSelected:function(e){this.isInteractive&&(this.localValue=e)},onFocus:function(e){this.hasFocus=!!this.isInteractive&&"focus"===e.type},renderIcon:function(e){return this.$createElement(Je,{props:{icon:e,variant:this.disabled||this.color?null:this.variant||null}})},iconEmptyFn:function(){return this.renderIcon(this.iconEmpty)},iconHalfFn:function(){return this.renderIcon(this.iconHalf)},iconFullFn:function(){return this.renderIcon(this.iconFull)},iconClearFn:function(){return this.$createElement(Je,{props:{icon:this.iconClear}})}},render:function(e){var t=this,n=this.disabled,i=this.readonly,r=this.name,o=this.form,a=this.inline,s=this.variant,c=this.color,d=this.noBorder,l=this.hasFocus,f=this.computedRating,p=this.computedStars,h=this.formattedRating,m=this.showClear,b=this.isRTL,g=this.isInteractive,v=this.$scopedSlots,y=[];if(m&&!n&&!i){var _=e("span",{staticClass:"b-rating-icon"},[(v[E["v"]]||this.iconClearFn)()]);y.push(e("span",{staticClass:"b-rating-star b-rating-star-clear flex-grow-1",class:{focused:l&&0===f},attrs:{tabindex:g?"-1":null},on:{click:function(){return t.onSelected(null)}},key:"clear"},[_]))}for(var O=0;O1&&void 0!==arguments[1]?arguments[1]:null;if(Object(u["k"])(e)){var n=l(e,this.valueField),i=l(e,this.textField),r=l(e,this.optionsField,null);return Object(u["g"])(r)?{value:Object(u["o"])(n)?t||i:n,text:String(Object(u["o"])(i)?t:i),html:l(e,this.htmlField),disabled:Boolean(l(e,this.disabledField))}:{label:String(l(e,this.labelField)||i),options:this.normalizeOptions(r)}}return{value:t||e,text:String(e),disabled:!1}}}}),Vd=Object(I["d"])({disabled:Object(I["c"])(C["g"],!1),value:Object(I["c"])(C["a"],void 0,!0)},P["cb"]),Ud=i["default"].extend({name:P["cb"],functional:!0,props:Vd,render:function(e,t){var n=t.props,i=t.data,r=t.children,o=n.value,a=n.disabled;return e("option",Object(he["a"])(i,{attrs:{disabled:a},domProps:{value:o}}),r)}});function Gd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function qd(e){for(var t=1;t0?e:bl},computedInterval:function(){var e=Object(F["c"])(this.repeatInterval,0);return e>0?e:gl},computedThreshold:function(){return Object(ne["d"])(Object(F["c"])(this.repeatThreshold,vl),1)},computedStepMultiplier:function(){return Object(ne["d"])(Object(F["c"])(this.repeatStepMultiplier,yl),1)},computedPrecision:function(){var e=this.computedStep;return Object(ne["c"])(e)===e?0:(e.toString().split(".")[1]||"").length},computedMultiplier:function(){return Object(ne["f"])(10,this.computedPrecision||0)},valueAsFixed:function(){var e=this.localValue;return Object(u["g"])(e)?"":e.toFixed(this.computedPrecision)},computedLocale:function(){var e=Object(ut["b"])(this.locale).filter(c["a"]),t=new Intl.NumberFormat(e);return t.resolvedOptions().locale},computedRTL:function(){return Qn(this.computedLocale)},defaultFormatter:function(){var e=this.computedPrecision,t=new Intl.NumberFormat(this.computedLocale,{style:"decimal",useGrouping:!1,minimumIntegerDigits:1,minimumFractionDigits:e,maximumFractionDigits:e,notation:"standard"});return t.format},computedFormatter:function(){var e=this.formatterFn;return Object(I["b"])(e)?e:this.defaultFormatter},computedAttrs:function(){return al(al({},this.bvAttrs),{},{role:"group",lang:this.computedLocale,tabindex:this.disabled?null:"-1",title:this.ariaLabel})},computedSpinAttrs:function(){var e=this.spinId,t=this.localValue,n=this.computedRequired,i=this.disabled,r=this.state,o=this.computedFormatter,a=!Object(u["g"])(t);return al(al({dir:this.computedRTL?"rtl":"ltr"},this.bvAttrs),{},{id:e,role:"spinbutton",tabindex:i?null:"0","aria-live":"off","aria-label":this.ariaLabel||null,"aria-controls":this.ariaControls||null,"aria-invalid":!1===r||!a&&n?"true":null,"aria-required":n?"true":null,"aria-valuemin":Object(me["g"])(this.computedMin),"aria-valuemax":Object(me["g"])(this.computedMax),"aria-valuenow":a?t:null,"aria-valuetext":a?o(t):null})}},watch:(tl={},sl(tl,ll,(function(e){this.localValue=Object(F["b"])(e,null)})),sl(tl,"localValue",(function(e){this.$emit(fl,e)})),sl(tl,"disabled",(function(e){e&&this.clearRepeat()})),sl(tl,"readonly",(function(e){e&&this.clearRepeat()})),tl),created:function(){this.$_autoDelayTimer=null,this.$_autoRepeatTimer=null,this.$_keyIsDown=!1},beforeDestroy:function(){this.clearRepeat()},deactivated:function(){this.clearRepeat()},methods:{focus:function(){this.disabled||Object(H["d"])(this.$refs.spinner)},blur:function(){this.disabled||Object(H["c"])(this.$refs.spinner)},emitChange:function(){this.$emit(Y["d"],this.localValue)},stepValue:function(e){var t=this.localValue;if(!this.disabled&&!Object(u["g"])(t)){var n=this.computedStep*e,i=this.computedMin,r=this.computedMax,o=this.computedMultiplier,a=this.wrap;t=Object(ne["g"])((t-i)/n)*n+i+n,t=Object(ne["g"])(t*o)/o,this.localValue=t>r?a?i:r:t0&&void 0!==arguments[0]?arguments[0]:1,t=this.localValue;Object(u["g"])(t)?this.localValue=this.computedMin:this.stepValue(1*e)},stepDown:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=this.localValue;Object(u["g"])(t)?this.localValue=this.wrap?this.computedMax:this.computedMin:this.stepValue(-1*e)},onKeydown:function(e){var t=e.keyCode,n=e.altKey,i=e.ctrlKey,r=e.metaKey;if(!(this.disabled||this.readonly||n||i||r)&&Object(ut["a"])(_l,t)){if(Object(dt["f"])(e,{propagation:!1}),this.$_keyIsDown)return;this.resetTimers(),Object(ut["a"])([ct,Ze],t)?(this.$_keyIsDown=!0,t===ct?this.handleStepRepeat(e,this.stepUp):t===Ze&&this.handleStepRepeat(e,this.stepDown)):t===ot?this.stepUp(this.computedStepMultiplier):t===rt?this.stepDown(this.computedStepMultiplier):t===nt?this.localValue=this.computedMin:t===Qe&&(this.localValue=this.computedMax)}},onKeyup:function(e){var t=e.keyCode,n=e.altKey,i=e.ctrlKey,r=e.metaKey;this.disabled||this.readonly||n||i||r||Object(ut["a"])(_l,t)&&(Object(dt["f"])(e,{propagation:!1}),this.resetTimers(),this.$_keyIsDown=!1,this.emitChange())},handleStepRepeat:function(e,t){var n=this,i=e||{},r=i.type,o=i.button;if(!this.disabled&&!this.readonly){if("mousedown"===r&&o)return;this.resetTimers(),t(1);var a=this.computedThreshold,s=this.computedStepMultiplier,c=this.computedDelay,u=this.computedInterval;this.$_autoDelayTimer=setTimeout((function(){var e=0;n.$_autoRepeatTimer=setInterval((function(){t(ee.length)&&(t=e.length);for(var n=0,i=new Array(t);n0&&n.indexOf(e)===t}))},ql=function(e){return Object(u["n"])(e)?e:Object(u["d"])(e)&&e.target.value||""},Jl=function(){return{all:[],valid:[],invalid:[],duplicate:[]}},Kl=Object(I["d"])(Object(f["m"])($l($l($l($l($l($l({},ni["b"]),Rl),Ns),Us),qs),{},{addButtonText:Object(I["c"])(C["u"],"Add"),addButtonVariant:Object(I["c"])(C["u"],"outline-secondary"),addOnChange:Object(I["c"])(C["g"],!1),duplicateTagText:Object(I["c"])(C["u"],"Duplicate tag(s)"),ignoreInputFocusSelector:Object(I["c"])(C["f"],Vl),inputAttrs:Object(I["c"])(C["q"],{}),inputClass:Object(I["c"])(C["e"]),inputId:Object(I["c"])(C["u"]),inputType:Object(I["c"])(C["u"],"text",(function(e){return Object(ut["a"])(Wl,e)})),invalidTagText:Object(I["c"])(C["u"],"Invalid tag(s)"),limit:Object(I["c"])(C["n"]),limitTagsText:Object(I["c"])(C["u"],"Tag limit reached"),noAddOnEnter:Object(I["c"])(C["g"],!1),noOuterFocus:Object(I["c"])(C["g"],!1),noTagRemove:Object(I["c"])(C["g"],!1),placeholder:Object(I["c"])(C["u"],"Add tag..."),removeOnDelete:Object(I["c"])(C["g"],!1),separator:Object(I["c"])(C["f"]),tagClass:Object(I["c"])(C["e"]),tagPills:Object(I["c"])(C["g"],!1),tagRemoveLabel:Object(I["c"])(C["u"],"Remove tag"),tagRemovedLabel:Object(I["c"])(C["u"],"Tag removed"),tagValidator:Object(I["c"])(C["l"]),tagVariant:Object(I["c"])(C["u"],"secondary")})),P["gb"]),Xl=i["default"].extend({name:P["gb"],mixins:[ni["a"],Bl,zs,Gs,Js,B["a"]],props:Kl,data:function(){return{hasFocus:!1,newTag:"",tags:[],removedTags:[],tagsState:Jl()}},computed:{computedInputId:function(){return this.inputId||this.safeId("__input__")},computedInputType:function(){return Object(ut["a"])(Wl,this.inputType)?this.inputType:"text"},computedInputAttrs:function(){var e=this.disabled,t=this.form;return $l($l({},this.inputAttrs),{},{id:this.computedInputId,value:this.newTag,disabled:e,form:t})},computedInputHandlers:function(){return{input:this.onInputInput,change:this.onInputChange,keydown:this.onInputKeydown,reset:this.reset}},computedSeparator:function(){return Object(ut["b"])(this.separator).filter(u["n"]).filter(c["a"]).join("")},computedSeparatorRegExp:function(){var e=this.computedSeparator;return e?new RegExp("[".concat(Ul(e),"]+")):null},computedJoiner:function(){var e=this.computedSeparator.charAt(0);return" "!==e?"".concat(e," "):e},computeIgnoreInputFocusSelector:function(){return Object(ut["b"])(this.ignoreInputFocusSelector).filter(c["a"]).join(",").trim()},disableAddButton:function(){var e=this,t=Object(me["h"])(this.newTag);return""===t||!this.splitTags(t).some((function(t){return!Object(ut["a"])(e.tags,t)&&e.validateTag(t)}))},duplicateTags:function(){return this.tagsState.duplicate},hasDuplicateTags:function(){return this.duplicateTags.length>0},invalidTags:function(){return this.tagsState.invalid},hasInvalidTags:function(){return this.invalidTags.length>0},isLimitReached:function(){var e=this.limit;return Object(u["h"])(e)&&e>=0&&this.tags.length>=e}},watch:(xl={},Fl(xl,Nl,(function(e){this.tags=Gl(e)})),Fl(xl,"tags",(function(e,t){Object(ei["a"])(e,this[Nl])||this.$emit(zl,e),Object(ei["a"])(e,t)||(e=Object(ut["b"])(e).filter(c["a"]),t=Object(ut["b"])(t).filter(c["a"]),this.removedTags=t.filter((function(t){return!Object(ut["a"])(e,t)})))})),Fl(xl,"tagsState",(function(e,t){Object(ei["a"])(e,t)||this.$emit(Y["Y"],e.valid,e.invalid,e.duplicate)})),xl),created:function(){this.tags=Gl(this[Nl])},mounted:function(){var e=this,t=Object(H["e"])("form",this.$el);t&&(Object(dt["b"])(t,"reset",this.reset,Y["db"]),this.$on(Y["eb"],(function(){Object(dt["a"])(t,"reset",e.reset,Y["db"])})))},methods:{addTag:function(e){if(e=Object(u["n"])(e)?e:this.newTag,!this.disabled&&""!==Object(me["h"])(e)&&!this.isLimitReached){var t=this.parseTags(e);if(t.valid.length>0||0===t.all.length)if(Object(H["v"])(this.getInput(),"select"))this.newTag="";else{var n=[].concat(Dl(t.invalid),Dl(t.duplicate));this.newTag=t.all.filter((function(e){return Object(ut["a"])(n,e)})).join(this.computedJoiner).concat(n.length>0?this.computedJoiner.charAt(0):"")}t.valid.length>0&&(this.tags=Object(ut["b"])(this.tags,t.valid)),this.tagsState=t,this.focus()}},removeTag:function(e){var t=this;this.disabled||(this.tags=this.tags.filter((function(t){return t!==e})),this.$nextTick((function(){t.focus()})))},reset:function(){var e=this;this.newTag="",this.tags=[],this.$nextTick((function(){e.removedTags=[],e.tagsState=Jl()}))},onInputInput:function(e){if(!(this.disabled||Object(u["d"])(e)&&e.target.composing)){var t=ql(e),n=this.computedSeparatorRegExp;this.newTag!==t&&(this.newTag=t),t=Object(me["i"])(t),n&&n.test(t.slice(-1))?this.addTag():this.tagsState=""===t?Jl():this.parseTags(t)}},onInputChange:function(e){if(!this.disabled&&this.addOnChange){var t=ql(e);this.newTag!==t&&(this.newTag=t),this.addTag()}},onInputKeydown:function(e){if(!this.disabled&&Object(u["d"])(e)){var t=e.keyCode,n=e.target.value||"";this.noAddOnEnter||t!==et?!this.removeOnDelete||t!==Ke&&t!==Xe||""!==n||(Object(dt["f"])(e,{propagation:!1}),this.tags=this.tags.slice(0,-1)):(Object(dt["f"])(e,{propagation:!1}),this.addTag())}},onClick:function(e){var t=this,n=this.computeIgnoreInputFocusSelector,i=e.target;this.disabled||Object(H["q"])(i)||n&&Object(H["e"])(n,i,!0)||this.$nextTick((function(){t.focus()}))},onFocusin:function(){this.hasFocus=!0},onFocusout:function(){this.hasFocus=!1},handleAutofocus:function(){var e=this;this.$nextTick((function(){Object(H["D"])((function(){e.autofocus&&!e.disabled&&e.focus()}))}))},focus:function(){this.disabled||Object(H["d"])(this.getInput())},blur:function(){this.disabled||Object(H["c"])(this.getInput())},splitTags:function(e){e=Object(me["g"])(e);var t=this.computedSeparatorRegExp;return(t?e.split(t):[e]).map(me["h"]).filter(c["a"])},parseTags:function(e){var t=this,n=this.splitTags(e),i={all:n,valid:[],invalid:[],duplicate:[]};return n.forEach((function(e){Object(ut["a"])(t.tags,e)||Object(ut["a"])(i.valid,e)?Object(ut["a"])(i.duplicate,e)||i.duplicate.push(e):t.validateTag(e)?i.valid.push(e):Object(ut["a"])(i.invalid,e)||i.invalid.push(e)})),i},validateTag:function(e){var t=this.tagValidator;return!Object(I["b"])(t)||t(e)},getInput:function(){return Object(H["E"])("#".concat(Su(this.computedInputId)),this.$el)},defaultRender:function(e){var t=e.addButtonText,n=e.addButtonVariant,i=e.addTag,r=e.disableAddButton,o=e.disabled,a=e.duplicateTagText,s=e.inputAttrs,u=e.inputClass,d=e.inputHandlers,l=e.inputType,f=e.invalidTagText,p=e.isDuplicate,h=e.isInvalid,m=e.isLimitReached,b=e.limitTagsText,g=e.noTagRemove,v=e.placeholder,y=e.removeTag,_=e.tagClass,O=e.tagPills,j=e.tagRemoveLabel,w=e.tagVariant,k=e.tags,M=this.$createElement,L=k.map((function(e){return e=Object(me["g"])(e),M(Sl,{class:_,props:{disabled:o,noRemove:g,pill:O,removeLabel:j,tag:"li",title:e,variant:w},on:{remove:function(){return y(e)}},key:"tags_".concat(e)},e)})),x=f&&h?this.safeId("__invalid_feedback__"):null,T=a&&p?this.safeId("__duplicate_feedback__"):null,S=b&&m?this.safeId("__limit_feedback__"):null,D=[s["aria-describedby"],x,T,S].filter(c["a"]).join(" "),A=M("input",{staticClass:"b-form-tags-input w-100 flex-grow-1 p-0 m-0 bg-transparent border-0",class:u,style:{outline:0,minWidth:"5rem"},attrs:$l($l({},s),{},{"aria-describedby":D||null,type:l,placeholder:v||null}),domProps:{value:s.value},on:d,directives:[{name:"model",value:s.value}],ref:"input"}),P=M(Mt,{staticClass:"b-form-tags-button py-0",class:{invisible:r},style:{fontSize:"90%"},props:{disabled:r||m,variant:n},on:{click:function(){return i()}},ref:"button"},[this.normalizeSlot(E["a"])||t]),Y=this.safeId("__tag_list__"),C=M("li",{staticClass:"b-from-tags-field flex-grow-1",attrs:{role:"none","aria-live":"off","aria-controls":Y},key:"tags_field"},[M("div",{staticClass:"d-flex",attrs:{role:"group"}},[A,P])]),H=M("ul",{staticClass:"b-form-tags-list list-unstyled mb-0 d-flex flex-wrap align-items-center",attrs:{id:Y},key:"tags_list"},[L,C]),$=M();if(f||a||b){var F=this.computedJoiner,I=M();x&&(I=M(Cs,{props:{id:x,forceShow:!0},key:"tags_invalid_feedback"},[this.invalidTagText,": ",this.invalidTags.join(F)]));var B=M();T&&(B=M(Ps,{props:{id:T},key:"tags_duplicate_feedback"},[this.duplicateTagText,": ",this.duplicateTags.join(F)]));var R=M();S&&(R=M(Ps,{props:{id:S},key:"tags_limit_feedback"},[b])),$=M("div",{attrs:{"aria-live":"polite","aria-atomic":"true"},key:"tags_feedback"},[I,B,R])}return[H,$]}},render:function(e){var t=this.name,n=this.disabled,i=this.required,r=this.form,o=this.tags,a=this.computedInputId,s=this.hasFocus,c=this.noOuterFocus,u=$l({tags:o.slice(),inputAttrs:this.computedInputAttrs,inputType:this.computedInputType,inputHandlers:this.computedInputHandlers,removeTag:this.removeTag,addTag:this.addTag,reset:this.reset,inputId:a,isInvalid:this.hasInvalidTags,invalidTags:this.invalidTags.slice(),isDuplicate:this.hasDuplicateTags,duplicateTags:this.duplicateTags.slice(),isLimitReached:this.isLimitReached,disableAddButton:this.disableAddButton},Object(f["k"])(this.$props,["addButtonText","addButtonVariant","disabled","duplicateTagText","form","inputClass","invalidTagText","limit","limitTagsText","noTagRemove","placeholder","required","separator","size","state","tagClass","tagPills","tagRemoveLabel","tagVariant"])),d=this.normalizeSlot(E["i"],u)||this.defaultRender(u),l=e("output",{staticClass:"sr-only",attrs:{id:this.safeId("__selected_tags__"),role:"status",for:a,"aria-live":s?"polite":"off","aria-atomic":"true","aria-relevant":"additions text"}},this.tags.join(", ")),p=e("div",{staticClass:"sr-only",attrs:{id:this.safeId("__removed_tags__"),role:"status","aria-live":s?"assertive":"off","aria-atomic":"true"}},this.removedTags.length>0?"(".concat(this.tagRemovedLabel,") ").concat(this.removedTags.join(", ")):""),h=e();if(t&&!n){var m=o.length>0;h=(m?o:[""]).map((function(n){return e("input",{class:{"sr-only":!m},attrs:{type:m?"hidden":"text",value:n,required:i,name:t,form:r},key:"tag_input_".concat(n)})}))}return e("div",{staticClass:"b-form-tags form-control h-auto",class:[{focus:s&&!c&&!n,disabled:n},this.sizeFormClass,this.stateClass],attrs:{id:this.safeId(),role:"group",tabindex:n||c?null:"-1","aria-describedby":this.safeId("__selected_tags__")},on:{click:this.onClick,focusin:this.onFocusin,focusout:this.onFocusout}},[l,p,d,h])}}),Zl=M({components:{BFormTags:Xl,BTags:Xl,BFormTag:Sl,BTag:Sl}});function Ql(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ef(e){for(var t=1;tf?s:"".concat(f,"px")}},render:function(e){return e("textarea",{class:this.computedClass,style:this.computedStyle,directives:[{name:"b-visible",value:this.visibleCallback,modifiers:{640:!0}}],attrs:this.computedAttrs,domProps:{value:this.localValue},on:this.computedListeners,ref:"input"})}}),af=M({components:{BFormTextarea:of,BTextarea:of}});function sf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function cf(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,i=new Array(t);n1&&void 0!==arguments[1]&&arguments[1];if(Object(u["g"])(t)||Object(u["g"])(n)||r&&Object(u["g"])(i))return"";var o=[t,n,r?i:0];return o.map(wf).join(":")},Lf=Object(I["d"])(Object(f["m"])(cf(cf(cf(cf({},ni["b"]),yf),Object(f["k"])(Ol,["labelIncrement","labelDecrement"])),{},{ariaLabelledby:Object(I["c"])(C["u"]),disabled:Object(I["c"])(C["g"],!1),hidden:Object(I["c"])(C["g"],!1),hideHeader:Object(I["c"])(C["g"],!1),hour12:Object(I["c"])(C["g"],null),labelAm:Object(I["c"])(C["u"],"AM"),labelAmpm:Object(I["c"])(C["u"],"AM/PM"),labelHours:Object(I["c"])(C["u"],"Hours"),labelMinutes:Object(I["c"])(C["u"],"Minutes"),labelNoTimeSelected:Object(I["c"])(C["u"],"No time selected"),labelPm:Object(I["c"])(C["u"],"PM"),labelSeconds:Object(I["c"])(C["u"],"Seconds"),labelSelected:Object(I["c"])(C["u"],"Selected time"),locale:Object(I["c"])(C["f"]),minutesStep:Object(I["c"])(C["p"],1),readonly:Object(I["c"])(C["g"],!1),secondsStep:Object(I["c"])(C["p"],1),showSeconds:Object(I["c"])(C["g"],!1)})),P["oc"]),xf=i["default"].extend({name:P["oc"],mixins:[ni["a"],vf,B["a"]],props:Lf,data:function(){var e=kf(this[_f]||"");return{modelHours:e.hours,modelMinutes:e.minutes,modelSeconds:e.seconds,modelAmpm:e.ampm,isLive:!1}},computed:{computedHMS:function(){var e=this.modelHours,t=this.modelMinutes,n=this.modelSeconds;return Mf({hours:e,minutes:t,seconds:n},this.showSeconds)},resolvedOptions:function(){var e=Object(ut["b"])(this.locale).filter(c["a"]),t={hour:jf,minute:jf,second:jf};Object(u["p"])(this.hour12)||(t.hour12=!!this.hour12);var n=new Intl.DateTimeFormat(e,t),i=n.resolvedOptions(),r=i.hour12||!1,o=i.hourCycle||(r?"h12":"h23");return{locale:i.locale,hour12:r,hourCycle:o}},computedLocale:function(){return this.resolvedOptions.locale},computedLang:function(){return(this.computedLocale||"").replace(/-u-.*$/,"")},computedRTL:function(){return Qn(this.computedLang)},computedHourCycle:function(){return this.resolvedOptions.hourCycle},is12Hour:function(){return!!this.resolvedOptions.hour12},context:function(){return{locale:this.computedLocale,isRTL:this.computedRTL,hourCycle:this.computedHourCycle,hour12:this.is12Hour,hours:this.modelHours,minutes:this.modelMinutes,seconds:this.showSeconds?this.modelSeconds:0,value:this.computedHMS,formatted:this.formattedTimeString}},valueId:function(){return this.safeId()||null},computedAriaLabelledby:function(){return[this.ariaLabelledby,this.valueId].filter(c["a"]).join(" ")||null},timeFormatter:function(){var e={hour12:this.is12Hour,hourCycle:this.computedHourCycle,hour:jf,minute:jf,timeZone:"UTC"};return this.showSeconds&&(e.second=jf),Bn(this.computedLocale,e)},numberFormatter:function(){var e=new Intl.NumberFormat(this.computedLocale,{style:"decimal",minimumIntegerDigits:2,minimumFractionDigits:0,maximumFractionDigits:0,notation:"standard"});return e.format},formattedTimeString:function(){var e=this.modelHours,t=this.modelMinutes,n=this.showSeconds&&this.modelSeconds||0;return this.computedHMS?this.timeFormatter(Hn(Date.UTC(0,0,1,e,t,n))):this.labelNoTimeSelected||" "},spinScopedSlots:function(){var e=this.$createElement;return{increment:function(t){var n=t.hasFocus;return e(Pe,{props:{scale:n?1.5:1.25},attrs:{"aria-hidden":"true"}})},decrement:function(t){var n=t.hasFocus;return e(Pe,{props:{flipV:!0,scale:n?1.5:1.25},attrs:{"aria-hidden":"true"}})}}}},watch:(nf={},uf(nf,_f,(function(e,t){if(e!==t&&!Object(ei["a"])(kf(e),kf(this.computedHMS))){var n=kf(e),i=n.hours,r=n.minutes,o=n.seconds,a=n.ampm;this.modelHours=i,this.modelMinutes=r,this.modelSeconds=o,this.modelAmpm=a}})),uf(nf,"computedHMS",(function(e,t){e!==t&&this.$emit(Of,e)})),uf(nf,"context",(function(e,t){Object(ei["a"])(e,t)||this.$emit(Y["h"],e)})),uf(nf,"modelAmpm",(function(e,t){var n=this;if(e!==t){var i=Object(u["g"])(this.modelHours)?0:this.modelHours;this.$nextTick((function(){0===e&&i>11?n.modelHours=i-12:1===e&&i<12&&(n.modelHours=i+12)}))}})),uf(nf,"modelHours",(function(e,t){e!==t&&(this.modelAmpm=e>11?1:0)})),nf),created:function(){var e=this;this.$nextTick((function(){e.$emit(Y["h"],e.context)}))},mounted:function(){this.setLive(!0)},activated:function(){this.setLive(!0)},deactivated:function(){this.setLive(!1)},beforeDestroy:function(){this.setLive(!1)},methods:{focus:function(){this.disabled||Object(H["d"])(this.$refs.spinners[0])},blur:function(){if(!this.disabled){var e=Object(H["g"])();Object(H["f"])(this.$el,e)&&Object(H["c"])(e)}},formatHours:function(e){var t=this.computedHourCycle;return e=this.is12Hour&&e>12?e-12:e,e=0===e&&"h12"===t?12:0===e&&"h24"===t?24:12===e&&"h11"===t?0:e,this.numberFormatter(e)},formatMinutes:function(e){return this.numberFormatter(e)},formatSeconds:function(e){return this.numberFormatter(e)},formatAmpm:function(e){return 0===e?this.labelAm:1===e?this.labelPm:""},setHours:function(e){this.modelHours=e},setMinutes:function(e){this.modelMinutes=e},setSeconds:function(e){this.modelSeconds=e},setAmpm:function(e){this.modelAmpm=e},onSpinLeftRight:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.type,n=e.keyCode;if(!this.disabled&&"keydown"===t&&(n===it||n===at)){Object(dt["f"])(e);var i=this.$refs.spinners||[],r=i.map((function(e){return!!e.hasFocus})).indexOf(!0);r+=n===it?-1:1,r=r>=i.length?0:r<0?i.length-1:r,Object(H["d"])(i[r])}},setLive:function(e){var t=this;e?this.$nextTick((function(){Object(H["D"])((function(){t.isLive=!0}))})):this.isLive=!1}},render:function(e){var t=this;if(this.hidden)return e();var n=this.valueId,i=this.computedAriaLabelledby,r=[],o=function(i,o,a){var s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},c=t.safeId("_spinbutton_".concat(o,"_"))||null;return r.push(c),e(jl,{class:a,props:cf({id:c,placeholder:"--",vertical:!0,required:!0,disabled:t.disabled,readonly:t.readonly,locale:t.computedLocale,labelIncrement:t.labelIncrement,labelDecrement:t.labelDecrement,wrap:!0,ariaControls:n,min:0},s),scopedSlots:t.spinScopedSlots,on:{change:i},key:o,ref:"spinners",refInFor:!0})},a=function(){return e("div",{staticClass:"d-flex flex-column",class:{"text-muted":t.disabled||t.readonly},attrs:{"aria-hidden":"true"}},[e(Ye,{props:{shiftV:4,scale:.5}}),e(Ye,{props:{shiftV:-4,scale:.5}})])},s=[];s.push(o(this.setHours,"hours","b-time-hours",{value:this.modelHours,max:23,step:1,formatterFn:this.formatHours,ariaLabel:this.labelHours})),s.push(a()),s.push(o(this.setMinutes,"minutes","b-time-minutes",{value:this.modelMinutes,max:59,step:this.minutesStep||1,formatterFn:this.formatMinutes,ariaLabel:this.labelMinutes})),this.showSeconds&&(s.push(a()),s.push(o(this.setSeconds,"seconds","b-time-seconds",{value:this.modelSeconds,max:59,step:this.secondsStep||1,formatterFn:this.formatSeconds,ariaLabel:this.labelSeconds}))),this.is12Hour&&s.push(o(this.setAmpm,"ampm","b-time-ampm",{value:this.modelAmpm,max:1,formatterFn:this.formatAmpm,ariaLabel:this.labelAmpm,required:!1})),s=e("div",{staticClass:"d-flex align-items-center justify-content-center mx-auto",attrs:{role:"group",tabindex:this.disabled||this.readonly?null:"-1","aria-labelledby":i},on:{keydown:this.onSpinLeftRight,click:function(e){e.target===e.currentTarget&&t.focus()}}},s);var u=e("output",{staticClass:"form-control form-control-sm text-center",class:{disabled:this.disabled||this.readonly},attrs:{id:n,role:"status",for:r.filter(c["a"]).join(" ")||null,tabindex:this.disabled?null:"-1","aria-live":this.isLive?"polite":"off","aria-atomic":"true"},on:{click:this.focus,focus:this.focus}},[e("bdi",this.formattedTimeString),this.computedHMS?e("span",{staticClass:"sr-only"}," (".concat(this.labelSelected,") ")):""]),d=e("header",{staticClass:"b-time-header",class:{"sr-only":this.hideHeader}},[u]),l=this.normalizeSlot();return l=l?e("footer",{staticClass:"b-time-footer"},l):e(),e("div",{staticClass:"b-time d-inline-flex flex-column text-center",attrs:{role:"group",lang:this.computedLang||null,"aria-labelledby":i||null,"aria-disabled":this.disabled?"true":null,"aria-readonly":this.readonly&&!this.disabled?"true":null}},[d,s,l])}});function Tf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Sf(e){for(var t=1;t0&&a.push(e("span"," "));var c=this.labelResetButton;a.push(e(Mt,{props:{size:"sm",disabled:n||i,variant:this.resetButtonVariant},attrs:{"aria-label":c||null},on:{click:this.onResetButton},key:"reset-btn"},c))}if(!this.noCloseButton){a.length>0&&a.push(e("span"," "));var d=this.labelCloseButton;a.push(e(Mt,{props:{size:"sm",disabled:n,variant:this.closeButtonVariant},attrs:{"aria-label":d||null},on:{click:this.onCloseButton},key:"close-btn"},d))}a.length>0&&(a=[e("div",{staticClass:"b-form-date-controls d-flex flex-wrap",class:{"justify-content-between":a.length>1,"justify-content-end":a.length<2}},a)]);var l=e(xf,{staticClass:"b-form-time-control",props:Sf(Sf({},Object(I["e"])(Hf,r)),{},{value:t,hidden:!this.isVisible}),on:{input:this.onInput,context:this.onContext},ref:"time"},a);return e(Kc,{staticClass:"b-form-timepicker",props:Sf(Sf({},Object(I["e"])($f,r)),{},{id:this.safeId(),value:t,formattedValue:t?this.formattedValue:"",placeholder:o,rtl:this.isRTL,lang:this.computedLang}),on:{show:this.onShow,shown:this.onShown,hidden:this.onHidden},scopedSlots:Df({},E["f"],this.$scopedSlots[E["f"]]||this.defaultButtonFn),ref:"control"},[l])}}),Bf=M({components:{BFormTimepicker:If,BTimepicker:If}}),Rf=M({components:{BImg:Ii,BImgLazy:mr}}),Nf=Object(I["d"])({tag:Object(I["c"])(C["u"],"div")},P["tb"]),zf=i["default"].extend({name:P["tb"],functional:!0,props:Nf,render:function(e,t){var n=t.props,i=t.data,r=t.children;return e(n.tag,Object(he["a"])(i,{staticClass:"input-group-text"}),r)}}),Wf=Object(I["d"])({append:Object(I["c"])(C["g"],!1),id:Object(I["c"])(C["u"]),isText:Object(I["c"])(C["g"],!1),tag:Object(I["c"])(C["u"],"div")},P["qb"]),Vf=i["default"].extend({name:P["qb"],functional:!0,props:Wf,render:function(e,t){var n=t.props,i=t.data,r=t.children,o=n.append;return e(n.tag,Object(he["a"])(i,{class:{"input-group-append":o,"input-group-prepend":!o},attrs:{id:n.id}}),n.isText?[e(zf,r)]:r)}});function Uf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Gf(e){for(var t=1;t0&&!n[0].text?n[0]:e()}}),Jp={container:Object(I["c"])([pa["c"],C["u"]],"body"),disabled:Object(I["c"])(C["g"],!1),tag:Object(I["c"])(C["u"],"div")},Kp=i["default"].extend({name:P["xc"],mixins:[B["a"]],props:Jp,watch:{disabled:{immediate:!0,handler:function(e){e?this.unmountTarget():this.$nextTick(this.mountTarget)}}},created:function(){this.$_defaultFn=null,this.$_target=null},beforeMount:function(){this.mountTarget()},updated:function(){this.updateTarget()},beforeDestroy:function(){this.unmountTarget(),this.$_defaultFn=null},methods:{getContainer:function(){if(r["i"]){var e=this.container;return Object(u["n"])(e)?Object(H["E"])(e):e}return null},mountTarget:function(){if(!this.$_target){var e=this.getContainer();if(e){var t=document.createElement("div");e.appendChild(t),this.$_target=new qp({el:t,parent:this,propsData:{nodes:Object(ut["b"])(this.normalizeSlot())}})}}},updateTarget:function(){if(r["i"]&&this.$_target){var e=this.$scopedSlots.default;this.disabled||(e&&this.$_defaultFn!==e?this.$_target.updatedNodes=e:e||(this.$_target.updatedNodes=this.$slots.default)),this.$_defaultFn=e}},unmountTarget:function(){this.$_target&&this.$_target.$destroy(),this.$_target=null}},render:function(e){if(this.disabled){var t=Object(ut["b"])(this.normalizeSlot()).filter(c["a"]);if(t.length>0&&!t[0].text)return t[0]}return e()}});function Xp(e){return Xp="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Xp(e)}function Zp(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Qp(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};return th(this,n),i=t.call(this,e,r),Object(f["d"])(dh(i),{trigger:Object(f["l"])()}),i}return ih(n,null,[{key:"Defaults",get:function(){return Qp(Qp({},rh(fh(n),"Defaults",this)),{},{trigger:null})}}]),n}(ha["a"]),hh=1040,mh=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",bh=".sticky-top",gh=".navbar-toggler",vh=i["default"].extend({data:function(){return{modals:[],baseZIndex:null,scrollbarWidth:null,isBodyOverflowing:!1}},computed:{modalCount:function(){return this.modals.length},modalsAreOpen:function(){return this.modalCount>0}},watch:{modalCount:function(e,t){r["i"]&&(this.getScrollbarWidth(),e>0&&0===t?(this.checkScrollbar(),this.setScrollbar(),Object(H["b"])(document.body,"modal-open")):0===e&&t>0&&(this.resetScrollbar(),Object(H["A"])(document.body,"modal-open")),Object(H["G"])(document.body,"data-modal-open-count",String(e)))},modals:function(e){var t=this;this.checkScrollbar(),Object(H["D"])((function(){t.updateModals(e||[])}))}},methods:{registerModal:function(e){var t=this;e&&-1===this.modals.indexOf(e)&&(this.modals.push(e),e.$once(Y["eb"],(function(){t.unregisterModal(e)})))},unregisterModal:function(e){var t=this.modals.indexOf(e);t>-1&&(this.modals.splice(t,1),e._isBeingDestroyed||e._isDestroyed||this.resetModal(e))},getBaseZIndex:function(){if(Object(u["g"])(this.baseZIndex)&&r["i"]){var e=document.createElement("div");Object(H["b"])(e,"modal-backdrop"),Object(H["b"])(e,"d-none"),Object(H["H"])(e,"display","none"),document.body.appendChild(e),this.baseZIndex=Object(F["c"])(Object(H["k"])(e).zIndex,hh),document.body.removeChild(e)}return this.baseZIndex||hh},getScrollbarWidth:function(){if(Object(u["g"])(this.scrollbarWidth)&&r["i"]){var e=document.createElement("div");Object(H["b"])(e,"modal-scrollbar-measure"),document.body.appendChild(e),this.scrollbarWidth=Object(H["i"])(e).width-e.clientWidth,document.body.removeChild(e)}return this.scrollbarWidth||0},updateModals:function(e){var t=this,n=this.getBaseZIndex(),i=this.getScrollbarWidth();e.forEach((function(e,r){e.zIndex=n+r,e.scrollbarWidth=i,e.isTop=r===t.modals.length-1,e.isBodyOverflowing=t.isBodyOverflowing}))},resetModal:function(e){e&&(e.zIndex=this.getBaseZIndex(),e.isTop=!0,e.isBodyOverflowing=!1)},checkScrollbar:function(){var e=Object(H["i"])(document.body),t=e.left,n=e.right;this.isBodyOverflowing=t+n0&&void 0!==arguments[0]&&arguments[0];this.$_observer&&this.$_observer.disconnect(),this.$_observer=null,e&&(this.$_observer=Ar(this.$refs.content,this.checkModalOverflow.bind(this),Hh))},updateModel:function(e){e!==this[Lh]&&this.$emit(xh,e)},buildEvent:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new ph(e,Oh(Oh({cancelable:!1,target:this.$refs.modal||this.$el||null,relatedTarget:null,trigger:null},t),{},{vueTarget:this,componentId:this.modalId}))},show:function(){if(!this.isVisible&&!this.isOpening)if(this.isClosing)this.$once(Y["v"],this.show);else{this.isOpening=!0,this.$_returnFocus=this.$_returnFocus||this.getActiveElement();var e=this.buildEvent(Y["T"],{cancelable:!0});if(this.emitEvent(e),e.defaultPrevented||this.isVisible)return this.isOpening=!1,void this.updateModel(!1);this.doShow()}},hide:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(this.isVisible&&!this.isClosing){this.isClosing=!0;var t=this.buildEvent(Y["w"],{cancelable:e!==Dh,trigger:e||null});if(e===Ch?this.$emit(Y["D"],t):e===Ph?this.$emit(Y["c"],t):e===Yh&&this.$emit(Y["g"],t),this.emitEvent(t),t.defaultPrevented||!this.isVisible)return this.isClosing=!1,void this.updateModel(!0);this.setObserver(!1),this.isVisible=!1,this.updateModel(!1)}},toggle:function(e){e&&(this.$_returnFocus=e),this.isVisible?this.hide(Ah):this.show()},getActiveElement:function(){var e=Object(H["g"])(r["i"]?[document.body]:[]);return e&&e.focus?e:null},doShow:function(){var e=this;yh.modalsAreOpen&&this.noStacking?this.listenOnRootOnce(Object(dt["e"])(P["Bb"],Y["v"]),this.doShow):(yh.registerModal(this),this.isHidden=!1,this.$nextTick((function(){e.isVisible=!0,e.isOpening=!1,e.updateModel(!0),e.$nextTick((function(){e.setObserver(!0)}))})))},onBeforeEnter:function(){this.isTransitioning=!0,this.setResizeEvent(!0)},onEnter:function(){var e=this;this.isBlock=!0,Object(H["D"])((function(){Object(H["D"])((function(){e.isShow=!0}))}))},onAfterEnter:function(){var e=this;this.checkModalOverflow(),this.isTransitioning=!1,Object(H["D"])((function(){e.emitEvent(e.buildEvent(Y["U"])),e.setEnforceFocus(!0),e.$nextTick((function(){e.focusFirst()}))}))},onBeforeLeave:function(){this.isTransitioning=!0,this.setResizeEvent(!1),this.setEnforceFocus(!1)},onLeave:function(){this.isShow=!1},onAfterLeave:function(){var e=this;this.isBlock=!1,this.isTransitioning=!1,this.isModalOverflowing=!1,this.isHidden=!0,this.$nextTick((function(){e.isClosing=!1,yh.unregisterModal(e),e.returnFocusTo(),e.emitEvent(e.buildEvent(Y["v"]))}))},emitEvent:function(e){var t=e.type;this.emitOnRoot(Object(dt["e"])(P["Bb"],t),e,e.componentId),this.$emit(t,e)},onDialogMousedown:function(){var e=this,t=this.$refs.modal,n=function n(i){Object(dt["a"])(t,"mouseup",n,Y["cb"]),i.target===t&&(e.ignoreBackdropClick=!0)};Object(dt["b"])(t,"mouseup",n,Y["cb"])},onClickOut:function(e){this.ignoreBackdropClick?this.ignoreBackdropClick=!1:this.isVisible&&!this.noCloseOnBackdrop&&Object(H["f"])(document.body,e.target)&&(Object(H["f"])(this.$refs.content,e.target)||this.hide(Th))},onOk:function(){this.hide(Ch)},onCancel:function(){this.hide(Ph)},onClose:function(){this.hide(Yh)},onEsc:function(e){e.keyCode===tt&&this.isVisible&&!this.noCloseOnEsc&&this.hide(Sh)},focusHandler:function(e){var t=this.$refs.content,n=e.target;if(!(this.noEnforceFocus||!this.isTop||!this.isVisible||!t||document===n||Object(H["f"])(t,n)||this.computeIgnoreEnforceFocusSelector&&Object(H["e"])(this.computeIgnoreEnforceFocusSelector,n,!0))){var i=Object(H["n"])(this.$refs.content),r=this.$refs["bottom-trap"],o=this.$refs["top-trap"];if(r&&n===r){if(Object(H["d"])(i[0]))return}else if(o&&n===o&&Object(H["d"])(i[i.length-1]))return;Object(H["d"])(t,{preventScroll:!0})}},setEnforceFocus:function(e){this.listenDocument(e,"focusin",this.focusHandler)},setResizeEvent:function(e){this.listenWindow(e,"resize",this.checkModalOverflow),this.listenWindow(e,"orientationchange",this.checkModalOverflow)},showHandler:function(e,t){e===this.modalId&&(this.$_returnFocus=t||this.getActiveElement(),this.show())},hideHandler:function(e){e===this.modalId&&this.hide("event")},toggleHandler:function(e,t){e===this.modalId&&this.toggle(t)},modalListener:function(e){this.noStacking&&e.vueTarget!==this&&this.hide()},focusFirst:function(){var e=this;r["i"]&&Object(H["D"])((function(){var t=e.$refs.modal,n=e.$refs.content,i=e.getActiveElement();if(t&&n&&(!i||!Object(H["f"])(n,i))){var r=e.$refs["ok-button"],o=e.$refs["cancel-button"],a=e.$refs["close-button"],s=e.autoFocusButton,c=s===Ch&&r?r.$el||r:s===Ph&&o?o.$el||o:s===Yh&&a?a.$el||a:n;Object(H["d"])(c),c===n&&e.$nextTick((function(){t.scrollTop=0}))}}))},returnFocusTo:function(){var e=this.returnFocus||this.$_returnFocus||null;this.$_returnFocus=null,this.$nextTick((function(){e=Object(u["n"])(e)?Object(H["E"])(e):e,e&&(e=e.$el||e,Object(H["d"])(e))}))},checkModalOverflow:function(){if(this.isVisible){var e=this.$refs.modal;this.isModalOverflowing=e.scrollHeight>document.documentElement.clientHeight}},makeModal:function(e){var t=e();if(!this.hideHeader){var n=this.normalizeSlot(E["J"],this.slotScope);if(!n){var i=e();this.hideHeaderClose||(i=e(R["a"],{props:{content:this.headerCloseContent,disabled:this.isTransitioning,ariaLabel:this.headerCloseLabel,textVariant:this.headerCloseVariant||this.headerTextVariant},on:{click:this.onClose},ref:"close-button"},[this.normalizeSlot(E["K"])])),n=[e(this.titleTag,{staticClass:"modal-title",class:this.titleClasses,attrs:{id:this.modalTitleId},domProps:this.hasNormalizedSlot(E["M"])?{}:qt(this.titleHtml,this.title)},this.normalizeSlot(E["M"],this.slotScope)),i]}t=e("header",{staticClass:"modal-header",class:this.headerClasses,attrs:{id:this.modalHeaderId},ref:"header"},[n])}var r=e("div",{staticClass:"modal-body",class:this.bodyClasses,attrs:{id:this.modalBodyId},ref:"body"},this.normalizeSlot(E["i"],this.slotScope)),o=e();if(!this.hideFooter){var a=this.normalizeSlot(E["I"],this.slotScope);if(!a){var s=e();this.okOnly||(s=e(Mt,{props:{variant:this.cancelVariant,size:this.buttonSize,disabled:this.cancelDisabled||this.busy||this.isTransitioning},domProps:this.hasNormalizedSlot(E["H"])?{}:qt(this.cancelTitleHtml,this.cancelTitle),on:{click:this.onCancel},ref:"cancel-button"},this.normalizeSlot(E["H"])));var c=e(Mt,{props:{variant:this.okVariant,size:this.buttonSize,disabled:this.okDisabled||this.busy||this.isTransitioning},domProps:this.hasNormalizedSlot(E["L"])?{}:qt(this.okTitleHtml,this.okTitle),on:{click:this.onOk},ref:"ok-button"},this.normalizeSlot(E["L"]));a=[s,c]}o=e("footer",{staticClass:"modal-footer",class:this.footerClasses,attrs:{id:this.modalFooterId},ref:"footer"},[a])}var u=e("div",{staticClass:"modal-content",class:this.contentClass,attrs:{id:this.modalContentId,tabindex:"-1"},ref:"content"},[t,r,o]),d=e(),l=e();this.isVisible&&!this.noEnforceFocus&&(d=e("span",{attrs:{tabindex:"0"},ref:"top-trap"}),l=e("span",{attrs:{tabindex:"0"},ref:"bottom-trap"}));var f=e("div",{staticClass:"modal-dialog",class:this.dialogClasses,on:{mousedown:this.onDialogMousedown},ref:"dialog"},[d,u,l]),p=e("div",{staticClass:"modal",class:this.modalClasses,style:this.modalStyles,attrs:this.computedModalAttrs,on:{keydown:this.onEsc,click:this.onClickOut},directives:[{name:"show",value:this.isVisible}],ref:"modal"},[f]);p=e("transition",{props:{enterClass:"",enterToClass:"",enterActiveClass:"",leaveClass:"",leaveActiveClass:"",leaveToClass:""},on:{beforeEnter:this.onBeforeEnter,enter:this.onEnter,afterEnter:this.onAfterEnter,beforeLeave:this.onBeforeLeave,leave:this.onLeave,afterLeave:this.onAfterLeave}},[p]);var h=e();return!this.hideBackdrop&&this.isVisible&&(h=e("div",{staticClass:"modal-backdrop",attrs:{id:this.modalBackdropId}},this.normalizeSlot(E["G"]))),h=e(N["a"],{props:{noFade:this.noFade}},[h]),e("div",{style:this.modalOuterStyle,attrs:this.computedAttrs,key:"modal-outer-".concat(this[A["a"]])},[p,h])}},render:function(e){return this.static?this.lazy&&this.isHidden?e():this.makeModal(e):this.isHidden?e():e(Kp,[this.makeModal(e)])}}),Ih=Object(dt["d"])(P["Bb"],Y["T"]),Bh="__bv_modal_directive__",Rh=function(e){var t=e.modifiers,n=void 0===t?{}:t,i=e.arg,r=e.value;return Object(u["n"])(r)?r:Object(u["n"])(i)?i:Object(f["h"])(n).reverse()[0]},Nh=function(e){return e&&Object(H["v"])(e,".dropdown-menu > li, li.nav-item")&&Object(H["E"])("a, button",e)||e},zh=function(e){e&&"BUTTON"!==e.tagName&&(Object(H["o"])(e,"role")||Object(H["G"])(e,"role","button"),"A"===e.tagName||Object(H["o"])(e,"tabindex")||Object(H["G"])(e,"tabindex","0"))},Wh=function(e,t,n){var i=Rh(t),r=Nh(e);if(i&&r){var o=function(e){var t=e.currentTarget;if(!Object(H["r"])(t)){var r=e.type,o=e.keyCode;"click"!==r&&("keydown"!==r||o!==et&&o!==st)||n.context.$root.$emit(Ih,i,t)}};e[Bh]={handler:o,target:i,trigger:r},zh(r),Object(dt["b"])(r,"click",o,Y["db"]),"BUTTON"!==r.tagName&&"button"===Object(H["h"])(r,"role")&&Object(dt["b"])(r,"keydown",o,Y["db"])}},Vh=function(e){var t=e[Bh]||{},n=t.trigger,i=t.handler;n&&i&&(Object(dt["a"])(n,"click",i,Y["db"]),Object(dt["a"])(n,"keydown",i,Y["db"]),Object(dt["a"])(e,"click",i,Y["db"]),Object(dt["a"])(e,"keydown",i,Y["db"])),delete e[Bh]},Uh=function(e,t,n){var i=e[Bh]||{},r=Rh(t),o=Nh(e);r===i.target&&o===i.trigger||(Vh(e,t,n),Wh(e,t,n)),zh(o)},Gh=function(){},qh={inserted:Uh,updated:Gh,componentUpdated:Uh,unbind:Vh};function Jh(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Kh(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,i=new Array(t);n2&&void 0!==arguments[2]?arguments[2]:dm;if(!Object(p["d"])(sm)&&!Object(p["c"])(sm)){var r=new t({parent:e,propsData:Qh(Qh(Qh({},fm(Object(xu["c"])(P["Bb"]))),{},{hideHeaderClose:!0,hideHeader:!(n.title||n.titleHtml)},Object(f["j"])(n,Object(f["h"])(lm))),{},{lazy:!1,busy:!1,visible:!1,noStacking:!1,noEnforceFocus:!1})});return Object(f["h"])(lm).forEach((function(e){Object(u["o"])(n[e])||(r.$slots[lm[e]]=Object(ut["b"])(n[e]))})),new Promise((function(e,t){var n=!1;r.$once(Y["fb"],(function(){n||t(new Error("BootstrapVue MsgBox destroyed before resolve"))})),r.$on(Y["w"],(function(t){if(!t.defaultPrevented){var r=i(t);t.defaultPrevented||(n=!0,e(r))}}));var o=document.createElement("div");document.body.appendChild(o),r.$mount(o)}))}},i=function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;if(t&&!Object(p["c"])(sm)&&!Object(p["d"])(sm)&&Object(u["f"])(r))return n(e,Qh(Qh({},fm(i)),{},{msgBoxContent:t}),r)},r=function(){function e(t){Jh(this,e),Object(f["a"])(this,{_vm:t,_root:t.$root}),Object(f["d"])(this,{_vm:Object(f["l"])(),_root:Object(f["l"])()})}return Xh(e,[{key:"show",value:function(e){if(e&&this._root){for(var t,n=arguments.length,i=new Array(n>1?n-1:0),r=1;r1?n-1:0),r=1;r1&&void 0!==arguments[1]?arguments[1]:{},n=Qh(Qh({},t),{},{okOnly:!0,okDisabled:!1,hideFooter:!1,msgBoxContent:e});return i(this._vm,e,n,(function(){return!0}))}},{key:"msgBoxConfirm",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Qh(Qh({},t),{},{okOnly:!1,okDisabled:!1,cancelDisabled:!1,hideFooter:!1});return i(this._vm,e,n,(function(e){var t=e.trigger;return"ok"===t||"cancel"!==t&&null}))}}]),e}();e.mixin({beforeCreate:function(){this[cm]=new r(this)}}),Object(f["g"])(e.prototype,sm)||Object(f["e"])(e.prototype,sm,{get:function(){return this&&this[cm]||Object(p["a"])('"'.concat(sm,'" must be accessed from a Vue instance "this" context.'),P["Bb"]),this[cm]}})},hm=M({plugins:{plugin:pm}}),mm=M({components:{BModal:Fh},directives:{VBModal:qh},plugins:{BVModalPlugin:hm}});function bm(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var gm=function(e){return e="left"===e?"start":"right"===e?"end":e,"justify-content-".concat(e)},vm=Object(I["d"])({align:Object(I["c"])(C["u"]),cardHeader:Object(I["c"])(C["g"],!1),fill:Object(I["c"])(C["g"],!1),justified:Object(I["c"])(C["g"],!1),pills:Object(I["c"])(C["g"],!1),small:Object(I["c"])(C["g"],!1),tabs:Object(I["c"])(C["g"],!1),tag:Object(I["c"])(C["u"],"ul"),vertical:Object(I["c"])(C["g"],!1)},P["Db"]),ym=i["default"].extend({name:P["Db"],functional:!0,props:vm,render:function(e,t){var n,i=t.props,r=t.data,o=t.children,a=i.tabs,s=i.pills,c=i.vertical,u=i.align,d=i.cardHeader;return e(i.tag,Object(he["a"])(r,{staticClass:"nav",class:(n={"nav-tabs":a,"nav-pills":s&&!a,"card-header-tabs":!c&&d&&a,"card-header-pills":!c&&d&&s&&!a,"flex-column":c,"nav-fill":!c&&i.fill,"nav-justified":!c&&i.justified},bm(n,gm(u),!c&&u),bm(n,"small",i.small),n)}),o)}});function _m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Om(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,i=new Array(t);n=0&&t<=1})),overlayTag:Object(I["c"])(C["u"],"div"),rounded:Object(I["c"])(C["j"],!1),show:Object(I["c"])(C["g"],!1),spinnerSmall:Object(I["c"])(C["g"],!1),spinnerType:Object(I["c"])(C["u"],"border"),spinnerVariant:Object(I["c"])(C["u"]),variant:Object(I["c"])(C["u"],"light"),wrapTag:Object(I["c"])(C["u"],"div"),zIndex:Object(I["c"])(C["p"],10)},P["Mb"]),_b=i["default"].extend({name:P["Mb"],mixins:[B["a"]],props:yb,computed:{computedRounded:function(){var e=this.rounded;return!0===e||""===e?"rounded":e?"rounded-".concat(e):""},computedVariant:function(){var e=this.variant;return e&&!this.bgColor?"bg-".concat(e):""},slotScope:function(){return{spinnerType:this.spinnerType||null,spinnerVariant:this.spinnerVariant||null,spinnerSmall:this.spinnerSmall}}},methods:{defaultOverlayFn:function(e){var t=e.spinnerType,n=e.spinnerVariant,i=e.spinnerSmall;return this.$createElement(pb,{props:{type:t,variant:n,small:i}})}},render:function(e){var t=this,n=this.show,i=this.fixed,r=this.noFade,o=this.noWrap,a=this.slotScope,s=e();if(n){var c=e("div",{staticClass:"position-absolute",class:[this.computedVariant,this.computedRounded],style:mb(mb({},vb),{},{opacity:this.opacity,backgroundColor:this.bgColor||null,backdropFilter:this.blur?"blur(".concat(this.blur,")"):null})}),u=e("div",{staticClass:"position-absolute",style:this.noCenter?mb({},vb):{top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"}},[this.normalizeSlot(E["V"],a)||this.defaultOverlayFn(a)]);s=e(this.overlayTag,{staticClass:"b-overlay",class:{"position-absolute":!o||o&&!i,"position-fixed":o&&i},style:mb(mb({},vb),{},{zIndex:this.zIndex||10}),on:{click:function(e){return t.$emit(Y["f"],e)}},key:"overlay"},[c,u])}return s=e(N["a"],{props:{noFade:r,appear:!0},on:{"after-enter":function(){return t.$emit(Y["U"])},"after-leave":function(){return t.$emit(Y["v"])}}},[s]),o?s:e(this.wrapTag,{staticClass:"b-overlay-wrap position-relative",attrs:{"aria-busy":n?"true":null}},o?[s]:[this.normalizeSlot(),s])}}),Ob=M({components:{BOverlay:_b}});function jb(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function wb(e){for(var t=1;tt?t:n<1?1:n},Eb=function(e){if(e.keyCode===st)return Object(dt["f"])(e,{immediatePropagation:!0}),e.currentTarget.click(),!1},Hb=Object(I["d"])(Object(f["m"])(wb(wb({},xb),{},{align:Object(I["c"])(C["u"],"left"),ariaLabel:Object(I["c"])(C["u"],"Pagination"),disabled:Object(I["c"])(C["g"],!1),ellipsisClass:Object(I["c"])(C["e"]),ellipsisText:Object(I["c"])(C["u"],"…"),firstClass:Object(I["c"])(C["e"]),firstNumber:Object(I["c"])(C["g"],!1),firstText:Object(I["c"])(C["u"],"«"),hideEllipsis:Object(I["c"])(C["g"],!1),hideGotoEndButtons:Object(I["c"])(C["g"],!1),labelFirstPage:Object(I["c"])(C["u"],"Go to first page"),labelLastPage:Object(I["c"])(C["u"],"Go to last page"),labelNextPage:Object(I["c"])(C["u"],"Go to next page"),labelPage:Object(I["c"])(C["m"],"Go to page"),labelPrevPage:Object(I["c"])(C["u"],"Go to previous page"),lastClass:Object(I["c"])(C["e"]),lastNumber:Object(I["c"])(C["g"],!1),lastText:Object(I["c"])(C["u"],"»"),limit:Object(I["c"])(C["p"],Ab,(function(e){return!(Object(F["c"])(e,0)<1)||(Object(p["a"])('Prop "limit" must be a number greater than "0"',P["Nb"]),!1)})),nextClass:Object(I["c"])(C["e"]),nextText:Object(I["c"])(C["u"],"›"),pageClass:Object(I["c"])(C["e"]),pills:Object(I["c"])(C["g"],!1),prevClass:Object(I["c"])(C["e"]),prevText:Object(I["c"])(C["u"],"‹"),size:Object(I["c"])(C["u"])})),"pagination"),$b=i["default"].extend({mixins:[Lb,B["a"]],props:Hb,data:function(){var e=Object(F["c"])(this[Tb],0);return e=e>0?e:-1,{currentPage:e,localNumberOfPages:1,localLimit:Ab}},computed:{btnSize:function(){var e=this.size;return e?"pagination-".concat(e):""},alignment:function(){var e=this.align;return"center"===e?"justify-content-center":"end"===e||"right"===e?"justify-content-end":"fill"===e?"text-center":""},styleClass:function(){return this.pills?"b-pagination-pills":""},computedCurrentPage:function(){return Cb(this.currentPage,this.localNumberOfPages)},paginationParams:function(){var e=this.localLimit,t=this.localNumberOfPages,n=this.computedCurrentPage,i=this.hideEllipsis,r=this.firstNumber,o=this.lastNumber,a=!1,s=!1,c=e,u=1;t<=e?c=t:nDb?(i&&!o||(s=!0,c=e-(r?0:1)),c=Object(ne["e"])(c,e)):t-n+2Db?(i&&!r||(a=!0,c=e-(o?0:1)),u=t-c+1):(e>Db&&(c=e-(i?0:2),a=!(i&&!r),s=!(i&&!o)),u=n-Object(ne["c"])(c/2)),u<1?(u=1,a=!1):u>t-c&&(u=t-c+1,s=!1),a&&r&&u<4&&(c+=2,u=1,a=!1);var d=u+c-1;return s&&o&&d>t-3&&(c+=d===t-2?2:3,s=!1),e<=Db&&(r&&1===u?c=Object(ne["e"])(c+1,t,e+1):o&&t===u+c-1&&(u=Object(ne["d"])(u-1,1),c=Object(ne["e"])(t-u+1,t,e+1))),c=Object(ne["e"])(c,t-u+1),{showFirstDots:a,showLastDots:s,numberOfLinks:c,startNumber:u}},pageList:function(){var e=this.paginationParams,t=e.numberOfLinks,n=e.startNumber,i=this.computedCurrentPage,r=Pb(n,t);if(r.length>3){var o=i-n,a="bv-d-xs-down-none";if(0===o)for(var s=3;so+1;d--)r[d].classes=a}}return r}},watch:(gb={},kb(gb,Tb,(function(e,t){e!==t&&(this.currentPage=Cb(e,this.localNumberOfPages))})),kb(gb,"currentPage",(function(e,t){e!==t&&this.$emit(Sb,e>0?e:null)})),kb(gb,"limit",(function(e,t){e!==t&&(this.localLimit=Yb(e))})),gb),created:function(){var e=this;this.localLimit=Yb(this.limit),this.$nextTick((function(){e.currentPage=e.currentPage>e.localNumberOfPages?e.localNumberOfPages:e.currentPage}))},methods:{handleKeyNav:function(e){var t=e.keyCode,n=e.shiftKey;this.isNav||(t===it||t===ct?(Object(dt["f"])(e,{propagation:!1}),n?this.focusFirst():this.focusPrev()):t!==at&&t!==Ze||(Object(dt["f"])(e,{propagation:!1}),n?this.focusLast():this.focusNext()))},getButtons:function(){return Object(H["F"])("button.page-link, a.page-link",this.$el).filter((function(e){return Object(H["u"])(e)}))},focusCurrent:function(){var e=this;this.$nextTick((function(){var t=e.getButtons().find((function(t){return Object(F["c"])(Object(H["h"])(t,"aria-posinset"),0)===e.computedCurrentPage}));Object(H["d"])(t)||e.focusFirst()}))},focusFirst:function(){var e=this;this.$nextTick((function(){var t=e.getButtons().find((function(e){return!Object(H["r"])(e)}));Object(H["d"])(t)}))},focusLast:function(){var e=this;this.$nextTick((function(){var t=e.getButtons().reverse().find((function(e){return!Object(H["r"])(e)}));Object(H["d"])(t)}))},focusPrev:function(){var e=this;this.$nextTick((function(){var t=e.getButtons(),n=t.indexOf(Object(H["g"])());n>0&&!Object(H["r"])(t[n-1])&&Object(H["d"])(t[n-1])}))},focusNext:function(){var e=this;this.$nextTick((function(){var t=e.getButtons(),n=t.indexOf(Object(H["g"])());na,h=i<1?1:i>a?a:i,g={disabled:f,page:h,index:h-1},v=t.normalizeSlot(s,g)||Object(me["g"])(c)||e(),y=e(f?"span":o?lt["a"]:"button",{staticClass:"page-link",class:{"flex-grow-1":!o&&!f&&p},props:f||!o?{}:t.linkProps(i),attrs:{role:o?null:"menuitem",type:o||f?null:"button",tabindex:f||o?null:"-1","aria-label":r,"aria-controls":t.ariaControls||null,"aria-disabled":f?"true":null},on:f?{}:{"!click":function(e){t.onClick(e,i)},keydown:Eb}},[v]);return e("li",{key:l,staticClass:"page-item",class:[{disabled:f,"flex-fill":p,"d-flex":p&&!o&&!f},u],attrs:{role:o?null:"presentation","aria-hidden":f?"true":null}},[y])},v=function(n){return e("li",{staticClass:"page-item",class:["disabled","bv-d-xs-down-none",p?"flex-fill":"",t.ellipsisClass],attrs:{role:"separator"},key:"ellipsis-".concat(n?"last":"first")},[e("span",{staticClass:"page-link"},[t.normalizeSlot(E["m"])||Object(me["g"])(t.ellipsisText)||e()])])},y=function(r,s){var c=r.number,d=m(c)&&!b,l=n?null:d||b&&0===s?"0":"-1",f={role:o?null:"menuitemradio",type:o||n?null:"button","aria-disabled":n?"true":null,"aria-controls":t.ariaControls||null,"aria-label":Object(I["b"])(i)?i(c):"".concat(Object(u["f"])(i)?i():i," ").concat(c),"aria-checked":o?null:d?"true":"false","aria-current":o&&d?"page":null,"aria-posinset":o?null:c,"aria-setsize":o?null:a,tabindex:o?null:l},h=Object(me["g"])(t.makePage(c)),g={page:c,index:c-1,content:h,active:d,disabled:n},v=e(n?"span":o?lt["a"]:"button",{props:n||!o?{}:t.linkProps(c),staticClass:"page-link",class:{"flex-grow-1":!o&&!n&&p},attrs:f,on:n?{}:{"!click":function(e){t.onClick(e,c)},keydown:Eb}},[t.normalizeSlot(E["W"],g)||h]);return e("li",{staticClass:"page-item",class:[{disabled:n,active:d,"flex-fill":p,"d-flex":p&&!o&&!n},r.classes,t.pageClass],attrs:{role:o?null:"presentation"},key:"page-".concat(c)},[v])},_=e();this.firstNumber||this.hideGotoEndButtons||(_=g(1,this.labelFirstPage,E["r"],this.firstText,this.firstClass,1,"pagination-goto-first")),h.push(_),h.push(g(s-1,this.labelPrevPage,E["Z"],this.prevText,this.prevClass,1,"pagination-goto-prev")),h.push(this.firstNumber&&1!==c[0]?y({number:1},0):e()),h.push(l?v(!1):e()),this.pageList.forEach((function(e,n){var i=l&&t.firstNumber&&1!==c[0]?1:0;h.push(y(e,n+i))})),h.push(f?v(!0):e()),h.push(this.lastNumber&&c[c.length-1]!==a?y({number:a},-1):e()),h.push(g(s+1,this.labelNextPage,E["U"],this.nextText,this.nextClass,a,"pagination-goto-next"));var O=e();this.lastNumber||this.hideGotoEndButtons||(O=g(a,this.labelLastPage,E["D"],this.lastText,this.lastClass,a,"pagination-goto-last")),h.push(O);var j=e("ul",{staticClass:"pagination",class:["b-pagination",this.btnSize,this.alignment,this.styleClass],attrs:{role:o?null:"menubar","aria-disabled":n?"true":"false","aria-label":o?null:r||null},on:o?{}:{keydown:this.handleKeyNav},ref:"ul"},h);return o?e("nav",{attrs:{"aria-disabled":n?"true":null,"aria-hidden":n?"true":"false","aria-label":o&&r||null}},[j]):j}});function Fb(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Ib(e){for(var t=1;te.numberOfPages)&&(this.currentPage=1),this.localNumberOfPages=e.numberOfPages}},created:function(){var e=this;this.localNumberOfPages=this.numberOfPages;var t=Object(F["c"])(this[Tb],0);t>0?this.currentPage=t:this.$nextTick((function(){e.currentPage=0}))},methods:{onClick:function(e,t){var n=this;if(t!==this.currentPage){var i=e.target,r=new ha["a"](Y["F"],{cancelable:!0,vueTarget:this,target:i});this.$emit(r.type,r,t),r.defaultPrevented||(this.currentPage=t,this.$emit(Y["d"],this.currentPage),this.$nextTick((function(){Object(H["u"])(i)&&n.$el.contains(i)?Object(H["d"])(i):n.focusCurrent()})))}},makePage:function(e){return e},linkProps:function(){return{}}}}),Gb=M({components:{BPagination:Ub}});function qb(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Jb(e){for(var t=1;t0?this.localNumberOfPages=this.pages.length:this.localNumberOfPages=Xb(this.numberOfPages),this.$nextTick((function(){e.guessCurrentPage()}))},onClick:function(e,t){var n=this;if(t!==this.currentPage){var i=e.currentTarget||e.target,r=new ha["a"](Y["F"],{cancelable:!0,vueTarget:this,target:i});this.$emit(r.type,r,t),r.defaultPrevented||(Object(H["D"])((function(){n.currentPage=t,n.$emit(Y["d"],t)})),this.$nextTick((function(){Object(H["c"])(i)})))}},getPageInfo:function(e){if(!Object(u["a"])(this.pages)||0===this.pages.length||Object(u["o"])(this.pages[e-1])){var t="".concat(this.baseUrl).concat(e);return{link:this.useRouter?{path:t}:t,text:Object(me["g"])(e)}}var n=this.pages[e-1];if(Object(u["j"])(n)){var i=n.link;return{link:Object(u["j"])(i)?i:this.useRouter?{path:i}:i,text:Object(me["g"])(n.text||e)}}return{link:Object(me["g"])(n),text:Object(me["g"])(e)}},makePage:function(e){var t=this.pageGen,n=this.getPageInfo(e);return Object(I["b"])(t)?t(e,n):n.text},makeLink:function(e){var t=this.linkGen,n=this.getPageInfo(e);return Object(I["b"])(t)?t(e,n):n.link},linkProps:function(e){var t=Object(I["e"])(Zb,this),n=this.makeLink(e);return this.useRouter||Object(u["j"])(n)?t.to=n:t.href=n,t},resolveLink:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";try{e=document.createElement("a"),e.href=Object(pe["a"])({to:t},"a","/","/"),document.body.appendChild(e);var n=e,i=n.pathname,r=n.hash,o=n.search;return document.body.removeChild(e),{path:i,hash:r,query:Object(pe["f"])(o)}}catch(a){try{e&&e.parentNode&&e.parentNode.removeChild(e)}catch(s){}return{}}},resolveRoute:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";try{var t=this.$router.resolve(e,this.$route).route;return{path:t.path,hash:t.hash,query:t.query}}catch(n){return{}}},guessCurrentPage:function(){var e=this.$router,t=this.$route,n=this.computedValue;if(!this.noPageDetect&&!n&&(r["i"]||!r["i"]&&e))for(var i=e&&t?{path:t.path,hash:t.hash,query:t.query}:{},o=r["i"]?window.location||document.location:null,a=o?{path:o.pathname,hash:o.hash,query:Object(pe["f"])(o.search)}:{},s=1;!n&&s<=this.localNumberOfPages;s++){var c=this.makeLink(s);n=e&&(Object(u["j"])(c)||this.useRouter)?Object(ei["a"])(this.resolveRoute(c),i)?s:null:r["i"]?Object(ei["a"])(this.resolveLink(c),a)?s:null:-1}this.currentPage=n>0?n:0}}}),tg=M({components:{BPaginationNav:eg}}),ng=n("be29"),ig={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left",TOPLEFT:"top",TOPRIGHT:"top",RIGHTTOP:"right",RIGHTBOTTOM:"right",BOTTOMLEFT:"bottom",BOTTOMRIGHT:"bottom",LEFTTOP:"left",LEFTBOTTOM:"left"},rg={AUTO:0,TOPLEFT:-1,TOP:0,TOPRIGHT:1,RIGHTTOP:-1,RIGHT:0,RIGHTBOTTOM:1,BOTTOMLEFT:-1,BOTTOM:0,BOTTOMRIGHT:1,LEFTTOP:-1,LEFT:0,LEFTBOTTOM:1},og={arrowPadding:Object(I["c"])(C["p"],6),boundary:Object(I["c"])([pa["c"],C["u"]],"scrollParent"),boundaryPadding:Object(I["c"])(C["p"],5),fallbackPlacement:Object(I["c"])(C["f"],"flip"),offset:Object(I["c"])(C["p"],0),placement:Object(I["c"])(C["u"],"top"),target:Object(I["c"])([pa["c"],pa["d"]])},ag=i["default"].extend({name:P["Sb"],props:og,data:function(){return{noFade:!1,localShow:!0,attachment:this.getAttachment(this.placement)}},computed:{templateType:function(){return"unknown"},popperConfig:function(){var e=this,t=this.placement;return{placement:this.getAttachment(t),modifiers:{offset:{offset:this.getOffset(t)},flip:{behavior:this.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{padding:this.boundaryPadding,boundariesElement:this.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e.popperPlacementChange(t)},onUpdate:function(t){e.popperPlacementChange(t)}}}},created:function(){var e=this;this.$_popper=null,this.localShow=!0,this.$on(Y["T"],(function(t){e.popperCreate(t)}));var t=function(){e.$nextTick((function(){Object(H["D"])((function(){e.$destroy()}))}))};this.$parent.$once(Y["fb"],t),this.$once(Y["v"],t)},beforeMount:function(){this.attachment=this.getAttachment(this.placement)},updated:function(){this.updatePopper()},beforeDestroy:function(){this.destroyPopper()},destroyed:function(){var e=this.$el;e&&e.parentNode&&e.parentNode.removeChild(e)},methods:{hide:function(){this.localShow=!1},getAttachment:function(e){return ig[String(e).toUpperCase()]||"auto"},getOffset:function(e){if(!this.offset){var t=this.$refs.arrow||Object(H["E"])(".arrow",this.$el),n=Object(F["b"])(Object(H["k"])(t).width,0)+Object(F["b"])(this.arrowPadding,0);switch(rg[String(e).toUpperCase()]||0){case 1:return"+50%p - ".concat(n,"px");case-1:return"-50%p + ".concat(n,"px");default:return 0}}return this.offset},popperCreate:function(e){this.destroyPopper(),this.$_popper=new aa["a"](this.target,e,this.popperConfig)},destroyPopper:function(){this.$_popper&&this.$_popper.destroy(),this.$_popper=null},updatePopper:function(){this.$_popper&&this.$_popper.scheduleUpdate()},popperPlacementChange:function(e){this.attachment=this.getAttachment(e.placement)},renderTemplate:function(e){return e("div")}},render:function(e){var t=this,n=this.noFade;return e(N["a"],{props:{appear:!0,noFade:n},on:{beforeEnter:function(e){return t.$emit(Y["T"],e)},afterEnter:function(e){return t.$emit(Y["U"],e)},beforeLeave:function(e){return t.$emit(Y["w"],e)},afterLeave:function(e){return t.$emit(Y["v"],e)}}},[this.localShow?this.renderTemplate(e):e()])}});function sg(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function cg(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},n=!1;Object(f["h"])(kg).forEach((function(i){Object(u["o"])(t[i])||e[i]===t[i]||(e[i]=t[i],"title"===i&&(n=!0))})),n&&this.localShow&&this.fixTitle()},createTemplateAndShow:function(){var e=this.getContainer(),t=this.getTemplate(),n=this.$_tip=new t({parent:this,propsData:{id:this.computedId,html:this.html,placement:this.placement,fallbackPlacement:this.fallbackPlacement,target:this.getPlacementTarget(),boundary:this.getBoundary(),offset:Object(F["c"])(this.offset,0),arrowPadding:Object(F["c"])(this.arrowPadding,0),boundaryPadding:Object(F["c"])(this.boundaryPadding,0)}});this.handleTemplateUpdate(),n.$once(Y["T"],this.onTemplateShow),n.$once(Y["U"],this.onTemplateShown),n.$once(Y["w"],this.onTemplateHide),n.$once(Y["v"],this.onTemplateHidden),n.$once(Y["fb"],this.destroyTemplate),n.$on(Y["s"],this.handleEvent),n.$on(Y["t"],this.handleEvent),n.$on(Y["A"],this.handleEvent),n.$on(Y["B"],this.handleEvent),n.$mount(e.appendChild(document.createElement("div")))},hideTemplate:function(){this.$_tip&&this.$_tip.hide(),this.clearActiveTriggers(),this.$_hoverState=""},destroyTemplate:function(){this.setWhileOpenListeners(!1),this.clearHoverTimeout(),this.$_hoverState="",this.clearActiveTriggers(),this.localPlacementTarget=null;try{this.$_tip.$destroy()}catch(e){}this.$_tip=null,this.removeAriaDescribedby(),this.restoreTitle(),this.localShow=!1},getTemplateElement:function(){return this.$_tip?this.$_tip.$el:null},handleTemplateUpdate:function(){var e=this,t=this.$_tip;if(t){var n=["title","content","variant","customClass","noFade","interactive"];n.forEach((function(n){t[n]!==e[n]&&(t[n]=e[n])}))}},show:function(){var e=this.getTarget();if(e&&Object(H["f"])(document.body,e)&&Object(H["u"])(e)&&!this.dropdownOpen()&&(!Object(u["p"])(this.title)&&""!==this.title||!Object(u["p"])(this.content)&&""!==this.content)&&!this.$_tip&&!this.localShow){this.localShow=!0;var t=this.buildEvent(Y["T"],{cancelable:!0});this.emitEvent(t),t.defaultPrevented?this.destroyTemplate():(this.fixTitle(),this.addAriaDescribedby(),this.createTemplateAndShow())}},hide:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.getTemplateElement();if(t&&this.localShow){var n=this.buildEvent(Y["w"],{cancelable:!e});this.emitEvent(n),n.defaultPrevented||this.hideTemplate()}else this.restoreTitle()},forceHide:function(){var e=this.getTemplateElement();e&&this.localShow&&(this.setWhileOpenListeners(!1),this.clearHoverTimeout(),this.$_hoverState="",this.clearActiveTriggers(),this.$_tip&&(this.$_tip.noFade=!0),this.hide(!0))},enable:function(){this.$_enabled=!0,this.emitEvent(this.buildEvent(Y["p"]))},disable:function(){this.$_enabled=!1,this.emitEvent(this.buildEvent(Y["l"]))},onTemplateShow:function(){this.setWhileOpenListeners(!0)},onTemplateShown:function(){var e=this.$_hoverState;this.$_hoverState="","out"===e&&this.leave(null),this.emitEvent(this.buildEvent(Y["U"]))},onTemplateHide:function(){this.setWhileOpenListeners(!1)},onTemplateHidden:function(){this.destroyTemplate(),this.emitEvent(this.buildEvent(Y["v"]))},getTarget:function(){var e=this.target;return Object(u["n"])(e)?e=Object(H["j"])(e.replace(/^#/,"")):Object(u["f"])(e)?e=e():e&&(e=e.$el||e),Object(H["s"])(e)?e:null},getPlacementTarget:function(){return this.getTarget()},getTargetId:function(){var e=this.getTarget();return e&&e.id?e.id:null},getContainer:function(){var e=!!this.container&&(this.container.$el||this.container),t=document.body,n=this.getTarget();return!1===e?Object(H["e"])(_g,n)||t:Object(u["n"])(e)&&Object(H["j"])(e.replace(/^#/,""))||t},getBoundary:function(){return this.boundary?this.boundary.$el||this.boundary:"scrollParent"},isInModal:function(){var e=this.getTarget();return e&&Object(H["e"])(gg,e)},isDropdown:function(){var e=this.getTarget();return e&&Object(H["p"])(e,Og)},dropdownOpen:function(){var e=this.getTarget();return this.isDropdown()&&e&&Object(H["E"])(jg,e)},clearHoverTimeout:function(){clearTimeout(this.$_hoverTimeout),this.$_hoverTimeout=null},clearVisibilityInterval:function(){clearInterval(this.$_visibleInterval),this.$_visibleInterval=null},clearActiveTriggers:function(){for(var e in this.activeTrigger)this.activeTrigger[e]=!1},addAriaDescribedby:function(){var e=this.getTarget(),t=Object(H["h"])(e,"aria-describedby")||"";t=t.split(/\s+/).concat(this.computedId).join(" ").trim(),Object(H["G"])(e,"aria-describedby",t)},removeAriaDescribedby:function(){var e=this,t=this.getTarget(),n=Object(H["h"])(t,"aria-describedby")||"";n=n.split(/\s+/).filter((function(t){return t!==e.computedId})).join(" ").trim(),n?Object(H["G"])(t,"aria-describedby",n):Object(H["z"])(t,"aria-describedby")},fixTitle:function(){var e=this.getTarget();if(Object(H["o"])(e,"title")){var t=Object(H["h"])(e,"title");Object(H["G"])(e,"title",""),t&&Object(H["G"])(e,wg,t)}},restoreTitle:function(){var e=this.getTarget();if(Object(H["o"])(e,wg)){var t=Object(H["h"])(e,wg);Object(H["z"])(e,wg),t&&Object(H["G"])(e,"title",t)}},buildEvent:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new ha["a"](e,pg({cancelable:!1,target:this.getTarget(),relatedTarget:this.getTemplateElement()||null,componentId:this.computedId,vueTarget:this},t))},emitEvent:function(e){var t=e.type;this.emitOnRoot(Object(dt["e"])(this.templateType,t),e),this.$emit(t,e)},listen:function(){var e=this,t=this.getTarget();t&&(this.setRootListener(!0),this.computedTriggers.forEach((function(n){"click"===n?Object(dt["b"])(t,"click",e.handleEvent,Y["cb"]):"focus"===n?(Object(dt["b"])(t,"focusin",e.handleEvent,Y["cb"]),Object(dt["b"])(t,"focusout",e.handleEvent,Y["cb"])):"blur"===n?Object(dt["b"])(t,"focusout",e.handleEvent,Y["cb"]):"hover"===n&&(Object(dt["b"])(t,"mouseenter",e.handleEvent,Y["cb"]),Object(dt["b"])(t,"mouseleave",e.handleEvent,Y["cb"]))}),this))},unListen:function(){var e=this,t=["click","focusin","focusout","mouseenter","mouseleave"],n=this.getTarget();this.setRootListener(!1),t.forEach((function(t){n&&Object(dt["a"])(n,t,e.handleEvent,Y["cb"])}),this)},setRootListener:function(e){var t=this.$root;if(t){var n=e?"$on":"$off",i=this.templateType;t[n](Object(dt["d"])(i,Y["w"]),this.doHide),t[n](Object(dt["d"])(i,Y["T"]),this.doShow),t[n](Object(dt["d"])(i,Y["k"]),this.doDisable),t[n](Object(dt["d"])(i,Y["o"]),this.doEnable)}},setWhileOpenListeners:function(e){this.setModalListener(e),this.setDropdownListener(e),this.visibleCheck(e),this.setOnTouchStartListener(e)},visibleCheck:function(e){var t=this;this.clearVisibilityInterval();var n=this.getTarget(),i=this.getTemplateElement();e&&(this.$_visibleInterval=setInterval((function(){!i||!t.localShow||n.parentNode&&Object(H["u"])(n)||t.forceHide()}),100))},setModalListener:function(e){this.isInModal()&&this.$root[e?"$on":"$off"](vg,this.forceHide)},setOnTouchStartListener:function(e){var t=this;"ontouchstart"in document.documentElement&&Object(ut["f"])(document.body.children).forEach((function(n){Object(dt["c"])(e,n,"mouseover",t.$_noop)}))},setDropdownListener:function(e){var t=this.getTarget();t&&this.$root&&this.isDropdown&&t.__vue__&&t.__vue__[e?"$on":"$off"](Y["U"],this.forceHide)},handleEvent:function(e){var t=this.getTarget();if(t&&!Object(H["r"])(t)&&this.$_enabled&&!this.dropdownOpen()){var n=e.type,i=this.computedTriggers;if("click"===n&&Object(ut["a"])(i,"click"))this.click(e);else if("mouseenter"===n&&Object(ut["a"])(i,"hover"))this.enter(e);else if("focusin"===n&&Object(ut["a"])(i,"focus"))this.enter(e);else if("focusout"===n&&(Object(ut["a"])(i,"focus")||Object(ut["a"])(i,"blur"))||"mouseleave"===n&&Object(ut["a"])(i,"hover")){var r=this.getTemplateElement(),o=e.target,a=e.relatedTarget;if(r&&Object(H["f"])(r,o)&&Object(H["f"])(t,a)||r&&Object(H["f"])(t,o)&&Object(H["f"])(r,a)||r&&Object(H["f"])(r,o)&&Object(H["f"])(r,a)||Object(H["f"])(t,o)&&Object(H["f"])(t,a))return;this.leave(e)}}},doHide:function(e){e&&this.getTargetId()!==e&&this.computedId!==e||this.forceHide()},doShow:function(e){e&&this.getTargetId()!==e&&this.computedId!==e||this.show()},doDisable:function(e){e&&this.getTargetId()!==e&&this.computedId!==e||this.disable()},doEnable:function(e){e&&this.getTargetId()!==e&&this.computedId!==e||this.enable()},click:function(e){this.$_enabled&&!this.dropdownOpen()&&(Object(H["d"])(e.currentTarget),this.activeTrigger.click=!this.activeTrigger.click,this.isWithActiveTrigger?this.enter(null):this.leave(null))},toggle:function(){this.$_enabled&&!this.dropdownOpen()&&(this.localShow?this.leave(null):this.enter(null))},enter:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;t&&(this.activeTrigger["focusin"===t.type?"focus":"hover"]=!0),this.localShow||"in"===this.$_hoverState?this.$_hoverState="in":(this.clearHoverTimeout(),this.$_hoverState="in",this.computedDelay.show?(this.fixTitle(),this.$_hoverTimeout=setTimeout((function(){"in"===e.$_hoverState?e.show():e.localShow||e.restoreTitle()}),this.computedDelay.show)):this.show())},leave:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;t&&(this.activeTrigger["focusout"===t.type?"focus":"hover"]=!1,"focusout"===t.type&&Object(ut["a"])(this.computedTriggers,"blur")&&(this.activeTrigger.click=!1,this.activeTrigger.hover=!1)),this.isWithActiveTrigger||(this.clearHoverTimeout(),this.$_hoverState="out",this.computedDelay.hide?this.$_hoverTimeout=setTimeout((function(){"out"===e.$_hoverState&&e.hide()}),this.computedDelay.hide):this.hide())}}});function Lg(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function xg(e){for(var t=1;t0&&e[Vg].updateData(t)}))}var a={title:i.title,content:i.content,triggers:i.trigger,placement:i.placement,fallbackPlacement:i.fallbackPlacement,variant:i.variant,customClass:i.customClass,container:i.container,boundary:i.boundary,delay:i.delay,offset:i.offset,noFade:!i.animation,id:i.id,disabled:i.disabled,html:i.html},s=e[Vg].__bv_prev_data__;if(e[Vg].__bv_prev_data__=a,!Object(ei["a"])(a,s)){var c={target:e};Object(f["h"])(a).forEach((function(t){a[t]!==s[t]&&(c[t]="title"!==t&&"content"!==t||!Object(u["f"])(a[t])?a[t]:a[t](e))})),e[Vg].updateData(c)}}},av=function(e){e[Vg]&&(e[Vg].$destroy(),e[Vg]=null),delete e[Vg]},sv={bind:function(e,t,n){ov(e,t,n)},componentUpdated:function(e,t,n){n.context.$nextTick((function(){ov(e,t,n)}))},unbind:function(e){av(e)}},cv=M({directives:{VBPopover:sv}}),uv=M({components:{BPopover:Rg},plugins:{VBPopoverPlugin:cv}}),dv=Object(I["d"])({animated:Object(I["c"])(C["g"],null),label:Object(I["c"])(C["u"]),labelHtml:Object(I["c"])(C["u"]),max:Object(I["c"])(C["p"],null),precision:Object(I["c"])(C["p"],null),showProgress:Object(I["c"])(C["g"],null),showValue:Object(I["c"])(C["g"],null),striped:Object(I["c"])(C["g"],null),value:Object(I["c"])(C["p"],0),variant:Object(I["c"])(C["u"])},P["Ub"]),lv=i["default"].extend({name:P["Ub"],mixins:[B["a"]],inject:{bvProgress:{default:function(){return{}}}},props:dv,computed:{progressBarClasses:function(){var e=this.computedAnimated,t=this.computedVariant;return[t?"bg-".concat(t):"",this.computedStriped||e?"progress-bar-striped":"",e?"progress-bar-animated":""]},progressBarStyles:function(){return{width:this.computedValue/this.computedMax*100+"%"}},computedValue:function(){return Object(F["b"])(this.value,0)},computedMax:function(){var e=Object(F["b"])(this.max)||Object(F["b"])(this.bvProgress.max,0);return e>0?e:100},computedPrecision:function(){return Object(ne["d"])(Object(F["c"])(this.precision,Object(F["c"])(this.bvProgress.precision,0)),0)},computedProgress:function(){var e=this.computedPrecision,t=Object(ne["f"])(10,e);return Object(F["a"])(100*t*this.computedValue/this.computedMax/t,e)},computedVariant:function(){return this.variant||this.bvProgress.variant},computedStriped:function(){return Object(u["b"])(this.striped)?this.striped:this.bvProgress.striped||!1},computedAnimated:function(){return Object(u["b"])(this.animated)?this.animated:this.bvProgress.animated||!1},computedShowProgress:function(){return Object(u["b"])(this.showProgress)?this.showProgress:this.bvProgress.showProgress||!1},computedShowValue:function(){return Object(u["b"])(this.showValue)?this.showValue:this.bvProgress.showValue||!1}},render:function(e){var t,n=this.label,i=this.labelHtml,r=this.computedValue,o=this.computedPrecision,a={};return this.hasNormalizedSlot()?t=this.normalizeSlot():n||i?a=qt(i,n):this.computedShowProgress?t=this.computedProgress:this.computedShowValue&&(t=Object(F["a"])(r,o)),e("div",{staticClass:"progress-bar",class:this.progressBarClasses,style:this.progressBarStyles,attrs:{role:"progressbar","aria-valuemin":"0","aria-valuemax":Object(me["g"])(this.computedMax),"aria-valuenow":Object(F["a"])(r,o)},domProps:a},t)}});function fv(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function pv(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.noCloseOnRouteChange||e.fullPath===t.fullPath||this.hide()})),mv),created:function(){this.$_returnFocusEl=null},mounted:function(){var e=this;this.listenOnRoot(Mv,this.handleToggle),this.listenOnRoot(kv,this.handleSync),this.$nextTick((function(){e.emitState(e.localShow)}))},activated:function(){this.emitSync()},beforeDestroy:function(){this.localShow=!1,this.$_returnFocusEl=null},methods:{hide:function(){this.localShow=!1},emitState:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.localShow;this.emitOnRoot(Lv,this.safeId(),e)},emitSync:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.localShow;this.emitOnRoot(xv,this.safeId(),e)},handleToggle:function(e){e&&e===this.safeId()&&(this.localShow=!this.localShow)},handleSync:function(e){var t=this;e&&e===this.safeId()&&this.$nextTick((function(){t.emitSync(t.localShow)}))},onKeydown:function(e){var t=e.keyCode;!this.noCloseOnEsc&&t===tt&&this.localShow&&this.hide()},onBackdropClick:function(){this.localShow&&!this.noCloseOnBackdrop&&this.hide()},onTopTrapFocus:function(){var e=Object(H["n"])(this.$refs.content);this.enforceFocus(e.reverse()[0])},onBottomTrapFocus:function(){var e=Object(H["n"])(this.$refs.content);this.enforceFocus(e[0])},onBeforeEnter:function(){this.$_returnFocusEl=Object(H["g"])(r["i"]?[document.body]:[]),this.isOpen=!0},onAfterEnter:function(e){Object(H["f"])(e,Object(H["g"])())||this.enforceFocus(e),this.$emit(Y["U"])},onAfterLeave:function(){this.enforceFocus(this.$_returnFocusEl),this.$_returnFocusEl=null,this.isOpen=!1,this.$emit(Y["v"])},enforceFocus:function(e){this.noEnforceFocus||Object(H["d"])(e)}},render:function(e){var t,n=this.bgVariant,i=this.width,r=this.textVariant,o=this.localShow,a=""===this.shadow||this.shadow,s=e(this.tag,{staticClass:wv,class:[(t={shadow:!0===a},jv(t,"shadow-".concat(a),a&&!0!==a),jv(t,"".concat(wv,"-right"),this.right),jv(t,"bg-".concat(n),n),jv(t,"text-".concat(r),r),t),this.sidebarClass],style:{width:i},attrs:this.computedAttrs,directives:[{name:"show",value:o}],ref:"content"},[Iv(e,this)]);s=e("transition",{props:this.transitionProps,on:{beforeEnter:this.onBeforeEnter,afterEnter:this.onAfterEnter,afterLeave:this.onAfterLeave}},[s]);var c=e(N["a"],{props:{noFade:this.noSlide}},[Bv(e,this)]),u=e(),d=e();return this.backdrop&&o&&(u=e("div",{attrs:{tabindex:"0"},on:{focus:this.onTopTrapFocus}}),d=e("div",{attrs:{tabindex:"0"},on:{focus:this.onBottomTrapFocus}})),e("div",{staticClass:"b-sidebar-outer",style:{zIndex:this.zIndex},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown}},[u,s,d,c])}}),Nv=M({components:{BSidebar:Rv},plugins:{VBTogglePlugin:ra}});function zv(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Wv=Object(I["d"])({animation:Object(I["c"])(C["u"],"wave"),height:Object(I["c"])(C["u"]),size:Object(I["c"])(C["u"]),type:Object(I["c"])(C["u"],"text"),variant:Object(I["c"])(C["u"]),width:Object(I["c"])(C["u"])},P["Xb"]),Vv=i["default"].extend({name:P["Xb"],functional:!0,props:Wv,render:function(e,t){var n,i=t.data,r=t.props,o=r.size,a=r.animation,s=r.variant;return e("div",Object(he["a"])(i,{staticClass:"b-skeleton",style:{width:o||r.width,height:o||r.height},class:(n={},zv(n,"b-skeleton-".concat(r.type),!0),zv(n,"b-skeleton-animate-".concat(a),a),zv(n,"bg-".concat(s),s),n)}))}});function Uv(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Gv(e){for(var t=1;t0}}});function ty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ny={stacked:Object(I["c"])(C["j"],!1)},iy=i["default"].extend({props:ny,computed:{isStacked:function(){var e=this.stacked;return""===e||e},isStackedAlways:function(){return!0===this.isStacked},stackedTableClasses:function(){var e=this.isStackedAlways;return ty({"b-table-stacked":e},"b-table-stacked-".concat(this.stacked),!e&&this.isStacked)}}});function ry(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function oy(e){for(var t=1;t0&&!this.computedBusy,[this.tableClass,{"table-striped":this.striped,"table-hover":e,"table-dark":this.dark,"table-bordered":this.bordered,"table-borderless":this.borderless,"table-sm":this.small,border:this.outlined,"b-table-fixed":this.fixed,"b-table-caption-top":this.captionTop,"b-table-no-border-collapse":this.noBorderCollapse},t?"".concat(this.dark?"bg":"table","-").concat(t):"",this.stackedTableClasses,this.selectableTableClasses]},tableAttrs:function(){var e=this.computedItems,t=this.filteredItems,n=this.computedFields,i=this.selectableTableAttrs,r=this.isTableSimple?{}:{"aria-busy":this.computedBusy?"true":"false","aria-colcount":Object(me["g"])(n.length),"aria-describedby":this.bvAttrs["aria-describedby"]||this.$refs.caption?this.captionId:null},o=e&&t&&t.length>e.length?Object(me["g"])(t.length):null;return oy(oy(oy({"aria-rowcount":o},this.bvAttrs),{},{id:this.safeId(),role:"table"},r),i)}},render:function(e){var t=this.wrapperClasses,n=this.renderCaption,i=this.renderColgroup,r=this.renderThead,o=this.renderTbody,a=this.renderTfoot,s=[];this.isTableSimple?s.push(this.normalizeSlot()):(s.push(n?n():null),s.push(i?i():null),s.push(r?r():null),s.push(o?o():null),s.push(a?a():null));var u=e("table",{staticClass:"table b-table",class:this.tableClasses,attrs:this.tableAttrs,key:"b-table"},s.filter(c["a"]));return t.length>0?e("div",{class:t,style:this.wrapperStyles,key:"wrap"},[u]):u}});function uy(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function dy(e){for(var t=1;t0},vy=Object(I["d"])({animation:Object(I["c"])(C["u"]),columns:Object(I["c"])(C["n"],5,gy),hideHeader:Object(I["c"])(C["g"],!1),rows:Object(I["c"])(C["n"],3,gy),showFooter:Object(I["c"])(C["g"],!1),tableProps:Object(I["c"])(C["q"],{})},P["ac"]),yy=i["default"].extend({name:P["ac"],functional:!0,props:vy,render:function(e,t){var n=t.props,i=n.animation,r=n.columns,o=e("th",[e(Vv,{props:{animation:i}})]),a=e("tr",Object(ut["c"])(r,o)),s=e("td",[e(Vv,{props:{width:"75%",animation:i}})]),c=e("tr",Object(ut["c"])(r,s)),u=e("tbody",Object(ut["c"])(n.rows,c)),d=n.hideHeader?e():e("thead",[a]),l=n.showFooter?e("tfoot",[a]):e();return e(py,{props:my({},n.tableProps)},[d,u,l])}}),_y=Object(I["d"])({loading:Object(I["c"])(C["g"],!1)},P["bc"]),Oy=i["default"].extend({name:P["bc"],functional:!0,props:_y,render:function(e,t){var n=t.data,i=t.props,r=t.slots,o=t.scopedSlots,a=r(),s=o||{},c={};return i.loading?e("div",Object(he["a"])(n,{attrs:{role:"alert","aria-live":"polite","aria-busy":!0},staticClass:"b-skeleton-wrapper",key:"loading"}),Object(hi["b"])(E["F"],c,s,a)):Object(hi["b"])(E["i"],c,s,a)}}),jy=M({components:{BSkeleton:Vv,BSkeletonIcon:Kv,BSkeletonImg:Qv,BSkeletonTable:yy,BSkeletonWrapper:Oy}}),wy=M({components:{BSpinner:pb}});function ky(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function My(e){for(var t=1;t0?e:null},$y=function(e){return Object(u["p"])(e)||Hy(e)>0},Fy=Object(I["d"])({colspan:Object(I["c"])(C["p"],null,$y),rowspan:Object(I["c"])(C["p"],null,$y),stackedHeading:Object(I["c"])(C["u"]),stickyColumn:Object(I["c"])(C["g"],!1),variant:Object(I["c"])(C["u"])},P["fc"]),Iy=i["default"].extend({name:P["fc"],mixins:[ti["a"],sd["a"],B["a"]],inject:{bvTableTr:{default:function(){return{}}}},inheritAttrs:!1,props:Fy,computed:{tag:function(){return"td"},inTbody:function(){return this.bvTableTr.inTbody},inThead:function(){return this.bvTableTr.inThead},inTfoot:function(){return this.bvTableTr.inTfoot},isDark:function(){return this.bvTableTr.isDark},isStacked:function(){return this.bvTableTr.isStacked},isStackedCell:function(){return this.inTbody&&this.isStacked},isResponsive:function(){return this.bvTableTr.isResponsive},isStickyHeader:function(){return this.bvTableTr.isStickyHeader},hasStickyHeader:function(){return this.bvTableTr.hasStickyHeader},isStickyColumn:function(){return!this.isStacked&&(this.isResponsive||this.hasStickyHeader)&&this.stickyColumn},rowVariant:function(){return this.bvTableTr.variant},headVariant:function(){return this.bvTableTr.headVariant},footVariant:function(){return this.bvTableTr.footVariant},tableVariant:function(){return this.bvTableTr.tableVariant},computedColspan:function(){return Hy(this.colspan)},computedRowspan:function(){return Hy(this.rowspan)},cellClasses:function(){var e=this.variant,t=this.headVariant,n=this.isStickyColumn;return(!e&&this.isStickyHeader&&!t||!e&&n&&this.inTfoot&&!this.footVariant||!e&&n&&this.inThead&&!t||!e&&n&&this.inTbody)&&(e=this.rowVariant||this.tableVariant||"b-table-default"),[e?"".concat(this.isDark?"bg":"table","-").concat(e):null,n?"b-table-sticky-column":null]},cellAttrs:function(){var e=this.stackedHeading,t=this.inThead||this.inTfoot,n=this.computedColspan,i=this.computedRowspan,r="cell",o=null;return t?(r="columnheader",o=n>0?"colspan":"col"):Object(H["t"])(this.tag,"th")&&(r="rowheader",o=i>0?"rowgroup":"row"),Cy(Cy({colspan:n,rowspan:i,role:r,scope:o},this.bvAttrs),{},{"data-label":this.isStackedCell&&!Object(u["p"])(e)?Object(me["g"])(e):null})}},render:function(e){var t=[this.normalizeSlot()];return e(this.tag,{class:this.cellClasses,attrs:this.cellAttrs,on:this.bvListeners},[this.isStackedCell?e("div",[t]):t])}});function By(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ry="busy",Ny=Y["gb"]+Ry,zy=By({},Ry,Object(I["c"])(C["g"],!1)),Wy=i["default"].extend({props:zy,data:function(){return{localBusy:!1}},computed:{computedBusy:function(){return this[Ry]||this.localBusy}},watch:{localBusy:function(e,t){e!==t&&this.$emit(Ny,e)}},methods:{stopIfBusy:function(e){return!!this.computedBusy&&(Object(dt["f"])(e),!0)},renderBusy:function(){var e=this.tbodyTrClass,t=this.tbodyTrAttr,n=this.$createElement;return this.computedBusy&&this.hasNormalizedSlot(E["bb"])?n(Dy,{staticClass:"b-table-busy-slot",class:[Object(u["f"])(e)?e(null,E["bb"]):e],attrs:Object(u["f"])(t)?t(null,E["bb"]):t,key:"table-busy-slot"},[n(Iy,{props:{colspan:this.computedFields.length||null}},[this.normalizeSlot(E["bb"])])]):null}}}),Vy={caption:Object(I["c"])(C["u"]),captionHtml:Object(I["c"])(C["u"])},Uy=i["default"].extend({props:Vy,computed:{captionId:function(){return this.isStacked?this.safeId("_caption_"):null}},methods:{renderCaption:function(){var e=this.caption,t=this.captionHtml,n=this.$createElement,i=n(),r=this.hasNormalizedSlot(E["cb"]);return(r||e||t)&&(i=n("caption",{attrs:{id:this.captionId},domProps:r?{}:qt(t,e),key:"caption",ref:"caption"},this.normalizeSlot(E["cb"]))),i}}}),Gy={},qy=i["default"].extend({methods:{renderColgroup:function(){var e=this.computedFields,t=this.$createElement,n=t();return this.hasNormalizedSlot(E["db"])&&(n=t("colgroup",{key:"colgroup"},[this.normalizeSlot(E["db"],{columns:e.length,fields:e})])),n}}}),Jy={emptyFilteredHtml:Object(I["c"])(C["u"]),emptyFilteredText:Object(I["c"])(C["u"],"There are no records matching your request"),emptyHtml:Object(I["c"])(C["u"]),emptyText:Object(I["c"])(C["u"],"There are no records to show"),showEmpty:Object(I["c"])(C["g"],!1)},Ky=i["default"].extend({props:Jy,methods:{renderEmpty:function(){var e=this.computedItems,t=this.$createElement,n=t();if(this.showEmpty&&(!e||0===e.length)&&(!this.computedBusy||!this.hasNormalizedSlot(E["bb"]))){var i=this.computedFields,r=this.isFiltered,o=this.emptyText,a=this.emptyHtml,s=this.emptyFilteredText,c=this.emptyFilteredHtml,d=this.tbodyTrClass,l=this.tbodyTrAttr;n=this.normalizeSlot(r?E["o"]:E["n"],{emptyFilteredHtml:c,emptyFilteredText:s,emptyHtml:a,emptyText:o,fields:i,items:e}),n||(n=t("div",{class:["text-center","my-2"],domProps:r?qt(c,s):qt(a,o)})),n=t(Iy,{props:{colspan:i.length||null}},[t("div",{attrs:{role:"alert","aria-live":"polite"}},[n])]),n=t(Dy,{staticClass:"b-table-empty-row",class:[Object(u["f"])(d)?d(null,"row-empty"):d],attrs:Object(u["f"])(l)?l(null,"row-empty"):l,key:r?"b-empty-filtered-row":"b-empty-row"},[n])}return n}}}),Xy=function e(t){return Object(u["p"])(t)?"":Object(u["j"])(t)&&!Object(u["c"])(t)?Object(f["h"])(t).sort().map((function(n){return e(t[n])})).filter((function(e){return!!e})).join(" "):Object(me["g"])(t)};function Zy(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Qy(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:{},r=Object(f["h"])(i).reduce((function(t,n){var r=i[n],o=r.filterByFormatted,a=Object(u["f"])(o)?o:o?r.formatter:null;return Object(u["f"])(a)&&(t[n]=a(e[n],n,e)),t}),Object(f["b"])(e)),o=Object(f["h"])(r).filter((function(e){return!r_[e]&&!(Object(u["a"])(t)&&t.length>0&&Object(ut["a"])(t,e))&&!(Object(u["a"])(n)&&n.length>0&&!Object(ut["a"])(n,e))}));return Object(f["k"])(r,o)},s_=function(e,t,n,i){return Object(u["j"])(e)?Xy(a_(e,t,n,i)):""};function c_(e){return f_(e)||l_(e)||d_(e)||u_()}function u_(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d_(e,t){if(e){if("string"===typeof e)return p_(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p_(e,t):void 0}}function l_(e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}function f_(e){if(Array.isArray(e))return p_(e)}function p_(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n0&&Object(p["a"])(h_,P["ec"]),e},localFiltering:function(){return!this.hasProvider||!!this.noProviderFiltering},filteredCheck:function(){var e=this.filteredItems,t=this.localItems,n=this.localFilter;return{filteredItems:e,localItems:t,localFilter:n}},localFilterFn:function(){var e=this.filterFunction;return Object(I["b"])(e)?e:null},filteredItems:function(){var e=this.localItems,t=this.localFilter,n=this.localFiltering?this.filterFnFactory(this.localFilterFn,t)||this.defaultFilterFnFactory(t):null;return n&&e.length>0?e.filter(n):e}},watch:{computedFilterDebounce:function(e){!e&&this.$_filterTimer&&(this.clearFilterTimer(),this.localFilter=this.filterSanitize(this.filter))},filter:{deep:!0,handler:function(e){var t=this,n=this.computedFilterDebounce;this.clearFilterTimer(),n&&n>0?this.$_filterTimer=setTimeout((function(){t.localFilter=t.filterSanitize(e)}),n):this.localFilter=this.filterSanitize(e)}},filteredCheck:function(e){var t=e.filteredItems,n=e.localFilter,i=!1;n?Object(ei["a"])(n,[])||Object(ei["a"])(n,{})?i=!1:n&&(i=!0):i=!1,i&&this.$emit(Y["q"],t,t.length),this.isFiltered=i},isFiltered:function(e,t){if(!1===e&&!0===t){var n=this.localItems;this.$emit(Y["q"],n,n.length)}}},created:function(){var e=this;this.$_filterTimer=null,this.$nextTick((function(){e.isFiltered=Boolean(e.localFilter)}))},beforeDestroy:function(){this.clearFilterTimer()},methods:{clearFilterTimer:function(){clearTimeout(this.$_filterTimer),this.$_filterTimer=null},filterSanitize:function(e){return!this.localFiltering||this.localFilterFn||Object(u["n"])(e)||Object(u["m"])(e)?Object(a["a"])(e):""},filterFnFactory:function(e,t){if(!e||!Object(u["f"])(e)||!t||Object(ei["a"])(t,[])||Object(ei["a"])(t,{}))return null;var n=function(n){return e(n,t)};return n},defaultFilterFnFactory:function(e){var t=this;if(!e||!Object(u["n"])(e)&&!Object(u["m"])(e))return null;var n=e;if(Object(u["n"])(n)){var i=Object(me["a"])(e).replace(s["w"],"\\s+");n=new RegExp(".*".concat(i,".*"),"i")}var r=function(e){return n.lastIndex=0,n.test(s_(e,t.computedFilterIgnored,t.computedFilterIncluded,t.computedFieldsObj))};return r}}}),g_=function(e,t){var n=null;return Object(u["n"])(t)?n={key:e,label:t}:Object(u["f"])(t)?n={key:e,formatter:t}:Object(u["j"])(t)?(n=Object(f["b"])(t),n.key=n.key||e):!1!==t&&(n={key:e}),n},v_=function(e,t){var n=[];if(Object(u["a"])(e)&&e.filter(c["a"]).forEach((function(e){if(Object(u["n"])(e))n.push({key:e,label:Object(me["f"])(e)});else if(Object(u["j"])(e)&&e.key&&Object(u["n"])(e.key))n.push(Object(f["b"])(e));else if(Object(u["j"])(e)&&1===Object(f["h"])(e).length){var t=Object(f["h"])(e)[0],i=g_(t,e[t]);i&&n.push(i)}})),0===n.length&&Object(u["a"])(t)&&t.length>0){var i=t[0];Object(f["h"])(i).forEach((function(e){r_[e]||n.push({key:e,label:Object(me["f"])(e)})}))}var r={};return n.filter((function(e){return!r[e.key]&&(r[e.key]=!0,e.label=Object(u["n"])(e.label)?e.label:Object(me["f"])(e.key),!0)}))};function y_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function __(e){for(var t=1;t0&&e.some(c["a"])},selectableIsMultiSelect:function(){return this.isSelectable&&Object(ut["a"])(["range","multi"],this.selectMode)},selectableTableClasses:function(){var e,t=this.isSelectable;return e={"b-table-selectable":t},E_(e,"b-table-select-".concat(this.selectMode),t),E_(e,"b-table-selecting",this.selectableHasSelection),E_(e,"b-table-selectable-no-click",t&&!this.hasSelectableRowClick),e},selectableTableAttrs:function(){return{"aria-multiselectable":this.isSelectable?this.selectableIsMultiSelect?"true":"false":null}}},watch:{computedItems:function(e,t){var n=!1;if(this.isSelectable&&this.selectedRows.length>0){n=Object(u["a"])(e)&&Object(u["a"])(t)&&e.length===t.length;for(var i=0;n&&i=0&&e0&&(this.selectedLastClicked=-1,this.selectedRows=this.selectableIsMultiSelect?Object(ut["c"])(e,!0):[!0])},isRowSelected:function(e){return!(!Object(u["h"])(e)||!this.selectedRows[e])},clearSelected:function(){this.selectedLastClicked=-1,this.selectedRows=[]},selectableRowClasses:function(e){if(this.isSelectable&&this.isRowSelected(e)){var t=this.selectedVariant;return E_({"b-table-row-selected":!0},"".concat(this.dark?"bg":"table","-").concat(t),t)}return{}},selectableRowAttrs:function(e){return{"aria-selected":this.isSelectable?this.isRowSelected(e)?"true":"false":null}},setSelectionHandlers:function(e){var t=e&&!this.noSelectOnClick?"$on":"$off";this[t](Y["L"],this.selectionHandler),this[t](Y["q"],this.clearSelected),this[t](Y["i"],this.clearSelected)},selectionHandler:function(e,t,n){if(this.isSelectable&&!this.noSelectOnClick){var i=this.selectMode,r=this.selectedLastRow,o=this.selectedRows.slice(),a=!o[t];if("single"===i)o=[];else if("range"===i)if(r>-1&&n.shiftKey){for(var s=Object(ne["e"])(r,t);s<=Object(ne["d"])(r,t);s++)o[s]=!0;a=!0}else n.ctrlKey||n.metaKey||(o=[],a=!0),this.selectedLastRow=a?t:-1;o[t]=a,this.selectedRows=o}else this.clearSelected()}}}),R_=function(e,t){return e.map((function(e,t){return[t,e]})).sort(function(e,t){return this(e[1],t[1])||e[0]-t[0]}.bind(t)).map((function(e){return e[1]}))},N_=function(e){return Object(u["p"])(e)?"":Object(u["i"])(e)?Object(F["b"])(e,e):e},z_=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=n.sortBy,r=void 0===i?null:i,o=n.formatter,a=void 0===o?null:o,s=n.locale,c=void 0===s?void 0:s,d=n.localeOptions,f=void 0===d?{}:d,p=n.nullLast,h=void 0!==p&&p,m=l(e,r,null),b=l(t,r,null);return Object(u["f"])(a)&&(m=a(m,r,e),b=a(b,r,t)),m=N_(m),b=N_(b),Object(u["c"])(m)&&Object(u["c"])(b)||Object(u["h"])(m)&&Object(u["h"])(b)?mb?1:0:h&&""===m&&""!==b?1:h&&""!==m&&""===b?-1:Xy(m).localeCompare(Xy(b),c,f)};function W_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function V_(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:document,t=Object(H["l"])();return!!(t&&""!==t.toString().trim()&&t.containsNode&&Object(H["s"])(e))&&t.containsNode(e,!0)},lO=Object(I["d"])(Fy,P["mc"]),fO=i["default"].extend({name:P["mc"],extends:Iy,props:lO,computed:{tag:function(){return"th"}}});function pO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function hO(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,i=new Array(t);n0&&(y=String((a-1)*s+t+1));var _=Object(me["g"])(l(e,o))||null,O=_||Object(me["g"])(t),j=_?this.safeId("_row_".concat(_)):null,w=this.selectableRowClasses?this.selectableRowClasses(t):{},k=this.selectableRowAttrs?this.selectableRowAttrs(t):{},M=Object(u["f"])(c)?c(e,"row"):c,L=Object(u["f"])(d)?d(e,"row"):d;if(b.push(f(Dy,{class:[M,w,h?"b-table-has-details":""],props:{variant:e[n_]||null},attrs:hO(hO({id:j},L),{},{tabindex:m?"0":null,"data-pk":_||null,"aria-details":g,"aria-owns":g,"aria-rowindex":y},k),on:{mouseenter:this.rowHovered,mouseleave:this.rowUnhovered},key:"__b-table-row-".concat(O,"__"),ref:"item-rows",refInFor:!0},v)),h){var x={item:e,index:t,fields:i,toggleDetails:this.toggleDetailsFactory(p,e)};this.supportsSelectableRows&&(x.rowSelected=this.isRowSelected(t),x.selectRow=function(){return n.selectRow(t)},x.unselectRow=function(){return n.unselectRow(t)});var T=f(Iy,{props:{colspan:i.length},class:this.detailsTdClass},[this.normalizeSlot(E["ab"],x)]);r&&b.push(f("tr",{staticClass:"d-none",attrs:{"aria-hidden":"true",role:"presentation"},key:"__b-table-details-stripe__".concat(O)}));var S=Object(u["f"])(this.tbodyTrClass)?this.tbodyTrClass(e,E["ab"]):this.tbodyTrClass,D=Object(u["f"])(this.tbodyTrAttr)?this.tbodyTrAttr(e,E["ab"]):this.tbodyTrAttr;b.push(f(Dy,{staticClass:"b-table-details",class:[S],props:{variant:e[n_]||null},attrs:hO(hO({},D),{},{id:g,tabindex:"-1"}),key:"__b-table-details__".concat(O)},[T]))}else p&&(b.push(f()),r&&b.push(f()));return b}}});function kO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function MO(e){for(var t=1;t0&&n&&n.length>0?Object(ut["f"])(t.children).filter((function(e){return Object(ut["a"])(n,e)})):[]},getTbodyTrIndex:function(e){if(!Object(H["s"])(e))return-1;var t="TR"===e.tagName?e:Object(H["e"])("tr",e,!0);return t?this.getTbodyTrs().indexOf(t):-1},emitTbodyRowEvent:function(e,t){if(e&&this.hasListener(e)&&t&&t.target){var n=this.getTbodyTrIndex(t.target);if(n>-1){var i=this.computedItems[n];this.$emit(e,i,n,t)}}},tbodyRowEvtStopped:function(e){return this.stopIfBusy&&this.stopIfBusy(e)},onTbodyRowKeydown:function(e){var t=e.target,n=e.keyCode;if(!this.tbodyRowEvtStopped(e)&&"TR"===t.tagName&&Object(H["q"])(t)&&0===t.tabIndex)if(Object(ut["a"])([et,st],n))Object(dt["f"])(e),this.onTBodyRowClicked(e);else if(Object(ut["a"])([ct,Ze,nt,Qe],n)){var i=this.getTbodyTrIndex(t);if(i>-1){Object(dt["f"])(e);var r=this.getTbodyTrs(),o=e.shiftKey;n===nt||o&&n===ct?Object(H["d"])(r[0]):n===Qe||o&&n===Ze?Object(H["d"])(r[r.length-1]):n===ct&&i>0?Object(H["d"])(r[i-1]):n===Ze&&ie.length)&&(t=e.length);for(var n=0,i=new Array(t);n0&&void 0!==arguments[0]&&arguments[0],n=this.computedFields,i=this.isSortable,r=this.isSelectable,o=this.headVariant,a=this.footVariant,s=this.headRowVariant,d=this.footRowVariant,l=this.$createElement;if(this.isStackedAlways||0===n.length)return l();var f=i||this.hasListener(Y["u"]),p=r?this.selectAllRows:Lr,h=r?this.clearSelected:Lr,m=function(n,r){var o=n.label,a=n.labelHtml,s=n.variant,u=n.stickyColumn,d=n.key,m=null;n.label.trim()||n.headerTitle||(m=Object(me["f"])(n.key));var b={};f&&(b.click=function(i){e.headClicked(i,n,t)},b.keydown=function(i){var r=i.keyCode;r!==et&&r!==st||e.headClicked(i,n,t)});var g=i?e.sortTheadThAttrs(d,n,t):{},v=i?e.sortTheadThClasses(d,n,t):null,y=i?e.sortTheadThLabel(d,n,t):null,_={class:[e.fieldClasses(n),v],props:{variant:s,stickyColumn:u},style:n.thStyle||{},attrs:JO(JO({tabindex:f&&n.sortable?"0":null,abbr:n.headerAbbr||null,title:n.headerTitle||null,"aria-colindex":r+1,"aria-label":m},e.getThValues(null,d,n.thAttr,t?"foot":"head",{})),g),on:b,key:d},O=[XO(d),XO(d.toLowerCase()),XO()];t&&(O=[ZO(d),ZO(d.toLowerCase()),ZO()].concat(NO(O)));var j={label:o,column:d,field:n,isFoot:t,selectAllRows:p,clearSelected:h},w=e.normalizeSlot(O,j)||l("div",{domProps:qt(a,o)}),k=y?l("span",{staticClass:"sr-only"}," (".concat(y,")")):null;return l(fO,_,[w,k].filter(c["a"]))},b=n.map(m).filter(c["a"]),g=[];if(t)g.push(l(Dy,{class:this.tfootTrClass,props:{variant:Object(u["p"])(d)?s:d}},b));else{var v={columns:n.length,fields:n,selectAllRows:p,clearSelected:h};g.push(this.normalizeSlot(E["hb"],v)||l()),g.push(l(Dy,{class:this.theadTrClass,props:{variant:s}},b))}return l(t?CO:RO,{class:(t?this.tfootClass:this.theadClass)||null,props:t?{footVariant:a||o||null}:{headVariant:o||null},key:t?"bv-tfoot":"bv-thead"},g)}}}),tj={},nj=i["default"].extend({methods:{renderTopRow:function(){var e=this.computedFields,t=this.stacked,n=this.tbodyTrClass,i=this.tbodyTrAttr,r=this.$createElement;return this.hasNormalizedSlot(E["kb"])&&!0!==t&&""!==t?r(Dy,{staticClass:"b-table-top-row",class:[Object(u["f"])(n)?n(null,"row-top"):n],attrs:Object(u["f"])(i)?i(null,"row-top"):i,key:"b-top-row"},[this.normalizeSlot(E["kb"],{columns:e.length,fields:e})]):r()}}});function ij(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function rj(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0];if(this.$_observer&&this.$_observer.disconnect(),this.$_observer=null,t){var n=function(){e.$nextTick((function(){Object(H["D"])((function(){e.updateTabs()}))}))};this.$_observer=Ar(this.$refs.content,n,{childList:!0,subtree:!1,attributes:!0,attributeFilter:["id"]})}},getTabs:function(){var e=this.registeredTabs.filter((function(e){return 0===e.$children.filter((function(e){return e._isTab})).length})),t=[];if(r["i"]&&e.length>0){var n=e.map((function(e){return"#".concat(e.safeId())})).join(", ");t=Object(H["F"])(n,this.$el).map((function(e){return e.id})).filter(c["a"])}return R_(e,(function(e,n){return t.indexOf(e.safeId())-t.indexOf(n.safeId())}))},updateTabs:function(){var e=this.getTabs(),t=e.indexOf(e.slice().reverse().find((function(e){return e.localActive&&!e.disabled})));if(t<0){var n=this.currentTab;n>=e.length?t=e.indexOf(e.slice().reverse().find(xj)):e[n]&&!e[n].disabled&&(t=n)}t<0&&(t=e.indexOf(e.find(xj))),e.forEach((function(e,n){e.localActive=n===t})),this.tabs=e,this.currentTab=t},getButtonForTab:function(e){return(this.$refs.buttons||[]).find((function(t){return t.tab===e}))},updateButton:function(e){var t=this.getButtonForTab(e);t&&t.$forceUpdate&&t.$forceUpdate()},activateTab:function(e){var t=this.currentTab,n=this.tabs,i=!1;if(e){var r=n.indexOf(e);if(r!==t&&r>-1&&!e.disabled){var o=new ha["a"](Y["a"],{cancelable:!0,vueTarget:this,componentId:this.safeId()});this.$emit(o.type,r,t,o),o.defaultPrevented||(this.currentTab=r,i=!0)}}return i||this[Mj]===t||this.$emit(Lj,t),i},deactivateTab:function(e){return!!e&&this.activateTab(this.tabs.filter((function(t){return t!==e})).find(xj))},focusButton:function(e){var t=this;this.$nextTick((function(){Object(H["d"])(t.getButtonForTab(e))}))},emitTabClick:function(e,t){Object(u["d"])(t)&&e&&e.$emit&&!e.disabled&&e.$emit(Y["f"],t)},clickTab:function(e,t){this.activateTab(e),this.emitTabClick(e,t)},firstTab:function(e){var t=this.tabs.find(xj);this.activateTab(t)&&e&&(this.focusButton(t),this.emitTabClick(t,e))},previousTab:function(e){var t=Object(ne["d"])(this.currentTab,0),n=this.tabs.slice(0,t).reverse().find(xj);this.activateTab(n)&&e&&(this.focusButton(n),this.emitTabClick(n,e))},nextTab:function(e){var t=Object(ne["d"])(this.currentTab,-1),n=this.tabs.slice(t+1).find(xj);this.activateTab(n)&&e&&(this.focusButton(n),this.emitTabClick(n,e))},lastTab:function(e){var t=this.tabs.slice().reverse().find(xj);this.activateTab(t)&&e&&(this.focusButton(t),this.emitTabClick(t,e))}},render:function(e){var t=this,n=this.align,i=this.card,r=this.end,o=this.fill,a=this.firstTab,s=this.justified,c=this.lastTab,u=this.nextTab,d=this.noKeyNav,l=this.noNavStyle,f=this.pills,p=this.previousTab,h=this.small,m=this.tabs,b=this.vertical,g=m.find((function(e){return e.localActive&&!e.disabled})),v=m.find((function(e){return!e.disabled})),y=m.map((function(n,i){var r,o=n.safeId,s=null;return d||(s=-1,(n===g||!g&&n===v)&&(s=null)),e(Tj,{props:{controls:o?o():null,id:n.controlledBy||(o?o("_BV_tab_button_"):null),noKeyNav:d,posInSet:i+1,setSize:m.length,tab:n,tabIndex:s},on:(r={},yj(r,Y["f"],(function(e){t.clickTab(n,e)})),yj(r,Y["r"],a),yj(r,Y["H"],p),yj(r,Y["C"],u),yj(r,Y["z"],c),r),key:n[A["a"]]||i,ref:"buttons",refInFor:!0})})),_=e(ym,{class:this.localNavClass,attrs:{role:"tablist",id:this.safeId("_BV_tab_controls_")},props:{fill:o,justified:s,align:n,tabs:!l&&!f,pills:!l&&f,vertical:b,small:h,cardHeader:i&&!b},ref:"nav"},[this.normalizeSlot(E["fb"])||e(),y,this.normalizeSlot(E["eb"])||e()]);_=e("div",{class:[{"card-header":i&&!b&&!r,"card-footer":i&&!b&&r,"col-auto":b},this.navWrapperClass],key:"bv-tabs-nav"},[_]);var O=this.normalizeSlot()||[],j=e();0===O.length&&(j=e("div",{class:["tab-pane","active",{"card-body":i}],key:"bv-empty-tab"},this.normalizeSlot(E["n"])));var w=e("div",{staticClass:"tab-content",class:[{col:b},this.contentClass],attrs:{id:this.safeId("_BV_tab_container_")},key:"bv-content",ref:"content"},[O,j]);return e(this.tag,{staticClass:"tabs",class:{row:b,"no-gutters":b&&i},attrs:{id:this.safeId()}},[r?w:e(),_,r?e():w])}});function Pj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Yj(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,i=new Array(t);n1&&void 0!==arguments[1]?arguments[1]:{};e&&!Object(p["d"])(ew)&&n(Uj(Uj({},rw(t)),{},{toastContent:e}),this._vm)}},{key:"show",value:function(e){e&&this._root.$emit(Object(dt["d"])(P["pc"],Y["T"]),e)}},{key:"hide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this._root.$emit(Object(dt["d"])(P["pc"],Y["w"]),e)}}]),e}();e.mixin({beforeCreate:function(){this[tw]=new i(this)}}),Object(f["g"])(e.prototype,ew)||Object(f["e"])(e.prototype,ew,{get:function(){return this&&this[tw]||Object(p["a"])('"'.concat(ew,'" must be accessed from a Vue instance "this" context.'),P["pc"]),this[tw]}})},aw=M({plugins:{plugin:ow}}),sw=n("0f65"),cw=M({components:{BToast:Rj["a"],BToaster:sw["a"]},plugins:{BVToastPlugin:aw}});function uw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function dw(e){for(var t=1;t=n){var i=this.$targets[this.$targets.length-1];this.$activeTarget!==i&&this.activate(i)}else{if(this.$activeTarget&&e0)return this.$activeTarget=null,void this.clear();for(var r=this.$offsets.length;r--;){var o=this.$activeTarget!==this.$targets[r]&&e>=this.$offsets[r]&&(Object(u["o"])(this.$offsets[r+1])||e0&&this.$root&&this.$root.$emit(Xw,e,n)}},{key:"clear",value:function(){var e=this;Object(H["F"])("".concat(this.$selector,", ").concat(Uw),this.$el).filter((function(e){return Object(H["p"])(e,zw)})).forEach((function(t){return e.setActiveState(t,!1)}))}},{key:"setActiveState",value:function(e,t){e&&(t?Object(H["b"])(e,zw):Object(H["A"])(e,zw))}}],[{key:"Name",get:function(){return Rw}},{key:"Default",get:function(){return ek}},{key:"DefaultType",get:function(){return tk}}]),e}(),ak="__BV_ScrollSpy__",sk=/^\d+$/,ck=/^(auto|position|offset)$/,uk=function(e){var t={};return e.arg&&(t.element="#".concat(e.arg)),Object(f["h"])(e.modifiers).forEach((function(e){sk.test(e)?t.offset=Object(F["c"])(e,0):ck.test(e)&&(t.method=e)})),Object(u["n"])(e.value)?t.element=e.value:Object(u["h"])(e.value)?t.offset=Object(ne["g"])(e.value):Object(u["j"])(e.value)&&Object(f["h"])(e.value).filter((function(e){return!!ok.DefaultType[e]})).forEach((function(n){t[n]=e.value[n]})),t},dk=function(e,t,n){if(r["i"]){var i=uk(t);e[ak]?e[ak].updateConfig(i,n.context.$root):e[ak]=new ok(e,i,n.context.$root)}},lk=function(e){e[ak]&&(e[ak].dispose(),e[ak]=null,delete e[ak])},fk={bind:function(e,t,n){dk(e,t,n)},inserted:function(e,t,n){dk(e,t,n)},update:function(e,t,n){t.value!==t.oldValue&&dk(e,t,n)},componentUpdated:function(e,t,n){t.value!==t.oldValue&&dk(e,t,n)},unbind:function(e){lk(e)}},pk=M({directives:{VBScrollspy:fk}}),hk=M({directives:{VBVisible:sr}}),mk=M({plugins:{VBHoverPlugin:Yw,VBModalPlugin:Cw,VBPopoverPlugin:cv,VBScrollspyPlugin:pk,VBTogglePlugin:ra,VBTooltipPlugin:Dw,VBVisiblePlugin:hk}}),bk="BootstrapVue",gk=k({plugins:{componentsPlugin:Pw,directivesPlugin:mk}}),vk={install:gk,NAME:bk}},"5fb2":function(e,t,n){"use strict";var i=2147483647,r=36,o=1,a=26,s=38,c=700,u=72,d=128,l="-",f=/[^\0-\u007E]/,p=/[.\u3002\uFF0E\uFF61]/g,h="Overflow: input needs wider integers to process",m=r-o,b=Math.floor,g=String.fromCharCode,v=function(e){var t=[],n=0,i=e.length;while(n=55296&&r<=56319&&n>1,e+=b(e/t);e>m*a>>1;i+=r)e=b(e/m);return b(i+(m+1)*e/(e+s))},O=function(e){var t=[];e=v(e);var n,s,c=e.length,f=d,p=0,m=u;for(n=0;n=f&&sb((i-p)/k))throw RangeError(h);for(p+=(w-f)*k,f=w,n=0;ni)throw RangeError(h);if(s==f){for(var M=p,L=r;;L+=r){var x=L<=m?o:L>=m+a?a:L-m;if(M1?n-1:0),i=1;il){var h,p=u(arguments[l++]),m=d?a(p).concat(d(p)):a(p),b=m.length,v=0;while(b>v)h=m[v++],r&&!f.call(p,h)||(n[h]=p[h])}return n}:l},6117:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}(\:e|\:a)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?":e":1===t||2===t?":a":":e";return e+n},week:{dow:1,doy:4}});return t}))},"602d":function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var i=n("a026"),r=n("0056"),o=i["default"].extend({methods:{listenOnRoot:function(e,t){var n=this;this.$root.$on(e,t),this.$on(r["eb"],(function(){n.$root.$off(e,t)}))},listenOnRootOnce:function(e,t){var n=this;this.$root.$once(e,t),this.$on(r["eb"],(function(){n.$root.$off(e,t)}))},emitOnRoot:function(e){for(var t,n=arguments.length,i=new Array(n>1?n-1:0),r=1;rd){var p,h=u(arguments[d++]),m=l?o(h).concat(l(h)):o(h),b=m.length,g=0;while(b>g)p=m[g++],i&&!f.call(h,p)||(n[p]=h[p])}return n}:d},6117:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(t,e){return 12===t&&(t=0),"يېرىم كېچە"===e||"سەھەر"===e||"چۈشتىن بۇرۇن"===e?t:"چۈشتىن كېيىن"===e||"كەچ"===e?t+12:t>=11?t:t+12},meridiem:function(t,e,n){var r=100*t+e;return r<600?"يېرىم كېچە":r<900?"سەھەر":r<1130?"چۈشتىن بۇرۇن":r<1230?"چۈش":r<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"-كۈنى";case"w":case"W":return t+"-ھەپتە";default:return t}},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:7}});return e}))},"62e4":function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},6403:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(e,t){return 12===e&&(e=0),"يېرىم كېچە"===t||"سەھەر"===t||"چۈشتىن بۇرۇن"===t?e:"چۈشتىن كېيىن"===t||"كەچ"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,n){var i=100*e+t;return i<600?"يېرىم كېچە":i<900?"سەھەر":i<1130?"چۈشتىن بۇرۇن":i<1230?"چۈش":i<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"-كۈنى";case"w":case"W":return e+"-ھەپتە";default:return e}},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:7}});return t}))},"62e4":function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},6403:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"tengahari"===e?t>=11?t:t+12:"petang"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"tengahari":t<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return e}))},6547:function(t,e,n){var r=n("a691"),i=n("1d80"),a=function(t){return function(e,n){var a,o,s=String(i(e)),c=r(n),u=s.length;return c<0||c>=u?t?"":void 0:(a=s.charCodeAt(c),a<55296||a>56319||c+1===u||(o=s.charCodeAt(c+1))<56320||o>57343?t?s.charAt(c):a:t?s.slice(c,c+2):o-56320+(a-55296<<10)+65536)}};t.exports={codeAt:a(!1),charAt:a(!0)}},"65db":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,n){return e<11?"pagi":e<15?"tengahari":e<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t}))},6547:function(e,t,n){var i=n("a691"),r=n("1d80"),o=function(e){return function(t,n){var o,a,s=String(r(t)),c=i(n),u=s.length;return c<0||c>=u?e?"":void 0:(o=s.charCodeAt(c),o<55296||o>56319||c+1===u||(a=s.charCodeAt(c+1))<56320||a>57343?e?s.charAt(c):o:e?s.slice(c,c+2):a-56320+(o-55296<<10)+65536)}};e.exports={codeAt:o(!1),charAt:o(!0)}},"65db":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"[la] D[-an de] MMMM, YYYY",LLL:"[la] D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd[n], [la] D[-an de] MMMM, YYYY HH:mm",llll:"ddd, [la] D[-an de] MMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(t){return"p"===t.charAt(0).toLowerCase()},meridiem:function(t,e,n){return t>11?n?"p.t.m.":"P.T.M.":n?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd[n je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasintan] dddd[n je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %s",s:"kelkaj sekundoj",ss:"%d sekundoj",m:"unu minuto",mm:"%d minutoj",h:"unu horo",hh:"%d horoj",d:"unu tago",dd:"%d tagoj",M:"unu monato",MM:"%d monatoj",y:"unu jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}});return e}))},"65f0":function(t,e,n){var r=n("861d"),i=n("e8b5"),a=n("b622"),o=a("species");t.exports=function(t,e){var n;return i(t)&&(n=t.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)?r(n)&&(n=n[o],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},6784:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"[la] D[-an de] MMMM, YYYY",LLL:"[la] D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd[n], [la] D[-an de] MMMM, YYYY HH:mm",llll:"ddd, [la] D[-an de] MMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(e){return"p"===e.charAt(0).toLowerCase()},meridiem:function(e,t,n){return e>11?n?"p.t.m.":"P.T.M.":n?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd[n je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasintan] dddd[n je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %s",s:"kelkaj sekundoj",ss:"%d sekundoj",m:"unu minuto",mm:"%d minutoj",h:"unu horo",hh:"%d horoj",d:"unu tago",dd:"%d tagoj",M:"unu monato",MM:"%d monatoj",y:"unu jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}});return t}))},"65f0":function(e,t,n){var i=n("861d"),r=n("e8b5"),o=n("b622"),a=o("species");e.exports=function(e,t){var n;return r(e)&&(n=e.constructor,"function"!=typeof n||n!==Array&&!r(n.prototype)?i(n)&&(n=n[a],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},6784:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],n=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"],r=t.defineLocale("sd",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(t){return"شام"===t},meridiem:function(t,e,n){return t<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:4}});return r}))},"686b":function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"d",(function(){return o})),n.d(e,"c",(function(){return s})),n.d(e,"b",(function(){return c}));var r=n("e863"),i=n("938d"),a=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;Object(i["a"])()||console.warn("[BootstrapVue warn]: ".concat(e?"".concat(e," - "):"").concat(t))},o=function(t){return!r["i"]&&(a("".concat(t,": Can not be called during SSR.")),!0)},s=function(t){return!r["f"]&&(a("".concat(t,": Requires Promise support.")),!0)},c=function(t){return!r["c"]&&(a("".concat(t,": Requires MutationObserver support.")),!0)}},6887:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],n=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"],i=e.defineLocale("sd",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return e<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}});return i}))},"686b":function(e,t,n){"use strict";n.d(t,"a",(function(){return o})),n.d(t,"d",(function(){return a})),n.d(t,"c",(function(){return s})),n.d(t,"b",(function(){return c}));var i=n("e863"),r=n("938d"),o=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;Object(r["a"])()||console.warn("[BootstrapVue warn]: ".concat(t?"".concat(t," - "):"").concat(e))},a=function(e){return!i["i"]&&(o("".concat(e,": Can not be called during SSR.")),!0)},s=function(e){return!i["f"]&&(o("".concat(e,": Requires Promise support.")),!0)},c=function(e){return!i["c"]&&(o("".concat(e,": Requires MutationObserver support.")),!0)}},6887:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e,n){var r={mm:"munutenn",MM:"miz",dd:"devezh"};return t+" "+i(r[n],t)}function n(t){switch(r(t)){case 1:case 3:case 4:case 5:case 9:return t+" bloaz";default:return t+" vloaz"}}function r(t){return t>9?r(t%10):t}function i(t,e){return 2===e?a(t):t}function a(t){var e={m:"v",b:"v",d:"z"};return void 0===e[t.charAt(0)]?t:e[t.charAt(0)]+t.substring(1)}var o=[/^gen/i,/^c[ʼ\']hwe/i,/^meu/i,/^ebr/i,/^mae/i,/^(mez|eve)/i,/^gou/i,/^eos/i,/^gwe/i,/^her/i,/^du/i,/^ker/i],s=/^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,c=/^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,u=/^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,l=[/^sul/i,/^lun/i,/^meurzh/i,/^merc[ʼ\']her/i,/^yaou/i,/^gwener/i,/^sadorn/i],d=[/^Sul/i,/^Lun/i,/^Meu/i,/^Mer/i,/^Yao/i,/^Gwe/i,/^Sad/i],f=[/^Su/i,/^Lu/i,/^Me([^r]|$)/i,/^Mer/i,/^Ya/i,/^Gw/i,/^Sa/i],h=t.defineLocale("br",{months:"Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParse:f,fullWeekdaysParse:l,shortWeekdaysParse:d,minWeekdaysParse:f,monthsRegex:s,monthsShortRegex:s,monthsStrictRegex:c,monthsShortStrictRegex:u,monthsParse:o,longMonthsParse:o,shortMonthsParse:o,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY HH:mm",LLLL:"dddd, D [a viz] MMMM YYYY HH:mm"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warcʼhoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Decʼh da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s ʼzo",s:"un nebeud segondennoù",ss:"%d eilenn",m:"ur vunutenn",mm:e,h:"un eur",hh:"%d eur",d:"un devezh",dd:e,M:"ur miz",MM:e,y:"ur bloaz",yy:n},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(t){var e=1===t?"añ":"vet";return t+e},week:{dow:1,doy:4},meridiemParse:/a.m.|g.m./,isPM:function(t){return"g.m."===t},meridiem:function(t,e,n){return t<12?"a.m.":"g.m."}});return h}))},"688b":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t,n){var i={mm:"munutenn",MM:"miz",dd:"devezh"};return e+" "+r(i[n],e)}function n(e){switch(i(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}function i(e){return e>9?i(e%10):e}function r(e,t){return 2===t?o(e):e}function o(e){var t={m:"v",b:"v",d:"z"};return void 0===t[e.charAt(0)]?e:t[e.charAt(0)]+e.substring(1)}var a=[/^gen/i,/^c[ʼ\']hwe/i,/^meu/i,/^ebr/i,/^mae/i,/^(mez|eve)/i,/^gou/i,/^eos/i,/^gwe/i,/^her/i,/^du/i,/^ker/i],s=/^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,c=/^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,u=/^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,d=[/^sul/i,/^lun/i,/^meurzh/i,/^merc[ʼ\']her/i,/^yaou/i,/^gwener/i,/^sadorn/i],l=[/^Sul/i,/^Lun/i,/^Meu/i,/^Mer/i,/^Yao/i,/^Gwe/i,/^Sad/i],f=[/^Su/i,/^Lu/i,/^Me([^r]|$)/i,/^Mer/i,/^Ya/i,/^Gw/i,/^Sa/i],p=e.defineLocale("br",{months:"Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParse:f,fullWeekdaysParse:d,shortWeekdaysParse:l,minWeekdaysParse:f,monthsRegex:s,monthsShortRegex:s,monthsStrictRegex:c,monthsShortStrictRegex:u,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY HH:mm",LLLL:"dddd, D [a viz] MMMM YYYY HH:mm"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warcʼhoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Decʼh da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s ʼzo",s:"un nebeud segondennoù",ss:"%d eilenn",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:n},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(e){var t=1===e?"añ":"vet";return e+t},week:{dow:1,doy:4},meridiemParse:/a.m.|g.m./,isPM:function(e){return"g.m."===e},meridiem:function(e,t,n){return e<12?"a.m.":"g.m."}});return p}))},"688b":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te hēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return e}))},6909:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te hēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t}))},6909:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"за %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"една минута",mm:"%d минути",h:"еден час",hh:"%d часа",d:"еден ден",dd:"%d дена",M:"еден месец",MM:"%d месеци",y:"една година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){var e=t%10,n=t%100;return 0===t?t+"-ев":0===n?t+"-ен":n>10&&n<20?t+"-ти":1===e?t+"-ви":2===e?t+"-ри":7===e||8===e?t+"-ми":t+"-ти"},week:{dow:1,doy:7}});return e}))},"69f3":function(t,e,n){var r,i,a,o=n("7f9a"),s=n("da84"),c=n("861d"),u=n("9112"),l=n("5135"),d=n("c6cd"),f=n("f772"),h=n("d012"),p="Object already initialized",m=s.WeakMap,b=function(t){return a(t)?i(t):r(t,{})},v=function(t){return function(e){var n;if(!c(e)||(n=i(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}};if(o||d.state){var _=d.state||(d.state=new m),g=_.get,y=_.has,O=_.set;r=function(t,e){if(y.call(_,t))throw new TypeError(p);return e.facade=t,O.call(_,t,e),e},i=function(t){return g.call(_,t)||{}},a=function(t){return y.call(_,t)}}else{var j=f("state");h[j]=!0,r=function(t,e){if(l(t,j))throw new TypeError(p);return e.facade=t,u(t,j,e),e},i=function(t){return l(t,j)?t[j]:{}},a=function(t){return l(t,j)}}t.exports={set:r,get:i,has:a,enforce:b,getterFor:v}},"6b77":function(t,e,n){"use strict";n.d(e,"b",(function(){return u})),n.d(e,"a",(function(){return l})),n.d(e,"c",(function(){return d})),n.d(e,"f",(function(){return f})),n.d(e,"e",(function(){return p})),n.d(e,"d",(function(){return m}));var r=n("e863"),i=n("0056"),a=n("992e"),o=n("7b1e"),s=n("fa73"),c=function(t){return r["d"]?Object(o["j"])(t)?t:{capture:!!t||!1}:!!(Object(o["j"])(t)?t.capture:t)},u=function(t,e,n,r){t&&t.addEventListener&&t.addEventListener(e,n,c(r))},l=function(t,e,n,r){t&&t.removeEventListener&&t.removeEventListener(e,n,c(r))},d=function(t){for(var e=t?u:l,n=arguments.length,r=new Array(n>1?n-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{},n=e.preventDefault,r=void 0===n||n,i=e.propagation,a=void 0===i||i,o=e.immediatePropagation,s=void 0!==o&&o;r&&t.preventDefault(),a&&t.stopPropagation(),s&&t.stopImmediatePropagation()},h=function(t){return Object(s["b"])(t.replace(a["d"],""))},p=function(t,e){return[i["hb"],h(t),e].join(i["ib"])},m=function(t,e){return[i["hb"],e,h(t)].join(i["ib"])}},"6c06":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var r=function(t){return t}},"6ce3":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"за %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"една минута",mm:"%d минути",h:"еден час",hh:"%d часа",d:"еден ден",dd:"%d дена",M:"еден месец",MM:"%d месеци",y:"една година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,n=e%100;return 0===e?e+"-ев":0===n?e+"-ен":n>10&&n<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}});return t}))},"69f3":function(e,t,n){var i,r,o,a=n("7f9a"),s=n("da84"),c=n("861d"),u=n("9112"),d=n("5135"),l=n("c6cd"),f=n("f772"),p=n("d012"),h="Object already initialized",m=s.WeakMap,b=function(e){return o(e)?r(e):i(e,{})},g=function(e){return function(t){var n;if(!c(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}};if(a||l.state){var v=l.state||(l.state=new m),y=v.get,_=v.has,O=v.set;i=function(e,t){if(_.call(v,e))throw new TypeError(h);return t.facade=e,O.call(v,e,t),t},r=function(e){return y.call(v,e)||{}},o=function(e){return _.call(v,e)}}else{var j=f("state");p[j]=!0,i=function(e,t){if(d(e,j))throw new TypeError(h);return t.facade=e,u(e,j,t),t},r=function(e){return d(e,j)?e[j]:{}},o=function(e){return d(e,j)}}e.exports={set:i,get:r,has:o,enforce:b,getterFor:g}},"6b77":function(e,t,n){"use strict";n.d(t,"b",(function(){return u})),n.d(t,"a",(function(){return d})),n.d(t,"c",(function(){return l})),n.d(t,"f",(function(){return f})),n.d(t,"e",(function(){return h})),n.d(t,"d",(function(){return m}));var i=n("e863"),r=n("0056"),o=n("992e"),a=n("7b1e"),s=n("fa73"),c=function(e){return i["d"]?Object(a["j"])(e)?e:{capture:!!e||!1}:!!(Object(a["j"])(e)?e.capture:e)},u=function(e,t,n,i){e&&e.addEventListener&&e.addEventListener(t,n,c(i))},d=function(e,t,n,i){e&&e.removeEventListener&&e.removeEventListener(t,n,c(i))},l=function(e){for(var t=e?u:d,n=arguments.length,i=new Array(n>1?n-1:0),r=1;r1&&void 0!==arguments[1]?arguments[1]:{},n=t.preventDefault,i=void 0===n||n,r=t.propagation,o=void 0===r||r,a=t.immediatePropagation,s=void 0!==a&&a;i&&e.preventDefault(),o&&e.stopPropagation(),s&&e.stopImmediatePropagation()},p=function(e){return Object(s["b"])(e.replace(o["d"],""))},h=function(e,t){return[r["hb"],p(e),t].join(r["ib"])},m=function(e,t){return[r["hb"],t,p(e)].join(r["ib"])}},"6c06":function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var i=function(e){return e}},"6ce3":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",w:"en uke",ww:"%d uker",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return e}))},"6d40":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("d82f");function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{};if(i(this,t),!e)throw new TypeError("Failed to construct '".concat(this.constructor.name,"'. 1 argument required, ").concat(arguments.length," given."));Object(r["a"])(this,t.Defaults,this.constructor.Defaults,n,{type:e}),Object(r["d"])(this,{type:Object(r["l"])(),cancelable:Object(r["l"])(),nativeEvent:Object(r["l"])(),target:Object(r["l"])(),relatedTarget:Object(r["l"])(),vueTarget:Object(r["l"])(),componentId:Object(r["l"])()});var a=!1;this.preventDefault=function(){this.cancelable&&(a=!0)},Object(r["e"])(this,"defaultPrevented",{enumerable:!0,get:function(){return a}})}return o(t,null,[{key:"Defaults",get:function(){return{type:"",cancelable:!0,nativeEvent:null,target:null,relatedTarget:null,vueTarget:null,componentId:null}}}]),t}()},"6d79":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",w:"en uke",ww:"%d uker",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t}))},"6d40":function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var i=n("d82f");function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{};if(r(this,e),!t)throw new TypeError("Failed to construct '".concat(this.constructor.name,"'. 1 argument required, ").concat(arguments.length," given."));Object(i["a"])(this,e.Defaults,this.constructor.Defaults,n,{type:t}),Object(i["d"])(this,{type:Object(i["l"])(),cancelable:Object(i["l"])(),nativeEvent:Object(i["l"])(),target:Object(i["l"])(),relatedTarget:Object(i["l"])(),vueTarget:Object(i["l"])(),componentId:Object(i["l"])()});var o=!1;this.preventDefault=function(){this.cancelable&&(o=!0)},Object(i["e"])(this,"defaultPrevented",{enumerable:!0,get:function(){return o}})}return a(e,null,[{key:"Defaults",get:function(){return{type:"",cancelable:!0,nativeEvent:null,target:null,relatedTarget:null,vueTarget:null,componentId:null}}}]),e}()},"6d79":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"},n=t.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(t){var n=t%10,r=t>=100?100:null;return t+(e[t]||e[n]||e[r])},week:{dow:1,doy:7}});return n}))},"6d83":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"},n=e.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(e){var n=e%10,i=e>=100?100:null;return e+(t[e]||t[n]||t[i])},week:{dow:1,doy:7}});return n}))},"6d83":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}});return e}))},"6e98":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}});return t}))},"6e98":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:function(){return"[Oggi a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextDay:function(){return"[Domani a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextWeek:function(){return"dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastDay:function(){return"[Ieri a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastWeek:function(){switch(this.day()){case 0:return"[La scorsa] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT";default:return"[Lo scorso] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"}},sameElse:"L"},relativeTime:{future:"tra %s",past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",w:"una settimana",ww:"%d settimane",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return e}))},"6eeb":function(t,e,n){var r=n("da84"),i=n("9112"),a=n("5135"),o=n("ce4e"),s=n("8925"),c=n("69f3"),u=c.get,l=c.enforce,d=String(String).split("String");(t.exports=function(t,e,n,s){var c,u=!!s&&!!s.unsafe,f=!!s&&!!s.enumerable,h=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof e||a(n,"name")||i(n,"name",e),c=l(n),c.source||(c.source=d.join("string"==typeof e?e:""))),t!==r?(u?!h&&t[e]&&(f=!0):delete t[e],f?t[e]=n:i(t,e,n)):f?t[e]=n:o(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},"6f12":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:function(){return"[Oggi a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextDay:function(){return"[Domani a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextWeek:function(){return"dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastDay:function(){return"[Ieri a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastWeek:function(){switch(this.day()){case 0:return"[La scorsa] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT";default:return"[Lo scorso] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"}},sameElse:"L"},relativeTime:{future:"tra %s",past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",w:"una settimana",ww:"%d settimane",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t}))},"6eeb":function(e,t,n){var i=n("da84"),r=n("9112"),o=n("5135"),a=n("ce4e"),s=n("8925"),c=n("69f3"),u=c.get,d=c.enforce,l=String(String).split("String");(e.exports=function(e,t,n,s){var c,u=!!s&&!!s.unsafe,f=!!s&&!!s.enumerable,p=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof t||o(n,"name")||r(n,"name",t),c=d(n),c.source||(c.source=l.join("string"==typeof t?t:""))),e!==i?(u?!p&&e[t]&&(f=!0):delete e[t],f?e[t]=n:r(e,t,n)):f?e[t]=n:a(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},"6f12":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(t){return(/^[0-9].+$/.test(t)?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return e}))},"6f50":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(e){return(/^[0-9].+$/.test(e)?"tra":"in")+" "+e},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t}))},"6f50":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10,n=1===~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n},week:{dow:1,doy:4}});return e}))},7118:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n},week:{dow:1,doy:4}});return t}))},7118:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),n="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),r=t.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(t,r){return t?/-MMM-/.test(r)?n[t.month()]:e[t.month()]:e},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}});return r}))},7156:function(t,e,n){var r=n("861d"),i=n("d2bb");t.exports=function(t,e,n){var a,o;return i&&"function"==typeof(a=e.constructor)&&a!==n&&r(o=a.prototype)&&o!==n.prototype&&i(t,o),t}},7333:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),n="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),i=e.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?n[e.month()]:t[e.month()]:t},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return i}))},7156:function(e,t,n){var i=n("861d"),r=n("d2bb");e.exports=function(e,t,n){var o,a;return r&&"function"==typeof(o=t.constructor)&&o!==n&&i(a=o.prototype)&&a!==n.prototype&&r(e,a),e}},7333:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10,n=1===~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n}});return e}))},7418:function(t,e){e.f=Object.getOwnPropertySymbols},"746f":function(t,e,n){var r=n("428f"),i=n("5135"),a=n("e538"),o=n("9bf2").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});i(e,t)||o(e,t,{value:a.f(t)})}},"74dc":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,n=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}});return t}))},7418:function(e,t){t.f=Object.getOwnPropertySymbols},"746f":function(e,t,n){var i=n("428f"),r=n("5135"),o=n("e538"),a=n("9bf2").f;e.exports=function(e){var t=i.Symbol||(i.Symbol={});r(t,e)||a(t,e,{value:o.f(e)})}},"74dc":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"hh:mm A",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"siku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}});return e}))},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7a77":function(t,e,n){"use strict";function r(t){this.message=t}r.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},r.prototype.__CANCEL__=!0,t.exports=r},"7aac":function(t,e,n){"use strict";var r=n("c532");t.exports=r.isStandardBrowserEnv()?function(){return{write:function(t,e,n,i,a,o){var s=[];s.push(t+"="+encodeURIComponent(e)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(a)&&s.push("domain="+a),!0===o&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},"7b0b":function(t,e,n){var r=n("1d80");t.exports=function(t){return Object(r(t))}},"7b1e":function(t,e,n){"use strict";n.d(e,"o",(function(){return c})),n.d(e,"g",(function(){return u})),n.d(e,"p",(function(){return l})),n.d(e,"f",(function(){return d})),n.d(e,"b",(function(){return f})),n.d(e,"n",(function(){return h})),n.d(e,"h",(function(){return p})),n.d(e,"i",(function(){return m})),n.d(e,"a",(function(){return b})),n.d(e,"j",(function(){return v})),n.d(e,"k",(function(){return _})),n.d(e,"c",(function(){return g})),n.d(e,"d",(function(){return y})),n.d(e,"e",(function(){return O})),n.d(e,"m",(function(){return j})),n.d(e,"l",(function(){return w}));var r=n("992e"),i=n("ca88");function a(t){return a="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a(t)}var o=function(t){return a(t)},s=function(t){return Object.prototype.toString.call(t).slice(8,-1)},c=function(t){return void 0===t},u=function(t){return null===t},l=function(t){return c(t)||u(t)},d=function(t){return"function"===o(t)},f=function(t){return"boolean"===o(t)},h=function(t){return"string"===o(t)},p=function(t){return"number"===o(t)},m=function(t){return r["s"].test(String(t))},b=function(t){return Array.isArray(t)},v=function(t){return null!==t&&"object"===a(t)},_=function(t){return"[object Object]"===Object.prototype.toString.call(t)},g=function(t){return t instanceof Date},y=function(t){return t instanceof Event},O=function(t){return t instanceof i["b"]},j=function(t){return"RegExp"===s(t)},w=function(t){return!l(t)&&d(t.then)&&d(t.catch)}},"7be6":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"hh:mm A",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"siku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}});return t}))},7839:function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7a77":function(e,t,n){"use strict";function i(e){this.message=e}i.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},i.prototype.__CANCEL__=!0,e.exports=i},"7aac":function(e,t,n){"use strict";var i=n("c532");e.exports=i.isStandardBrowserEnv()?function(){return{write:function(e,t,n,r,o,a){var s=[];s.push(e+"="+encodeURIComponent(t)),i.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),i.isString(r)&&s.push("path="+r),i.isString(o)&&s.push("domain="+o),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},"7b0b":function(e,t,n){var i=n("1d80");e.exports=function(e){return Object(i(e))}},"7b1e":function(e,t,n){"use strict";n.d(t,"o",(function(){return c})),n.d(t,"g",(function(){return u})),n.d(t,"p",(function(){return d})),n.d(t,"f",(function(){return l})),n.d(t,"b",(function(){return f})),n.d(t,"n",(function(){return p})),n.d(t,"h",(function(){return h})),n.d(t,"i",(function(){return m})),n.d(t,"a",(function(){return b})),n.d(t,"j",(function(){return g})),n.d(t,"k",(function(){return v})),n.d(t,"c",(function(){return y})),n.d(t,"d",(function(){return _})),n.d(t,"e",(function(){return O})),n.d(t,"m",(function(){return j})),n.d(t,"l",(function(){return w}));var i=n("992e"),r=n("ca88");function o(e){return o="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}var a=function(e){return o(e)},s=function(e){return Object.prototype.toString.call(e).slice(8,-1)},c=function(e){return void 0===e},u=function(e){return null===e},d=function(e){return c(e)||u(e)},l=function(e){return"function"===a(e)},f=function(e){return"boolean"===a(e)},p=function(e){return"string"===a(e)},h=function(e){return"number"===a(e)},m=function(e){return i["s"].test(String(e))},b=function(e){return Array.isArray(e)},g=function(e){return null!==e&&"object"===o(e)},v=function(e){return"[object Object]"===Object.prototype.toString.call(e)},y=function(e){return e instanceof Date},_=function(e){return e instanceof Event},O=function(e){return e instanceof r["b"]},j=function(e){return"RegExp"===s(e)},w=function(e){return!d(e)&&l(e.then)&&l(e.catch)}},"7be6":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),n="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function r(t){return t>1&&t<5}function i(t,e,n,i){var a=t+" ";switch(n){case"s":return e||i?"pár sekúnd":"pár sekundami";case"ss":return e||i?a+(r(t)?"sekundy":"sekúnd"):a+"sekundami";case"m":return e?"minúta":i?"minútu":"minútou";case"mm":return e||i?a+(r(t)?"minúty":"minút"):a+"minútami";case"h":return e?"hodina":i?"hodinu":"hodinou";case"hh":return e||i?a+(r(t)?"hodiny":"hodín"):a+"hodinami";case"d":return e||i?"deň":"dňom";case"dd":return e||i?a+(r(t)?"dni":"dní"):a+"dňami";case"M":return e||i?"mesiac":"mesiacom";case"MM":return e||i?a+(r(t)?"mesiace":"mesiacov"):a+"mesiacmi";case"y":return e||i?"rok":"rokom";case"yy":return e||i?a+(r(t)?"roky":"rokov"):a+"rokmi"}}var a=t.defineLocale("sk",{months:e,monthsShort:n,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a}))},"7c73":function(t,e,n){var r,i=n("825a"),a=n("37e8"),o=n("7839"),s=n("d012"),c=n("1be4"),u=n("cc12"),l=n("f772"),d=">",f="<",h="prototype",p="script",m=l("IE_PROTO"),b=function(){},v=function(t){return f+p+d+t+f+"/"+p+d},_=function(t){t.write(v("")),t.close();var e=t.parentWindow.Object;return t=null,e},g=function(){var t,e=u("iframe"),n="java"+p+":";return e.style.display="none",c.appendChild(e),e.src=String(n),t=e.contentWindow.document,t.open(),t.write(v("document.F=Object")),t.close(),t.F},y=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(e){}y=r?_(r):g();var t=o.length;while(t--)delete y[h][o[t]];return y()};s[m]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(b[h]=i(t),n=new b,b[h]=null,n[m]=t):n=y(),void 0===e?n:a(n,e)}},"7dd0":function(t,e,n){"use strict";var r=n("23e7"),i=n("9ed3"),a=n("e163"),o=n("d2bb"),s=n("d44e"),c=n("9112"),u=n("6eeb"),l=n("b622"),d=n("c430"),f=n("3f8c"),h=n("ae93"),p=h.IteratorPrototype,m=h.BUGGY_SAFARI_ITERATORS,b=l("iterator"),v="keys",_="values",g="entries",y=function(){return this};t.exports=function(t,e,n,l,h,O,j){i(n,e,l);var w,M,L,k=function(t){if(t===h&&x)return x;if(!m&&t in S)return S[t];switch(t){case v:return function(){return new n(this,t)};case _:return function(){return new n(this,t)};case g:return function(){return new n(this,t)}}return function(){return new n(this)}},T=e+" Iterator",D=!1,S=t.prototype,Y=S[b]||S["@@iterator"]||h&&S[h],x=!m&&Y||k(h),P="Array"==e&&S.entries||Y;if(P&&(w=a(P.call(new t)),p!==Object.prototype&&w.next&&(d||a(w)===p||(o?o(w,p):"function"!=typeof w[b]&&c(w,b,y)),s(w,T,!0,!0),d&&(f[T]=y))),h==_&&Y&&Y.name!==_&&(D=!0,x=function(){return Y.call(this)}),d&&!j||S[b]===x||c(S,b,x),f[e]=x,h)if(M={values:k(_),keys:O?x:k(v),entries:k(g)},j)for(L in M)(m||D||!(L in S))&&u(S,L,M[L]);else r({target:e,proto:!0,forced:m||D},M);return M}},"7f33":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),n="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function i(e){return e>1&&e<5}function r(e,t,n,r){var o=e+" ";switch(n){case"s":return t||r?"pár sekúnd":"pár sekundami";case"ss":return t||r?o+(i(e)?"sekundy":"sekúnd"):o+"sekundami";case"m":return t?"minúta":r?"minútu":"minútou";case"mm":return t||r?o+(i(e)?"minúty":"minút"):o+"minútami";case"h":return t?"hodina":r?"hodinu":"hodinou";case"hh":return t||r?o+(i(e)?"hodiny":"hodín"):o+"hodinami";case"d":return t||r?"deň":"dňom";case"dd":return t||r?o+(i(e)?"dni":"dní"):o+"dňami";case"M":return t||r?"mesiac":"mesiacom";case"MM":return t||r?o+(i(e)?"mesiace":"mesiacov"):o+"mesiacmi";case"y":return t||r?"rok":"rokom";case"yy":return t||r?o+(i(e)?"roky":"rokov"):o+"rokmi"}}var o=e.defineLocale("sk",{months:t,monthsShort:n,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return o}))},"7c73":function(e,t,n){var i,r=n("825a"),o=n("37e8"),a=n("7839"),s=n("d012"),c=n("1be4"),u=n("cc12"),d=n("f772"),l=">",f="<",p="prototype",h="script",m=d("IE_PROTO"),b=function(){},g=function(e){return f+h+l+e+f+"/"+h+l},v=function(e){e.write(g("")),e.close();var t=e.parentWindow.Object;return e=null,t},y=function(){var e,t=u("iframe"),n="java"+h+":";return t.style.display="none",c.appendChild(t),t.src=String(n),e=t.contentWindow.document,e.open(),e.write(g("document.F=Object")),e.close(),e.F},_=function(){try{i=document.domain&&new ActiveXObject("htmlfile")}catch(t){}_=i?v(i):y();var e=a.length;while(e--)delete _[p][a[e]];return _()};s[m]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(b[p]=r(e),n=new b,b[p]=null,n[m]=e):n=_(),void 0===t?n:o(n,t)}},"7db0":function(e,t,n){"use strict";var i=n("23e7"),r=n("b727").find,o=n("44d2"),a="find",s=!0;a in[]&&Array(1)[a]((function(){s=!1})),i({target:"Array",proto:!0,forced:s},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}}),o(a)},"7dd0":function(e,t,n){"use strict";var i=n("23e7"),r=n("9ed3"),o=n("e163"),a=n("d2bb"),s=n("d44e"),c=n("9112"),u=n("6eeb"),d=n("b622"),l=n("c430"),f=n("3f8c"),p=n("ae93"),h=p.IteratorPrototype,m=p.BUGGY_SAFARI_ITERATORS,b=d("iterator"),g="keys",v="values",y="entries",_=function(){return this};e.exports=function(e,t,n,d,p,O,j){r(n,t,d);var w,k,M,L=function(e){if(e===p&&A)return A;if(!m&&e in S)return S[e];switch(e){case g:return function(){return new n(this,e)};case v:return function(){return new n(this,e)};case y:return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",T=!1,S=e.prototype,D=S[b]||S["@@iterator"]||p&&S[p],A=!m&&D||L(p),P="Array"==t&&S.entries||D;if(P&&(w=o(P.call(new e)),h!==Object.prototype&&w.next&&(l||o(w)===h||(a?a(w,h):"function"!=typeof w[b]&&c(w,b,_)),s(w,x,!0,!0),l&&(f[x]=_))),p==v&&D&&D.name!==v&&(T=!0,A=function(){return D.call(this)}),l&&!j||S[b]===A||c(S,b,A),f[t]=A,p)if(k={values:L(v),keys:O?A:L(g),entries:L(y)},j)for(M in k)(m||T||!(M in S))&&u(S,M,k[M]);else i({target:t,proto:!0,forced:m||T},k);return k}},"7f33":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}});return e}))},"7f9a":function(t,e,n){var r=n("da84"),i=n("8925"),a=r.WeakMap;t.exports="function"===typeof a&&/native code/.test(i(a))},8155:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}});return t}))},"7f9a":function(e,t,n){var i=n("da84"),r=n("8925"),o=i.WeakMap;e.exports="function"===typeof o&&/native code/.test(r(o))},8155:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t,e,n,r){var i=t+" ";switch(n){case"s":return e||r?"nekaj sekund":"nekaj sekundami";case"ss":return i+=1===t?e?"sekundo":"sekundi":2===t?e||r?"sekundi":"sekundah":t<5?e||r?"sekunde":"sekundah":"sekund",i;case"m":return e?"ena minuta":"eno minuto";case"mm":return i+=1===t?e?"minuta":"minuto":2===t?e||r?"minuti":"minutama":t<5?e||r?"minute":"minutami":e||r?"minut":"minutami",i;case"h":return e?"ena ura":"eno uro";case"hh":return i+=1===t?e?"ura":"uro":2===t?e||r?"uri":"urama":t<5?e||r?"ure":"urami":e||r?"ur":"urami",i;case"d":return e||r?"en dan":"enim dnem";case"dd":return i+=1===t?e||r?"dan":"dnem":2===t?e||r?"dni":"dnevoma":e||r?"dni":"dnevi",i;case"M":return e||r?"en mesec":"enim mesecem";case"MM":return i+=1===t?e||r?"mesec":"mesecem":2===t?e||r?"meseca":"mesecema":t<5?e||r?"mesece":"meseci":e||r?"mesecev":"meseci",i;case"y":return e||r?"eno leto":"enim letom";case"yy":return i+=1===t?e||r?"leto":"letom":2===t?e||r?"leti":"letoma":t<5?e||r?"leta":"leti":e||r?"let":"leti",i}}var n=t.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"81e9":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e,t,n,i){var r=e+" ";switch(n){case"s":return t||i?"nekaj sekund":"nekaj sekundami";case"ss":return r+=1===e?t?"sekundo":"sekundi":2===e?t||i?"sekundi":"sekundah":e<5?t||i?"sekunde":"sekundah":"sekund",r;case"m":return t?"ena minuta":"eno minuto";case"mm":return r+=1===e?t?"minuta":"minuto":2===e?t||i?"minuti":"minutama":e<5?t||i?"minute":"minutami":t||i?"minut":"minutami",r;case"h":return t?"ena ura":"eno uro";case"hh":return r+=1===e?t?"ura":"uro":2===e?t||i?"uri":"urama":e<5?t||i?"ure":"urami":t||i?"ur":"urami",r;case"d":return t||i?"en dan":"enim dnem";case"dd":return r+=1===e?t||i?"dan":"dnem":2===e?t||i?"dni":"dnevoma":t||i?"dni":"dnevi",r;case"M":return t||i?"en mesec":"enim mesecem";case"MM":return r+=1===e?t||i?"mesec":"mesecem":2===e?t||i?"meseca":"mesecema":e<5?t||i?"mesece":"meseci":t||i?"mesecev":"meseci",r;case"y":return t||i?"eno leto":"enim letom";case"yy":return r+=1===e?t||i?"leto":"letom":2===e?t||i?"leti":"letoma":e<5?t||i?"leta":"leti":t||i?"let":"leti",r}}var n=e.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return n}))},"81e9":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),n=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",e[7],e[8],e[9]];function r(t,e,n,r){var a="";switch(n){case"s":return r?"muutaman sekunnin":"muutama sekunti";case"ss":a=r?"sekunnin":"sekuntia";break;case"m":return r?"minuutin":"minuutti";case"mm":a=r?"minuutin":"minuuttia";break;case"h":return r?"tunnin":"tunti";case"hh":a=r?"tunnin":"tuntia";break;case"d":return r?"päivän":"päivä";case"dd":a=r?"päivän":"päivää";break;case"M":return r?"kuukauden":"kuukausi";case"MM":a=r?"kuukauden":"kuukautta";break;case"y":return r?"vuoden":"vuosi";case"yy":a=r?"vuoden":"vuotta";break}return a=i(t,r)+" "+a,a}function i(t,r){return t<10?r?n[t]:e[t]:t}var a=t.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a}))},8230:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),n=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",t[7],t[8],t[9]];function i(e,t,n,i){var o="";switch(n){case"s":return i?"muutaman sekunnin":"muutama sekunti";case"ss":o=i?"sekunnin":"sekuntia";break;case"m":return i?"minuutin":"minuutti";case"mm":o=i?"minuutin":"minuuttia";break;case"h":return i?"tunnin":"tunti";case"hh":o=i?"tunnin":"tuntia";break;case"d":return i?"päivän":"päivä";case"dd":o=i?"päivän":"päivää";break;case"M":return i?"kuukauden":"kuukausi";case"MM":o=i?"kuukauden":"kuukautta";break;case"y":return i?"vuoden":"vuosi";case"yy":o=i?"vuoden":"vuotta";break}return o=r(e,i)+" "+o,o}function r(e,i){return e<10?i?n[e]:t[e]:e}var o=e.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return o}))},8230:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},r=t.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:0,doy:6}});return r}))},"825a":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},"83ab":function(t,e,n){var r=n("d039");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"83b9":function(t,e,n){"use strict";var r=n("d925"),i=n("e683");t.exports=function(t,e){return t&&!r(e)?i(t,e):e}},8418:function(t,e,n){"use strict";var r=n("c04e"),i=n("9bf2"),a=n("5c6c");t.exports=function(t,e,n){var o=r(e);o in t?i.f(t,o,a(0,n)):t[o]=n}},"841c":function(t,e,n){"use strict";var r=n("d784"),i=n("825a"),a=n("1d80"),o=n("129f"),s=n("14c3");r("search",1,(function(t,e,n){return[function(e){var n=a(this),r=void 0==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=i(t),c=String(this),u=a.lastIndex;o(u,0)||(a.lastIndex=0);var l=s(a,c);return o(a.lastIndex,u)||(a.lastIndex=u),null===l?-1:l.index}]}))},"84aa":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},i=e.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,n){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return n[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:0,doy:6}});return i}))},"825a":function(e,t,n){var i=n("861d");e.exports=function(e){if(!i(e))throw TypeError(String(e)+" is not an object");return e}},"83ab":function(e,t,n){var i=n("d039");e.exports=!i((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"83b9":function(e,t,n){"use strict";var i=n("d925"),r=n("e683");e.exports=function(e,t){return e&&!i(t)?r(e,t):t}},8418:function(e,t,n){"use strict";var i=n("c04e"),r=n("9bf2"),o=n("5c6c");e.exports=function(e,t,n){var a=i(t);a in e?r.f(e,a,o(0,n)):e[a]=n}},"841c":function(e,t,n){"use strict";var i=n("d784"),r=n("825a"),o=n("1d80"),a=n("129f"),s=n("14c3");i("search",1,(function(e,t,n){return[function(t){var n=o(this),i=void 0==t?void 0:t[e];return void 0!==i?i.call(t,n):new RegExp(t)[e](String(n))},function(e){var i=n(t,e,this);if(i.done)return i.value;var o=r(e),c=String(this),u=o.lastIndex;a(u,0)||(o.lastIndex=0);var d=s(o,c);return a(o.lastIndex,u)||(o.lastIndex=u),null===d?-1:d.index}]}))},"84aa":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Миналата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[Миналия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",w:"седмица",ww:"%d седмици",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){var e=t%10,n=t%100;return 0===t?t+"-ев":0===n?t+"-ен":n>10&&n<20?t+"-ти":1===e?t+"-ви":2===e?t+"-ри":7===e||8===e?t+"-ми":t+"-ти"},week:{dow:1,doy:7}});return e}))},"861d":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},8689:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Миналата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[Миналия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",w:"седмица",ww:"%d седмици",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,n=e%100;return 0===e?e+"-ев":0===n?e+"-ен":n>10&&n<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}});return t}))},"861d":function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},8689:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},n={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"},r=t.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(t){return t.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},week:{dow:1,doy:4}});return r}))},8840:function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},n={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"},i=e.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(e){return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(e){return n[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}});return i}))},8840:function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e=t.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(t){return 0===t.indexOf("un")?"n"+t:"en "+t},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return e}))},8925:function(t,e,n){var r=n("c6cd"),i=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return i.call(t)}),t.exports=r.inspectSource},"898b":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t=e.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(e){return 0===e.indexOf("un")?"n"+e:"en "+e},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t}))},8925:function(e,t,n){var i=n("c6cd"),r=Function.toString;"function"!=typeof i.inspectSource&&(i.inspectSource=function(e){return r.call(e)}),e.exports=i.inspectSource},"898b":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),r=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],i=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,a=t.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,r){return t?/-MMM-/.test(r)?n[t.month()]:e[t.month()]:e},monthsRegex:i,monthsShortRegex:i,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:r,longMonthsParse:r,shortMonthsParse:r,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4},invalidDate:"Fecha inválida"});return a}))},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"8c18":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("a026"),i=n("9b76"),a=n("365c"),o=n("2326"),s=r["default"].extend({methods:{hasNormalizedSlot:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i["i"],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.$scopedSlots,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.$slots;return Object(a["a"])(t,e,n)},normalizeSlot:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i["i"],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.$scopedSlots,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:this.$slots,s=Object(a["b"])(t,e,n,r);return s?Object(o["b"])(s):s}}})},"8c4e":function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var r=n("a026"),i=n("c9a9"),a=n("3c21"),o=n("d82f");function s(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var c=function(t){return!t||0===Object(o["h"])(t).length},u=function(t){return{handler:function(e,n){if(!Object(a["a"])(e,n))if(c(e)||c(n))this[t]=Object(i["a"])(e);else{for(var r in n)Object(o["g"])(e,r)||this.$delete(this.$data[t],r);for(var s in e)this.$set(this.$data[t],s,e[s])}}}},l=function(t,e){return r["default"].extend({data:function(){return s({},e,Object(i["a"])(this[t]))},watch:s({},t,u(e))})}},"8d32":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("a026"),i=n("be29");function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=r["default"].extend({computed:{scopedStyleAttrs:function(){var t=Object(i["a"])(this.$parent);return t?a({},t,""):{}}}})},"8d47":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,o=e.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?n[e.month()]:t[e.month()]:t},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4},invalidDate:"Fecha inválida"});return o}))},"8aa5":function(e,t,n){"use strict";var i=n("6547").charAt;e.exports=function(e,t,n){return t+(n?i(e,t).length:1)}},"8c18":function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var i=n("a026"),r=n("9b76"),o=n("365c"),a=n("2326"),s=i["default"].extend({methods:{hasNormalizedSlot:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r["i"],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.$scopedSlots,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.$slots;return Object(o["a"])(e,t,n)},normalizeSlot:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r["i"],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.$scopedSlots,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:this.$slots,s=Object(o["b"])(e,t,n,i);return s?Object(a["b"])(s):s}}})},"8c4e":function(e,t,n){"use strict";n.d(t,"a",(function(){return d}));var i=n("a026"),r=n("c9a9"),o=n("3c21"),a=n("d82f");function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c=function(e){return!e||0===Object(a["h"])(e).length},u=function(e){return{handler:function(t,n){if(!Object(o["a"])(t,n))if(c(t)||c(n))this[e]=Object(r["a"])(t);else{for(var i in n)Object(a["g"])(t,i)||this.$delete(this.$data[e],i);for(var s in t)this.$set(this.$data[e],s,t[s])}}}},d=function(e,t){return i["default"].extend({data:function(){return s({},t,Object(r["a"])(this[e]))},watch:s({},e,u(t))})}},"8d32":function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var i=n("a026"),r=n("be29");function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var a=i["default"].extend({computed:{scopedStyleAttrs:function(){var e=Object(r["a"])(this.$parent);return e?o({},e,""):{}}}})},"8d47":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -function e(t){return"undefined"!==typeof Function&&t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}var n=t.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(t,e){return t?"string"===typeof e&&/D/.test(e.substring(0,e.indexOf("MMMM")))?this._monthsGenitiveEl[t.month()]:this._monthsNominativeEl[t.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(t,e,n){return t>11?n?"μμ":"ΜΜ":n?"πμ":"ΠΜ"},isPM:function(t){return"μ"===(t+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(t,n){var r=this._calendarEl[t],i=n&&n.hours();return e(r)&&(r=r.apply(n)),r.replace("{}",i%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}});return n}))},"8d57":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +function t(e){return"undefined"!==typeof Function&&e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}var n=e.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(e,t){return e?"string"===typeof t&&/D/.test(t.substring(0,t.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(e,t,n){return e>11?n?"μμ":"ΜΜ":n?"πμ":"ΠΜ"},isPM:function(e){return"μ"===(e+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(e,n){var i=this._calendarEl[e],r=n&&n.hours();return t(i)&&(i=i.apply(n)),i.replace("{}",r%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}});return n}))},"8d57":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),n="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_"),r=[/^sty/i,/^lut/i,/^mar/i,/^kwi/i,/^maj/i,/^cze/i,/^lip/i,/^sie/i,/^wrz/i,/^paź/i,/^lis/i,/^gru/i];function i(t){return t%10<5&&t%10>1&&~~(t/10)%10!==1}function a(t,e,n){var r=t+" ";switch(n){case"ss":return r+(i(t)?"sekundy":"sekund");case"m":return e?"minuta":"minutę";case"mm":return r+(i(t)?"minuty":"minut");case"h":return e?"godzina":"godzinę";case"hh":return r+(i(t)?"godziny":"godzin");case"ww":return r+(i(t)?"tygodnie":"tygodni");case"MM":return r+(i(t)?"miesiące":"miesięcy");case"yy":return r+(i(t)?"lata":"lat")}}var o=t.defineLocale("pl",{months:function(t,r){return t?/D MMMM/.test(r)?n[t.month()]:e[t.month()]:e},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),monthsParse:r,longMonthsParse:r,shortMonthsParse:r,weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:a,m:a,mm:a,h:a,hh:a,d:"1 dzień",dd:"%d dni",w:"tydzień",ww:a,M:"miesiąc",MM:a,y:"rok",yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return o}))},"8d74":function(t,e,n){var r=n("4cef"),i=/^\s+/;function a(t){return t?t.slice(0,r(t)+1).replace(i,""):t}t.exports=a},"8df4":function(t,e,n){(function(t,e){e(n("c1df"))})(0,(function(t){"use strict"; +var t="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),n="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_"),i=[/^sty/i,/^lut/i,/^mar/i,/^kwi/i,/^maj/i,/^cze/i,/^lip/i,/^sie/i,/^wrz/i,/^paź/i,/^lis/i,/^gru/i];function r(e){return e%10<5&&e%10>1&&~~(e/10)%10!==1}function o(e,t,n){var i=e+" ";switch(n){case"ss":return i+(r(e)?"sekundy":"sekund");case"m":return t?"minuta":"minutę";case"mm":return i+(r(e)?"minuty":"minut");case"h":return t?"godzina":"godzinę";case"hh":return i+(r(e)?"godziny":"godzin");case"ww":return i+(r(e)?"tygodnie":"tygodni");case"MM":return i+(r(e)?"miesiące":"miesięcy");case"yy":return i+(r(e)?"lata":"lat")}}var a=e.defineLocale("pl",{months:function(e,i){return e?/D MMMM/.test(i)?n[e.month()]:t[e.month()]:t},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:o,m:o,mm:o,h:o,hh:o,d:"1 dzień",dd:"%d dni",w:"tydzień",ww:o,M:"miesiąc",MM:o,y:"rok",yy:o},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a}))},"8d74":function(e,t,n){var i=n("4cef"),r=/^\s+/;function o(e){return e?e.slice(0,i(e)+1).replace(r,""):e}e.exports=o},"8df4":function(e,t,n){(function(e,t){t(n("c1df"))})(0,(function(e){"use strict"; //! moment.js locale configuration -var e={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},n={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"},r=t.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(t){return/بعد از ظهر/.test(t)},meridiem:function(t,e,n){return t<12?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چند ثانیه",ss:"%d ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(t){return t.replace(/[۰-۹]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},dayOfMonthOrdinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}});return r}))},"8df4b":function(t,e,n){"use strict";var r=n("7a77");function i(t){if("function"!==typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var n=this;t((function(t){n.reason||(n.reason=new r(t),e(n.reason))}))}i.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},i.source=function(){var t,e=new i((function(e){t=e}));return{token:e,cancel:t}},t.exports=i},"8e5f":function(t,e,n){!function(e,n){t.exports=n()}(0,(function(){return function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/",e(e.s=60)}([function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(t,e,n){var r=n(49)("wks"),i=n(30),a=n(0).Symbol,o="function"==typeof a;(t.exports=function(t){return r[t]||(r[t]=o&&a[t]||(o?a:i)("Symbol."+t))}).store=r},function(t,e,n){var r=n(5);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e,n){var r=n(0),i=n(10),a=n(8),o=n(6),s=n(11),c=function(t,e,n){var u,l,d,f,h=t&c.F,p=t&c.G,m=t&c.S,b=t&c.P,v=t&c.B,_=p?r:m?r[e]||(r[e]={}):(r[e]||{}).prototype,g=p?i:i[e]||(i[e]={}),y=g.prototype||(g.prototype={});for(u in p&&(n=e),n)l=!h&&_&&void 0!==_[u],d=(l?_:n)[u],f=v&&l?s(d,r):b&&"function"==typeof d?s(Function.call,d):d,_&&o(_,u,d,t&c.U),g[u]!=d&&a(g,u,f),b&&y[u]!=d&&(y[u]=d)};r.core=i,c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,e,n){t.exports=!n(7)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var r=n(0),i=n(8),a=n(12),o=n(30)("src"),s=Function.toString,c=(""+s).split("toString");n(10).inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,n,s){var u="function"==typeof n;u&&(a(n,"name")||i(n,"name",e)),t[e]!==n&&(u&&(a(n,o)||i(n,o,t[e]?""+t[e]:c.join(String(e)))),t===r?t[e]=n:s?t[e]?t[e]=n:i(t,e,n):(delete t[e],i(t,e,n)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[o]||s.call(this)}))},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e,n){var r=n(13),i=n(25);t.exports=n(4)?function(t,e,n){return r.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e){var n=t.exports={version:"2.5.7"};"number"==typeof __e&&(__e=n)},function(t,e,n){var r=n(14);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,i){return t.call(e,n,r,i)}}return function(){return t.apply(e,arguments)}}},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(2),i=n(41),a=n(29),o=Object.defineProperty;e.f=n(4)?Object.defineProperty:function(t,e,n){if(r(t),e=a(e,!0),r(n),i)try{return o(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e){t.exports={}},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){"use strict";var r=n(7);t.exports=function(t,e){return!!t&&r((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},function(t,e,n){var r=n(23),i=n(16);t.exports=function(t){return r(i(t))}},function(t,e,n){var r=n(53),i=Math.min;t.exports=function(t){return t>0?i(r(t),9007199254740991):0}},function(t,e,n){var r=n(11),i=n(23),a=n(28),o=n(19),s=n(64);t.exports=function(t,e){var n=1==t,c=2==t,u=3==t,l=4==t,d=6==t,f=5==t||d,h=e||s;return function(e,s,p){for(var m,b,v=a(e),_=i(v),g=r(s,p,3),y=o(_.length),O=0,j=n?h(e,y):c?h(e,0):void 0;y>O;O++)if((f||O in _)&&(m=_[O],b=g(m,O,v),t))if(n)j[O]=b;else if(b)switch(t){case 3:return!0;case 5:return m;case 6:return O;case 2:j.push(m)}else if(l)return!1;return d?-1:u||l?l:j}}},function(t,e,n){var r=n(5),i=n(0).document,a=r(i)&&r(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e,n){var r=n(9);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,e){t.exports=!1},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r=n(13).f,i=n(12),a=n(1)("toStringTag");t.exports=function(t,e,n){t&&!i(t=n?t:t.prototype,a)&&r(t,a,{configurable:!0,value:e})}},function(t,e,n){var r=n(49)("keys"),i=n(30);t.exports=function(t){return r[t]||(r[t]=i(t))}},function(t,e,n){var r=n(16);t.exports=function(t){return Object(r(t))}},function(t,e,n){var r=n(5);t.exports=function(t,e){if(!r(t))return t;var n,i;if(e&&"function"==typeof(n=t.toString)&&!r(i=n.call(t)))return i;if("function"==typeof(n=t.valueOf)&&!r(i=n.call(t)))return i;if(!e&&"function"==typeof(n=t.toString)&&!r(i=n.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e,n){"use strict";var r=n(0),i=n(12),a=n(9),o=n(67),s=n(29),c=n(7),u=n(77).f,l=n(45).f,d=n(13).f,f=n(51).trim,h=r.Number,p=h,m=h.prototype,b="Number"==a(n(44)(m)),v="trim"in String.prototype,_=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){e=v?e.trim():f(e,3);var n,r,i,a=e.charCodeAt(0);if(43===a||45===a){if(88===(n=e.charCodeAt(2))||120===n)return NaN}else if(48===a){switch(e.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+e}for(var o,c=e.slice(2),u=0,l=c.length;ui)return NaN;return parseInt(c,r)}}return+e};if(!h(" 0o1")||!h("0b1")||h("+0x1")){h=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof h&&(b?c((function(){m.valueOf.call(n)})):"Number"!=a(n))?o(new p(_(e)),n,h):_(e)};for(var g,y=n(4)?u(p):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),O=0;y.length>O;O++)i(p,g=y[O])&&!i(h,g)&&d(h,g,l(p,g));h.prototype=m,m.constructor=h,n(6)(r,"Number",h)}},function(t,e,n){"use strict";function r(t){return 0!==t&&(!(!Array.isArray(t)||0!==t.length)||!t)}function i(t){return function(){return!t.apply(void 0,arguments)}}function a(t,e){return void 0===t&&(t="undefined"),null===t&&(t="null"),!1===t&&(t="false"),-1!==t.toString().toLowerCase().indexOf(e.trim())}function o(t,e,n,r){return t.filter((function(t){return a(r(t,n),e)}))}function s(t){return t.filter((function(t){return!t.$isLabel}))}function c(t,e){return function(n){return n.reduce((function(n,r){return r[t]&&r[t].length?(n.push({$groupLabel:r[e],$isLabel:!0}),n.concat(r[t])):n}),[])}}function u(t,e,r,i,a){return function(s){return s.map((function(s){var c;if(!s[r])return console.warn("Options passed to vue-multiselect do not contain groups, despite the config."),[];var u=o(s[r],t,e,a);return u.length?(c={},n.i(p.a)(c,i,s[i]),n.i(p.a)(c,r,u),c):[]}))}}var l=n(59),d=n(54),f=(n.n(d),n(95)),h=(n.n(f),n(31)),p=(n.n(h),n(58)),m=n(91),b=(n.n(m),n(98)),v=(n.n(b),n(92)),_=(n.n(v),n(88)),g=(n.n(_),n(97)),y=(n.n(g),n(89)),O=(n.n(y),n(96)),j=(n.n(O),n(93)),w=(n.n(j),n(90)),M=(n.n(w),function(){for(var t=arguments.length,e=new Array(t),n=0;n-1},isSelected:function(t){var e=this.trackBy?t[this.trackBy]:t;return this.valueKeys.indexOf(e)>-1},isOptionDisabled:function(t){return!!t.$isDisabled},getOptionLabel:function(t){if(r(t))return"";if(t.isTag)return t.label;if(t.$isLabel)return t.$groupLabel;var e=this.customLabel(t,this.label);return r(e)?"":e},select:function(t,e){if(t.$isLabel&&this.groupSelect)this.selectGroup(t);else if(!(-1!==this.blockKeys.indexOf(e)||this.disabled||t.$isDisabled||t.$isLabel)&&(!this.max||!this.multiple||this.internalValue.length!==this.max)&&("Tab"!==e||this.pointerDirty)){if(t.isTag)this.$emit("tag",t.label,this.id),this.search="",this.closeOnSelect&&!this.multiple&&this.deactivate();else{if(this.isSelected(t))return void("Tab"!==e&&this.removeElement(t));this.$emit("select",t,this.id),this.multiple?this.$emit("input",this.internalValue.concat([t]),this.id):this.$emit("input",t,this.id),this.clearOnSelect&&(this.search="")}this.closeOnSelect&&this.deactivate()}},selectGroup:function(t){var e=this,n=this.options.find((function(n){return n[e.groupLabel]===t.$groupLabel}));if(n)if(this.wholeGroupSelected(n)){this.$emit("remove",n[this.groupValues],this.id);var r=this.internalValue.filter((function(t){return-1===n[e.groupValues].indexOf(t)}));this.$emit("input",r,this.id)}else{var i=n[this.groupValues].filter((function(t){return!(e.isOptionDisabled(t)||e.isSelected(t))}));this.$emit("select",i,this.id),this.$emit("input",this.internalValue.concat(i),this.id)}},wholeGroupSelected:function(t){var e=this;return t[this.groupValues].every((function(t){return e.isSelected(t)||e.isOptionDisabled(t)}))},wholeGroupDisabled:function(t){return t[this.groupValues].every(this.isOptionDisabled)},removeElement:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!this.disabled&&!t.$isDisabled){if(!this.allowEmpty&&this.internalValue.length<=1)return void this.deactivate();var r="object"===n.i(l.a)(t)?this.valueKeys.indexOf(t[this.trackBy]):this.valueKeys.indexOf(t);if(this.$emit("remove",t,this.id),this.multiple){var i=this.internalValue.slice(0,r).concat(this.internalValue.slice(r+1));this.$emit("input",i,this.id)}else this.$emit("input",null,this.id);this.closeOnSelect&&e&&this.deactivate()}},removeLastElement:function(){-1===this.blockKeys.indexOf("Delete")&&0===this.search.length&&Array.isArray(this.internalValue)&&this.internalValue.length&&this.removeElement(this.internalValue[this.internalValue.length-1],!1)},activate:function(){var t=this;this.isOpen||this.disabled||(this.adjustPosition(),this.groupValues&&0===this.pointer&&this.filteredOptions.length&&(this.pointer=1),this.isOpen=!0,this.searchable?(this.preserveSearch||(this.search=""),this.$nextTick((function(){return t.$refs.search.focus()}))):this.$el.focus(),this.$emit("open",this.id))},deactivate:function(){this.isOpen&&(this.isOpen=!1,this.searchable?this.$refs.search.blur():this.$el.blur(),this.preserveSearch||(this.search=""),this.$emit("close",this.getValue(),this.id))},toggle:function(){this.isOpen?this.deactivate():this.activate()},adjustPosition:function(){if("undefined"!=typeof window){var t=this.$el.getBoundingClientRect().top,e=window.innerHeight-this.$el.getBoundingClientRect().bottom;e>this.maxHeight||e>t||"below"===this.openDirection||"bottom"===this.openDirection?(this.preferredOpenDirection="below",this.optimizedHeight=Math.min(e-40,this.maxHeight)):(this.preferredOpenDirection="above",this.optimizedHeight=Math.min(t-40,this.maxHeight))}}}}},function(t,e,n){"use strict";var r=n(54),i=(n.n(r),n(31));n.n(i),e.a={data:function(){return{pointer:0,pointerDirty:!1}},props:{showPointer:{type:Boolean,default:!0},optionHeight:{type:Number,default:40}},computed:{pointerPosition:function(){return this.pointer*this.optionHeight},visibleElements:function(){return this.optimizedHeight/this.optionHeight}},watch:{filteredOptions:function(){this.pointerAdjust()},isOpen:function(){this.pointerDirty=!1}},methods:{optionHighlight:function(t,e){return{"multiselect__option--highlight":t===this.pointer&&this.showPointer,"multiselect__option--selected":this.isSelected(e)}},groupHighlight:function(t,e){var n=this;if(!this.groupSelect)return["multiselect__option--group","multiselect__option--disabled"];var r=this.options.find((function(t){return t[n.groupLabel]===e.$groupLabel}));return r&&!this.wholeGroupDisabled(r)?["multiselect__option--group",{"multiselect__option--highlight":t===this.pointer&&this.showPointer},{"multiselect__option--group-selected":this.wholeGroupSelected(r)}]:"multiselect__option--disabled"},addPointerElement:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Enter",e=t.key;this.filteredOptions.length>0&&this.select(this.filteredOptions[this.pointer],e),this.pointerReset()},pointerForward:function(){this.pointer0?(this.pointer--,this.$refs.list.scrollTop>=this.pointerPosition&&(this.$refs.list.scrollTop=this.pointerPosition),this.filteredOptions[this.pointer]&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerBackward()):this.filteredOptions[this.pointer]&&this.filteredOptions[0].$isLabel&&!this.groupSelect&&this.pointerForward(),this.pointerDirty=!0},pointerReset:function(){this.closeOnSelect&&(this.pointer=0,this.$refs.list&&(this.$refs.list.scrollTop=0))},pointerAdjust:function(){this.pointer>=this.filteredOptions.length-1&&(this.pointer=this.filteredOptions.length?this.filteredOptions.length-1:0),this.filteredOptions.length>0&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerForward()},pointerSet:function(t){this.pointer=t,this.pointerDirty=!0}}}},function(t,e,n){"use strict";var r=n(36),i=n(74),a=n(15),o=n(18);t.exports=n(72)(Array,"Array",(function(t,e){this._t=o(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,i(1)):i(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},function(t,e,n){"use strict";var r=n(31),i=(n.n(r),n(32)),a=n(33);e.a={name:"vue-multiselect",mixins:[i.a,a.a],props:{name:{type:String,default:""},selectLabel:{type:String,default:"Press enter to select"},selectGroupLabel:{type:String,default:"Press enter to select group"},selectedLabel:{type:String,default:"Selected"},deselectLabel:{type:String,default:"Press enter to remove"},deselectGroupLabel:{type:String,default:"Press enter to deselect group"},showLabels:{type:Boolean,default:!0},limit:{type:Number,default:99999},maxHeight:{type:Number,default:300},limitText:{type:Function,default:function(t){return"and ".concat(t," more")}},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},openDirection:{type:String,default:""},showNoOptions:{type:Boolean,default:!0},showNoResults:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},computed:{isSingleLabelVisible:function(){return(this.singleValue||0===this.singleValue)&&(!this.isOpen||!this.searchable)&&!this.visibleValues.length},isPlaceholderVisible:function(){return!(this.internalValue.length||this.searchable&&this.isOpen)},visibleValues:function(){return this.multiple?this.internalValue.slice(0,this.limit):[]},singleValue:function(){return this.internalValue[0]},deselectLabelText:function(){return this.showLabels?this.deselectLabel:""},deselectGroupLabelText:function(){return this.showLabels?this.deselectGroupLabel:""},selectLabelText:function(){return this.showLabels?this.selectLabel:""},selectGroupLabelText:function(){return this.showLabels?this.selectGroupLabel:""},selectedLabelText:function(){return this.showLabels?this.selectedLabel:""},inputStyle:function(){if(this.searchable||this.multiple&&this.value&&this.value.length)return this.isOpen?{width:"100%"}:{width:"0",position:"absolute",padding:"0"}},contentStyle:function(){return this.options.length?{display:"inline-block"}:{display:"block"}},isAbove:function(){return"above"===this.openDirection||"top"===this.openDirection||"below"!==this.openDirection&&"bottom"!==this.openDirection&&"above"===this.preferredOpenDirection},showSearchInput:function(){return this.searchable&&(!this.hasSingleSelectedSlot||!this.visibleSingleValue&&0!==this.visibleSingleValue||this.isOpen)}}}},function(t,e,n){var r=n(1)("unscopables"),i=Array.prototype;void 0==i[r]&&n(8)(i,r,{}),t.exports=function(t){i[r][t]=!0}},function(t,e,n){var r=n(18),i=n(19),a=n(85);t.exports=function(t){return function(e,n,o){var s,c=r(e),u=i(c.length),l=a(o,u);if(t&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}}},function(t,e,n){var r=n(9),i=n(1)("toStringTag"),a="Arguments"==r(function(){return arguments}()),o=function(t,e){try{return t[e]}catch(t){}};t.exports=function(t){var e,n,s;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=o(e=Object(t),i))?n:a?r(e):"Object"==(s=r(e))&&"function"==typeof e.callee?"Arguments":s}},function(t,e,n){"use strict";var r=n(2);t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},function(t,e,n){var r=n(0).document;t.exports=r&&r.documentElement},function(t,e,n){t.exports=!n(4)&&!n(7)((function(){return 7!=Object.defineProperty(n(21)("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){var r=n(9);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){"use strict";function r(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=i(e),this.reject=i(n)}var i=n(14);t.exports.f=function(t){return new r(t)}},function(t,e,n){var r=n(2),i=n(76),a=n(22),o=n(27)("IE_PROTO"),s=function(){},c=function(){var t,e=n(21)("iframe"),r=a.length;for(e.style.display="none",n(40).appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(" \ No newline at end of file diff --git a/cookbook/tables.py b/cookbook/tables.py index 2adf47a7..d5070dba 100644 --- a/cookbook/tables.py +++ b/cookbook/tables.py @@ -52,15 +52,6 @@ class RecipeTable(tables.Table): ) -class KeywordTable(tables.Table): - id = tables.LinkColumn('edit_keyword', args=[A('id')]) - - class Meta: - model = Keyword - template_name = 'generic/table_template.html' - fields = ('id', 'icon', 'name') - - class IngredientTable(tables.Table): id = tables.LinkColumn('edit_food', args=[A('id')]) diff --git a/cookbook/templates/base.html b/cookbook/templates/base.html index 17ebea15..da55ff32 100644 --- a/cookbook/templates/base.html +++ b/cookbook/templates/base.html @@ -236,9 +236,11 @@ {% endblock script %} + {% else %} + + {% endif %} + + + + {% render_bundle 'keyword_list_view' %} +{% endblock %} \ No newline at end of file diff --git a/cookbook/templates/search_info.html b/cookbook/templates/search_info.html new file mode 100644 index 00000000..6f267a58 --- /dev/null +++ b/cookbook/templates/search_info.html @@ -0,0 +1,110 @@ +{% extends "base.html" %} +{% load static %} +{% load i18n %} + +{% block title %}{% trans "Search Settings" %}{% endblock %} + +{% block content %} + +

{% trans 'Search Settings' %}

+ {% blocktrans %} + Creating the best search experience is complicated and weighs heavily on your personal configuration. + Changing any of the search settings can have significant impact on the speed and quality of the results. + Search Methods, Trigrams and Full Text Search configurations are only available if you are using Postgres for your database. + {% endblocktrans %} + +
+
+ +

{% trans 'Search Methods' %}

+ +
+
+

{% blocktrans %} + Full text searches attempt to normalize the words provided to match common variants. For example: 'forked', 'forking', 'forks' will all normalize to 'fork'. + There are several methods available, described below, that will control how the search behavior should react when multiple words are searched. + Full technical details on how these operate can be viewed on Postgresql's website. + {% endblocktrans %}

+

{% trans 'Simple' %}

+

{% blocktrans %} + Simple searches ignore punctuation and common words such as 'the', 'a', 'and'. And will treat seperate words as required. + Searching for 'apple or flour' will return any recipe that includes both 'apple' and 'flour' anywhere in the fields that have been selected for a full text search. + {% endblocktrans %}

+

{% trans 'Phrase' %}

+

{% blocktrans %} + Phrase searches ignore punctuation, but will search for all of the words in the exact order provided. + Searching for 'apple or flour' will only return a recipe that includes the exact phrase 'apple or flour' in any of the fields that have been selected for a full text search. + {% endblocktrans %}

+

{% trans 'Web' %}

+

{% blocktrans %} + Web searches simulate functionality found on many web search sites supporting special syntax. + Placing quotes around several words will convert those words into a phrase. + 'or' is recongized as searching for the word (or phrase) immediately before 'or' OR the word (or phrase) directly after. + '-' is recognized as searching for recipes that do not include the word (or phrase) that comes immediately after. + For example searching for 'apple pie' or cherry -butter will return any recipe that includes the phrase 'apple pie' or the word 'cherry' + in any field included in the full text search but exclude any recipe that has the word 'butter' in any field included. + {% endblocktrans %}

+

{% trans 'Raw' %}

+

{% blocktrans %} + Raw search is similar to Web except will take puncuation operators such as '|', '&' and '()' + {% endblocktrans %}

+
+ +
+ +
+

fuzzy search

+
+
+ {% blocktrans %} + Another approach to searching that also requires Postgresql is fuzzy search or trigram similarity. A trigram is a group of three consecutive characters. + For example searching for 'apple' will create x trigrams 'app', 'ppl', 'ple' and will create a score of how closely words match the generated trigrams. + One benefit of searching trigams is that a search for 'sandwich' will find mispelled words such as 'sandwhich' that would be missed by other methods. + {% endblocktrans %} +
+ +
+ +
+

{% trans 'Search Fields' %}

+ +
+
+ {% blocktrans %} + Unaccent is a special case in that it enables searching a field 'unaccented' for each search style attempting to ignore accented values. + For example when you enable unaccent for 'Name' any search (starts with, contains, trigram) will attempt the search ignoring accented characters. + + For the other options, you can enable search on any or all fields and they will be combined together with an assumed 'OR'. + For example enabling 'Name' for Starts With, 'Name' and 'Description' for Partial Match and 'Ingredients' and 'Keywords' for Full Search + and searching for 'apple' will generate a search that will return recipes that have: + - A recipe name that starts with 'apple' + - OR a recipe name that contains 'apple' + - OR a recipe description that contains 'apple' + - OR a recipe that will have a full text search match ('apple' or 'apples') in ingredients + - OR a recipe that will have a full text search match in Keywords + + Combining too many fields in too many types of search can have a negative impact on performance, create duplicate results or return unexpected results. + For example, enabling fuzzy search or partial matches will interfere with web search methods. + Searching for 'apple -pie' with fuzzy search and full text search will return the recipe Apple Pie. Though it is not included in the full text results, it does match the trigram results. + {% endblocktrans %} +
+ +
+ +
+

{% trans 'Search Index' %}

+ +
+
+ {% blocktrans %} + Trigram search and Full Text Search both rely on database indexes to perform effectively. + You can rebuild the indexes on all fields in the Admin page for Recipes and selecting all recipes and running 'rebuild index for selected recipes' + You can also rebuild indexes at the command line by executing the management command 'python manage.py rebuildindex' + {% endblocktrans %} +
+ +
+
+
+
+{% endblock %} diff --git a/cookbook/templates/settings.html b/cookbook/templates/settings.html index 8887d448..13dd591c 100644 --- a/cookbook/templates/settings.html +++ b/cookbook/templates/settings.html @@ -19,23 +19,35 @@
-
+

{% trans 'Name Settings' %}

{% csrf_token %} @@ -67,7 +79,7 @@
-
+
@@ -118,7 +130,7 @@
-
+
@@ -150,6 +162,16 @@
+ +
{% endblock %} \ No newline at end of file diff --git a/cookbook/templates/sw.js b/cookbook/templates/sw.js index de9c3e99..fcc44a6d 100644 --- a/cookbook/templates/sw.js +++ b/cookbook/templates/sw.js @@ -1 +1 @@ -(function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s="249e")})({"00ee":function(t,e,n){var r=n("b622"),o=r("toStringTag"),i={};i[o]="z",t.exports="[object z]"===String(i)},"06cf":function(t,e,n){var r=n("83ab"),o=n("d1e7"),i=n("5c6c"),a=n("fc6a"),c=n("c04e"),s=n("5135"),u=n("0cfb"),l=Object.getOwnPropertyDescriptor;e.f=r?l:function(t,e){if(t=a(t),e=c(e,!0),u)try{return l(t,e)}catch(n){}if(s(t,e))return i(!o.f.call(t,e),t[e])}},"0719":function(t,e,n){"use strict";try{self["workbox:core:6.1.5"]&&_()}catch(r){}},"0cfb":function(t,e,n){var r=n("83ab"),o=n("d039"),i=n("cc12");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},"14c3":function(t,e,n){var r=n("c6b6"),o=n("9263");t.exports=function(t,e){var n=t.exec;if("function"===typeof n){var i=n.call(t,e);if("object"!==typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},"1d80":function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},"23cb":function(t,e,n){var r=n("a691"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},"23e7":function(t,e,n){var r=n("da84"),o=n("06cf").f,i=n("9112"),a=n("6eeb"),c=n("ce4e"),s=n("e893"),u=n("94ca");t.exports=function(t,e){var n,l,h,f,p,d,g=t.target,y=t.global,m=t.stat;if(l=y?r:m?r[g]||c(g,{}):(r[g]||{}).prototype,l)for(h in e){if(p=e[h],t.noTargetGet?(d=o(l,h),f=d&&d.value):f=l[h],n=u(y?h:g+(m?".":"#")+h,t.forced),!n&&void 0!==f){if(typeof p===typeof f)continue;s(p,f)}(t.sham||f&&f.sham)&&i(p,"sham",!0),a(l,h,p,t)}}},"241c":function(t,e,n){var r=n("ca84"),o=n("7839"),i=o.concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,i)}},"249e":function(t,e,n){"use strict";n.r(e);n("d3b7");function r(t,e,n,r,o,i,a){try{var c=t[i](a),s=c.value}catch(u){return void n(u)}c.done?e(s):Promise.resolve(s).then(r,o)}function o(t){return function(){var e=this,n=arguments;return new Promise((function(o,i){var a=t.apply(e,n);function c(t){r(a,o,i,c,s,"next",t)}function s(t){r(a,o,i,c,s,"throw",t)}c(void 0)}))}}n("ac1f"),n("466d"),n("4d63"),n("25f0"),n("96cf"),n("0719");const i=(t,...e)=>{let n=t;return e.length>0&&(n+=" :: "+JSON.stringify(e)),n},a=i;class c extends Error{constructor(t,e){const n=a(t,e);super(n),this.name=t,this.details=e}}const s={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},u=t=>[s.prefix,t,s.suffix].filter(t=>t&&t.length>0).join("-"),l=t=>{for(const e of Object.keys(s))t(e)},h={updateDetails:t=>{l(e=>{"string"===typeof t[e]&&(s[e]=t[e])})},getGoogleAnalyticsName:t=>t||u(s.googleAnalytics),getPrecacheName:t=>t||u(s.precache),getPrefix:()=>s.prefix,getRuntimeName:t=>t||u(s.runtime),getSuffix:()=>s.suffix};n("c700");let f;function p(){if(void 0===f){const e=new Response("");if("body"in e)try{new Response(e.body),f=!0}catch(t){f=!1}f=!1}return f}async function d(t,e){let n=null;if(t.url){const e=new URL(t.url);n=e.origin}if(n!==self.location.origin)throw new c("cross-origin-copy-response",{origin:n});const r=t.clone(),o={headers:new Headers(r.headers),status:r.status,statusText:r.statusText},i=e?e(o):o,a=p()?r.body:await r.blob();return new Response(a,i)}const g=t=>{const e=new URL(String(t),location.href);return e.href.replace(new RegExp("^"+location.origin),"")};function y(t,e){const n=new URL(t);for(const r of e)n.searchParams.delete(r);return n.href}async function m(t,e,n,r){const o=y(e.url,n);if(e.url===o)return t.match(e,r);const i={...r,ignoreSearch:!0},a=await t.keys(e,i);for(const c of a){const e=y(c.url,n);if(o===e)return t.match(c,r)}}class v{constructor(){this.promise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}}const w=new Set;async function b(){for(const t of w)await t()}function x(t){return new Promise(e=>setTimeout(e,t))}n("6aa8");function _(t){return"string"===typeof t?new Request(t):t}class E{constructor(t,e){this._cacheKeys={},Object.assign(this,e),this.event=e.event,this._strategy=t,this._handlerDeferred=new v,this._extendLifetimePromises=[],this._plugins=[...t.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(t){const{event:e}=this;let n=_(t);if("navigate"===n.mode&&e instanceof FetchEvent&&e.preloadResponse){const t=await e.preloadResponse;if(t)return t}const r=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const t of this.iterateCallbacks("requestWillFetch"))n=await t({request:n.clone(),event:e})}catch(i){throw new c("plugin-error-request-will-fetch",{thrownError:i})}const o=n.clone();try{let t;t=await fetch(n,"navigate"===n.mode?void 0:this._strategy.fetchOptions);for(const n of this.iterateCallbacks("fetchDidSucceed"))t=await n({event:e,request:o,response:t});return t}catch(a){throw r&&await this.runCallbacks("fetchDidFail",{error:a,event:e,originalRequest:r.clone(),request:o.clone()}),a}}async fetchAndCachePut(t){const e=await this.fetch(t),n=e.clone();return this.waitUntil(this.cachePut(t,n)),e}async cacheMatch(t){const e=_(t);let n;const{cacheName:r,matchOptions:o}=this._strategy,i=await this.getCacheKey(e,"read"),a={...o,cacheName:r};n=await caches.match(i,a);for(const c of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await c({cacheName:r,matchOptions:o,cachedResponse:n,request:i,event:this.event})||void 0;return n}async cachePut(t,e){const n=_(t);await x(0);const r=await this.getCacheKey(n,"write");if(!e)throw new c("cache-put-with-no-response",{url:g(r.url)});const o=await this._ensureResponseSafeToCache(e);if(!o)return!1;const{cacheName:i,matchOptions:a}=this._strategy,s=await self.caches.open(i),u=this.hasCallback("cacheDidUpdate"),l=u?await m(s,r.clone(),["__WB_REVISION__"],a):null;try{await s.put(r,u?o.clone():o)}catch(h){throw"QuotaExceededError"===h.name&&await b(),h}for(const c of this.iterateCallbacks("cacheDidUpdate"))await c({cacheName:i,oldResponse:l,newResponse:o.clone(),request:r,event:this.event});return!0}async getCacheKey(t,e){if(!this._cacheKeys[e]){let n=t;for(const t of this.iterateCallbacks("cacheKeyWillBeUsed"))n=_(await t({mode:e,request:n,event:this.event,params:this.params}));this._cacheKeys[e]=n}return this._cacheKeys[e]}hasCallback(t){for(const e of this._strategy.plugins)if(t in e)return!0;return!1}async runCallbacks(t,e){for(const n of this.iterateCallbacks(t))await n(e)}*iterateCallbacks(t){for(const e of this._strategy.plugins)if("function"===typeof e[t]){const n=this._pluginStateMap.get(e),r=r=>{const o={...r,state:n};return e[t](o)};yield r}}waitUntil(t){return this._extendLifetimePromises.push(t),t}async doneWaiting(){let t;while(t=this._extendLifetimePromises.shift())await t}destroy(){this._handlerDeferred.resolve()}async _ensureResponseSafeToCache(t){let e=t,n=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(e=await r({request:this.request,response:e,event:this.event})||void 0,n=!0,!e)break;return n||e&&200!==e.status&&(e=void 0),e}}class R{constructor(t={}){this.cacheName=h.getRuntimeName(t.cacheName),this.plugins=t.plugins||[],this.fetchOptions=t.fetchOptions,this.matchOptions=t.matchOptions}handle(t){const[e]=this.handleAll(t);return e}handleAll(t){t instanceof FetchEvent&&(t={event:t,request:t.request});const e=t.event,n="string"===typeof t.request?new Request(t.request):t.request,r="params"in t?t.params:void 0,o=new E(this,{event:e,request:n,params:r}),i=this._getResponse(o,n,e),a=this._awaitComplete(i,o,n,e);return[i,a]}async _getResponse(t,e,n){await t.runCallbacks("handlerWillStart",{event:n,request:e});let r=void 0;try{if(r=await this._handle(e,t),!r||"error"===r.type)throw new c("no-response",{url:e.url})}catch(o){for(const i of t.iterateCallbacks("handlerDidError"))if(r=await i({error:o,event:n,request:e}),r)break;if(!r)throw o}for(const i of t.iterateCallbacks("handlerWillRespond"))r=await i({event:n,request:e,response:r});return r}async _awaitComplete(t,e,n,r){let o,i;try{o=await t}catch(i){}try{await e.runCallbacks("handlerDidRespond",{event:r,request:n,response:o}),await e.doneWaiting()}catch(a){i=a}if(await e.runCallbacks("handlerDidComplete",{event:r,request:n,response:o,error:i}),e.destroy(),i)throw i}}class S extends R{constructor(t={}){t.cacheName=h.getPrecacheName(t.cacheName),super(t),this._fallbackToNetwork=!1!==t.fallbackToNetwork,this.plugins.push(S.copyRedirectedCacheableResponsesPlugin)}async _handle(t,e){const n=await e.cacheMatch(t);return n||(e.event&&"install"===e.event.type?await this._handleInstall(t,e):await this._handleFetch(t,e))}async _handleFetch(t,e){let n;if(!this._fallbackToNetwork)throw new c("missing-precache-entry",{cacheName:this.cacheName,url:t.url});return n=await e.fetch(t),n}async _handleInstall(t,e){this._useDefaultCacheabilityPluginIfNeeded();const n=await e.fetch(t),r=await e.cachePut(t,n.clone());if(!r)throw new c("bad-precaching-response",{url:t.url,status:n.status});return n}_useDefaultCacheabilityPluginIfNeeded(){let t=null,e=0;for(const[n,r]of this.plugins.entries())r!==S.copyRedirectedCacheableResponsesPlugin&&(r===S.defaultPrecacheCacheabilityPlugin&&(t=n),r.cacheWillUpdate&&e++);0===e?this.plugins.push(S.defaultPrecacheCacheabilityPlugin):e>1&&null!==t&&this.plugins.splice(t,1)}}S.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:t}){return!t||t.status>=400?null:t}},S.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:t}){return t.redirected?await d(t):t}};n("e6d2");const O="GET",P=t=>t&&"object"===typeof t?t:{handle:t};class N{constructor(t,e,n=O){this.handler=P(e),this.match=t,this.method=n}setCatchHandler(t){this.catchHandler=P(t)}}class T extends N{constructor(t,e,n){const r=({url:e})=>{const n=t.exec(e.href);if(n&&(e.origin===location.origin||0===n.index))return n.slice(1)};super(r,e,n)}}class j{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",t=>{const{request:e}=t,n=this.handleRequest({request:e,event:t});n&&t.respondWith(n)})}addCacheListener(){self.addEventListener("message",t=>{if(t.data&&"CACHE_URLS"===t.data.type){const{payload:e}=t.data;0;const n=Promise.all(e.urlsToCache.map(e=>{"string"===typeof e&&(e=[e]);const n=new Request(...e);return this.handleRequest({request:n,event:t})}));t.waitUntil(n),t.ports&&t.ports[0]&&n.then(()=>t.ports[0].postMessage(!0))}})}handleRequest({request:t,event:e}){const n=new URL(t.url,location.href);if(!n.protocol.startsWith("http"))return void 0;const r=n.origin===location.origin,{params:o,route:i}=this.findMatchingRoute({event:e,request:t,sameOrigin:r,url:n});let a=i&&i.handler;const c=t.method;if(!a&&this._defaultHandlerMap.has(c)&&(a=this._defaultHandlerMap.get(c)),!a)return void 0;let s;try{s=a.handle({url:n,request:t,event:e,params:o})}catch(l){s=Promise.reject(l)}const u=i&&i.catchHandler;return s instanceof Promise&&(this._catchHandler||u)&&(s=s.catch(async r=>{if(u){0;try{return await u.handle({url:n,request:t,event:e,params:o})}catch(i){r=i}}if(this._catchHandler)return this._catchHandler.handle({url:n,request:t,event:e});throw r})),s}findMatchingRoute({url:t,sameOrigin:e,request:n,event:r}){const o=this._routes.get(n.method)||[];for(const i of o){let o;const a=i.match({url:t,sameOrigin:e,request:n,event:r});if(a)return o=a,(Array.isArray(a)&&0===a.length||a.constructor===Object&&0===Object.keys(a).length||"boolean"===typeof a)&&(o=void 0),{route:i,params:o}}return{}}setDefaultHandler(t,e=O){this._defaultHandlerMap.set(e,P(t))}setCatchHandler(t){this._catchHandler=P(t)}registerRoute(t){this._routes.has(t.method)||this._routes.set(t.method,[]),this._routes.get(t.method).push(t)}unregisterRoute(t){if(!this._routes.has(t.method))throw new c("unregister-route-but-not-found-with-method",{method:t.method});const e=this._routes.get(t.method).indexOf(t);if(!(e>-1))throw new c("unregister-route-route-not-registered");this._routes.get(t.method).splice(e,1)}}let k;const C=()=>(k||(k=new j,k.addFetchListener(),k.addCacheListener()),k);function q(t,e,n){let r;if("string"===typeof t){const o=new URL(t,location.href);0;const i=({url:t})=>t.href===o.href;r=new N(i,e,n)}else if(t instanceof RegExp)r=new T(t,e,n);else if("function"===typeof t)r=new N(t,e,n);else{if(!(t instanceof N))throw new c("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});r=t}const o=C();return o.registerRoute(r),r}function A(t){const e=C();e.setCatchHandler(t)}class L extends R{async _handle(t,e){let n,r=await e.cacheMatch(t);if(r)0;else{0;try{r=await e.fetchAndCachePut(t)}catch(o){n=o}0}if(!r)throw new c("no-response",{url:t.url,error:n});return r}}const M={cacheWillUpdate:async({response:t})=>200===t.status||0===t.status?t:null};class U extends R{constructor(t={}){super(t),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(M),this._networkTimeoutSeconds=t.networkTimeoutSeconds||0}async _handle(t,e){const n=[];const r=[];let o;if(this._networkTimeoutSeconds){const{id:i,promise:a}=this._getTimeoutPromise({request:t,logs:n,handler:e});o=i,r.push(a)}const i=this._getNetworkPromise({timeoutId:o,request:t,logs:n,handler:e});r.push(i);const a=await e.waitUntil((async()=>await e.waitUntil(Promise.race(r))||await i)());if(!a)throw new c("no-response",{url:t.url});return a}_getTimeoutPromise({request:t,logs:e,handler:n}){let r;const o=new Promise(e=>{const o=async()=>{e(await n.cacheMatch(t))};r=setTimeout(o,1e3*this._networkTimeoutSeconds)});return{promise:o,id:r}}async _getNetworkPromise({timeoutId:t,request:e,logs:n,handler:r}){let o,i;try{i=await r.fetchAndCachePut(e)}catch(a){o=a}return t&&clearTimeout(t),!o&&i||(i=await r.cacheMatch(e)),i}}class I extends R{constructor(t){super(t),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(M)}async _handle(t,e){const n=e.fetchAndCachePut(t).catch(()=>{});let r,o=await e.cacheMatch(t);if(o)0;else{0;try{o=await n}catch(i){r=i}}if(!o)throw new c("no-response",{url:t.url,error:r});return o}}function D(t){t.then(()=>{})}class F{constructor(t,e,{onupgradeneeded:n,onversionchange:r}={}){this._db=null,this._name=t,this._version=e,this._onupgradeneeded=n,this._onversionchange=r||(()=>this.close())}get db(){return this._db}async open(){if(!this._db)return this._db=await new Promise((t,e)=>{let n=!1;setTimeout(()=>{n=!0,e(new Error("The open request was blocked and timed out"))},this.OPEN_TIMEOUT);const r=indexedDB.open(this._name,this._version);r.onerror=()=>e(r.error),r.onupgradeneeded=t=>{n?(r.transaction.abort(),r.result.close()):"function"===typeof this._onupgradeneeded&&this._onupgradeneeded(t)},r.onsuccess=()=>{const e=r.result;n?e.close():(e.onversionchange=this._onversionchange.bind(this),t(e))}}),this}async getKey(t,e){return(await this.getAllKeys(t,e,1))[0]}async getAll(t,e,n){return await this.getAllMatching(t,{query:e,count:n})}async getAllKeys(t,e,n){const r=await this.getAllMatching(t,{query:e,count:n,includeKeys:!0});return r.map(t=>t.key)}async getAllMatching(t,{index:e,query:n=null,direction:r="next",count:o,includeKeys:i=!1}={}){return await this.transaction([t],"readonly",(a,c)=>{const s=a.objectStore(t),u=e?s.index(e):s,l=[],h=u.openCursor(n,r);h.onsuccess=()=>{const t=h.result;t?(l.push(i?t:t.value),o&&l.length>=o?c(l):t.continue()):c(l)}})}async transaction(t,e,n){return await this.open(),await new Promise((r,o)=>{const i=this._db.transaction(t,e);i.onabort=()=>o(i.error),i.oncomplete=()=>r(),n(i,t=>r(t))})}async _call(t,e,n,...r){const o=(n,o)=>{const i=n.objectStore(e),a=i[t].apply(i,r);a.onsuccess=()=>o(a.result)};return await this.transaction([e],n,o)}close(){this._db&&(this._db.close(),this._db=null)}}F.prototype.OPEN_TIMEOUT=2e3;const W={readonly:["get","count","getKey","getAll","getAllKeys"],readwrite:["add","put","clear","delete"]};for(const[X,Z]of Object.entries(W))for(const t of Z)t in IDBObjectStore.prototype&&(F.prototype[t]=async function(e,...n){return await this._call(t,e,X,...n)});const H=async t=>{await new Promise((e,n)=>{const r=indexedDB.deleteDatabase(t);r.onerror=()=>{n(r.error)},r.onblocked=()=>{n(new Error("Delete blocked"))},r.onsuccess=()=>{e()}})};n("d8a5");const K="workbox-expiration",G="cache-entries",B=t=>{const e=new URL(t,location.href);return e.hash="",e.href};class z{constructor(t){this._cacheName=t,this._db=new F(K,1,{onupgradeneeded:t=>this._handleUpgrade(t)})}_handleUpgrade(t){const e=t.target.result,n=e.createObjectStore(G,{keyPath:"id"});n.createIndex("cacheName","cacheName",{unique:!1}),n.createIndex("timestamp","timestamp",{unique:!1}),H(this._cacheName)}async setTimestamp(t,e){t=B(t);const n={url:t,timestamp:e,cacheName:this._cacheName,id:this._getId(t)};await this._db.put(G,n)}async getTimestamp(t){const e=await this._db.get(G,this._getId(t));return e.timestamp}async expireEntries(t,e){const n=await this._db.transaction(G,"readwrite",(n,r)=>{const o=n.objectStore(G),i=o.index("timestamp").openCursor(null,"prev"),a=[];let c=0;i.onsuccess=()=>{const n=i.result;if(n){const r=n.value;r.cacheName===this._cacheName&&(t&&r.timestamp=e?a.push(n.value):c++),n.continue()}else r(a)}}),r=[];for(const o of n)await this._db.delete(G,o.id),r.push(o.url);return r}_getId(t){return this._cacheName+"|"+B(t)}}class Y{constructor(t,e={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=e.maxEntries,this._maxAgeSeconds=e.maxAgeSeconds,this._matchOptions=e.matchOptions,this._cacheName=t,this._timestampModel=new z(t)}async expireEntries(){if(this._isRunning)return void(this._rerunRequested=!0);this._isRunning=!0;const t=this._maxAgeSeconds?Date.now()-1e3*this._maxAgeSeconds:0,e=await this._timestampModel.expireEntries(t,this._maxEntries),n=await self.caches.open(this._cacheName);for(const r of e)await n.delete(r,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,D(this.expireEntries()))}async updateTimestamp(t){await this._timestampModel.setTimestamp(t,Date.now())}async isURLExpired(t){if(this._maxAgeSeconds){const e=await this._timestampModel.getTimestamp(t),n=Date.now()-1e3*this._maxAgeSeconds;return e{if(!r)return null;const o=this._isResponseDateFresh(r),i=this._getCacheExpiration(n);D(i.expireEntries());const a=i.updateTimestamp(e.url);if(t)try{t.waitUntil(a)}catch(c){0}return o?r:null},this.cacheDidUpdate=async({cacheName:t,request:e})=>{const n=this._getCacheExpiration(t);await n.updateTimestamp(e.url),await n.expireEntries()},this._config=t,this._maxAgeSeconds=t.maxAgeSeconds,this._cacheExpirations=new Map,t.purgeOnQuotaError&&$(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(t){if(t===h.getRuntimeName())throw new c("expire-custom-caches-only");let e=this._cacheExpirations.get(t);return e||(e=new Y(t,this._config),this._cacheExpirations.set(t,e)),e}_isResponseDateFresh(t){if(!this._maxAgeSeconds)return!0;const e=this._getDateHeaderTimestamp(t);if(null===e)return!0;const n=Date.now();return e>=n-1e3*this._maxAgeSeconds}_getDateHeaderTimestamp(t){if(!t.headers.has("date"))return null;const e=t.headers.get("date"),n=new Date(e),r=n.getTime();return isNaN(r)?null:r}async deleteCacheAndMetadata(){for(const[t,e]of this._cacheExpirations)await self.caches.delete(t),await e.delete();this._cacheExpirations=new Map}}var V="offline-html",J="/offline/";self.addEventListener("install",function(){var t=o(regeneratorRuntime.mark((function t(e){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:e.waitUntil(caches.open(V).then((function(t){return t.add(new Request(J,{cache:"reload"}))})));case 1:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),[{'url':'static/vue/css/chunk-vendors.css'},{'url':'static/vue/import_response_view.html'},{'url':'static/vue/js/chunk-vendors.js'},{'url':'static/vue/js/import_response_view.js'},{'url':'static/vue/js/offline_view.js'},{'url':'static/vue/js/recipe_search_view.js'},{'url':'static/vue/js/recipe_view.js'},{'url':'static/vue/js/supermarket_view.js'},{'url':'static/vue/js/user_file_view.js'},{'url':'static/vue/manifest.json'},{'url':'static/vue/offline_view.html'},{'url':'static/vue/recipe_search_view.html'},{'url':'static/vue/recipe_view.html'},{'url':'static/vue/supermarket_view.html'},{'url':'static/vue/user_file_view.html'}],A((function(t){var e=t.event;switch(e.request.destination){case"document":return console.log("Triggered fallback HTML"),caches.open(V).then((function(t){return t.match(J)}));default:return console.log("Triggered response ERROR"),Response.error()}})),q((function(t){var e=t.request;return"image"===e.destination}),new L({cacheName:"images",plugins:[new Q({maxEntries:20})]})),q((function(t){var e=t.request;return"script"===e.destination||"style"===e.destination}),new I({cacheName:"assets"})),q(new RegExp("jsreverse"),new I({cacheName:"assets"})),q(new RegExp("jsi18n"),new I({cacheName:"assets"})),q(new RegExp("api/recipe/([0-9]+)"),new U({cacheName:"api-recipe",plugins:[new Q({maxEntries:50})]})),q(new RegExp("api/*"),new U({cacheName:"api",plugins:[new Q({maxEntries:50})]})),q((function(t){var e=t.request;return"document"===e.destination}),new U({cacheName:"html",plugins:[new Q({maxAgeSeconds:2592e3,maxEntries:50})]}))},"25f0":function(t,e,n){"use strict";var r=n("6eeb"),o=n("825a"),i=n("d039"),a=n("ad6d"),c="toString",s=RegExp.prototype,u=s[c],l=i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),h=u.name!=c;(l||h)&&r(RegExp.prototype,c,(function(){var t=o(this),e=String(t.source),n=t.flags,r=String(void 0===n&&t instanceof RegExp&&!("flags"in s)?a.call(t):n);return"/"+e+"/"+r}),{unsafe:!0})},2626:function(t,e,n){"use strict";var r=n("d066"),o=n("9bf2"),i=n("b622"),a=n("83ab"),c=i("species");t.exports=function(t){var e=r(t),n=o.f;a&&e&&!e[c]&&n(e,c,{configurable:!0,get:function(){return this}})}},"2d00":function(t,e,n){var r,o,i=n("da84"),a=n("342f"),c=i.process,s=c&&c.versions,u=s&&s.v8;u?(r=u.split("."),o=r[0]<4?1:r[0]+r[1]):a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(o=r[1]))),t.exports=o&&+o},"342f":function(t,e,n){var r=n("d066");t.exports=r("navigator","userAgent")||""},"3bbe":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},"428f":function(t,e,n){var r=n("da84");t.exports=r},"44ad":function(t,e,n){var r=n("d039"),o=n("c6b6"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},"44e7":function(t,e,n){var r=n("861d"),o=n("c6b6"),i=n("b622"),a=i("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==o(t))}},"466d":function(t,e,n){"use strict";var r=n("d784"),o=n("825a"),i=n("50c4"),a=n("1d80"),c=n("8aa5"),s=n("14c3");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=void 0==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),u=String(this);if(!a.global)return s(a,u);var l=a.unicode;a.lastIndex=0;var h,f=[],p=0;while(null!==(h=s(a,u))){var d=String(h[0]);f[p]=d,""===d&&(a.lastIndex=c(u,i(a.lastIndex),l)),p++}return 0===p?null:f}]}))},4930:function(t,e,n){var r=n("2d00"),o=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},"4d63":function(t,e,n){var r=n("83ab"),o=n("da84"),i=n("94ca"),a=n("7156"),c=n("9bf2").f,s=n("241c").f,u=n("44e7"),l=n("ad6d"),h=n("9f7f"),f=n("6eeb"),p=n("d039"),d=n("69f3").enforce,g=n("2626"),y=n("b622"),m=y("match"),v=o.RegExp,w=v.prototype,b=/a/g,x=/a/g,_=new v(b)!==b,E=h.UNSUPPORTED_Y,R=r&&i("RegExp",!_||E||p((function(){return x[m]=!1,v(b)!=b||v(x)==x||"/a/i"!=v(b,"i")})));if(R){var S=function(t,e){var n,r=this instanceof S,o=u(t),i=void 0===e;if(!r&&o&&t.constructor===S&&i)return t;_?o&&!i&&(t=t.source):t instanceof S&&(i&&(e=l.call(t)),t=t.source),E&&(n=!!e&&e.indexOf("y")>-1,n&&(e=e.replace(/y/g,"")));var c=a(_?new v(t,e):v(t,e),r?this:w,S);if(E&&n){var s=d(c);s.sticky=!0}return c},O=function(t){t in S||c(S,t,{configurable:!0,get:function(){return v[t]},set:function(e){v[t]=e}})},P=s(v),N=0;while(P.length>N)O(P[N++]);w.constructor=S,S.prototype=w,f(o,"RegExp",S)}g("RegExp")},"4d64":function(t,e,n){var r=n("fc6a"),o=n("50c4"),i=n("23cb"),a=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},"50c4":function(t,e,n){var r=n("a691"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},5135:function(t,e,n){var r=n("7b0b"),o={}.hasOwnProperty;t.exports=Object.hasOwn||function(t,e){return o.call(r(t),e)}},5692:function(t,e,n){var r=n("c430"),o=n("c6cd");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.14.0",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(t,e,n){var r=n("d066"),o=n("241c"),i=n("7418"),a=n("825a");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},6547:function(t,e,n){var r=n("a691"),o=n("1d80"),i=function(t){return function(e,n){var i,a,c=String(o(e)),s=r(n),u=c.length;return s<0||s>=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}};t.exports={codeAt:i(!1),charAt:i(!0)}},"69f3":function(t,e,n){var r,o,i,a=n("7f9a"),c=n("da84"),s=n("861d"),u=n("9112"),l=n("5135"),h=n("c6cd"),f=n("f772"),p=n("d012"),d="Object already initialized",g=c.WeakMap,y=function(t){return i(t)?o(t):r(t,{})},m=function(t){return function(e){var n;if(!s(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}};if(a||h.state){var v=h.state||(h.state=new g),w=v.get,b=v.has,x=v.set;r=function(t,e){if(b.call(v,t))throw new TypeError(d);return e.facade=t,x.call(v,t,e),e},o=function(t){return w.call(v,t)||{}},i=function(t){return b.call(v,t)}}else{var _=f("state");p[_]=!0,r=function(t,e){if(l(t,_))throw new TypeError(d);return e.facade=t,u(t,_,e),e},o=function(t){return l(t,_)?t[_]:{}},i=function(t){return l(t,_)}}t.exports={set:r,get:o,has:i,enforce:y,getterFor:m}},"6aa8":function(t,e,n){"use strict";try{self["workbox:strategies:6.1.5"]&&_()}catch(r){}},"6eeb":function(t,e,n){var r=n("da84"),o=n("9112"),i=n("5135"),a=n("ce4e"),c=n("8925"),s=n("69f3"),u=s.get,l=s.enforce,h=String(String).split("String");(t.exports=function(t,e,n,c){var s,u=!!c&&!!c.unsafe,f=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),s=l(n),s.source||(s.source=h.join("string"==typeof e?e:""))),t!==r?(u?!p&&t[e]&&(f=!0):delete t[e],f?t[e]=n:o(t,e,n)):f?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},7156:function(t,e,n){var r=n("861d"),o=n("d2bb");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},7418:function(t,e){e.f=Object.getOwnPropertySymbols},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7b0b":function(t,e,n){var r=n("1d80");t.exports=function(t){return Object(r(t))}},"7f9a":function(t,e,n){var r=n("da84"),o=n("8925"),i=r.WeakMap;t.exports="function"===typeof i&&/native code/.test(o(i))},"825a":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},"83ab":function(t,e,n){var r=n("d039");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"861d":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},8925:function(t,e,n){var r=n("c6cd"),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"90e3":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},9112:function(t,e,n){var r=n("83ab"),o=n("9bf2"),i=n("5c6c");t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},9263:function(t,e,n){"use strict";var r=n("ad6d"),o=n("9f7f"),i=n("5692"),a=RegExp.prototype.exec,c=i("native-string-replace",String.prototype.replace),s=a,u=function(){var t=/a/,e=/b*/g;return a.call(t,"a"),a.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),l=o.UNSUPPORTED_Y||o.BROKEN_CARET,h=void 0!==/()??/.exec("")[1],f=u||h||l;f&&(s=function(t){var e,n,o,i,s=this,f=l&&s.sticky,p=r.call(s),d=s.source,g=0,y=t;return f&&(p=p.replace("y",""),-1===p.indexOf("g")&&(p+="g"),y=String(t).slice(s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&"\n"!==t[s.lastIndex-1])&&(d="(?: "+d+")",y=" "+y,g++),n=new RegExp("^(?:"+d+")",p)),h&&(n=new RegExp("^"+d+"$(?!\\s)",p)),u&&(e=s.lastIndex),o=a.call(f?n:s,y),f?o?(o.input=o.input.slice(g),o[0]=o[0].slice(g),o.index=s.lastIndex,s.lastIndex+=o[0].length):s.lastIndex=0:u&&o&&(s.lastIndex=s.global?o.index+o[0].length:e),h&&o&&o.length>1&&c.call(o[0],n,(function(){for(i=1;i=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(s&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),N(n),g}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;N(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:j(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}(t.exports);try{regeneratorRuntime=r}catch(o){Function("r","regeneratorRuntime = r")(r)}},"9bf2":function(t,e,n){var r=n("83ab"),o=n("0cfb"),i=n("825a"),a=n("c04e"),c=Object.defineProperty;e.f=r?c:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return c(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},"9f7f":function(t,e,n){"use strict";var r=n("d039");function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},a691:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},ac1f:function(t,e,n){"use strict";var r=n("23e7"),o=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},ad6d:function(t,e,n){"use strict";var r=n("825a");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},b041:function(t,e,n){"use strict";var r=n("00ee"),o=n("f5df");t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},b622:function(t,e,n){var r=n("da84"),o=n("5692"),i=n("5135"),a=n("90e3"),c=n("4930"),s=n("fdbf"),u=o("wks"),l=r.Symbol,h=s?l:l&&l.withoutSetter||a;t.exports=function(t){return i(u,t)&&(c||"string"==typeof u[t])||(c&&i(l,t)?u[t]=l[t]:u[t]=h("Symbol."+t)),u[t]}},c04e:function(t,e,n){var r=n("861d");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},c430:function(t,e){t.exports=!1},c6b6:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},c6cd:function(t,e,n){var r=n("da84"),o=n("ce4e"),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},c700:function(t,e,n){"use strict";try{self["workbox:precaching:6.1.5"]&&_()}catch(r){}},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},ca84:function(t,e,n){var r=n("5135"),o=n("fc6a"),i=n("4d64").indexOf,a=n("d012");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)!r(a,n)&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},cc12:function(t,e,n){var r=n("da84"),o=n("861d"),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},ce4e:function(t,e,n){var r=n("da84"),o=n("9112");t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},d012:function(t,e){t.exports={}},d039:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d066:function(t,e,n){var r=n("428f"),o=n("da84"),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},d1e7:function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},d2bb:function(t,e,n){var r=n("825a"),o=n("3bbe");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,t.call(n,[]),e=n instanceof Array}catch(i){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},d3b7:function(t,e,n){var r=n("00ee"),o=n("6eeb"),i=n("b041");r||o(Object.prototype,"toString",i,{unsafe:!0})},d784:function(t,e,n){"use strict";n("ac1f");var r=n("6eeb"),o=n("9263"),i=n("d039"),a=n("b622"),c=n("9112"),s=a("species"),u=RegExp.prototype,l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),h=function(){return"$0"==="a".replace(/./,"$0")}(),f=a("replace"),p=function(){return!!/./[f]&&""===/./[f]("a","$0")}(),d=!i((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,f){var g=a(t),y=!i((function(){var e={};return e[g]=function(){return 7},7!=""[t](e)})),m=y&&!i((function(){var e=!1,n=/a/;return"split"===t&&(n={},n.constructor={},n.constructor[s]=function(){return n},n.flags="",n[g]=/./[g]),n.exec=function(){return e=!0,null},n[g](""),!e}));if(!y||!m||"replace"===t&&(!l||!h||p)||"split"===t&&!d){var v=/./[g],w=n(g,""[t],(function(t,e,n,r,i){var a=e.exec;return a===o||a===u.exec?y&&!i?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:h,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),b=w[0],x=w[1];r(String.prototype,t,b),r(u,g,2==e?function(t,e){return x.call(t,this,e)}:function(t){return x.call(t,this)})}f&&c(u[g],"sham",!0)}},d8a5:function(t,e,n){"use strict";try{self["workbox:expiration:6.1.5"]&&_()}catch(r){}},da84:function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||function(){return this}()||Function("return this")()}).call(this,n("c8ba"))},e6d2:function(t,e,n){"use strict";try{self["workbox:routing:6.1.5"]&&_()}catch(r){}},e893:function(t,e,n){var r=n("5135"),o=n("56ef"),i=n("06cf"),a=n("9bf2");t.exports=function(t,e){for(var n=o(e),c=a.f,s=i.f,u=0;u{let n=t;return e.length>0&&(n+=" :: "+JSON.stringify(e)),n},a=i;class c extends Error{constructor(t,e){const n=a(t,e);super(n),this.name=t,this.details=e}}const s={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},u=t=>[s.prefix,t,s.suffix].filter(t=>t&&t.length>0).join("-"),l=t=>{for(const e of Object.keys(s))t(e)},h={updateDetails:t=>{l(e=>{"string"===typeof t[e]&&(s[e]=t[e])})},getGoogleAnalyticsName:t=>t||u(s.googleAnalytics),getPrecacheName:t=>t||u(s.precache),getPrefix:()=>s.prefix,getRuntimeName:t=>t||u(s.runtime),getSuffix:()=>s.suffix};n("c700");let f;function p(){if(void 0===f){const e=new Response("");if("body"in e)try{new Response(e.body),f=!0}catch(t){f=!1}f=!1}return f}async function d(t,e){let n=null;if(t.url){const e=new URL(t.url);n=e.origin}if(n!==self.location.origin)throw new c("cross-origin-copy-response",{origin:n});const r=t.clone(),o={headers:new Headers(r.headers),status:r.status,statusText:r.statusText},i=e?e(o):o,a=p()?r.body:await r.blob();return new Response(a,i)}const g=t=>{const e=new URL(String(t),location.href);return e.href.replace(new RegExp("^"+location.origin),"")};function y(t,e){const n=new URL(t);for(const r of e)n.searchParams.delete(r);return n.href}async function m(t,e,n,r){const o=y(e.url,n);if(e.url===o)return t.match(e,r);const i={...r,ignoreSearch:!0},a=await t.keys(e,i);for(const c of a){const e=y(c.url,n);if(o===e)return t.match(c,r)}}class v{constructor(){this.promise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}}const w=new Set;async function b(){for(const t of w)await t()}function x(t){return new Promise(e=>setTimeout(e,t))}n("6aa8");function _(t){return"string"===typeof t?new Request(t):t}class E{constructor(t,e){this._cacheKeys={},Object.assign(this,e),this.event=e.event,this._strategy=t,this._handlerDeferred=new v,this._extendLifetimePromises=[],this._plugins=[...t.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(t){const{event:e}=this;let n=_(t);if("navigate"===n.mode&&e instanceof FetchEvent&&e.preloadResponse){const t=await e.preloadResponse;if(t)return t}const r=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const t of this.iterateCallbacks("requestWillFetch"))n=await t({request:n.clone(),event:e})}catch(i){throw new c("plugin-error-request-will-fetch",{thrownError:i})}const o=n.clone();try{let t;t=await fetch(n,"navigate"===n.mode?void 0:this._strategy.fetchOptions);for(const n of this.iterateCallbacks("fetchDidSucceed"))t=await n({event:e,request:o,response:t});return t}catch(a){throw r&&await this.runCallbacks("fetchDidFail",{error:a,event:e,originalRequest:r.clone(),request:o.clone()}),a}}async fetchAndCachePut(t){const e=await this.fetch(t),n=e.clone();return this.waitUntil(this.cachePut(t,n)),e}async cacheMatch(t){const e=_(t);let n;const{cacheName:r,matchOptions:o}=this._strategy,i=await this.getCacheKey(e,"read"),a={...o,cacheName:r};n=await caches.match(i,a);for(const c of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await c({cacheName:r,matchOptions:o,cachedResponse:n,request:i,event:this.event})||void 0;return n}async cachePut(t,e){const n=_(t);await x(0);const r=await this.getCacheKey(n,"write");if(!e)throw new c("cache-put-with-no-response",{url:g(r.url)});const o=await this._ensureResponseSafeToCache(e);if(!o)return!1;const{cacheName:i,matchOptions:a}=this._strategy,s=await self.caches.open(i),u=this.hasCallback("cacheDidUpdate"),l=u?await m(s,r.clone(),["__WB_REVISION__"],a):null;try{await s.put(r,u?o.clone():o)}catch(h){throw"QuotaExceededError"===h.name&&await b(),h}for(const c of this.iterateCallbacks("cacheDidUpdate"))await c({cacheName:i,oldResponse:l,newResponse:o.clone(),request:r,event:this.event});return!0}async getCacheKey(t,e){if(!this._cacheKeys[e]){let n=t;for(const t of this.iterateCallbacks("cacheKeyWillBeUsed"))n=_(await t({mode:e,request:n,event:this.event,params:this.params}));this._cacheKeys[e]=n}return this._cacheKeys[e]}hasCallback(t){for(const e of this._strategy.plugins)if(t in e)return!0;return!1}async runCallbacks(t,e){for(const n of this.iterateCallbacks(t))await n(e)}*iterateCallbacks(t){for(const e of this._strategy.plugins)if("function"===typeof e[t]){const n=this._pluginStateMap.get(e),r=r=>{const o={...r,state:n};return e[t](o)};yield r}}waitUntil(t){return this._extendLifetimePromises.push(t),t}async doneWaiting(){let t;while(t=this._extendLifetimePromises.shift())await t}destroy(){this._handlerDeferred.resolve()}async _ensureResponseSafeToCache(t){let e=t,n=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(e=await r({request:this.request,response:e,event:this.event})||void 0,n=!0,!e)break;return n||e&&200!==e.status&&(e=void 0),e}}class R{constructor(t={}){this.cacheName=h.getRuntimeName(t.cacheName),this.plugins=t.plugins||[],this.fetchOptions=t.fetchOptions,this.matchOptions=t.matchOptions}handle(t){const[e]=this.handleAll(t);return e}handleAll(t){t instanceof FetchEvent&&(t={event:t,request:t.request});const e=t.event,n="string"===typeof t.request?new Request(t.request):t.request,r="params"in t?t.params:void 0,o=new E(this,{event:e,request:n,params:r}),i=this._getResponse(o,n,e),a=this._awaitComplete(i,o,n,e);return[i,a]}async _getResponse(t,e,n){await t.runCallbacks("handlerWillStart",{event:n,request:e});let r=void 0;try{if(r=await this._handle(e,t),!r||"error"===r.type)throw new c("no-response",{url:e.url})}catch(o){for(const i of t.iterateCallbacks("handlerDidError"))if(r=await i({error:o,event:n,request:e}),r)break;if(!r)throw o}for(const i of t.iterateCallbacks("handlerWillRespond"))r=await i({event:n,request:e,response:r});return r}async _awaitComplete(t,e,n,r){let o,i;try{o=await t}catch(i){}try{await e.runCallbacks("handlerDidRespond",{event:r,request:n,response:o}),await e.doneWaiting()}catch(a){i=a}if(await e.runCallbacks("handlerDidComplete",{event:r,request:n,response:o,error:i}),e.destroy(),i)throw i}}class S extends R{constructor(t={}){t.cacheName=h.getPrecacheName(t.cacheName),super(t),this._fallbackToNetwork=!1!==t.fallbackToNetwork,this.plugins.push(S.copyRedirectedCacheableResponsesPlugin)}async _handle(t,e){const n=await e.cacheMatch(t);return n||(e.event&&"install"===e.event.type?await this._handleInstall(t,e):await this._handleFetch(t,e))}async _handleFetch(t,e){let n;if(!this._fallbackToNetwork)throw new c("missing-precache-entry",{cacheName:this.cacheName,url:t.url});return n=await e.fetch(t),n}async _handleInstall(t,e){this._useDefaultCacheabilityPluginIfNeeded();const n=await e.fetch(t),r=await e.cachePut(t,n.clone());if(!r)throw new c("bad-precaching-response",{url:t.url,status:n.status});return n}_useDefaultCacheabilityPluginIfNeeded(){let t=null,e=0;for(const[n,r]of this.plugins.entries())r!==S.copyRedirectedCacheableResponsesPlugin&&(r===S.defaultPrecacheCacheabilityPlugin&&(t=n),r.cacheWillUpdate&&e++);0===e?this.plugins.push(S.defaultPrecacheCacheabilityPlugin):e>1&&null!==t&&this.plugins.splice(t,1)}}S.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:t}){return!t||t.status>=400?null:t}},S.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:t}){return t.redirected?await d(t):t}};n("e6d2");const O="GET",P=t=>t&&"object"===typeof t?t:{handle:t};class N{constructor(t,e,n=O){this.handler=P(e),this.match=t,this.method=n}setCatchHandler(t){this.catchHandler=P(t)}}class T extends N{constructor(t,e,n){const r=({url:e})=>{const n=t.exec(e.href);if(n&&(e.origin===location.origin||0===n.index))return n.slice(1)};super(r,e,n)}}class j{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",t=>{const{request:e}=t,n=this.handleRequest({request:e,event:t});n&&t.respondWith(n)})}addCacheListener(){self.addEventListener("message",t=>{if(t.data&&"CACHE_URLS"===t.data.type){const{payload:e}=t.data;0;const n=Promise.all(e.urlsToCache.map(e=>{"string"===typeof e&&(e=[e]);const n=new Request(...e);return this.handleRequest({request:n,event:t})}));t.waitUntil(n),t.ports&&t.ports[0]&&n.then(()=>t.ports[0].postMessage(!0))}})}handleRequest({request:t,event:e}){const n=new URL(t.url,location.href);if(!n.protocol.startsWith("http"))return void 0;const r=n.origin===location.origin,{params:o,route:i}=this.findMatchingRoute({event:e,request:t,sameOrigin:r,url:n});let a=i&&i.handler;const c=t.method;if(!a&&this._defaultHandlerMap.has(c)&&(a=this._defaultHandlerMap.get(c)),!a)return void 0;let s;try{s=a.handle({url:n,request:t,event:e,params:o})}catch(l){s=Promise.reject(l)}const u=i&&i.catchHandler;return s instanceof Promise&&(this._catchHandler||u)&&(s=s.catch(async r=>{if(u){0;try{return await u.handle({url:n,request:t,event:e,params:o})}catch(i){r=i}}if(this._catchHandler)return this._catchHandler.handle({url:n,request:t,event:e});throw r})),s}findMatchingRoute({url:t,sameOrigin:e,request:n,event:r}){const o=this._routes.get(n.method)||[];for(const i of o){let o;const a=i.match({url:t,sameOrigin:e,request:n,event:r});if(a)return o=a,(Array.isArray(a)&&0===a.length||a.constructor===Object&&0===Object.keys(a).length||"boolean"===typeof a)&&(o=void 0),{route:i,params:o}}return{}}setDefaultHandler(t,e=O){this._defaultHandlerMap.set(e,P(t))}setCatchHandler(t){this._catchHandler=P(t)}registerRoute(t){this._routes.has(t.method)||this._routes.set(t.method,[]),this._routes.get(t.method).push(t)}unregisterRoute(t){if(!this._routes.has(t.method))throw new c("unregister-route-but-not-found-with-method",{method:t.method});const e=this._routes.get(t.method).indexOf(t);if(!(e>-1))throw new c("unregister-route-route-not-registered");this._routes.get(t.method).splice(e,1)}}let k;const C=()=>(k||(k=new j,k.addFetchListener(),k.addCacheListener()),k);function q(t,e,n){let r;if("string"===typeof t){const o=new URL(t,location.href);0;const i=({url:t})=>t.href===o.href;r=new N(i,e,n)}else if(t instanceof RegExp)r=new T(t,e,n);else if("function"===typeof t)r=new N(t,e,n);else{if(!(t instanceof N))throw new c("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});r=t}const o=C();return o.registerRoute(r),r}function A(t){const e=C();e.setCatchHandler(t)}class L extends R{async _handle(t,e){let n,r=await e.cacheMatch(t);if(r)0;else{0;try{r=await e.fetchAndCachePut(t)}catch(o){n=o}0}if(!r)throw new c("no-response",{url:t.url,error:n});return r}}const M={cacheWillUpdate:async({response:t})=>200===t.status||0===t.status?t:null};class I extends R{constructor(t={}){super(t),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(M),this._networkTimeoutSeconds=t.networkTimeoutSeconds||0}async _handle(t,e){const n=[];const r=[];let o;if(this._networkTimeoutSeconds){const{id:i,promise:a}=this._getTimeoutPromise({request:t,logs:n,handler:e});o=i,r.push(a)}const i=this._getNetworkPromise({timeoutId:o,request:t,logs:n,handler:e});r.push(i);const a=await e.waitUntil((async()=>await e.waitUntil(Promise.race(r))||await i)());if(!a)throw new c("no-response",{url:t.url});return a}_getTimeoutPromise({request:t,logs:e,handler:n}){let r;const o=new Promise(e=>{const o=async()=>{e(await n.cacheMatch(t))};r=setTimeout(o,1e3*this._networkTimeoutSeconds)});return{promise:o,id:r}}async _getNetworkPromise({timeoutId:t,request:e,logs:n,handler:r}){let o,i;try{i=await r.fetchAndCachePut(e)}catch(a){o=a}return t&&clearTimeout(t),!o&&i||(i=await r.cacheMatch(e)),i}}class U extends R{constructor(t){super(t),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(M)}async _handle(t,e){const n=e.fetchAndCachePut(t).catch(()=>{});let r,o=await e.cacheMatch(t);if(o)0;else{0;try{o=await n}catch(i){r=i}}if(!o)throw new c("no-response",{url:t.url,error:r});return o}}function D(t){t.then(()=>{})}class F{constructor(t,e,{onupgradeneeded:n,onversionchange:r}={}){this._db=null,this._name=t,this._version=e,this._onupgradeneeded=n,this._onversionchange=r||(()=>this.close())}get db(){return this._db}async open(){if(!this._db)return this._db=await new Promise((t,e)=>{let n=!1;setTimeout(()=>{n=!0,e(new Error("The open request was blocked and timed out"))},this.OPEN_TIMEOUT);const r=indexedDB.open(this._name,this._version);r.onerror=()=>e(r.error),r.onupgradeneeded=t=>{n?(r.transaction.abort(),r.result.close()):"function"===typeof this._onupgradeneeded&&this._onupgradeneeded(t)},r.onsuccess=()=>{const e=r.result;n?e.close():(e.onversionchange=this._onversionchange.bind(this),t(e))}}),this}async getKey(t,e){return(await this.getAllKeys(t,e,1))[0]}async getAll(t,e,n){return await this.getAllMatching(t,{query:e,count:n})}async getAllKeys(t,e,n){const r=await this.getAllMatching(t,{query:e,count:n,includeKeys:!0});return r.map(t=>t.key)}async getAllMatching(t,{index:e,query:n=null,direction:r="next",count:o,includeKeys:i=!1}={}){return await this.transaction([t],"readonly",(a,c)=>{const s=a.objectStore(t),u=e?s.index(e):s,l=[],h=u.openCursor(n,r);h.onsuccess=()=>{const t=h.result;t?(l.push(i?t:t.value),o&&l.length>=o?c(l):t.continue()):c(l)}})}async transaction(t,e,n){return await this.open(),await new Promise((r,o)=>{const i=this._db.transaction(t,e);i.onabort=()=>o(i.error),i.oncomplete=()=>r(),n(i,t=>r(t))})}async _call(t,e,n,...r){const o=(n,o)=>{const i=n.objectStore(e),a=i[t].apply(i,r);a.onsuccess=()=>o(a.result)};return await this.transaction([e],n,o)}close(){this._db&&(this._db.close(),this._db=null)}}F.prototype.OPEN_TIMEOUT=2e3;const W={readonly:["get","count","getKey","getAll","getAllKeys"],readwrite:["add","put","clear","delete"]};for(const[Z,tt]of Object.entries(W))for(const t of tt)t in IDBObjectStore.prototype&&(F.prototype[t]=async function(e,...n){return await this._call(t,e,Z,...n)});const H=async t=>{await new Promise((e,n)=>{const r=indexedDB.deleteDatabase(t);r.onerror=()=>{n(r.error)},r.onblocked=()=>{n(new Error("Delete blocked"))},r.onsuccess=()=>{e()}})};n("d8a5");const K="workbox-expiration",G="cache-entries",B=t=>{const e=new URL(t,location.href);return e.hash="",e.href};class z{constructor(t){this._cacheName=t,this._db=new F(K,1,{onupgradeneeded:t=>this._handleUpgrade(t)})}_handleUpgrade(t){const e=t.target.result,n=e.createObjectStore(G,{keyPath:"id"});n.createIndex("cacheName","cacheName",{unique:!1}),n.createIndex("timestamp","timestamp",{unique:!1}),H(this._cacheName)}async setTimestamp(t,e){t=B(t);const n={url:t,timestamp:e,cacheName:this._cacheName,id:this._getId(t)};await this._db.put(G,n)}async getTimestamp(t){const e=await this._db.get(G,this._getId(t));return e.timestamp}async expireEntries(t,e){const n=await this._db.transaction(G,"readwrite",(n,r)=>{const o=n.objectStore(G),i=o.index("timestamp").openCursor(null,"prev"),a=[];let c=0;i.onsuccess=()=>{const n=i.result;if(n){const r=n.value;r.cacheName===this._cacheName&&(t&&r.timestamp=e?a.push(n.value):c++),n.continue()}else r(a)}}),r=[];for(const o of n)await this._db.delete(G,o.id),r.push(o.url);return r}_getId(t){return this._cacheName+"|"+B(t)}}class Y{constructor(t,e={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=e.maxEntries,this._maxAgeSeconds=e.maxAgeSeconds,this._matchOptions=e.matchOptions,this._cacheName=t,this._timestampModel=new z(t)}async expireEntries(){if(this._isRunning)return void(this._rerunRequested=!0);this._isRunning=!0;const t=this._maxAgeSeconds?Date.now()-1e3*this._maxAgeSeconds:0,e=await this._timestampModel.expireEntries(t,this._maxEntries),n=await self.caches.open(this._cacheName);for(const r of e)await n.delete(r,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,D(this.expireEntries()))}async updateTimestamp(t){await this._timestampModel.setTimestamp(t,Date.now())}async isURLExpired(t){if(this._maxAgeSeconds){const e=await this._timestampModel.getTimestamp(t),n=Date.now()-1e3*this._maxAgeSeconds;return e{if(!r)return null;const o=this._isResponseDateFresh(r),i=this._getCacheExpiration(n);D(i.expireEntries());const a=i.updateTimestamp(e.url);if(t)try{t.waitUntil(a)}catch(c){0}return o?r:null},this.cacheDidUpdate=async({cacheName:t,request:e})=>{const n=this._getCacheExpiration(t);await n.updateTimestamp(e.url),await n.expireEntries()},this._config=t,this._maxAgeSeconds=t.maxAgeSeconds,this._cacheExpirations=new Map,t.purgeOnQuotaError&&$(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(t){if(t===h.getRuntimeName())throw new c("expire-custom-caches-only");let e=this._cacheExpirations.get(t);return e||(e=new Y(t,this._config),this._cacheExpirations.set(t,e)),e}_isResponseDateFresh(t){if(!this._maxAgeSeconds)return!0;const e=this._getDateHeaderTimestamp(t);if(null===e)return!0;const n=Date.now();return e>=n-1e3*this._maxAgeSeconds}_getDateHeaderTimestamp(t){if(!t.headers.has("date"))return null;const e=t.headers.get("date"),n=new Date(e),r=n.getTime();return isNaN(r)?null:r}async deleteCacheAndMetadata(){for(const[t,e]of this._cacheExpirations)await self.caches.delete(t),await e.delete();this._cacheExpirations=new Map}}var V="offline-html",J="undefined"!==typeof window?localStorage.getItem("SCRIPT_NAME"):"/",X=J+"offline/";self.addEventListener("install",function(){var t=o(regeneratorRuntime.mark((function t(e){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:e.waitUntil(caches.open(V).then((function(t){return t.add(new Request(X,{cache:"reload"}))})));case 1:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),[{'url':'static/vue/css/chunk-vendors.css'},{'url':'static/vue/css/keyword_list_view.css'},{'url':'static/vue/import_response_view.html'},{'url':'static/vue/js/chunk-vendors.js'},{'url':'static/vue/js/import_response_view.js'},{'url':'static/vue/js/keyword_list_view.js'},{'url':'static/vue/js/offline_view.js'},{'url':'static/vue/js/recipe_search_view.js'},{'url':'static/vue/js/recipe_view.js'},{'url':'static/vue/js/supermarket_view.js'},{'url':'static/vue/js/user_file_view.js'},{'url':'static/vue/keyword_list_view.html'},{'url':'static/vue/manifest.json'},{'url':'static/vue/offline_view.html'},{'url':'static/vue/recipe_search_view.html'},{'url':'static/vue/recipe_view.html'},{'url':'static/vue/supermarket_view.html'},{'url':'static/vue/user_file_view.html'}],A((function(t){var e=t.event;switch(e.request.destination){case"document":return console.log("Triggered fallback HTML"),caches.open(V).then((function(t){return t.match(X)}));default:return console.log("Triggered response ERROR"),Response.error()}})),q((function(t){var e=t.request;return"image"===e.destination}),new L({cacheName:"images",plugins:[new Q({maxEntries:20})]})),q((function(t){var e=t.request;return"script"===e.destination||"style"===e.destination}),new U({cacheName:"assets"})),q(new RegExp("jsreverse"),new U({cacheName:"assets"})),q(new RegExp("jsi18n"),new U({cacheName:"assets"})),q(new RegExp("api/recipe/([0-9]+)"),new I({cacheName:"api-recipe",plugins:[new Q({maxEntries:50})]})),q(new RegExp("api/*"),new I({cacheName:"api",plugins:[new Q({maxEntries:50})]})),q((function(t){var e=t.request;return"document"===e.destination}),new I({cacheName:"html",plugins:[new Q({maxAgeSeconds:2592e3,maxEntries:50})]}))},"25f0":function(t,e,n){"use strict";var r=n("6eeb"),o=n("825a"),i=n("d039"),a=n("ad6d"),c="toString",s=RegExp.prototype,u=s[c],l=i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),h=u.name!=c;(l||h)&&r(RegExp.prototype,c,(function(){var t=o(this),e=String(t.source),n=t.flags,r=String(void 0===n&&t instanceof RegExp&&!("flags"in s)?a.call(t):n);return"/"+e+"/"+r}),{unsafe:!0})},2626:function(t,e,n){"use strict";var r=n("d066"),o=n("9bf2"),i=n("b622"),a=n("83ab"),c=i("species");t.exports=function(t){var e=r(t),n=o.f;a&&e&&!e[c]&&n(e,c,{configurable:!0,get:function(){return this}})}},"2d00":function(t,e,n){var r,o,i=n("da84"),a=n("342f"),c=i.process,s=c&&c.versions,u=s&&s.v8;u?(r=u.split("."),o=r[0]<4?1:r[0]+r[1]):a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(o=r[1]))),t.exports=o&&+o},"342f":function(t,e,n){var r=n("d066");t.exports=r("navigator","userAgent")||""},"3bbe":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},"428f":function(t,e,n){var r=n("da84");t.exports=r},"44ad":function(t,e,n){var r=n("d039"),o=n("c6b6"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},"44e7":function(t,e,n){var r=n("861d"),o=n("c6b6"),i=n("b622"),a=i("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==o(t))}},"466d":function(t,e,n){"use strict";var r=n("d784"),o=n("825a"),i=n("50c4"),a=n("1d80"),c=n("8aa5"),s=n("14c3");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=void 0==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),u=String(this);if(!a.global)return s(a,u);var l=a.unicode;a.lastIndex=0;var h,f=[],p=0;while(null!==(h=s(a,u))){var d=String(h[0]);f[p]=d,""===d&&(a.lastIndex=c(u,i(a.lastIndex),l)),p++}return 0===p?null:f}]}))},4930:function(t,e,n){var r=n("2d00"),o=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},"4d63":function(t,e,n){var r=n("83ab"),o=n("da84"),i=n("94ca"),a=n("7156"),c=n("9bf2").f,s=n("241c").f,u=n("44e7"),l=n("ad6d"),h=n("9f7f"),f=n("6eeb"),p=n("d039"),d=n("69f3").enforce,g=n("2626"),y=n("b622"),m=y("match"),v=o.RegExp,w=v.prototype,b=/a/g,x=/a/g,_=new v(b)!==b,E=h.UNSUPPORTED_Y,R=r&&i("RegExp",!_||E||p((function(){return x[m]=!1,v(b)!=b||v(x)==x||"/a/i"!=v(b,"i")})));if(R){var S=function(t,e){var n,r=this instanceof S,o=u(t),i=void 0===e;if(!r&&o&&t.constructor===S&&i)return t;_?o&&!i&&(t=t.source):t instanceof S&&(i&&(e=l.call(t)),t=t.source),E&&(n=!!e&&e.indexOf("y")>-1,n&&(e=e.replace(/y/g,"")));var c=a(_?new v(t,e):v(t,e),r?this:w,S);if(E&&n){var s=d(c);s.sticky=!0}return c},O=function(t){t in S||c(S,t,{configurable:!0,get:function(){return v[t]},set:function(e){v[t]=e}})},P=s(v),N=0;while(P.length>N)O(P[N++]);w.constructor=S,S.prototype=w,f(o,"RegExp",S)}g("RegExp")},"4d64":function(t,e,n){var r=n("fc6a"),o=n("50c4"),i=n("23cb"),a=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},"50c4":function(t,e,n){var r=n("a691"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},5135:function(t,e,n){var r=n("7b0b"),o={}.hasOwnProperty;t.exports=Object.hasOwn||function(t,e){return o.call(r(t),e)}},5692:function(t,e,n){var r=n("c430"),o=n("c6cd");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.14.0",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(t,e,n){var r=n("d066"),o=n("241c"),i=n("7418"),a=n("825a");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},6547:function(t,e,n){var r=n("a691"),o=n("1d80"),i=function(t){return function(e,n){var i,a,c=String(o(e)),s=r(n),u=c.length;return s<0||s>=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}};t.exports={codeAt:i(!1),charAt:i(!0)}},"69f3":function(t,e,n){var r,o,i,a=n("7f9a"),c=n("da84"),s=n("861d"),u=n("9112"),l=n("5135"),h=n("c6cd"),f=n("f772"),p=n("d012"),d="Object already initialized",g=c.WeakMap,y=function(t){return i(t)?o(t):r(t,{})},m=function(t){return function(e){var n;if(!s(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}};if(a||h.state){var v=h.state||(h.state=new g),w=v.get,b=v.has,x=v.set;r=function(t,e){if(b.call(v,t))throw new TypeError(d);return e.facade=t,x.call(v,t,e),e},o=function(t){return w.call(v,t)||{}},i=function(t){return b.call(v,t)}}else{var _=f("state");p[_]=!0,r=function(t,e){if(l(t,_))throw new TypeError(d);return e.facade=t,u(t,_,e),e},o=function(t){return l(t,_)?t[_]:{}},i=function(t){return l(t,_)}}t.exports={set:r,get:o,has:i,enforce:y,getterFor:m}},"6aa8":function(t,e,n){"use strict";try{self["workbox:strategies:6.1.5"]&&_()}catch(r){}},"6eeb":function(t,e,n){var r=n("da84"),o=n("9112"),i=n("5135"),a=n("ce4e"),c=n("8925"),s=n("69f3"),u=s.get,l=s.enforce,h=String(String).split("String");(t.exports=function(t,e,n,c){var s,u=!!c&&!!c.unsafe,f=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),s=l(n),s.source||(s.source=h.join("string"==typeof e?e:""))),t!==r?(u?!p&&t[e]&&(f=!0):delete t[e],f?t[e]=n:o(t,e,n)):f?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},7156:function(t,e,n){var r=n("861d"),o=n("d2bb");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},7418:function(t,e){e.f=Object.getOwnPropertySymbols},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7b0b":function(t,e,n){var r=n("1d80");t.exports=function(t){return Object(r(t))}},"7f9a":function(t,e,n){var r=n("da84"),o=n("8925"),i=r.WeakMap;t.exports="function"===typeof i&&/native code/.test(o(i))},"825a":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},"83ab":function(t,e,n){var r=n("d039");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"861d":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},8925:function(t,e,n){var r=n("c6cd"),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"90e3":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},9112:function(t,e,n){var r=n("83ab"),o=n("9bf2"),i=n("5c6c");t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},9263:function(t,e,n){"use strict";var r=n("ad6d"),o=n("9f7f"),i=n("5692"),a=RegExp.prototype.exec,c=i("native-string-replace",String.prototype.replace),s=a,u=function(){var t=/a/,e=/b*/g;return a.call(t,"a"),a.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),l=o.UNSUPPORTED_Y||o.BROKEN_CARET,h=void 0!==/()??/.exec("")[1],f=u||h||l;f&&(s=function(t){var e,n,o,i,s=this,f=l&&s.sticky,p=r.call(s),d=s.source,g=0,y=t;return f&&(p=p.replace("y",""),-1===p.indexOf("g")&&(p+="g"),y=String(t).slice(s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&"\n"!==t[s.lastIndex-1])&&(d="(?: "+d+")",y=" "+y,g++),n=new RegExp("^(?:"+d+")",p)),h&&(n=new RegExp("^"+d+"$(?!\\s)",p)),u&&(e=s.lastIndex),o=a.call(f?n:s,y),f?o?(o.input=o.input.slice(g),o[0]=o[0].slice(g),o.index=s.lastIndex,s.lastIndex+=o[0].length):s.lastIndex=0:u&&o&&(s.lastIndex=s.global?o.index+o[0].length:e),h&&o&&o.length>1&&c.call(o[0],n,(function(){for(i=1;i=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(s&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),N(n),g}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;N(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:j(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}(t.exports);try{regeneratorRuntime=r}catch(o){Function("r","regeneratorRuntime = r")(r)}},"9bf2":function(t,e,n){var r=n("83ab"),o=n("0cfb"),i=n("825a"),a=n("c04e"),c=Object.defineProperty;e.f=r?c:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return c(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},"9f7f":function(t,e,n){"use strict";var r=n("d039");function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},a691:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},ac1f:function(t,e,n){"use strict";var r=n("23e7"),o=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},ad6d:function(t,e,n){"use strict";var r=n("825a");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},b041:function(t,e,n){"use strict";var r=n("00ee"),o=n("f5df");t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},b622:function(t,e,n){var r=n("da84"),o=n("5692"),i=n("5135"),a=n("90e3"),c=n("4930"),s=n("fdbf"),u=o("wks"),l=r.Symbol,h=s?l:l&&l.withoutSetter||a;t.exports=function(t){return i(u,t)&&(c||"string"==typeof u[t])||(c&&i(l,t)?u[t]=l[t]:u[t]=h("Symbol."+t)),u[t]}},c04e:function(t,e,n){var r=n("861d");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},c430:function(t,e){t.exports=!1},c6b6:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},c6cd:function(t,e,n){var r=n("da84"),o=n("ce4e"),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},c700:function(t,e,n){"use strict";try{self["workbox:precaching:6.1.5"]&&_()}catch(r){}},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},ca84:function(t,e,n){var r=n("5135"),o=n("fc6a"),i=n("4d64").indexOf,a=n("d012");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)!r(a,n)&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},cc12:function(t,e,n){var r=n("da84"),o=n("861d"),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},ce4e:function(t,e,n){var r=n("da84"),o=n("9112");t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},d012:function(t,e){t.exports={}},d039:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d066:function(t,e,n){var r=n("428f"),o=n("da84"),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},d1e7:function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},d2bb:function(t,e,n){var r=n("825a"),o=n("3bbe");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,t.call(n,[]),e=n instanceof Array}catch(i){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},d3b7:function(t,e,n){var r=n("00ee"),o=n("6eeb"),i=n("b041");r||o(Object.prototype,"toString",i,{unsafe:!0})},d784:function(t,e,n){"use strict";n("ac1f");var r=n("6eeb"),o=n("9263"),i=n("d039"),a=n("b622"),c=n("9112"),s=a("species"),u=RegExp.prototype,l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),h=function(){return"$0"==="a".replace(/./,"$0")}(),f=a("replace"),p=function(){return!!/./[f]&&""===/./[f]("a","$0")}(),d=!i((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,f){var g=a(t),y=!i((function(){var e={};return e[g]=function(){return 7},7!=""[t](e)})),m=y&&!i((function(){var e=!1,n=/a/;return"split"===t&&(n={},n.constructor={},n.constructor[s]=function(){return n},n.flags="",n[g]=/./[g]),n.exec=function(){return e=!0,null},n[g](""),!e}));if(!y||!m||"replace"===t&&(!l||!h||p)||"split"===t&&!d){var v=/./[g],w=n(g,""[t],(function(t,e,n,r,i){var a=e.exec;return a===o||a===u.exec?y&&!i?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:h,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),b=w[0],x=w[1];r(String.prototype,t,b),r(u,g,2==e?function(t,e){return x.call(t,this,e)}:function(t){return x.call(t,this)})}f&&c(u[g],"sham",!0)}},d8a5:function(t,e,n){"use strict";try{self["workbox:expiration:6.1.5"]&&_()}catch(r){}},da84:function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||function(){return this}()||Function("return this")()}).call(this,n("c8ba"))},e6d2:function(t,e,n){"use strict";try{self["workbox:routing:6.1.5"]&&_()}catch(r){}},e893:function(t,e,n){var r=n("5135"),o=n("56ef"),i=n("06cf"),a=n("9bf2");t.exports=function(t,e){for(var n=o(e),c=a.f,s=i.f,u=0;u - {% trans 'Bookmark Me!' %} + {% trans 'Bookmark Me!' %}
+
diff --git a/vue/src/components/GenericContextMenu.vue b/vue/src/components/GenericContextMenu.vue new file mode 100644 index 00000000..9f8257a5 --- /dev/null +++ b/vue/src/components/GenericContextMenu.vue @@ -0,0 +1,38 @@ + + + \ No newline at end of file diff --git a/vue/src/components/GenericContextMenu.vue~working b/vue/src/components/GenericContextMenu.vue~working new file mode 100644 index 00000000..9f8257a5 --- /dev/null +++ b/vue/src/components/GenericContextMenu.vue~working @@ -0,0 +1,38 @@ + + + \ No newline at end of file diff --git a/vue/src/components/GenericMultiselect.vue b/vue/src/components/GenericMultiselect.vue index 50474039..ee51c74a 100644 --- a/vue/src/components/GenericMultiselect.vue +++ b/vue/src/components/GenericMultiselect.vue @@ -9,7 +9,7 @@ :placeholder="placeholder" :label="label" track-by="id" - :multiple="true" + :multiple="multiple" :loading="loading" @search-change="search" @input="selectionChanged"> @@ -35,13 +35,16 @@ export default { placeholder: String, search_function: String, label: String, - parent_variable: String, - initial_selection: Array, + parent_variable: {type: String, default: undefined}, + sticky_options: {type:Array, default(){return []}}, + initial_selection: {type:Array, default(){return []}}, + multiple: {type: Boolean, default: true}, + tree_api: {type: Boolean, default: false} // api requires params that are unique to TreeMixin }, watch: { initial_selection: function (newVal, oldVal) { // watch it this.selected_objects = newVal - } + }, }, mounted() { this.search('') @@ -49,10 +52,23 @@ export default { methods: { search: function (query) { let apiClient = new ApiApiFactory() + if (this.tree_api) { + let page = 1 + let root = undefined + let tree = undefined + let pageSize = 10 - apiClient[this.search_function]({query: {query: query, limit: 10}}).then(result => { - this.objects = result.data - }) + if (query === '') { + query = undefined + } + apiClient[this.search_function](query, root, tree, page, pageSize).then(result => { + this.objects = this.sticky_options.concat(result.data.results) + }) + } else { + apiClient[this.search_function]({query: {query: query, limit: 10}}).then(result => { + this.objects = this.sticky_options.concat(result.data) + }) + } }, selectionChanged: function () { this.$emit('change', {var: this.parent_variable, val: this.selected_objects}) diff --git a/vue/src/components/KeywordCard.vue b/vue/src/components/KeywordCard.vue new file mode 100644 index 00000000..7def6057 --- /dev/null +++ b/vue/src/components/KeywordCard.vue @@ -0,0 +1,213 @@ + + + + + \ No newline at end of file diff --git a/vue/src/components/RecipeCard.vue b/vue/src/components/RecipeCard.vue index 5bd946df..c64901f4 100644 --- a/vue/src/components/RecipeCard.vue +++ b/vue/src/components/RecipeCard.vue @@ -6,7 +6,7 @@ -
diff --git a/vue/src/locales/en.json b/vue/src/locales/en.json index 0cff0707..f00f3621 100644 --- a/vue/src/locales/en.json +++ b/vue/src/locales/en.json @@ -12,8 +12,7 @@ "all_fields_optional": "All fields are optional and can be left empty.", "convert_internal": "Convert to internal recipe", "show_only_internal": "Show only internal recipes", - - + "show_split_screen": "Show split view", "Log_Recipe_Cooking": "Log Recipe Cooking", "External_Recipe_Image": "External Recipe Image", @@ -33,6 +32,13 @@ "Reset_Search": "Reset Search", "Recently_Viewed": "Recently Viewed", "Load_More": "Load More", + "New_Keyword": "New Keyword", + "Delete_Keyword": "Delete Keyword", + "Edit_Keyword": "Edit Keyword", + "Move_Keyword": "Move Keyword", + "Merge_Keyword": "Merge Keyword", + "Hide_Keywords": "Hide Keywords", + "Hide_Recipes": "Hide Recipes", "Keywords": "Keywords", "Books": "Books", @@ -46,6 +52,7 @@ "Export": "Export", "Rating": "Rating", "Close": "Close", + "Cancel": "Cancel", "Add": "Add", "New": "New", "Success": "Success", @@ -63,7 +70,6 @@ "Files": "Files", "File": "File", "Edit": "Edit", - "Cancel": "Cancel", "Delete": "Delete", "Open": "Open", "Ok": "Open", @@ -76,5 +82,17 @@ "or": "or", "and": "and", "Information": "Information", - "Download": "Download" + "View": "View", + "Recipes": "Recipes", + "Move": "Move", + "Merge": "Merge", + "Parent": "Parent", + "delete_confimation": "Are you sure that you want to delete {kw} and all of it's children?", + "move_confirmation": "Move {child} to parent {parent}", + "merge_confirmation": "Replace {source} with {target}", + "move_selection": "Select a parent to move {child} to.", + "merge_selection": "Replace all occurences of {source} with the selected {type}.", + "Advanced Search Settings": "Advanced Search Settings", + "Download": "Download", + "Root": "Root" } \ No newline at end of file diff --git a/vue/src/sw.js b/vue/src/sw.js index 2bbc7f34..412586fd 100644 --- a/vue/src/sw.js +++ b/vue/src/sw.js @@ -6,7 +6,8 @@ import {ExpirationPlugin} from 'workbox-expiration'; const OFFLINE_CACHE_NAME = 'offline-html'; -const OFFLINE_PAGE_URL = '/offline/'; +let script_name = typeof window !== 'undefined' ? localStorage.getItem('SCRIPT_NAME') : '/' +var OFFLINE_PAGE_URL = script_name + 'offline/'; self.addEventListener('install', async (event) => { event.waitUntil( diff --git a/vue/src/utils/openapi/api.ts b/vue/src/utils/openapi/api.ts index db1c9002..d23b6eb7 100644 --- a/vue/src/utils/openapi/api.ts +++ b/vue/src/utils/openapi/api.ts @@ -242,6 +242,30 @@ export interface ImportLogKeyword { * @memberof ImportLogKeyword */ description?: string; + /** + * + * @type {string} + * @memberof ImportLogKeyword + */ + image?: string; + /** + * + * @type {string} + * @memberof ImportLogKeyword + */ + parent?: string; + /** + * + * @type {number} + * @memberof ImportLogKeyword + */ + numchild?: number; + /** + * + * @type {string} + * @memberof ImportLogKeyword + */ + numrecipe?: string; /** * * @type {string} @@ -336,9 +360,40 @@ export interface InlineResponse200 { previous?: string | null; /** * - * @type {Array} + * @type {Array} * @memberof InlineResponse200 */ + results?: Array; +} +/** + * + * @export + * @interface InlineResponse2001 + */ +export interface InlineResponse2001 { + /** + * + * @type {number} + * @memberof InlineResponse2001 + */ + count?: number; + /** + * + * @type {string} + * @memberof InlineResponse2001 + */ + next?: string | null; + /** + * + * @type {string} + * @memberof InlineResponse2001 + */ + previous?: string | null; + /** + * + * @type {Array} + * @memberof InlineResponse2001 + */ results?: Array; } /** @@ -377,6 +432,30 @@ export interface Keyword { * @memberof Keyword */ description?: string; + /** + * + * @type {string} + * @memberof Keyword + */ + image?: string; + /** + * + * @type {string} + * @memberof Keyword + */ + parent?: string; + /** + * + * @type {number} + * @memberof Keyword + */ + numchild?: number; + /** + * + * @type {string} + * @memberof Keyword + */ + numrecipe?: string; /** * * @type {string} @@ -805,6 +884,30 @@ export interface RecipeKeywords { * @memberof RecipeKeywords */ description?: string; + /** + * + * @type {string} + * @memberof RecipeKeywords + */ + image?: string; + /** + * + * @type {string} + * @memberof RecipeKeywords + */ + parent?: string; + /** + * + * @type {number} + * @memberof RecipeKeywords + */ + numchild?: number; + /** + * + * @type {string} + * @memberof RecipeKeywords + */ + numrecipe?: string; /** * * @type {string} @@ -3700,11 +3803,16 @@ export const ApiApiAxiosParamCreator = function (configuration?: Configuration) }; }, /** - * optional parameters - **query**: search keywords for a string contained in the keyword name (case in-sensitive) - **limit**: limits the amount of returned results + * + * @param {string} [query] Query string matched against keyword name. + * @param {number} [root] Return first level children of keyword with ID [int]. Integer 0 will return root keywords. + * @param {number} [tree] Return all self and children of keyword with ID [int]. + * @param {number} [page] A page number within the paginated result set. + * @param {number} [pageSize] Number of results to return per page. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listKeywords: async (options: any = {}): Promise => { + listKeywords: async (query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options: any = {}): Promise => { const localVarPath = `/api/keyword/`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3717,6 +3825,26 @@ export const ApiApiAxiosParamCreator = function (configuration?: Configuration) const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + if (query !== undefined) { + localVarQueryParameter['query'] = query; + } + + if (root !== undefined) { + localVarQueryParameter['root'] = root; + } + + if (tree !== undefined) { + localVarQueryParameter['tree'] = tree; + } + + if (page !== undefined) { + localVarQueryParameter['page'] = page; + } + + if (pageSize !== undefined) { + localVarQueryParameter['page_size'] = pageSize; + } + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -4334,6 +4462,88 @@ export const ApiApiAxiosParamCreator = function (configuration?: Configuration) options: localVarRequestOptions, }; }, + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} target + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + mergeKeyword: async (id: string, target: string, keyword?: Keyword, options: any = {}): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('mergeKeyword', 'id', id) + // verify required parameter 'target' is not null or undefined + assertParamExists('mergeKeyword', 'target', target) + const localVarPath = `/api/keyword/{id}/merge/{target}/` + .replace(`{${"id"}}`, encodeURIComponent(String(id))) + .replace(`{${"target"}}`, encodeURIComponent(String(target))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(keyword, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} parent + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + moveKeyword: async (id: string, parent: string, keyword?: Keyword, options: any = {}): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('moveKeyword', 'id', id) + // verify required parameter 'parent' is not null or undefined + assertParamExists('moveKeyword', 'parent', parent) + const localVarPath = `/api/keyword/{id}/move/{parent}/` + .replace(`{${"id"}}`, encodeURIComponent(String(id))) + .replace(`{${"parent"}}`, encodeURIComponent(String(parent))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(keyword, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * * @param {string} id A unique integer value identifying this bookmarklet import. @@ -7435,12 +7645,17 @@ export const ApiApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * optional parameters - **query**: search keywords for a string contained in the keyword name (case in-sensitive) - **limit**: limits the amount of returned results + * + * @param {string} [query] Query string matched against keyword name. + * @param {number} [root] Return first level children of keyword with ID [int]. Integer 0 will return root keywords. + * @param {number} [tree] Return all self and children of keyword with ID [int]. + * @param {number} [page] A page number within the paginated result set. + * @param {number} [pageSize] Number of results to return per page. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async listKeywords(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.listKeywords(options); + async listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.listKeywords(query, root, tree, page, pageSize, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -7495,7 +7710,7 @@ export const ApiApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async listRecipes(query?: string, keywords?: string, foods?: string, books?: string, keywordsOr?: string, foodsOr?: string, booksOr?: string, internal?: string, random?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async listRecipes(query?: string, keywords?: string, foods?: string, books?: string, keywordsOr?: string, foodsOr?: string, booksOr?: string, internal?: string, random?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.listRecipes(query, keywords, foods, books, keywordsOr, foodsOr, booksOr, internal, random, page, pageSize, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7625,6 +7840,30 @@ export const ApiApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.listViewLogs(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} target + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async mergeKeyword(id: string, target: string, keyword?: Keyword, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.mergeKeyword(id, target, keyword, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} parent + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async moveKeyword(id: string, parent: string, keyword?: Keyword, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.moveKeyword(id, parent, keyword, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * * @param {string} id A unique integer value identifying this bookmarklet import. @@ -8865,12 +9104,17 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?: return localVarFp.listIngredients(options).then((request) => request(axios, basePath)); }, /** - * optional parameters - **query**: search keywords for a string contained in the keyword name (case in-sensitive) - **limit**: limits the amount of returned results + * + * @param {string} [query] Query string matched against keyword name. + * @param {number} [root] Return first level children of keyword with ID [int]. Integer 0 will return root keywords. + * @param {number} [tree] Return all self and children of keyword with ID [int]. + * @param {number} [page] A page number within the paginated result set. + * @param {number} [pageSize] Number of results to return per page. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listKeywords(options?: any): AxiosPromise> { - return localVarFp.listKeywords(options).then((request) => request(axios, basePath)); + listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any): AxiosPromise { + return localVarFp.listKeywords(query, root, tree, page, pageSize, options).then((request) => request(axios, basePath)); }, /** * optional parameters - **from_date**: filter from (inclusive) a certain date onward - **to_date**: filter upward to (inclusive) certain date @@ -8920,7 +9164,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?: * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listRecipes(query?: string, keywords?: string, foods?: string, books?: string, keywordsOr?: string, foodsOr?: string, booksOr?: string, internal?: string, random?: string, page?: number, pageSize?: number, options?: any): AxiosPromise { + listRecipes(query?: string, keywords?: string, foods?: string, books?: string, keywordsOr?: string, foodsOr?: string, booksOr?: string, internal?: string, random?: string, page?: number, pageSize?: number, options?: any): AxiosPromise { return localVarFp.listRecipes(query, keywords, foods, books, keywordsOr, foodsOr, booksOr, internal, random, page, pageSize, options).then((request) => request(axios, basePath)); }, /** @@ -9035,6 +9279,28 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?: listViewLogs(options?: any): AxiosPromise> { return localVarFp.listViewLogs(options).then((request) => request(axios, basePath)); }, + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} target + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + mergeKeyword(id: string, target: string, keyword?: Keyword, options?: any): AxiosPromise { + return localVarFp.mergeKeyword(id, target, keyword, options).then((request) => request(axios, basePath)); + }, + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} parent + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + moveKeyword(id: string, parent: string, keyword?: Keyword, options?: any): AxiosPromise { + return localVarFp.moveKeyword(id, parent, keyword, options).then((request) => request(axios, basePath)); + }, /** * * @param {string} id A unique integer value identifying this bookmarklet import. @@ -10308,13 +10574,18 @@ export class ApiApi extends BaseAPI { } /** - * optional parameters - **query**: search keywords for a string contained in the keyword name (case in-sensitive) - **limit**: limits the amount of returned results + * + * @param {string} [query] Query string matched against keyword name. + * @param {number} [root] Return first level children of keyword with ID [int]. Integer 0 will return root keywords. + * @param {number} [tree] Return all self and children of keyword with ID [int]. + * @param {number} [page] A page number within the paginated result set. + * @param {number} [pageSize] Number of results to return per page. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApiApi */ - public listKeywords(options?: any) { - return ApiApiFp(this.configuration).listKeywords(options).then((request) => request(this.axios, this.basePath)); + public listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any) { + return ApiApiFp(this.configuration).listKeywords(query, root, tree, page, pageSize, options).then((request) => request(this.axios, this.basePath)); } /** @@ -10518,6 +10789,32 @@ export class ApiApi extends BaseAPI { return ApiApiFp(this.configuration).listViewLogs(options).then((request) => request(this.axios, this.basePath)); } + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} target + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApiApi + */ + public mergeKeyword(id: string, target: string, keyword?: Keyword, options?: any) { + return ApiApiFp(this.configuration).mergeKeyword(id, target, keyword, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * + * @param {string} id A unique integer value identifying this keyword. + * @param {string} parent + * @param {Keyword} [keyword] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApiApi + */ + public moveKeyword(id: string, parent: string, keyword?: Keyword, options?: any) { + return ApiApiFp(this.configuration).moveKeyword(id, parent, keyword, options).then((request) => request(this.axios, this.basePath)); + } + /** * * @param {string} id A unique integer value identifying this bookmarklet import. diff --git a/vue/src/utils/openapi/base.ts b/vue/src/utils/openapi/base.ts index 762445b6..61f30009 100644 --- a/vue/src/utils/openapi/base.ts +++ b/vue/src/utils/openapi/base.ts @@ -10,15 +10,16 @@ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. - */ + */ import { Configuration } from "./configuration"; -// Some imports not used depending on template conditions +// Some imports not used depending on template conditions // @ts-ignore import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; -export const BASE_PATH = location.protocol + '//' + location.host; //TODO manually edited. Find good solution to automate later, remove from openapi-generator-ignore afterwards +//export const BASE_PATH = location.protocol + '//' + location.host; //TODO manually edited. Find good solution to automate later, remove from openapi-generator-ignore afterwards +export let BASE_PATH = typeof window !== 'undefined' ? localStorage.getItem('BASE_PATH') || '' : location.protocol + '//' + location.host; /** * diff --git a/vue/src/utils/utils.js b/vue/src/utils/utils.js index 96fe8c14..5422f1cf 100644 --- a/vue/src/utils/utils.js +++ b/vue/src/utils/utils.js @@ -60,10 +60,18 @@ export const ResolveUrlMixin = { } export function resolveDjangoUrl(url, params = null) { - if (params !== null) { - return window.Urls[url](params) - } else { + if (params == null) { return window.Urls[url]() + } else if (typeof(params) != "object") { + return window.Urls[url](params) + } else if (typeof(params) == "object") { + if (params.length === 1) { + return window.Urls[url](params) + } else if (params.length === 2) { + return window.Urls[url](params[0],params[1]) + } else if (params.length === 3) { + return window.Urls[url](params[0],params[1],params[2]) + } } } diff --git a/vue/tsconfig.json b/vue/tsconfig.json index 9ee36413..63fe664a 100644 --- a/vue/tsconfig.json +++ b/vue/tsconfig.json @@ -33,7 +33,7 @@ "src/**/*.vue", "tests/**/*.ts", "tests/**/*.tsx" - ], +, "src/directives/OutsideClick.js" ], "exclude": [ "node_modules" ] diff --git a/vue/vue.config.js b/vue/vue.config.js index 1e12e601..5a0c7b4f 100644 --- a/vue/vue.config.js +++ b/vue/vue.config.js @@ -25,6 +25,10 @@ const pages = { entry: './src/apps/UserFileView/main.js', chunks: ['chunk-vendors'] }, + 'keyword_list_view': { + entry: './src/apps/KeywordListView/main.js', + chunks: ['chunk-vendors'] + }, } module.exports = { diff --git a/vue/webpack-stats.json b/vue/webpack-stats.json index ba0d5eaf..793d46a9 100644 --- a/vue/webpack-stats.json +++ b/vue/webpack-stats.json @@ -1 +1 @@ -{"status":"done","chunks":{"recipe_search_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/recipe_search_view.js"],"recipe_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/recipe_view.js"],"offline_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/offline_view.js"],"import_response_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/import_response_view.js"],"supermarket_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/supermarket_view.js"],"user_file_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/user_file_view.js"]},"assets":{"../../templates/sw.js":{"name":"../../templates/sw.js","path":"..\\..\\templates\\sw.js"},"css/chunk-vendors.css":{"name":"css/chunk-vendors.css","path":"css\\chunk-vendors.css"},"js/chunk-vendors.js":{"name":"js/chunk-vendors.js","path":"js\\chunk-vendors.js"},"js/import_response_view.js":{"name":"js/import_response_view.js","path":"js\\import_response_view.js"},"js/offline_view.js":{"name":"js/offline_view.js","path":"js\\offline_view.js"},"js/recipe_search_view.js":{"name":"js/recipe_search_view.js","path":"js\\recipe_search_view.js"},"js/recipe_view.js":{"name":"js/recipe_view.js","path":"js\\recipe_view.js"},"js/supermarket_view.js":{"name":"js/supermarket_view.js","path":"js\\supermarket_view.js"},"js/user_file_view.js":{"name":"js/user_file_view.js","path":"js\\user_file_view.js"},"recipe_search_view.html":{"name":"recipe_search_view.html","path":"recipe_search_view.html"},"recipe_view.html":{"name":"recipe_view.html","path":"recipe_view.html"},"offline_view.html":{"name":"offline_view.html","path":"offline_view.html"},"import_response_view.html":{"name":"import_response_view.html","path":"import_response_view.html"},"supermarket_view.html":{"name":"supermarket_view.html","path":"supermarket_view.html"},"user_file_view.html":{"name":"user_file_view.html","path":"user_file_view.html"},"manifest.json":{"name":"manifest.json","path":"manifest.json"}}} \ No newline at end of file +{"status":"done","chunks":{"recipe_search_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/recipe_search_view.js"],"recipe_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/recipe_view.js"],"offline_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/offline_view.js"],"import_response_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/import_response_view.js"],"supermarket_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/supermarket_view.js"],"user_file_view":["css/chunk-vendors.css","js/chunk-vendors.js","js/user_file_view.js"],"keyword_list_view":["css/chunk-vendors.css","js/chunk-vendors.js","css/keyword_list_view.css","js/keyword_list_view.js"]},"assets":{"../../templates/sw.js":{"name":"../../templates/sw.js","path":"../../templates/sw.js"},"css/chunk-vendors.css":{"name":"css/chunk-vendors.css","path":"css/chunk-vendors.css"},"js/chunk-vendors.js":{"name":"js/chunk-vendors.js","path":"js/chunk-vendors.js"},"js/import_response_view.js":{"name":"js/import_response_view.js","path":"js/import_response_view.js"},"css/keyword_list_view.css":{"name":"css/keyword_list_view.css","path":"css/keyword_list_view.css"},"js/keyword_list_view.js":{"name":"js/keyword_list_view.js","path":"js/keyword_list_view.js"},"js/offline_view.js":{"name":"js/offline_view.js","path":"js/offline_view.js"},"js/recipe_search_view.js":{"name":"js/recipe_search_view.js","path":"js/recipe_search_view.js"},"js/recipe_view.js":{"name":"js/recipe_view.js","path":"js/recipe_view.js"},"js/supermarket_view.js":{"name":"js/supermarket_view.js","path":"js/supermarket_view.js"},"js/user_file_view.js":{"name":"js/user_file_view.js","path":"js/user_file_view.js"},"recipe_search_view.html":{"name":"recipe_search_view.html","path":"recipe_search_view.html"},"recipe_view.html":{"name":"recipe_view.html","path":"recipe_view.html"},"offline_view.html":{"name":"offline_view.html","path":"offline_view.html"},"import_response_view.html":{"name":"import_response_view.html","path":"import_response_view.html"},"supermarket_view.html":{"name":"supermarket_view.html","path":"supermarket_view.html"},"user_file_view.html":{"name":"user_file_view.html","path":"user_file_view.html"},"keyword_list_view.html":{"name":"keyword_list_view.html","path":"keyword_list_view.html"},"manifest.json":{"name":"manifest.json","path":"manifest.json"}}} \ No newline at end of file diff --git a/vue/yarn.lock b/vue/yarn.lock index a3d6ea4d..3a202323 100644 --- a/vue/yarn.lock +++ b/vue/yarn.lock @@ -42,6 +42,15 @@ semver "^6.3.0" source-map "^0.5.0" +"@babel/eslint-parser@^7.13.14": + version "7.14.4" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.14.4.tgz#73e6996163a2ad48f315a8466b55f57c330cd15c" + integrity sha512-7CTckFLPBGEfCKqlrnJq2PIId3UmJ5hW+D4dsv/VvuA5DapgqyZFCttq+8oeRIJMZQizFIe5gel3xm2SbrqlYA== + dependencies: + eslint-scope "^5.1.0" + eslint-visitor-keys "^2.1.0" + semver "^6.3.0" + "@babel/generator@^7.14.2", "@babel/generator@^7.14.3": version "7.14.3" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.3.tgz#0c2652d91f7bddab7cccc6ba8157e4f40dcedb91" @@ -872,7 +881,7 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/runtime@^7.11.0", "@babel/runtime@^7.11.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": +"@babel/runtime@^7.11.0", "@babel/runtime@^7.11.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": version "7.14.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.14.0.tgz#46794bc20b612c5f75e62dd071e24dfd95f1cbe6" integrity sha512-JELkvo/DlpNdJ7dlyw/eY7E0suy5i5GQH+Vlxaq1nsNJ+H7f4Vtv3jMeCEgRhZZQFXTjldYfQgv2qmM6M1v5wA== @@ -995,6 +1004,17 @@ js-yaml "^3.13.1" json5 "^2.1.1" +"@kevinfaguiar/vue-twemoji-picker@^5.7.4": + version "5.7.4" + resolved "https://registry.yarnpkg.com/@kevinfaguiar/vue-twemoji-picker/-/vue-twemoji-picker-5.7.4.tgz#76dd0a2dc9cc350af0886eae985492c868b02e49" + integrity sha512-5E3hdAP7wFnY9DOEtQNEpW8uXKcw3ed3AjXQaJqpF/qwNgxwTRiJeqGhFZW1nKhEC5fRscpSm2JphKQENFMyEQ== + dependencies: + "@popperjs/core" "^2.4.0" + lodash.pick "^4.4.0" + twemoji "^13.0.0" + twitter-text "^3.1.0" + vue-clickaway "^2.2.2" + "@mrmlnc/readdir-enhanced@^2.2.1": version "2.2.1" resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" @@ -1038,6 +1058,11 @@ consola "^2.15.0" node-fetch "^2.6.1" +"@popperjs/core@^2.4.0": + version "2.9.2" + resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.9.2.tgz#adea7b6953cbb34651766b0548468e743c6a2353" + integrity sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q== + "@rollup/plugin-babel@^5.2.0": version "5.3.0" resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.3.0.tgz#9cb1c5146ddd6a4968ad96f209c50c62f92f9879" @@ -3186,7 +3211,7 @@ core-js-compat@^3.6.5, core-js-compat@^3.9.0, core-js-compat@^3.9.1: browserslist "^4.16.6" semver "7.0.0" -core-js@^2.4.0: +core-js@^2.4.0, core-js@^2.5.0: version "2.6.12" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== @@ -3346,7 +3371,7 @@ css-select-base-adapter@^0.1.1: resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== -css-select@^2.0.0, css-select@^2.0.2: +css-select@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== @@ -3356,6 +3381,17 @@ css-select@^2.0.0, css-select@^2.0.2: domutils "^1.7.0" nth-check "^1.0.2" +css-select@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.1.3.tgz#a70440f70317f2669118ad74ff105e65849c7067" + integrity sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA== + dependencies: + boolbase "^1.0.0" + css-what "^5.0.0" + domhandler "^4.2.0" + domutils "^2.6.0" + nth-check "^2.0.0" + css-tree@1.0.0-alpha.37: version "1.0.0-alpha.37" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" @@ -3377,6 +3413,11 @@ css-what@^3.2.1: resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== +css-what@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.1.tgz#3efa820131f4669a8ac2408f9c32e7c7de9f4cad" + integrity sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg== + cssesc@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" @@ -3679,7 +3720,7 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-converter@^0.2: +dom-converter@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== @@ -3694,29 +3735,38 @@ dom-serializer@0: domelementtype "^2.0.1" entities "^2.0.0" +dom-serializer@^1.0.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" + integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" + domain-browser@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== -domelementtype@1, domelementtype@^1.3.1: +domelementtype@1: version "1.3.1" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== -domelementtype@^2.0.1: +domelementtype@^2.0.1, domelementtype@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== +domhandler@^4.0.0, domhandler@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.0.tgz#f9768a5f034be60a89a27c2e4d0f74eba0d8b059" + integrity sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA== dependencies: - domelementtype "1" + domelementtype "^2.2.0" -domutils@^1.5.1, domutils@^1.7.0: +domutils@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== @@ -3724,6 +3774,15 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" +domutils@^2.5.2, domutils@^2.6.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.7.0.tgz#8ebaf0c41ebafcf55b0b72ec31c56323712c5442" + integrity sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" + dot-object@^1.7.1: version "1.9.0" resolved "https://registry.yarnpkg.com/dot-object/-/dot-object-1.9.0.tgz#6e3d6d8379f794c5174599ddf05528f5990f076e" @@ -3853,11 +3912,6 @@ enquirer@^2.3.5: dependencies: ansi-colors "^4.1.1" -entities@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - entities@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" @@ -3964,7 +4018,7 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-scope@^5.0.0, eslint-scope@^5.1.1: +eslint-scope@^5.0.0, eslint-scope@^5.1.0, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -3991,7 +4045,7 @@ eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint-visitor-keys@^2.0.0: +eslint-visitor-keys@^2.0.0, eslint-visitor-keys@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== @@ -4577,7 +4631,7 @@ fs-extra@^7.0.1: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^8.1.0: +fs-extra@^8.0.1, fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== @@ -5012,17 +5066,15 @@ html-webpack-plugin@^3.2.0: toposort "^1.0.0" util.promisify "1.0.0" -htmlparser2@^3.10.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== +htmlparser2@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.5.2" + entities "^2.0.0" http-deceiver@^1.2.7: version "1.2.7" @@ -5674,16 +5726,16 @@ js-queue@2.0.2: dependencies: easy-stack "^1.0.1" +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= -js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - js-yaml@^3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" @@ -5773,6 +5825,15 @@ jsonfile@^4.0.0: optionalDependencies: graceful-fs "^4.1.6" +jsonfile@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-5.0.0.tgz#e6b718f73da420d612823996fdf14a03f6ff6922" + integrity sha512-NQRZ5CRo74MhMMC3/3r5g2k4fjodJ/wh8MxjFbCViWKFjxrnudWSY5vomh+23ZaXzAS7J3fBZIR2dV6WbmfM0w== + dependencies: + universalify "^0.1.2" + optionalDependencies: + graceful-fs "^4.1.6" + jsonfile@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" @@ -5970,6 +6031,11 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== +lodash.pick@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" + integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= + lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -6022,6 +6088,13 @@ loglevel@^1.6.8: resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.7.1.tgz#005fde2f5e6e47068f935ff28573e125ef72f197" integrity sha512-Hesni4s5UkWkwCGJMQGAh71PaLUmKFM60dHvq0zi/vDhhrzuk+4GgNbTXJ12YYQJn6ZKBDNIjYcuQGKudvqrIw== +loose-envify@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + lower-case@^1.1.1: version "1.1.4" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" @@ -6538,6 +6611,13 @@ nth-check@^1.0.2: dependencies: boolbase "~1.0.0" +nth-check@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz#1bb4f6dac70072fc313e8c9cd1417b5074c0a125" + integrity sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q== + dependencies: + boolbase "^1.0.0" + num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" @@ -7523,7 +7603,7 @@ punycode@1.3.2: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= -punycode@^1.2.4: +punycode@1.4.1, punycode@^1.2.4: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= @@ -7629,7 +7709,7 @@ read-pkg@^5.1.1: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.6.0: +readable-stream@^3.0.6, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -7739,15 +7819,15 @@ remove-trailing-separator@^1.0.1: integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= renderkid@^2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.5.tgz#483b1ac59c6601ab30a7a596a5965cabccfdd0a5" - integrity sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ== + version "2.0.6" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.6.tgz#aaf875a67f2d1705821a22b64515db6d9e025fd2" + integrity sha512-GIis2GBr/ho0pFNf57D4XM4+PgnQuTii0WCPjEZmZfKivzUfGuRdjN2aQYtYMiNggHmNyBve+thFnNR1iBRcKg== dependencies: - css-select "^2.0.2" - dom-converter "^0.2" - htmlparser2 "^3.10.1" - lodash "^4.17.20" - strip-ansi "^3.0.0" + css-select "^4.1.3" + dom-converter "^0.2.0" + htmlparser2 "^6.1.0" + lodash "^4.17.21" + strip-ansi "^6.0.0" repeat-element@^1.1.2: version "1.1.4" @@ -8967,6 +9047,36 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= +twemoji-parser@13.1.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/twemoji-parser/-/twemoji-parser-13.1.0.tgz#65e7e449c59258791b22ac0b37077349127e3ea4" + integrity sha512-AQOzLJpYlpWMy8n+0ATyKKZzWlZBJN+G0C+5lhX7Ftc2PeEVdUU/7ns2Pn2vVje26AIZ/OHwFoUbdv6YYD/wGg== + +twemoji-parser@^11.0.2: + version "11.0.2" + resolved "https://registry.yarnpkg.com/twemoji-parser/-/twemoji-parser-11.0.2.tgz#24e87c2008abe8544c962f193b88b331de32b446" + integrity sha512-5kO2XCcpAql6zjdLwRwJjYvAZyDy3+Uj7v1ipBzLthQmDL7Ce19bEqHr3ImSNeoSW2OA8u02XmARbXHaNO8GhA== + +twemoji@^13.0.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/twemoji/-/twemoji-13.1.0.tgz#65bb71e966dae56f0d42c30176f04cbdae109913" + integrity sha512-e3fZRl2S9UQQdBFLYXtTBT6o4vidJMnpWUAhJA+yLGR+kaUTZAt3PixC0cGvvxWSuq2MSz/o0rJraOXrWw/4Ew== + dependencies: + fs-extra "^8.0.1" + jsonfile "^5.0.0" + twemoji-parser "13.1.0" + universalify "^0.1.2" + +twitter-text@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/twitter-text/-/twitter-text-3.1.0.tgz#798e932b289f506efe2a1f03fe917ba30627f125" + integrity sha512-nulfUi3FN6z0LUjYipJid+eiwXvOLb8Ass7Jy/6zsXmZK3URte043m8fL3FyDzrK+WLpyqhHuR/TcARTN/iuGQ== + dependencies: + "@babel/runtime" "^7.3.1" + core-js "^2.5.0" + punycode "1.4.1" + twemoji-parser "^11.0.2" + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -9106,7 +9216,7 @@ unique-string@^2.0.0: dependencies: crypto-random-string "^2.0.0" -universalify@^0.1.0: +universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== @@ -9294,6 +9404,13 @@ vue-cli-plugin-i18n@^2.1.1: vue-i18n "^8.17.0" vue-i18n-extract "1.0.2" +vue-clickaway@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/vue-clickaway/-/vue-clickaway-2.2.2.tgz#cecf6839575e8b2afc5d3edb3efb616d293dbb44" + integrity sha512-25SpjXKetL06GLYoLoC8pqAV6Cur9cQ//2g35GRFBV4FgoljbZZjTINR8g2NuVXXDMLSUXaKx5dutgO4PaDE7A== + dependencies: + loose-envify "^1.2.0" + vue-cookies@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/vue-cookies/-/vue-cookies-1.7.4.tgz#d241d0a0431da0795837651d10b4d73e7c8d3e8d" @@ -9338,6 +9455,11 @@ vue-i18n@^8.17.0, vue-i18n@^8.24.4: resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.24.4.tgz#b158614c1df7db183d9cadddbb73e1d540269492" integrity sha512-RZE94WUAGxEiBAANxQ0pptbRwDkNKNSXl3fnJslpFOxVMF6UkUtMDSuYGuW2blDrVgweIXVpethOVkYoNNT9xw== +vue-infinite-loading@^2.4.5: + version "2.4.5" + resolved "https://registry.yarnpkg.com/vue-infinite-loading/-/vue-infinite-loading-2.4.5.tgz#cc20fd40af7f20188006443c99b60470cf1de1b3" + integrity sha512-xhq95Mxun060bRnsOoLE2Be6BR7jYwuC89kDe18+GmCLVrRA/dU0jrGb12Xu6NjmKs+iTW0AA6saSEmEW4cR7g== + "vue-loader-v16@npm:vue-loader@^16.1.0": version "16.2.0" resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-16.2.0.tgz#046a53308dd47e58efe20ddec1edec027ce3b46e" diff --git a/yarn.lock b/yarn.lock index 811e3f94..fb57ccd1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,7 +2,3 @@ # yarn lockfile v1 -vue-cookies@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/vue-cookies/-/vue-cookies-1.7.4.tgz#d241d0a0431da0795837651d10b4d73e7c8d3e8d" - integrity sha512-mOS5Btr8V9zvAtkmQ7/TfqJIropOx7etDAgBywPCmHjvfJl2gFbH2XgoMghleLoyyMTi5eaJss0mPN7arMoslA==