diff --git a/aircox/admin/diffusion.py b/aircox/admin/diffusion.py index 2e2fee5..79763f1 100644 --- a/aircox/admin/diffusion.py +++ b/aircox/admin/diffusion.py @@ -30,9 +30,9 @@ class DiffusionAdmin(DiffusionBaseAdmin, admin.ModelAdmin): end_date.short_description = _("end") - list_display = ("episode", "start_date", "end_date", "type", "initial") + list_display = ("episode", "start", "end", "type", "initial") list_filter = ("type", "start", "program") - list_editable = ("type",) + list_editable = ("type", "start", "end") ordering = ("-start", "id") fields = ("type", "start", "end", "initial", "program", "schedule") diff --git a/aircox/admin/page.py b/aircox/admin/page.py index cb227af..eb8c075 100644 --- a/aircox/admin/page.py +++ b/aircox/admin/page.py @@ -50,7 +50,9 @@ class BasePageAdmin(admin.ModelAdmin): change_form_template = "admin/aircox/page_change_form.html" def cover_thumb(self, obj): - return mark_safe(''.format(obj.cover.icons["64"])) if obj.cover else "" + if obj.cover and obj.cover.thumbnails: + return mark_safe(''.format(obj.cover.icons["64"])) + return "" def get_changeform_initial_data(self, request): data = super().get_changeform_initial_data(request) @@ -95,6 +97,7 @@ class PageAdmin(BasePageAdmin): @admin.register(StaticPage) class StaticPageAdmin(BasePageAdmin): list_display = BasePageAdmin.list_display + ("attach_to",) + list_editable = BasePageAdmin.list_editable + ("attach_to",) fieldsets = deepcopy(BasePageAdmin.fieldsets) fieldsets[1][1]["fields"] += ("attach_to",) diff --git a/aircox/filters.py b/aircox/filters.py index 48db0d5..5393876 100644 --- a/aircox/filters.py +++ b/aircox/filters.py @@ -10,7 +10,7 @@ class PageFilters(filters.FilterSet): class Meta: model = Page fields = { - "category__id": ["in"], + "category__id": ["in", "exact"], "pub_date": ["exact", "gte", "lte"], } diff --git a/aircox/locale/fr/LC_MESSAGES/django.mo b/aircox/locale/fr/LC_MESSAGES/django.mo index 53652d0..843a96c 100644 Binary files a/aircox/locale/fr/LC_MESSAGES/django.mo and b/aircox/locale/fr/LC_MESSAGES/django.mo differ diff --git a/aircox/locale/fr/LC_MESSAGES/django.po b/aircox/locale/fr/LC_MESSAGES/django.po index 97efa4a..d8556f7 100644 --- a/aircox/locale/fr/LC_MESSAGES/django.po +++ b/aircox/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Aircox 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-09-12 18:48+0000\n" +"POT-Creation-Date: 2024-02-01 18:22+0000\n" "PO-Revision-Date: 2016-10-10 16:00+02\n" "Last-Translator: Aarys\n" "Language-Team: Aircox's translators team\n" @@ -18,33 +18,34 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: aircox/admin/diffusion.py:26 aircox/models/diffusion.py:130 -#: aircox/models/log.py:80 +#: aircox/admin/diffusion.py:26 aircox/models/diffusion.py:122 +#: aircox/models/log.py:76 msgid "start" msgstr "début" -#: aircox/admin/diffusion.py:31 aircox/models/diffusion.py:131 -#: aircox/models/program.py:186 +#: aircox/admin/diffusion.py:31 aircox/models/diffusion.py:123 +#: aircox/models/program.py:178 msgid "end" msgstr "fin" -#: aircox/admin/filters.py:27 aircox/tests/admin/test_filters.py:56 +#: aircox/admin/filters.py:23 aircox/tests/admin/test_filters.py:54 msgid "Exact" msgstr "Exact" -#: aircox/admin/filters.py:28 aircox/tests/admin/test_filters.py:57 +#: aircox/admin/filters.py:24 aircox/tests/admin/test_filters.py:55 msgid "Since" msgstr "Depuis" -#: aircox/admin/filters.py:29 aircox/tests/admin/test_filters.py:58 +#: aircox/admin/filters.py:25 aircox/tests/admin/test_filters.py:56 msgid "Until" msgstr "Jusque" -#: aircox/admin/filters.py:33 aircox/tests/admin/test_filters.py:55 +#: aircox/admin/filters.py:28 aircox/models/page.py:263 +#: aircox/tests/admin/test_filters.py:53 msgid "None" msgstr "Aucun" -#: aircox/admin/filters.py:49 +#: aircox/admin/filters.py:39 msgid "Any" msgstr "Tout" @@ -52,7 +53,7 @@ msgstr "Tout" msgid "Publication Settings" msgstr "Paramètre de la publication" -#: aircox/admin/program.py:24 aircox/models/schedule.py:67 +#: aircox/admin/program.py:24 aircox/models/schedule.py:72 msgid "Schedule" msgstr "Horaire" @@ -60,7 +61,7 @@ msgstr "Horaire" msgid "Program Settings" msgstr "Paramètres de l'émission" -#: aircox/admin/schedule.py:33 aircox/models/program.py:115 +#: aircox/admin/schedule.py:33 aircox/models/program.py:114 msgid "Program" msgstr "Émission" @@ -68,25 +69,23 @@ msgstr "Émission" msgid "Day" msgstr "Jour" -#: aircox/admin/sound.py:45 aircox/admin/sound.py:106 +#: aircox/admin/sound.py:43 aircox/admin/sound.py:98 msgid "Audio" msgstr "Audio" -#: aircox/admin/sound.py:97 +#: aircox/admin/sound.py:89 msgid "Program / Episode" msgstr "Émission / Épisode" -#: aircox/admin/sound.py:143 -#: aircox/templates/admin/aircox/playlist_inline.html:17 -#: aircox/templates/aircox/episode_detail.html:36 +#: aircox/admin/sound.py:135 aircox/templates/aircox/episode_detail.html:29 msgid "Playlist" msgstr "Playlist" -#: aircox/admin/sound.py:146 +#: aircox/admin/sound.py:138 msgid "Info" msgstr "Info" -#: aircox/admin/sound.py:160 aircox/models/sound.py:285 +#: aircox/admin/sound.py:152 aircox/models/sound.py:272 msgid "timestamp" msgstr "temps" @@ -95,515 +94,513 @@ msgstr "temps" msgid "Statistics" msgstr "Statistiques" -#: aircox/controllers/sound_file.py:233 +#: aircox/controllers/sound_file.py:210 msgid "unknown" msgstr "inconnu" -#: aircox/filters.py:8 aircox/templates/admin/base.html:90 -#: aircox/templates/admin/base.html:107 aircox/templates/admin/base.html:124 -#: aircox/templates/aircox/base.html:79 -#: aircox/templates/aircox/page_list.html:15 +#: aircox/filters.py:8 aircox/templates/admin/base.html:92 +#: aircox/templates/admin/base.html:109 aircox/templates/admin/base.html:126 msgid "Search" msgstr "Chercher" -#: aircox/filters.py:23 +#: aircox/filters.py:22 msgid "Podcast" msgstr "Podcast" -#: aircox/models/article.py:15 +#: aircox/models/article.py:16 msgid "Article" msgstr "Article" -#: aircox/models/article.py:16 aircox/templates/admin/base.html:86 -#: aircox/templates/aircox/program_detail.html:19 +#: aircox/models/article.py:17 aircox/templates/admin/base.html:88 msgid "Articles" msgstr "Articles" -#: aircox/models/diffusion.py:108 aircox/models/log.py:82 +#: aircox/models/diffusion.py:100 aircox/models/log.py:78 msgid "on air" msgstr "à l'antenne" -#: aircox/models/diffusion.py:109 +#: aircox/models/diffusion.py:101 msgid "not confirmed" msgstr "non confirmé" -#: aircox/models/diffusion.py:110 aircox/models/log.py:81 +#: aircox/models/diffusion.py:102 aircox/models/log.py:77 msgid "cancelled" msgstr "annulé" -#: aircox/models/diffusion.py:116 aircox/models/sound.py:114 -#: aircox/models/sound.py:270 +#: aircox/models/diffusion.py:108 aircox/models/sound.py:110 +#: aircox/models/sound.py:257 msgid "episode" msgstr "épisode" -#: aircox/models/diffusion.py:121 +#: aircox/models/diffusion.py:113 msgid "schedule" msgstr "horaire" -#: aircox/models/diffusion.py:126 aircox/models/log.py:92 -#: aircox/models/sound.py:117 aircox/models/station.py:162 +#: aircox/models/diffusion.py:118 aircox/models/log.py:88 +#: aircox/models/sound.py:113 aircox/models/station.py:160 msgid "type" msgstr "type" -#: aircox/models/diffusion.py:143 aircox/models/log.py:131 +#: aircox/models/diffusion.py:133 aircox/models/log.py:127 msgid "Diffusion" msgstr "Date de diffusion" -#: aircox/models/diffusion.py:144 -#: aircox/templates/aircox/episode_detail.html:55 -#: aircox/templates/aircox/program_detail.html:45 +#: aircox/models/diffusion.py:134 msgid "Diffusions" msgstr "Dates de diffusion" -#: aircox/models/diffusion.py:146 +#: aircox/models/diffusion.py:135 msgid "edit the diffusions' planification" msgstr "éditer les dates de diffusion" -#: aircox/models/diffusion.py:155 -#: aircox/templates/aircox/episode_detail.html:71 +#: aircox/models/diffusion.py:143 msgid "rerun" msgstr "rediffusion" -#: aircox/models/episode.py:48 aircox/templates/admin/aircox/statistics.html:23 +#: aircox/models/episode.py:59 aircox/templates/admin/aircox/statistics.html:23 msgid "Episode" msgstr "Épisode" -#: aircox/models/episode.py:49 aircox/templates/admin/base.html:120 +#: aircox/models/episode.py:60 aircox/templates/admin/base.html:122 msgid "Episodes" msgstr "Épisodes" -#: aircox/models/log.py:79 +#: aircox/models/log.py:75 msgid "stop" msgstr "stop" -#: aircox/models/log.py:83 aircox/models/sound.py:94 +#: aircox/models/log.py:79 aircox/models/sound.py:90 msgid "other" msgstr "autre" -#: aircox/models/log.py:89 aircox/models/page.py:301 -#: aircox/models/program.py:51 aircox/models/station.py:157 +#: aircox/models/log.py:85 aircox/models/page.py:323 +#: aircox/models/program.py:50 aircox/models/station.py:158 msgid "station" msgstr "station" -#: aircox/models/log.py:90 +#: aircox/models/log.py:86 msgid "related station" msgstr "station relative" -#: aircox/models/log.py:93 aircox/models/schedule.py:43 +#: aircox/models/log.py:89 aircox/models/schedule.py:48 msgid "date" msgstr "date" -#: aircox/models/log.py:100 +#: aircox/models/log.py:96 msgid "source" msgstr "source" -#: aircox/models/log.py:101 +#: aircox/models/log.py:97 msgid "identifier of the source related to this log" msgstr "identifiant de la source relative à ce log" -#: aircox/models/log.py:107 +#: aircox/models/log.py:103 msgid "comment" msgstr "commentaire" -#: aircox/models/log.py:115 aircox/models/sound.py:174 +#: aircox/models/log.py:111 aircox/models/sound.py:163 msgid "Sound" msgstr "Son" -#: aircox/models/log.py:123 aircox/models/sound.py:308 +#: aircox/models/log.py:119 aircox/models/sound.py:294 #: aircox/templates/admin/aircox/statistics.html:24 msgid "Track" msgstr "Morceau" -#: aircox/models/log.py:155 +#: aircox/models/log.py:151 msgid "Log" msgstr "Log" -#: aircox/models/log.py:156 +#: aircox/models/log.py:152 msgid "Logs" msgstr "Logs" -#: aircox/models/page.py:34 aircox/models/page.py:305 -#: aircox/models/sound.py:290 +#: aircox/models/page.py:43 aircox/models/page.py:326 +#: aircox/models/sound.py:277 msgid "title" msgstr "titre" -#: aircox/models/page.py:35 aircox/models/page.py:93 +#: aircox/models/page.py:44 aircox/models/page.py:98 #: aircox/models/station.py:34 msgid "slug" msgstr "slug" -#: aircox/models/page.py:38 +#: aircox/models/page.py:47 msgid "Category" msgstr "Catégorie" -#: aircox/models/page.py:39 aircox/templates/aircox/page_list.html:32 +#: aircox/models/page.py:48 aircox/templates/aircox/page_list.html:19 msgid "Categories" msgstr "Catégories" -#: aircox/models/page.py:78 +#: aircox/models/page.py:84 msgid "draft" msgstr "brouillon" -#: aircox/models/page.py:79 +#: aircox/models/page.py:85 msgid "published" msgstr "publié" -#: aircox/models/page.py:80 +#: aircox/models/page.py:86 msgid "trash" msgstr "corbeille" -#: aircox/models/page.py:96 +#: aircox/models/page.py:100 msgid "status" msgstr "statut" -#: aircox/models/page.py:102 +#: aircox/models/page.py:106 msgid "cover" msgstr "couverture" -#: aircox/models/page.py:107 aircox/models/page.py:279 +#: aircox/models/page.py:111 aircox/models/page.py:303 msgid "content" msgstr "contenu" -#: aircox/models/page.py:191 +#: aircox/models/page.py:208 msgid "category" msgstr "catégorie" -#: aircox/models/page.py:197 +#: aircox/models/page.py:213 msgid "publication date" msgstr "date de publication" -#: aircox/models/page.py:200 +#: aircox/models/page.py:215 msgid "featured" msgstr "en avant" -#: aircox/models/page.py:204 +#: aircox/models/page.py:219 msgid "allow comments" msgstr "autoriser les commentaires" -#: aircox/models/page.py:211 +#: aircox/models/page.py:243 msgid "Publication" msgstr "Publication" -#: aircox/models/page.py:212 +#: aircox/models/page.py:244 msgid "Publications" msgstr "Publications" -#: aircox/models/page.py:238 -msgid "Home page" +#: aircox/models/page.py:264 +msgid "Home Page" msgstr "Page d'accueil" -#: aircox/models/page.py:239 -msgid "Diffusions page" -msgstr "Grille horaire" +#: aircox/models/page.py:265 +msgid "Timetable" +msgstr "Temps" -#: aircox/models/page.py:240 -msgid "Logs page" -msgstr "Page des logs" - -#: aircox/models/page.py:241 +#: aircox/models/page.py:266 msgid "Programs list" msgstr "Liste des émissions" -#: aircox/models/page.py:242 +#: aircox/models/page.py:267 msgid "Episodes list" msgstr "Liste des épisodes" -#: aircox/models/page.py:243 +#: aircox/models/page.py:268 msgid "Articles list" msgstr "Liste des articles" -#: aircox/models/page.py:255 +#: aircox/models/page.py:269 +msgid "Publications list" +msgstr "Publications" + +#: aircox/models/page.py:270 +msgid "Podcasts list" +msgstr "Podcasts" + +#: aircox/models/page.py:273 msgid "attach to" msgstr "attacher à" -#: aircox/models/page.py:259 +#: aircox/models/page.py:278 msgid "display this page content to related element" msgstr "Afficher le contenu de cette page pour l'élément sélectionné" -#: aircox/models/page.py:272 +#: aircox/models/page.py:296 msgid "related page" msgstr "page liée" -#: aircox/models/page.py:276 +#: aircox/models/page.py:300 msgid "nickname" msgstr "pseudo" -#: aircox/models/page.py:277 +#: aircox/models/page.py:301 msgid "email" msgstr "email" -#: aircox/models/page.py:293 +#: aircox/models/page.py:316 msgid "Comment" msgstr "Commentaire" -#: aircox/models/page.py:294 aircox/templates/aircox/page_detail.html:37 +#: aircox/models/page.py:317 aircox/templates/aircox/page_detail.html:60 msgid "Comments" msgstr "Commentaires" -#: aircox/models/page.py:303 +#: aircox/models/page.py:324 msgid "menu" msgstr "menu" -#: aircox/models/page.py:304 aircox/models/sound.py:119 -#: aircox/models/sound.py:280 +#: aircox/models/page.py:325 aircox/models/sound.py:115 +#: aircox/models/sound.py:267 msgid "order" msgstr "ordre" -#: aircox/models/page.py:306 +#: aircox/models/page.py:327 msgid "url" msgstr "url" -#: aircox/models/page.py:311 +#: aircox/models/page.py:332 msgid "page" msgstr "page" -#: aircox/models/page.py:317 +#: aircox/models/page.py:338 msgid "Menu item" msgstr "Élément du menu" -#: aircox/models/page.py:318 +#: aircox/models/page.py:339 msgid "Menu items" msgstr "Éléments de menu" -#: aircox/models/program.py:54 aircox/models/station.py:48 -#: aircox/models/station.py:164 +#: aircox/models/program.py:52 aircox/models/station.py:48 +#: aircox/models/station.py:161 msgid "active" msgstr "actif" -#: aircox/models/program.py:56 +#: aircox/models/program.py:54 msgid "if not checked this program is no longer active" msgstr "si selectionné, cette émission n'est plus active" -#: aircox/models/program.py:59 +#: aircox/models/program.py:57 msgid "syncronise" msgstr "synchroniser" -#: aircox/models/program.py:61 +#: aircox/models/program.py:59 msgid "update later diffusions according to schedule changes" msgstr "met à jour les dates de diffusion à venir lorsque l'horaire change" -#: aircox/models/program.py:116 aircox/templates/admin/base.html:103 +#: aircox/models/program.py:115 aircox/templates/admin/base.html:105 msgid "Programs" msgstr "Émissions" -#: aircox/models/program.py:171 aircox/models/rerun.py:49 +#: aircox/models/program.py:163 aircox/models/rerun.py:41 msgid "related program" msgstr "émission apparentée" -#: aircox/models/program.py:174 +#: aircox/models/program.py:166 msgid "delay" msgstr "délai" -#: aircox/models/program.py:177 +#: aircox/models/program.py:169 msgid "minimal delay between two sound plays" msgstr "délai minimum entre deux sons joués" -#: aircox/models/program.py:180 +#: aircox/models/program.py:172 msgid "begin" msgstr "début" -#: aircox/models/program.py:183 aircox/models/program.py:189 +#: aircox/models/program.py:175 aircox/models/program.py:181 msgid "used to define a time range this stream is played" msgstr "" "utilisé pour définir un intervalle de temps pendant lequel ce stream est joué" -#: aircox/models/rerun.py:55 +#: aircox/models/rerun.py:47 msgid "rerun of" msgstr "rediffusion de" -#: aircox/models/rerun.py:87 +#: aircox/models/rerun.py:74 msgid "rerun must happen after original" msgstr "la rediffusion doit être après l'original" -#: aircox/models/schedule.py:31 +#: aircox/models/schedule.py:35 msgid "ponctual" msgstr "ponctuel" -#: aircox/models/schedule.py:32 +#: aircox/models/schedule.py:36 #, python-brace-format msgid "1st {day} of the month" msgstr "1er {day} du mois" -#: aircox/models/schedule.py:33 +#: aircox/models/schedule.py:37 #, python-brace-format msgid "2nd {day} of the month" msgstr "2e {day} du mois" -#: aircox/models/schedule.py:34 +#: aircox/models/schedule.py:38 #, python-brace-format msgid "3rd {day} of the month" msgstr "3e {day} du mois" -#: aircox/models/schedule.py:35 +#: aircox/models/schedule.py:39 #, python-brace-format msgid "4th {day} of the month" msgstr "4e {day} du mois" -#: aircox/models/schedule.py:36 +#: aircox/models/schedule.py:40 #, python-brace-format msgid "last {day} of the month" msgstr "dernier {day} du mois" -#: aircox/models/schedule.py:37 +#: aircox/models/schedule.py:41 #, python-brace-format msgid "1st and 3rd {day} of the month" msgstr "1er et 3e {day} du mois" -#: aircox/models/schedule.py:38 +#: aircox/models/schedule.py:42 #, python-brace-format msgid "2nd and 4th {day} of the month" msgstr "2ème et 4e {day} du mois" -#: aircox/models/schedule.py:39 +#: aircox/models/schedule.py:43 #, python-brace-format msgid "{day}" msgstr "{day}" -#: aircox/models/schedule.py:40 +#: aircox/models/schedule.py:44 #, python-brace-format msgid "one {day} on two" msgstr "un {day} sur deux" -#: aircox/models/schedule.py:44 +#: aircox/models/schedule.py:49 msgid "date of the first diffusion" msgstr "date de la première diffusion" -#: aircox/models/schedule.py:47 +#: aircox/models/schedule.py:52 msgid "time" msgstr "heure" -#: aircox/models/schedule.py:48 +#: aircox/models/schedule.py:53 msgid "start time" msgstr "heure de début" -#: aircox/models/schedule.py:51 +#: aircox/models/schedule.py:56 msgid "timezone" msgstr "zone horaire" -#: aircox/models/schedule.py:55 +#: aircox/models/schedule.py:60 msgid "timezone used for the date" msgstr "zone horaire utilisée pour la date" -#: aircox/models/schedule.py:58 aircox/models/sound.py:140 +#: aircox/models/schedule.py:63 aircox/models/sound.py:132 msgid "duration" msgstr "durée" -#: aircox/models/schedule.py:59 +#: aircox/models/schedule.py:64 msgid "regular duration" msgstr "durée normale" -#: aircox/models/schedule.py:62 +#: aircox/models/schedule.py:67 msgid "frequency" msgstr "fréquence" -#: aircox/models/schedule.py:68 +#: aircox/models/schedule.py:73 msgid "Schedules" msgstr "Horaires" -#: aircox/models/sound.py:95 +#: aircox/models/sound.py:91 msgid "archive" msgstr "archive" -#: aircox/models/sound.py:96 +#: aircox/models/sound.py:92 msgid "excerpt" msgstr "extrait" -#: aircox/models/sound.py:97 +#: aircox/models/sound.py:93 msgid "removed" msgstr "supprimé" -#: aircox/models/sound.py:100 aircox/models/station.py:33 +#: aircox/models/sound.py:96 aircox/models/station.py:33 msgid "name" msgstr "nom" -#: aircox/models/sound.py:105 +#: aircox/models/sound.py:101 msgid "program" msgstr "émission" -#: aircox/models/sound.py:106 +#: aircox/models/sound.py:102 msgid "program related to it" msgstr "émission apparentée à celui-ci" -#: aircox/models/sound.py:121 aircox/models/sound.py:282 +#: aircox/models/sound.py:117 aircox/models/sound.py:269 msgid "position in the playlist" msgstr "position dans la playlist" -#: aircox/models/sound.py:133 aircox/models/station.py:153 +#: aircox/models/sound.py:125 aircox/models/station.py:155 msgid "file" msgstr "fichier" -#: aircox/models/sound.py:143 +#: aircox/models/sound.py:135 msgid "duration of the sound" msgstr "durée du son" -#: aircox/models/sound.py:146 +#: aircox/models/sound.py:138 msgid "modification time" msgstr "dernière modification" -#: aircox/models/sound.py:149 +#: aircox/models/sound.py:141 msgid "last modification date and time" msgstr "date et heure de la dernière modification" -#: aircox/models/sound.py:152 +#: aircox/models/sound.py:144 msgid "good quality" msgstr "bonne qualité" -#: aircox/models/sound.py:153 +#: aircox/models/sound.py:145 msgid "sound meets quality requirements" msgstr "le son rencontre les exigences de qualité" -#: aircox/models/sound.py:158 +#: aircox/models/sound.py:150 msgid "public" msgstr "publique" -#: aircox/models/sound.py:159 +#: aircox/models/sound.py:151 msgid "whether it is publicly available as podcast" msgstr "coché pour rendre le podcast public" -#: aircox/models/sound.py:163 +#: aircox/models/sound.py:155 msgid "downloadable" msgstr "téléchargeable" -#: aircox/models/sound.py:165 +#: aircox/models/sound.py:156 msgid "" "whether it can be publicly downloaded by visitors (sound must be public)" msgstr "" "coché pour permettre le téléchargement public (le podcast doit être " "disponible publiquement)" -#: aircox/models/sound.py:175 +#: aircox/models/sound.py:164 msgid "Sounds" msgstr "Sons" -#: aircox/models/sound.py:277 +#: aircox/models/sound.py:264 msgid "sound" msgstr "son" -#: aircox/models/sound.py:288 +#: aircox/models/sound.py:275 msgid "position (in seconds)" msgstr "position (en secondes)" -#: aircox/models/sound.py:291 +#: aircox/models/sound.py:278 msgid "artist" msgstr "artiste" -#: aircox/models/sound.py:292 +#: aircox/models/sound.py:279 msgid "album" msgstr "album" -#: aircox/models/sound.py:293 +#: aircox/models/sound.py:280 msgid "tags" msgstr "tags" -#: aircox/models/sound.py:294 +#: aircox/models/sound.py:281 msgid "year" msgstr "année" -#: aircox/models/sound.py:297 +#: aircox/models/sound.py:284 msgid "information" msgstr "information" -#: aircox/models/sound.py:302 +#: aircox/models/sound.py:289 msgid "" "additional informations about this track, such as the version, if is it a " "remix, features, etc." @@ -611,7 +608,7 @@ msgstr "" "informations additionnelles à propos de ce morceau, telles que la version, " "s'il s'agit d'un remix, les fonctionnalités, etc" -#: aircox/models/sound.py:309 +#: aircox/models/sound.py:295 msgid "Tracks" msgstr "Morceaux" @@ -645,43 +642,51 @@ msgstr "URL du site web" #: aircox/models/station.py:63 msgid "specify one domain per line, without 'http://' prefix" -msgstr "" +msgstr "spécifier un nom de de domaine par ligne, sans le préfix 'http://'" #: aircox/models/station.py:66 msgid "audio streams" msgstr "stream audio" -#: aircox/models/station.py:71 +#: aircox/models/station.py:70 msgid "Audio streams urls used by station's player. One url a line." msgstr "" "Les URL des flux audio utilisés par le lecteur de la station. Une url par " "ligne." -#: aircox/models/station.py:76 +#: aircox/models/station.py:74 msgid "Default pages' cover" msgstr "Couverture par défault des pages." -#: aircox/models/station.py:135 +#: aircox/models/station.py:80 +msgid "Music stream's title" +msgstr "Titre du flux musical" + +#: aircox/models/station.py:81 +msgid "Music stream" +msgstr "Flux musical" + +#: aircox/models/station.py:137 msgid "input" msgstr "entrée" -#: aircox/models/station.py:136 +#: aircox/models/station.py:138 msgid "output" msgstr "sortie" -#: aircox/models/station.py:160 +#: aircox/models/station.py:159 msgid "direction" msgstr "direction" -#: aircox/models/station.py:164 +#: aircox/models/station.py:161 msgid "this port is active" msgstr "ce port est actif" -#: aircox/models/station.py:167 +#: aircox/models/station.py:163 msgid "port settings" msgstr "paramètres du port" -#: aircox/models/station.py:169 +#: aircox/models/station.py:165 msgid "" "list of comma separated params available; this is put in the output config " "file as raw code; plugin related" @@ -697,7 +702,7 @@ msgstr "Utilisateur" msgid "Playlist Editor Columns" msgstr "Colonnes de l'éditeur de playlist" -#: aircox/models/user_settings.py:19 +#: aircox/models/user_settings.py:18 msgid "Playlist Editor Separator" msgstr "Séparateur de l'éditeur de playlist" @@ -708,9 +713,8 @@ msgstr "Par %(filter_title)s " #: aircox/templates/admin/aircox/page_change_form.html:9 #: aircox/templates/admin/aircox/page_change_list.html:7 -#: aircox/templates/admin/base.html:182 +#: aircox/templates/admin/base.html:184 #: aircox/templates/admin/change_list.html:30 -#: aircox/templates/aircox/base.html:55 msgid "Home" msgstr "Accueil" @@ -739,11 +743,6 @@ msgstr "Sauvegarder et continuer" msgid "Publish" msgstr "Publier" -#: aircox/templates/admin/aircox/playlist_inline.html:30 -#: aircox/templates/admin/aircox/playlist_inline.html:31 -msgid "Track Position" -msgstr "Position dans la playlist" - #: aircox/templates/admin/aircox/statistics.html:22 msgid "Time" msgstr "Heure" @@ -757,28 +756,28 @@ msgstr "Étiquettes" msgid "Total" msgstr "Total" -#: aircox/templates/admin/base.html:70 aircox/templates/admin/index.html:12 -#: aircox/templates/aircox/home.html:47 +#: aircox/templates/admin/base.html:72 aircox/templates/admin/index.html:12 +#: aircox/templates/aircox/home.html:51 msgid "Today" msgstr "Aujourd'hui" -#: aircox/templates/admin/base.html:138 +#: aircox/templates/admin/base.html:140 msgid "Tools" msgstr "Outils" -#: aircox/templates/admin/base.html:156 +#: aircox/templates/admin/base.html:158 msgid "View site" msgstr "Voir le site" -#: aircox/templates/admin/base.html:161 +#: aircox/templates/admin/base.html:163 msgid "Documentation" msgstr "Documentation" -#: aircox/templates/admin/base.html:165 +#: aircox/templates/admin/base.html:167 msgid "Change password" msgstr "Changer le mot de passe" -#: aircox/templates/admin/base.html:168 +#: aircox/templates/admin/base.html:170 msgid "Log out" msgstr "Se déconnecter" @@ -794,76 +793,53 @@ msgstr "Veuillez corriger les erreurs ci-dessous." msgid "Filter" msgstr "Filtre" -#: aircox/templates/admin/index.html:30 -msgid "Live diffusion" -msgstr "Diffusion en live" - -#: aircox/templates/admin/index.html:33 -msgid "Differed diffusion" -msgstr "Diffusion différée" - -#: aircox/templates/admin/index.html:54 +#: aircox/templates/admin/index.html:22 msgid "No diffusion is scheduled for today." msgstr "Aucune diffusion planifiée aujourd'hui" -#: aircox/templates/admin/index.html:62 +#: aircox/templates/admin/index.html:30 msgid "Latest comments" msgstr "Derniers commentaires" -#: aircox/templates/admin/index.html:67 +#: aircox/templates/admin/index.html:37 msgid "All comments" msgstr "Tous les commentaires" -#: aircox/templates/admin/index.html:70 +#: aircox/templates/admin/index.html:40 msgid "No comment posted yet" msgstr "Aucun commentaire posté pour le moment." -#: aircox/templates/admin/index.html:78 +#: aircox/templates/admin/index.html:48 msgid "Latest publications" msgstr "Dernières publications" -#: aircox/templates/admin/index.html:87 +#: aircox/templates/admin/index.html:57 msgid "Administration" msgstr "Administration" -#. Translators: in page detail sidebar -#: aircox/templates/aircox/article_detail.html:12 -msgid "Latest news" -msgstr "Dernières nouvelles" +#: aircox/templates/aircox/base.html:61 +msgid "Main menu" +msgstr "Menu principal" -#: aircox/templates/aircox/article_detail.html:23 -msgid "Show all news" -msgstr "Afficher toutes les nouvelles" +#: aircox/templates/aircox/base.html:71 +msgid "Admin" +msgstr "Admin" -#: aircox/templates/aircox/article_detail.html:24 -msgid "More news" -msgstr "Plus de nouvelles" - -#: aircox/templates/aircox/base.html:149 -msgid "Recently" -msgstr "Récemment" - -#. Translators: title when pages are filtered for a specific parent page, e.g.: Articles of My Incredible Show -#: aircox/templates/aircox/basepage_list.html:15 -#, python-format -msgid "%(model)s of %(title)s" -msgstr "%(model)s de %(title)s" - -#: aircox/templates/aircox/basepage_list.html:38 +#: aircox/templates/aircox/basepage_list.html:27 msgid "There is nothing published here..." msgstr "Il n'y a rien de publié ici..." -#: aircox/templates/aircox/basepage_list.html:48 +#: aircox/templates/aircox/basepage_list.html:39 msgid "pagination" msgstr "pagination" -#. Translators: Bottom of the list, "previous page" -#: aircox/templates/aircox/basepage_list.html:56 +#: aircox/templates/aircox/basepage_list.html:44 +#: aircox/templates/aircox/basepage_list.html:45 msgid "Previous" msgstr "Précédent" -#. Translators: Bottom of the list, "Nextpage" -#: aircox/templates/aircox/basepage_list.html:64 +#: aircox/templates/aircox/basepage_list.html:57 +#: aircox/templates/aircox/basepage_list.html:58 msgid "Next" msgstr "Prochain" @@ -872,141 +848,169 @@ msgstr "Prochain" msgid "This week on %(station)s" msgstr "Cette semaine sur %(station)s" -#: aircox/templates/aircox/episode_detail.html:22 +#: aircox/templates/aircox/episode_detail.html:16 #: aircox/templates/aircox/episode_list.html:8 msgid "Podcasts" msgstr "Podcasts" -#: aircox/templates/aircox/episode_detail.html:70 -#: aircox/templates/aircox/program_detail.html:58 -#: aircox/templates/aircox/widgets/episode_item.html:40 -#, python-format -msgid "Rerun of %(date)s" -msgstr "Rediffusion du %(date)s" +#: aircox/templates/aircox/episode_detail.html:34 +#: aircox/templatetags/aircox_admin.py:48 +msgid "Artist" +msgstr "Artiste" + +#: aircox/templates/aircox/episode_detail.html:35 +#: aircox/templatetags/aircox_admin.py:50 +msgid "Title" +msgstr "Titre" #: aircox/templates/aircox/errors/base.html:13 msgid "An error occurred..." -msgstr "" +msgstr "Une erreur est arrivée..." #: aircox/templates/aircox/errors/base.html:24 msgid "An error occurred" -msgstr "" +msgstr "Une erreur est arrivée..." #: aircox/templates/aircox/errors/no_station.html:4 msgid "No station is configured" -msgstr "" +msgstr "Aucune station configurée" #: aircox/templates/aircox/errors/no_station.html:7 msgid "It seems there is no station configured for this website:" -msgstr "" +msgstr "Il semble qu'il n'y a pas de station configurée pour ce site." #: aircox/templates/aircox/errors/no_station.html:11 msgid "" "If you are the website administrator, please connect to administration " "interface." msgstr "" +"Si vous êtes l'administrateur/ice du site, connectez-vous à l'interface " +"d'administration." #: aircox/templates/aircox/errors/no_station.html:13 msgid "Go to admin" -msgstr "" +msgstr "Aller vers l'administration." #: aircox/templates/aircox/errors/no_station.html:18 msgid "If you are a visitor, please contact your favorite radio" -msgstr "" +msgstr "Si vous êtes un visiteur ou visiteuse, contactez votre radio favorite" -#: aircox/templates/aircox/home.html:28 -msgid "Currently" -msgstr "En ce moment" +#: aircox/templates/aircox/home.html:18 +#, python-format +msgid "Today on %(station)s" +msgstr "Aujourd'hui sur %(station)s" -#: aircox/templates/aircox/home.html:58 -msgid "Show all publication" -msgstr "Afficher toute la publication" +#: aircox/templates/aircox/home.html:42 +msgid "It just happened" +msgstr "Ça vient juste d'arriver" -#: aircox/templates/aircox/home.html:59 -msgid "More publications..." -msgstr "Plus de publications ..." +#: aircox/templates/aircox/home.html:50 +msgid "Show all program's for today" +msgstr "Tous les articles de l'émission" -#: aircox/templates/aircox/home.html:68 -msgid "Previously on air" -msgstr "Précédemment à l'antenne" +#: aircox/templates/aircox/home.html:60 +msgid "Last podcasts" +msgstr "Derniers Podcasts" -#: aircox/templates/aircox/home.html:77 +#: aircox/templates/aircox/home.html:61 +msgid "All podcasts" +msgstr "Tous les podcasts" + +#: aircox/templates/aircox/home.html:67 msgid "Last publications" msgstr "Dernières publications" -#: aircox/templates/aircox/log_list.html:9 -#, python-format -msgid "That happened on %(station)s" -msgstr "C'est passé sur %(station)s" +#: aircox/templates/aircox/home.html:68 +msgid "All publications" +msgstr "Toutes les publications" -#: aircox/templates/aircox/page_detail.html:26 +#: aircox/templates/aircox/page_detail.html:21 msgid "Edit" msgstr "Éditer" -#: aircox/templates/aircox/page_detail.html:56 +#: aircox/templates/aircox/page_detail.html:49 +#, python-format +msgid "Related %(models)s" +msgstr "%(models)s connexes" + +#: aircox/templates/aircox/page_detail.html:72 msgid "Post a comment" msgstr "Poster un commentaire" -#: aircox/templates/aircox/page_detail.html:81 -#: aircox/templates/aircox/page_list.html:57 -msgid "Reset" -msgstr "Réinitialiser" - -#: aircox/templates/aircox/page_detail.html:82 +#: aircox/templates/aircox/page_detail.html:99 msgid "Post comment" msgstr "Commenter" -#: aircox/templates/aircox/page_list.html:25 -msgid "Search content" -msgstr "Recherche" +#: aircox/templates/aircox/program_detail.html:24 +#, python-format +msgid "Rerun of %(date)s" +msgstr "Rediffusion du %(date)s" -#: aircox/templates/aircox/page_list.html:54 -msgid "Apply" -msgstr "Appliquer" - -#: aircox/templates/aircox/program_detail.html:31 -msgid "Show all program's articles" -msgstr "Afficher tous les articles de l'émission" - -#: aircox/templates/aircox/program_detail.html:32 -msgid "More articles" -msgstr "Plus d'articles" - -#: aircox/templates/aircox/program_detail.html:59 +#: aircox/templates/aircox/program_detail.html:25 msgid "Rerun" msgstr "Rediffusion" -#: aircox/templates/aircox/program_sidebar.html:4 -#, python-format -msgid "Recently on %(program)s" -msgstr "Récemment dans %(program)s" +#: aircox/templates/aircox/program_detail.html:41 +msgid "Last Episodes" +msgstr "Derniers Épisodes" +#: aircox/templates/aircox/program_detail.html:42 +msgid "All episodes" +msgstr "Tous les épisodes" + +#: aircox/templates/aircox/program_detail.html:49 +msgid "Last Articles" +msgstr "Derniers articles" + +#: aircox/templates/aircox/program_detail.html:50 +msgid "All articles" +msgstr "Tous les articles" + +#: aircox/templates/aircox/widgets/basepage_item.html:47 +msgid "More infos" +msgstr "Plus d'infos" + +#: aircox/templates/aircox/widgets/carousel.html:25 +msgid "Show all" +msgstr "Tout Afficher" + +#: aircox/templates/aircox/widgets/comment.html:37 +#: aircox/templates/aircox/widgets/comment.html:38 #: aircox/templates/aircox/widgets/comment_item.html:7 #: aircox/templates/aircox/widgets/comment_item.html:8 msgid "Edit comment" msgstr "Editer le commentaire" +#: aircox/templates/aircox/widgets/comment.html:42 +#: aircox/templates/aircox/widgets/comment.html:43 #: aircox/templates/aircox/widgets/comment_item.html:12 #: aircox/templates/aircox/widgets/comment_item.html:13 msgid "Delete comment" msgstr "Supprimer le commentaire" -#: aircox/templates/aircox/widgets/dates_menu.html:15 -msgid "pick a date" -msgstr "choisir une date" +#: aircox/templates/aircox/widgets/dates_menu.html:16 +msgid "Dates" +msgstr "Dates" -#: aircox/templates/aircox/widgets/dates_menu.html:32 -msgid "Jump to date" -msgstr "Aller à la date" +#: aircox/templates/aircox/widgets/dates_menu.html:33 +msgid "Pick a date" +msgstr "Choisir une date" -#. Translators: form button to select a date -#: aircox/templates/aircox/widgets/dates_menu.html:41 -msgid "Go" -msgstr "Filtrer" +#: aircox/templates/aircox/widgets/episode.html:41 +msgid "Live diffusion" +msgstr "Diffusion en live" -#: aircox/templates/aircox/widgets/episode_item.html:41 -msgid "(rerun)" -msgstr "(rediffusion)" +#: aircox/templates/aircox/widgets/episode.html:44 +msgid "Differed diffusion" +msgstr "Diffusion différée" + +#: aircox/templates/aircox/widgets/episode.html:65 +msgid "Listen" +msgstr "Écouter" + +#: aircox/templates/aircox/widgets/page.html:40 +msgid "Show" +msgstr "Voir" #: aircox/templates/aircox/widgets/page_list.html:20 msgid "Show all publications" @@ -1028,30 +1032,22 @@ msgstr "Lecteur audio utilisé pour écouter la radio et les podcasts" msgid "Play or pause audio" msgstr "Lire ou suspendre l'audio" -#: aircox/templates/aircox/widgets/player.html:29 +#: aircox/templates/aircox/widgets/player.html:32 msgid "Track currently on air" msgstr "Morceau en ce moment sur les ondes" -#: aircox/templates/aircox/widgets/player.html:38 +#: aircox/templates/aircox/widgets/player.html:44 msgid "Diffusion currently on air" msgstr "Épisode en ce moment sur les ondes" -#: aircox/templates/aircox/widgets/player.html:43 +#: aircox/templates/aircox/widgets/player.html:48 msgid "Currently playing" msgstr "En ce moment" -#: aircox/templatetags/aircox_admin.py:48 -msgid "Artist" -msgstr "Artiste" - #: aircox/templatetags/aircox_admin.py:49 msgid "Album" msgstr "Album" -#: aircox/templatetags/aircox_admin.py:50 -msgid "Title" -msgstr "Titre" - #: aircox/templatetags/aircox_admin.py:52 msgid "Year" msgstr "Année" @@ -1080,74 +1076,178 @@ msgstr "Supprimer" msgid "Timestamp" msgstr "Temps" -#: aircox/urls.py:46 -msgid "articles/" -msgstr "articles/" - -#: aircox/urls.py:51 +#: aircox/urls.py:44 msgid "articles//" msgstr "articles//" -#: aircox/urls.py:55 -msgid "episodes/" -msgstr "episodes/" +#: aircox/urls.py:49 +msgid "articles/" +msgstr "articles/" -#: aircox/urls.py:57 -msgid "episodes//" -msgstr "episodes//" +#: aircox/urls.py:54 +msgid "articles/c//" +msgstr "articles//" + +#: aircox/urls.py:59 +msgid "timetable/" +msgstr "grille/" #: aircox/urls.py:61 -msgid "week/" -msgstr "semaine/" - -#: aircox/urls.py:63 -msgid "week//" -msgstr "semaine//" +msgid "timetable//" +msgstr "grille//" #: aircox/urls.py:67 -msgid "logs/" -msgstr "logs/" - -#: aircox/urls.py:68 -msgid "logs//" -msgstr "logs//" - -#: aircox/urls.py:71 msgid "publications/" msgstr "publications/" -#: aircox/urls.py:76 -msgid "pages/" -msgstr "pages/" +#: aircox/urls.py:72 +msgid "publications/c/" +msgstr "publications/c//" -#: aircox/urls.py:84 +#: aircox/urls.py:77 msgid "pages//" msgstr "pages//" -#: aircox/urls.py:91 +#: aircox/urls.py:85 +msgid "pages/" +msgstr "pages/" + +#: aircox/urls.py:93 msgid "programs/" msgstr "emissions/" -#: aircox/urls.py:93 -msgid "programs//" -msgstr "emissions//" +#: aircox/urls.py:94 +msgid "programs/c//" +msgstr "emissions/c//" -#: aircox/urls.py:98 -msgid "programs//episodes/" -msgstr "emissions//episodes/" +#: aircox/urls.py:96 +msgid "programs/" +msgstr "emissions/" + +#: aircox/urls.py:100 +msgid "programs//articles" +msgstr "emissions//articles" + +#: aircox/urls.py:101 +msgid "programs//podcasts" +msgstr "emissions//podcasts" + +#: aircox/urls.py:102 +msgid "programs//episodes" +msgstr "emissions//episodes" #: aircox/urls.py:103 -msgid "programs//articles/" -msgstr "emissions//articles/" +msgid "programs//diffusions" +msgstr "emissions//diffusions" -#: aircox/urls.py:108 -msgid "programs//publications/" -msgstr "emissions//publications/" +#: aircox/urls.py:105 +msgid "programs//publications" +msgstr "emissions//publications" -#: aircox/views/page.py:147 +#: aircox/urls.py:110 +msgid "programs/episodes/" +msgstr "emissions/episodes/" + +#: aircox/urls.py:111 +msgid "programs/episodes/c/" +msgstr "emissions/episodes/c/" + +#: aircox/urls.py:113 +msgid "programs/episodes/" +msgstr "emissions/episodes/" + +#: aircox/urls.py:117 +msgid "podcasts/" +msgstr "podcasts/" + +#: aircox/urls.py:118 +msgid "podcasts/c//" +msgstr "podcasts/c//" + +#: aircox/views/page.py:75 +#, python-brace-format +msgid "{model}" +msgstr "{model}" + +#: aircox/views/page.py:180 msgid "comments are not allowed" msgstr "les commentaires ne sont pas autorisés" +#~ msgid "Latest news" +#~ msgstr "Dernières nouvelles" + +#~ msgid "Show all news" +#~ msgstr "Afficher toutes les nouvelles" + +#~ msgid "More news" +#~ msgstr "Plus de nouvelles" + +#, python-format +#~ msgid "That happened on %(station)s" +#~ msgstr "C'est passé sur %(station)s" + +#~ msgid "Diffusions page" +#~ msgstr "Grille horaire" + +#~ msgid "Logs page" +#~ msgstr "Page des logs" + +#~ msgid "Track Position" +#~ msgstr "Position dans la playlist" + +#~ msgid "Recently" +#~ msgstr "Récemment" + +#, python-format +#~ msgid "%(model)s of %(title)s" +#~ msgstr "%(model)s de %(title)s" + +#~ msgid "Currently" +#~ msgstr "En ce moment" + +#~ msgid "Show all publication" +#~ msgstr "Afficher toute la publication" + +#~ msgid "More publications..." +#~ msgstr "Plus de publications ..." + +#~ msgid "Previously on air" +#~ msgstr "Précédemment à l'antenne" + +#~ msgid "Reset" +#~ msgstr "Réinitialiser" + +#~ msgid "Search content" +#~ msgstr "Recherche" + +#~ msgid "Apply" +#~ msgstr "Appliquer" + +#~ msgid "More articles" +#~ msgstr "Plus d'articles" + +#, python-format +#~ msgid "Recently on %(program)s" +#~ msgstr "Récemment dans %(program)s" + +#~ msgid "Jump to date" +#~ msgstr "Aller à la date" + +#~ msgid "Go" +#~ msgstr "Filtrer" + +#~ msgid "(rerun)" +#~ msgstr "(rediffusion)" + +#~ msgid "week/" +#~ msgstr "semaine/" + +#~ msgid "logs/" +#~ msgstr "logs/" + +#~ msgid "logs//" +#~ msgstr "logs//" + #~ msgid "specify one url per line" #~ msgstr "spécifiez une url par ligne" diff --git a/aircox/middleware.py b/aircox/middleware.py index 3382ee4..8b5cbb1 100644 --- a/aircox/middleware.py +++ b/aircox/middleware.py @@ -13,6 +13,7 @@ class AircoxMiddleware(object): """Middleware used to get default info for the given website. It provide following request attributes: + - ``mobile``: set to True if mobile device is detected - ``station``: current Station This middleware must be set after the middleware @@ -24,6 +25,11 @@ class AircoxMiddleware(object): def __init__(self, get_response): self.get_response = get_response + def is_mobile(self, request): + if agent := request.META.get("HTTP_USER_AGENT"): + return " Mobi" in agent + return False + def get_station(self, request): """Return station for the provided request.""" host = request.get_host() @@ -45,6 +51,7 @@ class AircoxMiddleware(object): def __call__(self, request): self.init_timezone(request) request.station = self.get_station(request) + request.is_mobile = self.is_mobile(request) try: return self.get_response(request) except Redirect: diff --git a/aircox/migrations/0015_alter_schedule_timezone_alter_staticpage_attach_to.py b/aircox/migrations/0015_alter_schedule_timezone_alter_staticpage_attach_to.py new file mode 100644 index 0000000..bfbbbd3 --- /dev/null +++ b/aircox/migrations/0015_alter_schedule_timezone_alter_staticpage_attach_to.py @@ -0,0 +1,641 @@ +# Generated by Django 4.2.1 on 2023-11-24 21:11 + +import aircox.models.schedule +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("aircox", "0014_alter_schedule_timezone"), + ] + + operations = [ + migrations.AlterField( + model_name="schedule", + name="timezone", + field=models.CharField( + choices=[ + ("Africa/Abidjan", "Africa/Abidjan"), + ("Africa/Accra", "Africa/Accra"), + ("Africa/Addis_Ababa", "Africa/Addis_Ababa"), + ("Africa/Algiers", "Africa/Algiers"), + ("Africa/Asmara", "Africa/Asmara"), + ("Africa/Asmera", "Africa/Asmera"), + ("Africa/Bamako", "Africa/Bamako"), + ("Africa/Bangui", "Africa/Bangui"), + ("Africa/Banjul", "Africa/Banjul"), + ("Africa/Bissau", "Africa/Bissau"), + ("Africa/Blantyre", "Africa/Blantyre"), + ("Africa/Brazzaville", "Africa/Brazzaville"), + ("Africa/Bujumbura", "Africa/Bujumbura"), + ("Africa/Cairo", "Africa/Cairo"), + ("Africa/Casablanca", "Africa/Casablanca"), + ("Africa/Ceuta", "Africa/Ceuta"), + ("Africa/Conakry", "Africa/Conakry"), + ("Africa/Dakar", "Africa/Dakar"), + ("Africa/Dar_es_Salaam", "Africa/Dar_es_Salaam"), + ("Africa/Djibouti", "Africa/Djibouti"), + ("Africa/Douala", "Africa/Douala"), + ("Africa/El_Aaiun", "Africa/El_Aaiun"), + ("Africa/Freetown", "Africa/Freetown"), + ("Africa/Gaborone", "Africa/Gaborone"), + ("Africa/Harare", "Africa/Harare"), + ("Africa/Johannesburg", "Africa/Johannesburg"), + ("Africa/Juba", "Africa/Juba"), + ("Africa/Kampala", "Africa/Kampala"), + ("Africa/Khartoum", "Africa/Khartoum"), + ("Africa/Kigali", "Africa/Kigali"), + ("Africa/Kinshasa", "Africa/Kinshasa"), + ("Africa/Lagos", "Africa/Lagos"), + ("Africa/Libreville", "Africa/Libreville"), + ("Africa/Lome", "Africa/Lome"), + ("Africa/Luanda", "Africa/Luanda"), + ("Africa/Lubumbashi", "Africa/Lubumbashi"), + ("Africa/Lusaka", "Africa/Lusaka"), + ("Africa/Malabo", "Africa/Malabo"), + ("Africa/Maputo", "Africa/Maputo"), + ("Africa/Maseru", "Africa/Maseru"), + ("Africa/Mbabane", "Africa/Mbabane"), + ("Africa/Mogadishu", "Africa/Mogadishu"), + ("Africa/Monrovia", "Africa/Monrovia"), + ("Africa/Nairobi", "Africa/Nairobi"), + ("Africa/Ndjamena", "Africa/Ndjamena"), + ("Africa/Niamey", "Africa/Niamey"), + ("Africa/Nouakchott", "Africa/Nouakchott"), + ("Africa/Ouagadougou", "Africa/Ouagadougou"), + ("Africa/Porto-Novo", "Africa/Porto-Novo"), + ("Africa/Sao_Tome", "Africa/Sao_Tome"), + ("Africa/Timbuktu", "Africa/Timbuktu"), + ("Africa/Tripoli", "Africa/Tripoli"), + ("Africa/Tunis", "Africa/Tunis"), + ("Africa/Windhoek", "Africa/Windhoek"), + ("America/Adak", "America/Adak"), + ("America/Anchorage", "America/Anchorage"), + ("America/Anguilla", "America/Anguilla"), + ("America/Antigua", "America/Antigua"), + ("America/Araguaina", "America/Araguaina"), + ("America/Argentina/Buenos_Aires", "America/Argentina/Buenos_Aires"), + ("America/Argentina/Catamarca", "America/Argentina/Catamarca"), + ("America/Argentina/ComodRivadavia", "America/Argentina/ComodRivadavia"), + ("America/Argentina/Cordoba", "America/Argentina/Cordoba"), + ("America/Argentina/Jujuy", "America/Argentina/Jujuy"), + ("America/Argentina/La_Rioja", "America/Argentina/La_Rioja"), + ("America/Argentina/Mendoza", "America/Argentina/Mendoza"), + ("America/Argentina/Rio_Gallegos", "America/Argentina/Rio_Gallegos"), + ("America/Argentina/Salta", "America/Argentina/Salta"), + ("America/Argentina/San_Juan", "America/Argentina/San_Juan"), + ("America/Argentina/San_Luis", "America/Argentina/San_Luis"), + ("America/Argentina/Tucuman", "America/Argentina/Tucuman"), + ("America/Argentina/Ushuaia", "America/Argentina/Ushuaia"), + ("America/Aruba", "America/Aruba"), + ("America/Asuncion", "America/Asuncion"), + ("America/Atikokan", "America/Atikokan"), + ("America/Atka", "America/Atka"), + ("America/Bahia", "America/Bahia"), + ("America/Bahia_Banderas", "America/Bahia_Banderas"), + ("America/Barbados", "America/Barbados"), + ("America/Belem", "America/Belem"), + ("America/Belize", "America/Belize"), + ("America/Blanc-Sablon", "America/Blanc-Sablon"), + ("America/Boa_Vista", "America/Boa_Vista"), + ("America/Bogota", "America/Bogota"), + ("America/Boise", "America/Boise"), + ("America/Buenos_Aires", "America/Buenos_Aires"), + ("America/Cambridge_Bay", "America/Cambridge_Bay"), + ("America/Campo_Grande", "America/Campo_Grande"), + ("America/Cancun", "America/Cancun"), + ("America/Caracas", "America/Caracas"), + ("America/Catamarca", "America/Catamarca"), + ("America/Cayenne", "America/Cayenne"), + ("America/Cayman", "America/Cayman"), + ("America/Chicago", "America/Chicago"), + ("America/Chihuahua", "America/Chihuahua"), + ("America/Ciudad_Juarez", "America/Ciudad_Juarez"), + ("America/Coral_Harbour", "America/Coral_Harbour"), + ("America/Cordoba", "America/Cordoba"), + ("America/Costa_Rica", "America/Costa_Rica"), + ("America/Creston", "America/Creston"), + ("America/Cuiaba", "America/Cuiaba"), + ("America/Curacao", "America/Curacao"), + ("America/Danmarkshavn", "America/Danmarkshavn"), + ("America/Dawson", "America/Dawson"), + ("America/Dawson_Creek", "America/Dawson_Creek"), + ("America/Denver", "America/Denver"), + ("America/Detroit", "America/Detroit"), + ("America/Dominica", "America/Dominica"), + ("America/Edmonton", "America/Edmonton"), + ("America/Eirunepe", "America/Eirunepe"), + ("America/El_Salvador", "America/El_Salvador"), + ("America/Ensenada", "America/Ensenada"), + ("America/Fort_Nelson", "America/Fort_Nelson"), + ("America/Fort_Wayne", "America/Fort_Wayne"), + ("America/Fortaleza", "America/Fortaleza"), + ("America/Glace_Bay", "America/Glace_Bay"), + ("America/Godthab", "America/Godthab"), + ("America/Goose_Bay", "America/Goose_Bay"), + ("America/Grand_Turk", "America/Grand_Turk"), + ("America/Grenada", "America/Grenada"), + ("America/Guadeloupe", "America/Guadeloupe"), + ("America/Guatemala", "America/Guatemala"), + ("America/Guayaquil", "America/Guayaquil"), + ("America/Guyana", "America/Guyana"), + ("America/Halifax", "America/Halifax"), + ("America/Havana", "America/Havana"), + ("America/Hermosillo", "America/Hermosillo"), + ("America/Indiana/Indianapolis", "America/Indiana/Indianapolis"), + ("America/Indiana/Knox", "America/Indiana/Knox"), + ("America/Indiana/Marengo", "America/Indiana/Marengo"), + ("America/Indiana/Petersburg", "America/Indiana/Petersburg"), + ("America/Indiana/Tell_City", "America/Indiana/Tell_City"), + ("America/Indiana/Vevay", "America/Indiana/Vevay"), + ("America/Indiana/Vincennes", "America/Indiana/Vincennes"), + ("America/Indiana/Winamac", "America/Indiana/Winamac"), + ("America/Indianapolis", "America/Indianapolis"), + ("America/Inuvik", "America/Inuvik"), + ("America/Iqaluit", "America/Iqaluit"), + ("America/Jamaica", "America/Jamaica"), + ("America/Jujuy", "America/Jujuy"), + ("America/Juneau", "America/Juneau"), + ("America/Kentucky/Louisville", "America/Kentucky/Louisville"), + ("America/Kentucky/Monticello", "America/Kentucky/Monticello"), + ("America/Knox_IN", "America/Knox_IN"), + ("America/Kralendijk", "America/Kralendijk"), + ("America/La_Paz", "America/La_Paz"), + ("America/Lima", "America/Lima"), + ("America/Los_Angeles", "America/Los_Angeles"), + ("America/Louisville", "America/Louisville"), + ("America/Lower_Princes", "America/Lower_Princes"), + ("America/Maceio", "America/Maceio"), + ("America/Managua", "America/Managua"), + ("America/Manaus", "America/Manaus"), + ("America/Marigot", "America/Marigot"), + ("America/Martinique", "America/Martinique"), + ("America/Matamoros", "America/Matamoros"), + ("America/Mazatlan", "America/Mazatlan"), + ("America/Mendoza", "America/Mendoza"), + ("America/Menominee", "America/Menominee"), + ("America/Merida", "America/Merida"), + ("America/Metlakatla", "America/Metlakatla"), + ("America/Mexico_City", "America/Mexico_City"), + ("America/Miquelon", "America/Miquelon"), + ("America/Moncton", "America/Moncton"), + ("America/Monterrey", "America/Monterrey"), + ("America/Montevideo", "America/Montevideo"), + ("America/Montreal", "America/Montreal"), + ("America/Montserrat", "America/Montserrat"), + ("America/Nassau", "America/Nassau"), + ("America/New_York", "America/New_York"), + ("America/Nipigon", "America/Nipigon"), + ("America/Nome", "America/Nome"), + ("America/Noronha", "America/Noronha"), + ("America/North_Dakota/Beulah", "America/North_Dakota/Beulah"), + ("America/North_Dakota/Center", "America/North_Dakota/Center"), + ("America/North_Dakota/New_Salem", "America/North_Dakota/New_Salem"), + ("America/Nuuk", "America/Nuuk"), + ("America/Ojinaga", "America/Ojinaga"), + ("America/Panama", "America/Panama"), + ("America/Pangnirtung", "America/Pangnirtung"), + ("America/Paramaribo", "America/Paramaribo"), + ("America/Phoenix", "America/Phoenix"), + ("America/Port-au-Prince", "America/Port-au-Prince"), + ("America/Port_of_Spain", "America/Port_of_Spain"), + ("America/Porto_Acre", "America/Porto_Acre"), + ("America/Porto_Velho", "America/Porto_Velho"), + ("America/Puerto_Rico", "America/Puerto_Rico"), + ("America/Punta_Arenas", "America/Punta_Arenas"), + ("America/Rainy_River", "America/Rainy_River"), + ("America/Rankin_Inlet", "America/Rankin_Inlet"), + ("America/Recife", "America/Recife"), + ("America/Regina", "America/Regina"), + ("America/Resolute", "America/Resolute"), + ("America/Rio_Branco", "America/Rio_Branco"), + ("America/Rosario", "America/Rosario"), + ("America/Santa_Isabel", "America/Santa_Isabel"), + ("America/Santarem", "America/Santarem"), + ("America/Santiago", "America/Santiago"), + ("America/Santo_Domingo", "America/Santo_Domingo"), + ("America/Sao_Paulo", "America/Sao_Paulo"), + ("America/Scoresbysund", "America/Scoresbysund"), + ("America/Shiprock", "America/Shiprock"), + ("America/Sitka", "America/Sitka"), + ("America/St_Barthelemy", "America/St_Barthelemy"), + ("America/St_Johns", "America/St_Johns"), + ("America/St_Kitts", "America/St_Kitts"), + ("America/St_Lucia", "America/St_Lucia"), + ("America/St_Thomas", "America/St_Thomas"), + ("America/St_Vincent", "America/St_Vincent"), + ("America/Swift_Current", "America/Swift_Current"), + ("America/Tegucigalpa", "America/Tegucigalpa"), + ("America/Thule", "America/Thule"), + ("America/Thunder_Bay", "America/Thunder_Bay"), + ("America/Tijuana", "America/Tijuana"), + ("America/Toronto", "America/Toronto"), + ("America/Tortola", "America/Tortola"), + ("America/Vancouver", "America/Vancouver"), + ("America/Virgin", "America/Virgin"), + ("America/Whitehorse", "America/Whitehorse"), + ("America/Winnipeg", "America/Winnipeg"), + ("America/Yakutat", "America/Yakutat"), + ("America/Yellowknife", "America/Yellowknife"), + ("Antarctica/Casey", "Antarctica/Casey"), + ("Antarctica/Davis", "Antarctica/Davis"), + ("Antarctica/DumontDUrville", "Antarctica/DumontDUrville"), + ("Antarctica/Macquarie", "Antarctica/Macquarie"), + ("Antarctica/Mawson", "Antarctica/Mawson"), + ("Antarctica/McMurdo", "Antarctica/McMurdo"), + ("Antarctica/Palmer", "Antarctica/Palmer"), + ("Antarctica/Rothera", "Antarctica/Rothera"), + ("Antarctica/South_Pole", "Antarctica/South_Pole"), + ("Antarctica/Syowa", "Antarctica/Syowa"), + ("Antarctica/Troll", "Antarctica/Troll"), + ("Antarctica/Vostok", "Antarctica/Vostok"), + ("Arctic/Longyearbyen", "Arctic/Longyearbyen"), + ("Asia/Aden", "Asia/Aden"), + ("Asia/Almaty", "Asia/Almaty"), + ("Asia/Amman", "Asia/Amman"), + ("Asia/Anadyr", "Asia/Anadyr"), + ("Asia/Aqtau", "Asia/Aqtau"), + ("Asia/Aqtobe", "Asia/Aqtobe"), + ("Asia/Ashgabat", "Asia/Ashgabat"), + ("Asia/Ashkhabad", "Asia/Ashkhabad"), + ("Asia/Atyrau", "Asia/Atyrau"), + ("Asia/Baghdad", "Asia/Baghdad"), + ("Asia/Bahrain", "Asia/Bahrain"), + ("Asia/Baku", "Asia/Baku"), + ("Asia/Bangkok", "Asia/Bangkok"), + ("Asia/Barnaul", "Asia/Barnaul"), + ("Asia/Beirut", "Asia/Beirut"), + ("Asia/Bishkek", "Asia/Bishkek"), + ("Asia/Brunei", "Asia/Brunei"), + ("Asia/Calcutta", "Asia/Calcutta"), + ("Asia/Chita", "Asia/Chita"), + ("Asia/Choibalsan", "Asia/Choibalsan"), + ("Asia/Chongqing", "Asia/Chongqing"), + ("Asia/Chungking", "Asia/Chungking"), + ("Asia/Colombo", "Asia/Colombo"), + ("Asia/Dacca", "Asia/Dacca"), + ("Asia/Damascus", "Asia/Damascus"), + ("Asia/Dhaka", "Asia/Dhaka"), + ("Asia/Dili", "Asia/Dili"), + ("Asia/Dubai", "Asia/Dubai"), + ("Asia/Dushanbe", "Asia/Dushanbe"), + ("Asia/Famagusta", "Asia/Famagusta"), + ("Asia/Gaza", "Asia/Gaza"), + ("Asia/Harbin", "Asia/Harbin"), + ("Asia/Hebron", "Asia/Hebron"), + ("Asia/Ho_Chi_Minh", "Asia/Ho_Chi_Minh"), + ("Asia/Hong_Kong", "Asia/Hong_Kong"), + ("Asia/Hovd", "Asia/Hovd"), + ("Asia/Irkutsk", "Asia/Irkutsk"), + ("Asia/Istanbul", "Asia/Istanbul"), + ("Asia/Jakarta", "Asia/Jakarta"), + ("Asia/Jayapura", "Asia/Jayapura"), + ("Asia/Jerusalem", "Asia/Jerusalem"), + ("Asia/Kabul", "Asia/Kabul"), + ("Asia/Kamchatka", "Asia/Kamchatka"), + ("Asia/Karachi", "Asia/Karachi"), + ("Asia/Kashgar", "Asia/Kashgar"), + ("Asia/Kathmandu", "Asia/Kathmandu"), + ("Asia/Katmandu", "Asia/Katmandu"), + ("Asia/Khandyga", "Asia/Khandyga"), + ("Asia/Kolkata", "Asia/Kolkata"), + ("Asia/Krasnoyarsk", "Asia/Krasnoyarsk"), + ("Asia/Kuala_Lumpur", "Asia/Kuala_Lumpur"), + ("Asia/Kuching", "Asia/Kuching"), + ("Asia/Kuwait", "Asia/Kuwait"), + ("Asia/Macao", "Asia/Macao"), + ("Asia/Macau", "Asia/Macau"), + ("Asia/Magadan", "Asia/Magadan"), + ("Asia/Makassar", "Asia/Makassar"), + ("Asia/Manila", "Asia/Manila"), + ("Asia/Muscat", "Asia/Muscat"), + ("Asia/Nicosia", "Asia/Nicosia"), + ("Asia/Novokuznetsk", "Asia/Novokuznetsk"), + ("Asia/Novosibirsk", "Asia/Novosibirsk"), + ("Asia/Omsk", "Asia/Omsk"), + ("Asia/Oral", "Asia/Oral"), + ("Asia/Phnom_Penh", "Asia/Phnom_Penh"), + ("Asia/Pontianak", "Asia/Pontianak"), + ("Asia/Pyongyang", "Asia/Pyongyang"), + ("Asia/Qatar", "Asia/Qatar"), + ("Asia/Qostanay", "Asia/Qostanay"), + ("Asia/Qyzylorda", "Asia/Qyzylorda"), + ("Asia/Rangoon", "Asia/Rangoon"), + ("Asia/Riyadh", "Asia/Riyadh"), + ("Asia/Saigon", "Asia/Saigon"), + ("Asia/Sakhalin", "Asia/Sakhalin"), + ("Asia/Samarkand", "Asia/Samarkand"), + ("Asia/Seoul", "Asia/Seoul"), + ("Asia/Shanghai", "Asia/Shanghai"), + ("Asia/Singapore", "Asia/Singapore"), + ("Asia/Srednekolymsk", "Asia/Srednekolymsk"), + ("Asia/Taipei", "Asia/Taipei"), + ("Asia/Tashkent", "Asia/Tashkent"), + ("Asia/Tbilisi", "Asia/Tbilisi"), + ("Asia/Tehran", "Asia/Tehran"), + ("Asia/Tel_Aviv", "Asia/Tel_Aviv"), + ("Asia/Thimbu", "Asia/Thimbu"), + ("Asia/Thimphu", "Asia/Thimphu"), + ("Asia/Tokyo", "Asia/Tokyo"), + ("Asia/Tomsk", "Asia/Tomsk"), + ("Asia/Ujung_Pandang", "Asia/Ujung_Pandang"), + ("Asia/Ulaanbaatar", "Asia/Ulaanbaatar"), + ("Asia/Ulan_Bator", "Asia/Ulan_Bator"), + ("Asia/Urumqi", "Asia/Urumqi"), + ("Asia/Ust-Nera", "Asia/Ust-Nera"), + ("Asia/Vientiane", "Asia/Vientiane"), + ("Asia/Vladivostok", "Asia/Vladivostok"), + ("Asia/Yakutsk", "Asia/Yakutsk"), + ("Asia/Yangon", "Asia/Yangon"), + ("Asia/Yekaterinburg", "Asia/Yekaterinburg"), + ("Asia/Yerevan", "Asia/Yerevan"), + ("Atlantic/Azores", "Atlantic/Azores"), + ("Atlantic/Bermuda", "Atlantic/Bermuda"), + ("Atlantic/Canary", "Atlantic/Canary"), + ("Atlantic/Cape_Verde", "Atlantic/Cape_Verde"), + ("Atlantic/Faeroe", "Atlantic/Faeroe"), + ("Atlantic/Faroe", "Atlantic/Faroe"), + ("Atlantic/Jan_Mayen", "Atlantic/Jan_Mayen"), + ("Atlantic/Madeira", "Atlantic/Madeira"), + ("Atlantic/Reykjavik", "Atlantic/Reykjavik"), + ("Atlantic/South_Georgia", "Atlantic/South_Georgia"), + ("Atlantic/St_Helena", "Atlantic/St_Helena"), + ("Atlantic/Stanley", "Atlantic/Stanley"), + ("Australia/ACT", "Australia/ACT"), + ("Australia/Adelaide", "Australia/Adelaide"), + ("Australia/Brisbane", "Australia/Brisbane"), + ("Australia/Broken_Hill", "Australia/Broken_Hill"), + ("Australia/Canberra", "Australia/Canberra"), + ("Australia/Currie", "Australia/Currie"), + ("Australia/Darwin", "Australia/Darwin"), + ("Australia/Eucla", "Australia/Eucla"), + ("Australia/Hobart", "Australia/Hobart"), + ("Australia/LHI", "Australia/LHI"), + ("Australia/Lindeman", "Australia/Lindeman"), + ("Australia/Lord_Howe", "Australia/Lord_Howe"), + ("Australia/Melbourne", "Australia/Melbourne"), + ("Australia/NSW", "Australia/NSW"), + ("Australia/North", "Australia/North"), + ("Australia/Perth", "Australia/Perth"), + ("Australia/Queensland", "Australia/Queensland"), + ("Australia/South", "Australia/South"), + ("Australia/Sydney", "Australia/Sydney"), + ("Australia/Tasmania", "Australia/Tasmania"), + ("Australia/Victoria", "Australia/Victoria"), + ("Australia/West", "Australia/West"), + ("Australia/Yancowinna", "Australia/Yancowinna"), + ("Brazil/Acre", "Brazil/Acre"), + ("Brazil/DeNoronha", "Brazil/DeNoronha"), + ("Brazil/East", "Brazil/East"), + ("Brazil/West", "Brazil/West"), + ("CET", "CET"), + ("CST6CDT", "CST6CDT"), + ("Canada/Atlantic", "Canada/Atlantic"), + ("Canada/Central", "Canada/Central"), + ("Canada/Eastern", "Canada/Eastern"), + ("Canada/Mountain", "Canada/Mountain"), + ("Canada/Newfoundland", "Canada/Newfoundland"), + ("Canada/Pacific", "Canada/Pacific"), + ("Canada/Saskatchewan", "Canada/Saskatchewan"), + ("Canada/Yukon", "Canada/Yukon"), + ("Chile/Continental", "Chile/Continental"), + ("Chile/EasterIsland", "Chile/EasterIsland"), + ("Cuba", "Cuba"), + ("EET", "EET"), + ("EST", "EST"), + ("EST5EDT", "EST5EDT"), + ("Egypt", "Egypt"), + ("Eire", "Eire"), + ("Etc/GMT", "Etc/GMT"), + ("Etc/GMT+0", "Etc/GMT+0"), + ("Etc/GMT+1", "Etc/GMT+1"), + ("Etc/GMT+10", "Etc/GMT+10"), + ("Etc/GMT+11", "Etc/GMT+11"), + ("Etc/GMT+12", "Etc/GMT+12"), + ("Etc/GMT+2", "Etc/GMT+2"), + ("Etc/GMT+3", "Etc/GMT+3"), + ("Etc/GMT+4", "Etc/GMT+4"), + ("Etc/GMT+5", "Etc/GMT+5"), + ("Etc/GMT+6", "Etc/GMT+6"), + ("Etc/GMT+7", "Etc/GMT+7"), + ("Etc/GMT+8", "Etc/GMT+8"), + ("Etc/GMT+9", "Etc/GMT+9"), + ("Etc/GMT-0", "Etc/GMT-0"), + ("Etc/GMT-1", "Etc/GMT-1"), + ("Etc/GMT-10", "Etc/GMT-10"), + ("Etc/GMT-11", "Etc/GMT-11"), + ("Etc/GMT-12", "Etc/GMT-12"), + ("Etc/GMT-13", "Etc/GMT-13"), + ("Etc/GMT-14", "Etc/GMT-14"), + ("Etc/GMT-2", "Etc/GMT-2"), + ("Etc/GMT-3", "Etc/GMT-3"), + ("Etc/GMT-4", "Etc/GMT-4"), + ("Etc/GMT-5", "Etc/GMT-5"), + ("Etc/GMT-6", "Etc/GMT-6"), + ("Etc/GMT-7", "Etc/GMT-7"), + ("Etc/GMT-8", "Etc/GMT-8"), + ("Etc/GMT-9", "Etc/GMT-9"), + ("Etc/GMT0", "Etc/GMT0"), + ("Etc/Greenwich", "Etc/Greenwich"), + ("Etc/UCT", "Etc/UCT"), + ("Etc/UTC", "Etc/UTC"), + ("Etc/Universal", "Etc/Universal"), + ("Etc/Zulu", "Etc/Zulu"), + ("Europe/Amsterdam", "Europe/Amsterdam"), + ("Europe/Andorra", "Europe/Andorra"), + ("Europe/Astrakhan", "Europe/Astrakhan"), + ("Europe/Athens", "Europe/Athens"), + ("Europe/Belfast", "Europe/Belfast"), + ("Europe/Belgrade", "Europe/Belgrade"), + ("Europe/Berlin", "Europe/Berlin"), + ("Europe/Bratislava", "Europe/Bratislava"), + ("Europe/Brussels", "Europe/Brussels"), + ("Europe/Bucharest", "Europe/Bucharest"), + ("Europe/Budapest", "Europe/Budapest"), + ("Europe/Busingen", "Europe/Busingen"), + ("Europe/Chisinau", "Europe/Chisinau"), + ("Europe/Copenhagen", "Europe/Copenhagen"), + ("Europe/Dublin", "Europe/Dublin"), + ("Europe/Gibraltar", "Europe/Gibraltar"), + ("Europe/Guernsey", "Europe/Guernsey"), + ("Europe/Helsinki", "Europe/Helsinki"), + ("Europe/Isle_of_Man", "Europe/Isle_of_Man"), + ("Europe/Istanbul", "Europe/Istanbul"), + ("Europe/Jersey", "Europe/Jersey"), + ("Europe/Kaliningrad", "Europe/Kaliningrad"), + ("Europe/Kiev", "Europe/Kiev"), + ("Europe/Kirov", "Europe/Kirov"), + ("Europe/Kyiv", "Europe/Kyiv"), + ("Europe/Lisbon", "Europe/Lisbon"), + ("Europe/Ljubljana", "Europe/Ljubljana"), + ("Europe/London", "Europe/London"), + ("Europe/Luxembourg", "Europe/Luxembourg"), + ("Europe/Madrid", "Europe/Madrid"), + ("Europe/Malta", "Europe/Malta"), + ("Europe/Mariehamn", "Europe/Mariehamn"), + ("Europe/Minsk", "Europe/Minsk"), + ("Europe/Monaco", "Europe/Monaco"), + ("Europe/Moscow", "Europe/Moscow"), + ("Europe/Nicosia", "Europe/Nicosia"), + ("Europe/Oslo", "Europe/Oslo"), + ("Europe/Paris", "Europe/Paris"), + ("Europe/Podgorica", "Europe/Podgorica"), + ("Europe/Prague", "Europe/Prague"), + ("Europe/Riga", "Europe/Riga"), + ("Europe/Rome", "Europe/Rome"), + ("Europe/Samara", "Europe/Samara"), + ("Europe/San_Marino", "Europe/San_Marino"), + ("Europe/Sarajevo", "Europe/Sarajevo"), + ("Europe/Saratov", "Europe/Saratov"), + ("Europe/Simferopol", "Europe/Simferopol"), + ("Europe/Skopje", "Europe/Skopje"), + ("Europe/Sofia", "Europe/Sofia"), + ("Europe/Stockholm", "Europe/Stockholm"), + ("Europe/Tallinn", "Europe/Tallinn"), + ("Europe/Tirane", "Europe/Tirane"), + ("Europe/Tiraspol", "Europe/Tiraspol"), + ("Europe/Ulyanovsk", "Europe/Ulyanovsk"), + ("Europe/Uzhgorod", "Europe/Uzhgorod"), + ("Europe/Vaduz", "Europe/Vaduz"), + ("Europe/Vatican", "Europe/Vatican"), + ("Europe/Vienna", "Europe/Vienna"), + ("Europe/Vilnius", "Europe/Vilnius"), + ("Europe/Volgograd", "Europe/Volgograd"), + ("Europe/Warsaw", "Europe/Warsaw"), + ("Europe/Zagreb", "Europe/Zagreb"), + ("Europe/Zaporozhye", "Europe/Zaporozhye"), + ("Europe/Zurich", "Europe/Zurich"), + ("Factory", "Factory"), + ("GB", "GB"), + ("GB-Eire", "GB-Eire"), + ("GMT", "GMT"), + ("GMT+0", "GMT+0"), + ("GMT-0", "GMT-0"), + ("GMT0", "GMT0"), + ("Greenwich", "Greenwich"), + ("HST", "HST"), + ("Hongkong", "Hongkong"), + ("Iceland", "Iceland"), + ("Indian/Antananarivo", "Indian/Antananarivo"), + ("Indian/Chagos", "Indian/Chagos"), + ("Indian/Christmas", "Indian/Christmas"), + ("Indian/Cocos", "Indian/Cocos"), + ("Indian/Comoro", "Indian/Comoro"), + ("Indian/Kerguelen", "Indian/Kerguelen"), + ("Indian/Mahe", "Indian/Mahe"), + ("Indian/Maldives", "Indian/Maldives"), + ("Indian/Mauritius", "Indian/Mauritius"), + ("Indian/Mayotte", "Indian/Mayotte"), + ("Indian/Reunion", "Indian/Reunion"), + ("Iran", "Iran"), + ("Israel", "Israel"), + ("Jamaica", "Jamaica"), + ("Japan", "Japan"), + ("Kwajalein", "Kwajalein"), + ("Libya", "Libya"), + ("MET", "MET"), + ("MST", "MST"), + ("MST7MDT", "MST7MDT"), + ("Mexico/BajaNorte", "Mexico/BajaNorte"), + ("Mexico/BajaSur", "Mexico/BajaSur"), + ("Mexico/General", "Mexico/General"), + ("NZ", "NZ"), + ("NZ-CHAT", "NZ-CHAT"), + ("Navajo", "Navajo"), + ("PRC", "PRC"), + ("PST8PDT", "PST8PDT"), + ("Pacific/Apia", "Pacific/Apia"), + ("Pacific/Auckland", "Pacific/Auckland"), + ("Pacific/Bougainville", "Pacific/Bougainville"), + ("Pacific/Chatham", "Pacific/Chatham"), + ("Pacific/Chuuk", "Pacific/Chuuk"), + ("Pacific/Easter", "Pacific/Easter"), + ("Pacific/Efate", "Pacific/Efate"), + ("Pacific/Enderbury", "Pacific/Enderbury"), + ("Pacific/Fakaofo", "Pacific/Fakaofo"), + ("Pacific/Fiji", "Pacific/Fiji"), + ("Pacific/Funafuti", "Pacific/Funafuti"), + ("Pacific/Galapagos", "Pacific/Galapagos"), + ("Pacific/Gambier", "Pacific/Gambier"), + ("Pacific/Guadalcanal", "Pacific/Guadalcanal"), + ("Pacific/Guam", "Pacific/Guam"), + ("Pacific/Honolulu", "Pacific/Honolulu"), + ("Pacific/Johnston", "Pacific/Johnston"), + ("Pacific/Kanton", "Pacific/Kanton"), + ("Pacific/Kiritimati", "Pacific/Kiritimati"), + ("Pacific/Kosrae", "Pacific/Kosrae"), + ("Pacific/Kwajalein", "Pacific/Kwajalein"), + ("Pacific/Majuro", "Pacific/Majuro"), + ("Pacific/Marquesas", "Pacific/Marquesas"), + ("Pacific/Midway", "Pacific/Midway"), + ("Pacific/Nauru", "Pacific/Nauru"), + ("Pacific/Niue", "Pacific/Niue"), + ("Pacific/Norfolk", "Pacific/Norfolk"), + ("Pacific/Noumea", "Pacific/Noumea"), + ("Pacific/Pago_Pago", "Pacific/Pago_Pago"), + ("Pacific/Palau", "Pacific/Palau"), + ("Pacific/Pitcairn", "Pacific/Pitcairn"), + ("Pacific/Pohnpei", "Pacific/Pohnpei"), + ("Pacific/Ponape", "Pacific/Ponape"), + ("Pacific/Port_Moresby", "Pacific/Port_Moresby"), + ("Pacific/Rarotonga", "Pacific/Rarotonga"), + ("Pacific/Saipan", "Pacific/Saipan"), + ("Pacific/Samoa", "Pacific/Samoa"), + ("Pacific/Tahiti", "Pacific/Tahiti"), + ("Pacific/Tarawa", "Pacific/Tarawa"), + ("Pacific/Tongatapu", "Pacific/Tongatapu"), + ("Pacific/Truk", "Pacific/Truk"), + ("Pacific/Wake", "Pacific/Wake"), + ("Pacific/Wallis", "Pacific/Wallis"), + ("Pacific/Yap", "Pacific/Yap"), + ("Poland", "Poland"), + ("Portugal", "Portugal"), + ("ROC", "ROC"), + ("ROK", "ROK"), + ("Singapore", "Singapore"), + ("Turkey", "Turkey"), + ("UCT", "UCT"), + ("US/Alaska", "US/Alaska"), + ("US/Aleutian", "US/Aleutian"), + ("US/Arizona", "US/Arizona"), + ("US/Central", "US/Central"), + ("US/East-Indiana", "US/East-Indiana"), + ("US/Eastern", "US/Eastern"), + ("US/Hawaii", "US/Hawaii"), + ("US/Indiana-Starke", "US/Indiana-Starke"), + ("US/Michigan", "US/Michigan"), + ("US/Mountain", "US/Mountain"), + ("US/Pacific", "US/Pacific"), + ("US/Samoa", "US/Samoa"), + ("UTC", "UTC"), + ("Universal", "Universal"), + ("W-SU", "W-SU"), + ("WET", "WET"), + ("Zulu", "Zulu"), + ], + default=aircox.models.schedule.current_timezone_key, + help_text="timezone used for the date", + max_length=100, + verbose_name="timezone", + ), + ), + migrations.AlterField( + model_name="staticpage", + name="attach_to", + field=models.SmallIntegerField( + blank=True, + choices=[ + (0, "Home page"), + (1, "Diffusions page"), + (2, "Logs page"), + (3, "Programs list"), + (4, "Episodes list"), + (5, "Articles list"), + (6, "Publications list"), + ], + help_text="display this page content to related element", + null=True, + verbose_name="attach to", + ), + ), + ] diff --git a/aircox/migrations/0016_alter_staticpage_attach_to.py b/aircox/migrations/0016_alter_staticpage_attach_to.py new file mode 100644 index 0000000..caaf307 --- /dev/null +++ b/aircox/migrations/0016_alter_staticpage_attach_to.py @@ -0,0 +1,32 @@ +# Generated by Django 4.2.1 on 2023-11-28 01:15 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("aircox", "0015_alter_schedule_timezone_alter_staticpage_attach_to"), + ] + + operations = [ + migrations.AlterField( + model_name="staticpage", + name="attach_to", + field=models.SmallIntegerField( + blank=True, + choices=[ + (0, "Home page"), + (1, "Diffusions page"), + (2, "Logs page"), + (3, "Programs list"), + (4, "Episodes list"), + (5, "Articles list"), + (6, "Publications list"), + (7, "Podcasts list"), + ], + help_text="display this page content to related element", + null=True, + verbose_name="attach to", + ), + ), + ] diff --git a/aircox/migrations/0017_alter_navitem_text_alter_staticpage_attach_to.py b/aircox/migrations/0017_alter_navitem_text_alter_staticpage_attach_to.py new file mode 100644 index 0000000..b6feff2 --- /dev/null +++ b/aircox/migrations/0017_alter_navitem_text_alter_staticpage_attach_to.py @@ -0,0 +1,36 @@ +# Generated by Django 4.2.1 on 2023-12-12 16:58 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("aircox", "0016_alter_staticpage_attach_to"), + ] + + operations = [ + migrations.AlterField( + model_name="navitem", + name="text", + field=models.CharField(blank=True, max_length=64, null=True, verbose_name="title"), + ), + migrations.AlterField( + model_name="staticpage", + name="attach_to", + field=models.SmallIntegerField( + blank=True, + choices=[ + (0, "Home page"), + (1, "Diffusions page"), + (3, "Programs list"), + (4, "Episodes list"), + (5, "Articles list"), + (6, "Publications list"), + (7, "Podcasts list"), + ], + help_text="display this page content to related element", + null=True, + verbose_name="attach to", + ), + ), + ] diff --git a/aircox/migrations/0018_alter_staticpage_attach_to.py b/aircox/migrations/0018_alter_staticpage_attach_to.py new file mode 100644 index 0000000..708ef19 --- /dev/null +++ b/aircox/migrations/0018_alter_staticpage_attach_to.py @@ -0,0 +1,32 @@ +# Generated by Django 4.2.1 on 2023-12-12 18:17 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("aircox", "0017_alter_navitem_text_alter_staticpage_attach_to"), + ] + + operations = [ + migrations.AlterField( + model_name="staticpage", + name="attach_to", + field=models.CharField( + blank=True, + choices=[ + ("", "Home Page"), + ("timetable-list", "Timetable"), + ("program-list", "Programs list"), + ("episode-list", "Episodes list"), + ("article-list", "Articles list"), + ("page-list", "Publications list"), + ("podcast-list", "Podcasts list"), + ], + help_text="display this page content to related element", + max_length=32, + null=True, + verbose_name="attach to", + ), + ), + ] diff --git a/aircox/migrations/0019_station_program_streams_title_and_more.py b/aircox/migrations/0019_station_program_streams_title_and_more.py new file mode 100644 index 0000000..20886b4 --- /dev/null +++ b/aircox/migrations/0019_station_program_streams_title_and_more.py @@ -0,0 +1,42 @@ +# Generated by Django 4.2.1 on 2024-02-01 18:12 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("aircox", "0018_alter_staticpage_attach_to"), + ] + + operations = [ + migrations.AddField( + model_name="station", + name="music_stream_title", + field=models.CharField( + default="Music stream", + max_length=64, + verbose_name="Music stream's title", + ), + ), + migrations.AlterField( + model_name="staticpage", + name="attach_to", + field=models.CharField( + blank=True, + choices=[ + ("", "None"), + ("home", "Home Page"), + ("timetable-list", "Timetable"), + ("program-list", "Programs list"), + ("episode-list", "Episodes list"), + ("article-list", "Articles list"), + ("page-list", "Publications list"), + ("podcast-list", "Podcasts list"), + ], + help_text="display this page content to related element", + max_length=32, + null=True, + verbose_name="attach to", + ), + ), + ] diff --git a/aircox/models/article.py b/aircox/models/article.py index 490faa1..0c86d77 100644 --- a/aircox/models/article.py +++ b/aircox/models/article.py @@ -8,6 +8,7 @@ __all__ = ("Article",) class Article(Page): detail_url_name = "article-detail" + template_prefix = "article" objects = ProgramChildQuerySet.as_manager() diff --git a/aircox/models/diffusion.py b/aircox/models/diffusion.py index e333449..2bb7948 100644 --- a/aircox/models/diffusion.py +++ b/aircox/models/diffusion.py @@ -89,6 +89,8 @@ class Diffusion(Rerun): - stop: the diffusion has been manually stopped """ + list_url_name = "timetable-list" + objects = DiffusionQuerySet.as_manager() TYPE_ON_AIR = 0x00 @@ -127,8 +129,6 @@ class Diffusion(Rerun): # help_text = _('use this input port'), # ) - item_template_name = "aircox/widgets/diffusion_item.html" - class Meta: verbose_name = _("Diffusion") verbose_name_plural = _("Diffusions") @@ -192,6 +192,11 @@ class Diffusion(Rerun): now = tz.now() return self.type == self.TYPE_ON_AIR and self.start <= now and self.end >= now + @property + def is_today(self): + """True if diffusion is currently today.""" + return self.start.date() == datetime.date.today() + @property def is_live(self): """True if Diffusion is live (False if there are sounds files).""" diff --git a/aircox/models/episode.py b/aircox/models/episode.py index a94cb7b..dfc1450 100644 --- a/aircox/models/episode.py +++ b/aircox/models/episode.py @@ -10,18 +10,29 @@ from .program import ProgramChildQuerySet __all__ = ("Episode",) +class EpisodeQuerySet(ProgramChildQuerySet): + def with_podcasts(self): + return self.filter(sound__is_public=True).distinct() + + class Episode(Page): - objects = ProgramChildQuerySet.as_manager() + objects = EpisodeQuerySet.as_manager() detail_url_name = "episode-detail" - item_template_name = "aircox/widgets/episode_item.html" + list_url_name = "episode-list" + template_prefix = "episode" @property def program(self): - return getattr(self.parent, "program", None) + return self.parent_subclass + + @program.setter + def program(self, value): + self.parent = value @cached_property def podcasts(self): """Return serialized data about podcasts.""" + from .sound import Sound from ..serializers import PodcastSerializer podcasts = [PodcastSerializer(s).data for s in self.sound_set.public().order_by("type")] @@ -31,16 +42,19 @@ class Episode(Page): else: cover = None + archive_index = 1 for index, podcast in enumerate(podcasts): + if podcast["type"] == Sound.TYPE_ARCHIVE: + if archive_index > 1: + podcast["name"] = f"{self.title} - {archive_index}" + else: + podcast["name"] = self.title + podcasts[index]["cover"] = cover podcasts[index]["page_url"] = self.get_absolute_url() podcasts[index]["page_title"] = self.title return podcasts - @program.setter - def program(self, value): - self.parent = value - class Meta: verbose_name = _("Episode") verbose_name_plural = _("Episodes") diff --git a/aircox/models/log.py b/aircox/models/log.py index c924bea..1009583 100644 --- a/aircox/models/log.py +++ b/aircox/models/log.py @@ -1,5 +1,6 @@ import datetime import logging +import operator from collections import deque from django.db import models @@ -9,6 +10,7 @@ from django.utils.translation import gettext_lazy as _ from .diffusion import Diffusion from .sound import Sound, Track from .station import Station +from .page import Renderable logger = logging.getLogger("aircox") @@ -46,13 +48,15 @@ class LogQuerySet(models.QuerySet): return self.filter(track__isnull=not with_it) -class Log(models.Model): +class Log(Renderable, models.Model): """Log sounds and diffusions that are played on the station. This only remember what has been played on the outputs, not on each source; Source designate here which source is responsible of that. """ + template_prefix = "log" + TYPE_STOP = 0x00 """Source has been stopped, e.g. manually.""" # Rule: \/ diffusion != null \/ sound != null @@ -160,21 +164,22 @@ class Log(models.Model): object_list += [cls(obj) for obj in items] @classmethod - def merge_diffusions(cls, logs, diffs, count=None): + def merge_diffusions(cls, logs, diffs, count=None, diff_count=None, group_logs=False): """Merge logs and diffusions together. `logs` can either be a queryset or a list ordered by `Log.date`. """ - # TODO: limit count - # FIXME: log may be iterable (in stats view) if isinstance(logs, models.QuerySet): logs = list(logs.order_by("-date")) - diffs = deque(diffs.on_air().before().order_by("-start")) + diffs = diffs.on_air().order_by("-start") + if diff_count: + diffs = diffs[:diff_count] + diffs = deque(diffs) object_list = [] while True: if not len(diffs): - object_list += logs + cls._append_logs(object_list, logs, len(logs), group=group_logs) break if not len(logs): @@ -184,13 +189,8 @@ class Log(models.Model): diff = diffs.popleft() # - takes all logs after diff start - index = next( - (i for i, v in enumerate(logs) if v.date <= diff.end), - len(logs), - ) - if index is not None and index > 0: - object_list += logs[:index] - logs = logs[index:] + index = cls._next_index(logs, diff.end, len(logs), pred=operator.le) + cls._append_logs(object_list, logs, index, group=group_logs) if len(logs): # FIXME @@ -199,10 +199,7 @@ class Log(models.Model): # object_list.append(logs[0]) # - skips logs while diff is running - index = next( - (i for i, v in enumerate(logs) if v.date < diff.start), - len(logs), - ) + index = cls._next_index(logs, diff.start, len(logs)) if index is not None and index > 0: logs = logs[index:] @@ -211,6 +208,40 @@ class Log(models.Model): return object_list if count is None else object_list[:count] + @classmethod + def _next_index(cls, items, date, default, pred=operator.lt): + iter = (i for i, v in enumerate(items) if pred(v.date, date)) + return next(iter, default) + + @classmethod + def _append_logs(cls, object_list, logs, count, group=False): + logs = logs[:count] + if not logs: + return object_list + + if group: + grouped = cls._group_logs_by_time(logs) + object_list.extend(grouped) + else: + object_list += logs + return object_list + + @classmethod + def _group_logs_by_time(cls, logs): + last_time = -1 + cum = [] + for log in logs: + hour = log.date.time().hour + if hour != last_time: + if cum: + yield cum + cum = [] + last_time = hour + # reverse from lowest to highest date + cum.insert(0, log) + if cum: + yield cum + def print(self): r = [] if self.diffusion: diff --git a/aircox/models/page.py b/aircox/models/page.py index 58bbd43..8cd947b 100644 --- a/aircox/models/page.py +++ b/aircox/models/page.py @@ -16,6 +16,7 @@ from model_utils.managers import InheritanceQuerySet from .station import Station __all__ = ( + "Renderable", "Category", "PageQuerySet", "Page", @@ -25,7 +26,17 @@ __all__ = ( ) -headline_re = re.compile(r"(

)?" r"(?P[^\n]{1,140}(\n|[^\.]*?\.))" r"(

)?") +headline_clean_re = re.compile(r"\n(\s| )+", re.MULTILINE) +headline_re = re.compile(r"(?P([\S+]|\s+){1,240}\S+)", re.MULTILINE) + + +class Renderable: + template_prefix = "page" + template_name = "aircox/widgets/{prefix}.html" + + def get_template_name(self, widget): + """Return template name for the provided widget.""" + return self.template_name.format(prefix=self.template_prefix, widget=widget) class Category(models.Model): @@ -50,6 +61,9 @@ class BasePageQuerySet(InheritanceQuerySet): def trash(self): return self.filter(status=Page.STATUS_TRASH) + def by_last(self): + return self.order_by("-pub_date") + def parent(self, parent=None, id=None): """Return pages having this parent.""" return self.filter(parent=parent) if id is None else self.filter(parent__id=id) @@ -60,7 +74,7 @@ class BasePageQuerySet(InheritanceQuerySet): return self.filter(title__icontains=q) -class BasePage(models.Model): +class BasePage(Renderable, models.Model): """Base class for publishable content.""" STATUS_DRAFT = 0x00 @@ -102,11 +116,14 @@ class BasePage(models.Model): objects = BasePageQuerySet.as_manager() detail_url_name = None - item_template_name = "aircox/widgets/page_item.html" class Meta: abstract = True + @property + def cover_url(self): + return self.cover_id and self.cover.url + def __str__(self): return "{}".format(self.title or self.pk) @@ -117,12 +134,17 @@ class BasePage(models.Model): if count: self.slug += "-" + str(count) - if self.parent and not self.cover: - self.cover = self.parent.cover + if self.parent: + if self.parent == self: + self.parent = None + if not self.cover: + self.cover = self.parent.cover super().save(*args, **kwargs) def get_absolute_url(self): - return reverse(self.detail_url_name, kwargs={"slug": self.slug}) if self.is_published else "#" + if self.is_published: + return reverse(self.detail_url_name, kwargs={"slug": self.slug}) + return "" @property def is_draft(self): @@ -138,17 +160,28 @@ class BasePage(models.Model): @property def display_title(self): - if self.is_published(): + if self.is_published: return self.title - return self.parent.display_title() + return self.parent and self.parent.title or "" @cached_property - def headline(self): - if not self.content: - return "" + def display_headline(self): + if not self.content or not self.is_published: + return self.parent and self.parent.display_headline or "" content = bleach.clean(self.content, tags=[], strip=True) + content = headline_clean_re.sub("\n", content) + if content.startswith("\n"): + content = content[1:] headline = headline_re.search(content) - return mark_safe(headline.groupdict()["headline"]) if headline else "" + if not headline: + return "" + + headline = headline.groupdict()["headline"] + suffix = "..." if len(headline) < len(content) else "" + + headline = headline.split("\n")[:3] + headline[-1] += suffix + return mark_safe(" ".join(headline)) @classmethod def get_init_kwargs_from(cls, page, **kwargs): @@ -188,6 +221,23 @@ class Page(BasePage): ) objects = PageQuerySet.as_manager() + detail_url_name = "" + list_url_name = "page-list" + + @cached_property + def parent_subclass(self): + if self.parent_id: + return Page.objects.get_subclass(id=self.parent_id) + return None + + def get_absolute_url(self): + if not self.is_published and self.parent_subclass: + return self.parent_subclass.get_absolute_url() + return super().get_absolute_url() + + @classmethod + def get_list_url(cls, kwargs={}): + return reverse(cls.list_url_name, kwargs=kwargs) class Meta: verbose_name = _("Publication") @@ -209,45 +259,37 @@ class StaticPage(BasePage): detail_url_name = "static-page-detail" - ATTACH_TO_HOME = 0x00 - ATTACH_TO_DIFFUSIONS = 0x01 - ATTACH_TO_LOGS = 0x02 - ATTACH_TO_PROGRAMS = 0x03 - ATTACH_TO_EPISODES = 0x04 - ATTACH_TO_ARTICLES = 0x05 + class Target(models.TextChoices): + NONE = "", _("None") + HOME = "home", _("Home Page") + TIMETABLE = "timetable-list", _("Timetable") + PROGRAMS = "program-list", _("Programs list") + EPISODES = "episode-list", _("Episodes list") + ARTICLES = "article-list", _("Articles list") + PAGES = "page-list", _("Publications list") + PODCASTS = "podcast-list", _("Podcasts list") - ATTACH_TO_CHOICES = ( - (ATTACH_TO_HOME, _("Home page")), - (ATTACH_TO_DIFFUSIONS, _("Diffusions page")), - (ATTACH_TO_LOGS, _("Logs page")), - (ATTACH_TO_PROGRAMS, _("Programs list")), - (ATTACH_TO_EPISODES, _("Episodes list")), - (ATTACH_TO_ARTICLES, _("Articles list")), - ) - VIEWS = { - ATTACH_TO_HOME: "home", - ATTACH_TO_DIFFUSIONS: "diffusion-list", - ATTACH_TO_LOGS: "log-list", - ATTACH_TO_PROGRAMS: "program-list", - ATTACH_TO_EPISODES: "episode-list", - ATTACH_TO_ARTICLES: "article-list", - } - - attach_to = models.SmallIntegerField( + attach_to = models.CharField( _("attach to"), - choices=ATTACH_TO_CHOICES, + choices=Target.choices, + max_length=32, blank=True, null=True, help_text=_("display this page content to related element"), ) + def get_related_view(self): + from ..views import attached + + return self.attach_to and attached.get(self.attach_to) or None + def get_absolute_url(self): if self.attach_to: - return reverse(self.VIEWS[self.attach_to]) + return reverse(self.attach_to) return super().get_absolute_url() -class Comment(models.Model): +class Comment(Renderable, models.Model): page = models.ForeignKey( Page, models.CASCADE, @@ -260,7 +302,7 @@ class Comment(models.Model): date = models.DateTimeField(auto_now_add=True) content = models.TextField(_("content"), max_length=1024) - item_template_name = "aircox/widgets/comment_item.html" + template_prefix = "comment" @cached_property def parent(self): @@ -268,7 +310,7 @@ class Comment(models.Model): return Page.objects.select_subclasses().filter(id=self.page_id).first() def get_absolute_url(self): - return self.parent.get_absolute_url() + return self.parent.get_absolute_url() + f"#comment-{self.pk}" class Meta: verbose_name = _("Comment") @@ -281,7 +323,7 @@ class NavItem(models.Model): station = models.ForeignKey(Station, models.CASCADE, verbose_name=_("station")) menu = models.SlugField(_("menu"), max_length=24) order = models.PositiveSmallIntegerField(_("order")) - text = models.CharField(_("title"), max_length=64) + text = models.CharField(_("title"), max_length=64, blank=True, null=True) url = models.CharField(_("url"), max_length=256, blank=True, null=True) page = models.ForeignKey( StaticPage, @@ -300,14 +342,21 @@ class NavItem(models.Model): def get_url(self): return self.url if self.url else self.page.get_absolute_url() if self.page else None + def get_label(self): + if self.text: + return self.text + elif self.page: + return self.page.title + def render(self, request, css_class="", active_class=""): url = self.get_url() + label = self.get_label() if active_class and request.path.startswith(url): css_class += " " + active_class if not url: - return self.text + return label elif not css_class: - return format_html('{}', url, self.text) + return format_html('{}', url, label) else: - return format_html('{}', url, css_class, self.text) + return format_html('{}', url, css_class, label) diff --git a/aircox/models/program.py b/aircox/models/program.py index 7a4fd16..c5c1d76 100644 --- a/aircox/models/program.py +++ b/aircox/models/program.py @@ -61,6 +61,7 @@ class Program(Page): objects = ProgramQuerySet.as_manager() detail_url_name = "program-detail" + list_url_name = "program-list" @property def path(self): diff --git a/aircox/models/schedule.py b/aircox/models/schedule.py index 7513d70..8e67001 100644 --- a/aircox/models/schedule.py +++ b/aircox/models/schedule.py @@ -42,6 +42,7 @@ class Schedule(Rerun): second_and_fourth = 0b001010, _("2nd and 4th {day} of the month") every = 0b011111, _("{day}") one_on_two = 0b100000, _("one {day} on two") + # every_weekday = 0b10000000 _("from Monday to Friday") date = models.DateField( _("date"), @@ -71,6 +72,10 @@ class Schedule(Rerun): verbose_name = _("Schedule") verbose_name_plural = _("Schedules") + def __init__(self, *args, **kwargs): + self._initial = kwargs + super().__init__(*args, **kwargs) + def __str__(self): return "{} - {}, {}".format( self.program.title, @@ -110,16 +115,28 @@ class Schedule(Rerun): date = tz.datetime.combine(date, self.time) return date.replace(tzinfo=self.tz) - def dates_of_month(self, date): - """Return normalized diffusion dates of provided date's month.""" - if self.frequency == Schedule.Frequency.ponctual: + def dates_of_month(self, date, frequency=None, sched_date=None): + """Return normalized diffusion dates of provided date's month. + + :param Date date: date of the month to get dates from; + :param Schedule.Frequency frequency: frequency (defaults to ``self.frequency``) + :param Date sched_date: schedule start date (defaults to ``self.date``) + :return list of diffusion dates + """ + if frequency is None: + frequency = self.frequency + + if sched_date is None: + sched_date = self.date + + if frequency == Schedule.Frequency.ponctual: return [] - sched_wday, freq = self.date.weekday(), self.frequency + sched_wday = sched_date.weekday() date = date.replace(day=1) # last of the month - if freq == Schedule.Frequency.last: + if frequency == Schedule.Frequency.last: date = date.replace(day=calendar.monthrange(date.year, date.month)[1]) date_wday = date.weekday() @@ -134,33 +151,42 @@ class Schedule(Rerun): date_wday, month = date.weekday(), date.month date += tz.timedelta(days=(7 if date_wday > sched_wday else 0) - date_wday + sched_wday) - if freq == Schedule.Frequency.one_on_two: + if frequency == Schedule.Frequency.one_on_two: # - adjust date with modulo 14 (= 2 weeks in days) # - there are max 3 "weeks on two" per month - if (date - self.date).days % 14: + if (date - sched_date).days % 14: date += tz.timedelta(days=7) dates = (date + tz.timedelta(days=14 * i) for i in range(0, 3)) else: - dates = (date + tz.timedelta(days=7 * week) for week in range(0, 5) if freq & (0b1 << week)) + dates = (date + tz.timedelta(days=7 * week) for week in range(0, 5) if frequency & (0b1 << week)) return [self.normalize(date) for date in dates if date.month == month] - def diffusions_of_month(self, date): + def diffusions_of_month(self, date, frequency=None, sched_date=None): """Get episodes and diffusions for month of provided date, including reruns. + :param Date date: date of the month to get diffusions from; + :param Schedule.Frequency frequency: frequency (defaults to ``self.frequency``) + :param Date sched_date: schedule start date (defaults to ``self.date``) :returns: tuple([Episode], [Diffusion]) """ from .diffusion import Diffusion from .episode import Episode - if self.initial is not None or self.frequency == Schedule.Frequency.ponctual: + if frequency is None: + frequency = self.frequency + + if sched_date is None: + sched_date = self.date + + if self.initial is not None or frequency == Schedule.Frequency.ponctual: return [], [] # dates for self and reruns as (date, initial) - reruns = [(rerun, rerun.date - self.date) for rerun in self.rerun_set.all()] + reruns = [(rerun, rerun.date - sched_date) for rerun in self.rerun_set.all()] - dates = {date: None for date in self.dates_of_month(date)} + dates = {date: None for date in self.dates_of_month(date, frequency, sched_date)} dates.update( (rerun.normalize(date.date() + delta), date) for date in list(dates.keys()) for rerun, delta in reruns ) diff --git a/aircox/models/signals.py b/aircox/models/signals.py index a30353a..fd6d0bb 100755 --- a/aircox/models/signals.py +++ b/aircox/models/signals.py @@ -41,6 +41,7 @@ def user_default_groups(sender, instance, created, *args, **kwargs): @receiver(signals.post_save, sender=Page) def page_post_save(sender, instance, created, *args, **kwargs): + return if not created and instance.cover: Page.objects.filter(parent=instance, cover__isnull=True).update(cover=instance.cover) @@ -59,6 +60,7 @@ def program_post_save(sender, instance, created, *args, **kwargs): @receiver(signals.pre_save, sender=Schedule) def schedule_pre_save(sender, instance, *args, **kwargs): + return if getattr(instance, "pk") is not None: instance._initial = Schedule.objects.get(pk=instance.pk) diff --git a/aircox/models/station.py b/aircox/models/station.py index da31d40..41921fb 100644 --- a/aircox/models/station.py +++ b/aircox/models/station.py @@ -67,7 +67,7 @@ class Station(models.Model): max_length=2048, null=True, blank=True, - help_text=_("Audio streams urls used by station's player. One url " "a line."), + help_text=_("Audio streams urls used by station's player. One url a line."), ) default_cover = FilerImageField( on_delete=models.SET_NULL, @@ -76,6 +76,11 @@ class Station(models.Model): blank=True, related_name="+", ) + music_stream_title = models.CharField( + _("Music stream's title"), + max_length=64, + default=_("Music stream"), + ) objects = StationQuerySet.as_manager() diff --git a/aircox/static/aircox/core.html b/aircox/static/aircox/core.html deleted file mode 100644 index f3c72b3..0000000 --- a/aircox/static/aircox/core.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - Vue App - - -
- - diff --git a/aircox/static/aircox/css/admin.css b/aircox/static/aircox/css/admin.css index 800e2d8..5ec523f 100644 --- a/aircox/static/aircox/css/admin.css +++ b/aircox/static/aircox/css/admin.css @@ -1,6 +1,2846 @@ /*!*************************************************************************************************************************************************************************************************************************************!*\ !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-24.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-24.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-24.use[3]!./src/assets/admin.scss ***! \*************************************************************************************************************************************************************************************************************************************/ +:root { + --title-1-sz: 1.6rem; + --title-2-sz: 1.4rem; + --title-3-sz: 1.2rem; + --subtitle-1-sz: 1.6rem; + --subtitle-2-sz: 1.4rem; + --subtitle-3-sz: 1.2rem; + --heading-font-family: default; + --heading-bg: var(--main-color); + --heading-fg: var(--text-color); + --heading-hg-fg: var(--text-color); + --heading-hg-bg: var(--secondary-color); + --heading-link-hv-fg: var(--link-fg); + --cover-w: 14rem; + --cover-h: 14rem; + --cover-small-w: 10rem; + --cover-small-h: 10rem; + --cover-tiny-w: 10rem; + --cover-tiny-h: 10rem; + --card-w: var(--cover-w); + --preview-bg: var(--body-bg); + --preview-title-sz: var(--title-3-sz); + --preview-subtitle-sz: var(--title-3-sz); + --preview-cover-size: 14rem; + --preview-cover-small-size: 10rem; + --preview-cover-tiny-size: 4rem; + --preview-wide-content-sz: 1.2rem; + --preview-heading-bg-color: var(--main-color); + --header-height: var(--cover-h); + --a-carousel-p: 1.4rem; + --a-carousel-ml: calc(1.2rem - 0.5rem); + --a-carousel-gap: 1.2rem; + --a-carousel-nav-x: -0.6em; + --a-carousel-bg: none; + --a-progress-bg: transparent; + --a-progress-bar-bg: var(--secondary-color); + --a-progress-bar-color: var(--text-color); + --a-progress-bar-pd: 0.4rem; + --a-playlist-header-bg: var(--secondary-color); + --a-playlist-header-fg: var(--text-color); + --a-playlist-title-sz: 1rem; + --a-playlist-title-pd: 0.6rem; + --a-playlist-item-border: 1px var(--secondary-color) solid; + --a-sound-bg: var(--main-color); + --a-sound-hv-bg: var(--main-color); + --a-sound-hv-fg: var(--secondary-color); + --a-sound-playing-fg: var(--secondary-color-dark); + --a-sound-text-sz: 1rem; + --a-player-url-fg: var(--text-color); + --a-player-panel-bg: var(--main-color); + --a-player-bar-height: var(--nav-primary-height); + --a-player-bar-bg: var(--main-color); + --a-player-bar-title-alone-sz: 1.4rem; + --a-player-bar-button-fg: var(--button-fg); + --a-player-bar-button-fg: var(--button-bg); + --a-player-bar-button-hv-fg: var(--button-hv-fg); + --a-player-bar-button-hv-bg: var(--button-hv-bg); + --button-fg: var(--text-color); + --button-bg: var(--main-color); + --button-sec-bg: var(--main-color-light); + --button-hv-fg: var(--text-color); + --button-hv-bg: var(--secondary-color-light); + --button-active-fg: var(--text-color); + --button-active-bg: var(--secondary-color); +} + +@media screen and (max-width: 1380px) { + :root { + --cover-w: 10rem; + --cover-h: 10rem; + --cover-small-w: 6rem; + --cover-small-h: 6rem; + --cover-tiny-w: 4rem; + --cover-tiny-h: 4rem; + --section-content-sz: 1rem; + } +} +.title.is-1, .header.preview .title.is-1 { + font-size: var(--title-1-sz); +} +.title.is-2, .header.preview .title.is-2 { + font-size: var(--title-2-sz); +} +.title.is-3, .header.preview .title.is-3 { + font-size: var(--title-3-sz); +} + +.subtitle, .header.preview .subtitle { + color: var(--text-color-light); +} +.subtitle.is-1, .header.preview .subtitle.is-1 { + font-size: var(--subtitle-1-sz); +} +.subtitle.is-2, .header.preview .subtitle.is-2 { + font-size: var(--subtitle-2-sz); +} +.subtitle.is-3, .header.preview .subtitle.is-3 { + font-size: var(--subtitle-3-sz); +} + +.title + .subtitle { + padding-top: 0em !important; +} + +.headings a, a.heading, a.subtitle { + text-decoration: none !important; +} + +.heading { + display: inline-block; +} +.heading:not(:empty) { + padding: 0.4rem; + margin-top: 0em !important; + vertical-align: top; +} +.heading:not(:empty).highlight, .heading:not(:empty).active, .preview.active .heading:not(:empty) { + color: var(--heading-hg-fg); +} + +.preview { + position: relative; + background-size: cover; + background-color: var(--preview-bg) !important; +} +.preview.preview-item { + width: 100%; +} +.preview.columns, .preview .headings.columns { + margin-left: 0em; + margin-right: 0em; +} +.preview.columns .column, .preview .headings.columns .column { + padding: 0em; +} +.preview .title, .preview .title:not(:last-child) { + font-weight: 700; + font-size: var(--preview-title-sz); + margin-bottom: unset; +} +.preview .subtitle { + font-weight: 500; + font-size: var(--preview-subtitle-sz); + margin-bottom: unset; +} +.preview .headings { + background-size: cover; +} +.preview .headings > * { + margin: 0em; +} +.preview .headings .column { + padding: 0em; +} +.preview .headings a { + color: var(--text-color); +} +.preview .headings a:hover { + color: var(--heading-link-hv-fg) !important; +} +.preview.tiny .content { + font-size: 1rem; +} + +.preview-cover { + background: var(--preview-bg); + background-size: cover; + background-repeat: no-repeat; + height: var(--cover-h); + max-width: calc(var(--cover-w) * 1.5); + min-width: var(--cover-w); + overflow: hidden; + border: 1px #c4c4c4 solid; +} +.preview-cover img { + height: var(--cover-h); + max-width: calc(var(--cover-w) * 1.5); + min-width: var(--cover-w); +} +.preview-cover img.hide { + visibility: hidden; +} +.preview-cover.small, .preview.small .preview-cover { + min-width: unset; + height: var(--preview-cover-small-size); + width: var(--preview-cover-small-size) !important; + min-width: var(--preview-cover-small-size); +} +.preview-cover.tiny, .preview.tiny .preview-cover { + min-width: unset; + height: var(--preview-cover-tiny-size); + width: var(--preview-cover-tiny-size) !important; + min-width: var(--preview-cover-tiny-size); +} + +.preview-header { + width: 100%; +} +.preview-header:not(.no-cover) { + min-height: var(--header-height); +} +.preview-header.no-cover { + height: unset; +} +.preview-header .headings { + padding-top: 2rem; +} +.preview-header .headings, .preview-header > .container { + width: 100%; +} +.preview-header > .container { + height: 100%; +} + +.list-item { + display: flex; + flex-direction: column; + width: 100%; +} +.list-item .headings { + display: flex; + flex-direction: row; + padding: 0em; + margin-bottom: 0.4rem !important; +} +.list-item .headings .heading { + padding: 0rem; +} +.list-item .title { + flex-grow: 1; +} +.list-item .subtitle { + font-size: var(--preview-title-sz); + text-align: right; +} +.list-item .subtitle:not(:empty) { + min-width: 9rem; +} +.list-item .media-content { + height: 100%; + margin-bottom: unset; +} +.list-item:not(.no-cover) .list-item .media-content { + min-height: var(--preview-cover-small-size); +} +.list-item .actions { + text-align: right; +} +.list-item:not(.wide) .media { + padding: 0.6rem; + border: 1px solid var(--break-color) !important; +} + +@media screen and (max-width: 400px) { + .list-item .headings { + flex-direction: column; + } + .list-item .headings .heading { + display: inline; + text-align: left; + } + .list-item .headings .subtitle { + color: unset !important; + background: none !important; + } +} +.list-item.wide .preview-cover { + box-shadow: 0em 0em 1em rgba(0, 0, 0, 0.2); +} +.list-item.wide .content { + font-size: var(--preview-wide-content-sz); + flex-grow: 1; +} + +.preview-card { + display: flex; + flex-direction: column; + width: var(--card-w); + padding: 0rem !important; + margin-bottom: auto; + background-color: var(--preview-bg) !important; + transition: box-shadow 0.2s; +} +.preview-card:hover figure { + box-shadow: 0em 0em 1em rgba(0, 0, 0, 0.2); +} +.preview-card:hover a { + color: var(--heading-link-hv-fg); +} +.preview-card .headings { + margin-top: 0.4rem; +} +.preview-card .headings .heading { + display: block !important; +} +.preview-card .headings .subtitle { + font-size: 1.2rem; +} +.preview-card .card-content { + flex-grow: 1; + position: relative; +} +.preview-card .card-content figure { + height: var(--cover-h); + width: var(--cover-w); +} +.preview-card .card-content .actions { + position: absolute; + padding: 0.4rem; + bottom: 0rem; + right: 0rem; +} + +.a-carousel .a-carousel-viewport { + box-shadow: inset 0em 0em 20rem var(--a-carousel-bg); + padding: 0rem; + padding-top: var(--a-carousel-p); + margin-top: calc(0rem - var(--a-carousel-p)); +} + +.a-carousel-container { + width: 100%; + gap: var(--a-carousel-gap); + transition: margin-left 1s; +} +.a-carousel-container > * { + flex-shrink: 0; +} + +.a-carousel-bullets-container { + padding-left: var(--a-carousel-ml); +} +.a-carousel-bullets-container .bullet { + margin: 0.2rem; + cursor: pointer; +} +.a-carousel-bullets-container .bullet:hover { + color: var(--link-fg); +} + +.a-progress { + display: flex; + flex-direction: row; + margin: 0em; + padding: 0em; +} +.a-progress:hover { + background-color: var(--a-progress-bg); +} +.a-progress .a-progress-bar-container { + flex-grow: 1; + margin: 0em; +} +.a-progress > time, .a-progress .a-progress-bar { + height: 100%; + padding: var(--a-progress-bar-pd); +} +.a-progress .a-progress-bar { + background-color: var(--a-progress-bar-bg); + color: var(--a-progress-bar-color); +} + +.playlist .header, .a-playlist .header { + display: flex; + flex-direction: row; +} +.playlist .header .title, .playlist .header .button, .a-playlist .header .title, .a-playlist .header .button { + background-color: var(--a-playlist-header-bg); + color: var(--a-playlist-header-fg); +} +.playlist .header .title, .a-playlist .header .title { + font-size: var(--a-playlist-title-sz); + margin: 0; + padding: var(--a-playlist-title-pd); +} +.playlist li, .a-playlist li { + list-style: none; + border-bottom: var(--a-playlist-item-border); +} +.playlist li:last-child, .a-playlist li:last-child { + border-bottom: 0px; +} + +.a-sound-item { + display: flex; + align-items: center; + flex-direction: row; + height: 3rem; + background-color: var(--a-sound-bg); +} +.a-sound-item.playing .label { + color: var(--a-sound-playing-fg) !important; +} +.a-sound-item:hover { + background-color: var(--a-sound-hv-bg); +} +.a-sound-item:hover .label { + color: var(--a-sound-hv-fg) !important; +} +.a-sound-item .label:hover::before, .a-sound-item.playing .label::before { + content: "\f04b"; + font-family: "Font Awesome 6 Free"; + margin-right: 0.6em; +} +.a-sound-item.playing .label:hover::before { + content: ""; + margin: 0; +} +.a-sound-item .label { + cursor: pointer; + margin: 0em !important; + padding: 0.6em; + font-size: var(--a-sound-text-sz); + font-family: var(--heading-font-family); +} +.a-sound-item .label .icon { + padding: 0em 0.6rem; +} +.a-sound-item .button { + width: 3em; + font-size: var(--a-sound-text-sz); +} +.a-sound-item .button:hover { + color: var(--a-sound-hv-fg) !important; + background-color: unset; +} + +.player-container { + z-index: 1000000; +} + +.a-player { + box-shadow: 0em -0.5em 0.5em rgba(0, 0, 0, 0.05); +} +.a-player a { + color: var(--a-player-url-fg); +} +.a-player .button { + color: var(--text-black); +} +.a-player .button:hover { + color: var(--button-fg); +} + +.a-player-panels { + background: var(--a-player-panel-bg); + height: 0%; + transition: height 1s; +} + +.a-player-panels.is-open { + height: auto; +} + +.a-player-panel { + padding-bottom: 0.6rem; + max-height: 80%; + overflow-y: auto; +} +.a-player-panel .a-sound-item:not(:hover) { + background-color: transparent; +} + +.a-player-progress { + height: 0.4em; + overflow: hidden; +} +.a-player-progress time { + display: none; +} +.a-player-progress:hover, .a-player-panels.is-open + .a-player-progress { + background: var(--a-player-bar-bg); + height: 2em; +} +.a-player-progress:hover time, .a-player-panels.is-open + .a-player-progress time { + display: unset; +} + +.a-player-bar { + display: flex; + flex-direction: row; + justify-content: center; + height: var(--a-player-bar-height); + border-top: 1px #ddd solid; + background: var(--a-player-bar-bg); +} +.a-player-bar > * { + height: 100%; +} +.a-player-bar .cover { + height: 100%; +} +.a-player-bar .title { + font-size: 1rem; + margin: 0em; +} +.a-player-bar .title:last-child { + font-size: var(--a-player-bar-title-alone-sz); +} +.a-player-bar .button { + font-size: 1.4rem; + height: 100%; + padding: 0.4rem !important; + min-width: calc(var(--a-player-bar-height) + 0.8rem); + border-radius: 0px; +} +.a-player-bar .button.open { + background-color: var(--button-active-bg); + color: var(--button-active-fg); +} + +.a-player-bar-content { + display: flex; + flex-direction: vertical; + align-items: center; + flex-grow: 1; + padding: 0 0.6rem; + border-right: 1px black solid; +} +.a-player-bar-content .title { + max-height: calc(var(--a-player-bar-height) - 0.6rem); + overflow: hidden; +} + +/* Bulma Utilities */ +.button { + -moz-appearance: none; + -webkit-appearance: none; + align-items: center; + border: 1px solid transparent; + border-radius: 4px; + box-shadow: none; + display: inline-flex; + font-size: 1rem; + height: 2.5em; + justify-content: flex-start; + line-height: 1.5; + padding-bottom: calc(0.5em - 1px); + padding-left: calc(0.75em - 1px); + padding-right: calc(0.75em - 1px); + padding-top: calc(0.5em - 1px); + position: relative; + vertical-align: top; +} +.button:focus, .is-focused.button, .button:active, .is-active.button { + outline: none; +} +[disabled].button, fieldset[disabled] .button { + cursor: not-allowed; +} + +.button { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} + +.navbar-link:not(.is-arrowless)::after { + border: 3px solid transparent; + border-radius: 2px; + border-right: 0; + border-top: 0; + content: " "; + display: block; + height: 0.625em; + margin-top: -0.4375em; + pointer-events: none; + position: absolute; + top: 50%; + transform: rotate(-45deg); + transform-origin: center; + width: 0.625em; +} + +.button.is-loading::after { + animation: spinAround 500ms infinite linear; + border: 2px solid hsl(0deg, 0%, 86%); + border-radius: 9999px; + border-right-color: transparent; + border-top-color: transparent; + content: ""; + display: block; + height: 1em; + position: relative; + width: 1em; +} + +.navbar-burger { + -moz-appearance: none; + -webkit-appearance: none; + appearance: none; + background: none; + border: none; + color: currentColor; + font-family: inherit; + font-size: 1em; + margin: 0; + padding: 0; +} + +.button { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 86%); + border-width: 1px; + color: hsl(0deg, 0%, 21%); + cursor: pointer; + justify-content: center; + padding-bottom: calc(0.5em - 1px); + padding-left: 1em; + padding-right: 1em; + padding-top: calc(0.5em - 1px); + text-align: center; + white-space: nowrap; +} +.button strong { + color: inherit; +} +.button .icon, .button .icon.is-small, .button .icon.is-medium, .button .icon.is-large { + height: 1.5em; + width: 1.5em; +} +.button .icon:first-child:not(:last-child) { + margin-left: calc(-0.5em - 1px); + margin-right: 0.25em; +} +.button .icon:last-child:not(:first-child) { + margin-left: 0.25em; + margin-right: calc(-0.5em - 1px); +} +.button .icon:first-child:last-child { + margin-left: calc(-0.5em - 1px); + margin-right: calc(-0.5em - 1px); +} +.button:hover, .button.is-hovered { + border-color: hsl(0deg, 0%, 71%); + color: hsl(0deg, 0%, 21%); +} +.button:focus, .button.is-focused { + border-color: hsl(229deg, 53%, 53%); + color: hsl(0deg, 0%, 21%); +} +.button:focus:not(:active), .button.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); +} +.button:active, .button.is-active { + border-color: hsl(0deg, 0%, 29%); + color: hsl(0deg, 0%, 21%); +} +.button.is-text { + background-color: transparent; + border-color: transparent; + color: hsl(0deg, 0%, 29%); + text-decoration: underline; +} +.button.is-text:hover, .button.is-text.is-hovered, .button.is-text:focus, .button.is-text.is-focused { + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 21%); +} +.button.is-text:active, .button.is-text.is-active { + background-color: #e8e8e8; + color: hsl(0deg, 0%, 21%); +} +.button.is-text[disabled], fieldset[disabled] .button.is-text { + background-color: transparent; + border-color: transparent; + box-shadow: none; +} +.button.is-ghost { + background: none; + border-color: transparent; + color: hsl(229deg, 53%, 53%); + text-decoration: none; +} +.button.is-ghost:hover, .button.is-ghost.is-hovered { + color: hsl(229deg, 53%, 53%); + text-decoration: underline; +} +.button.is-white { + background-color: hsl(0deg, 0%, 100%); + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.button.is-white:hover, .button.is-white.is-hovered { + background-color: #f9f9f9; + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.button.is-white:focus, .button.is-white.is-focused { + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.button.is-white:focus:not(:active), .button.is-white.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); +} +.button.is-white:active, .button.is-white.is-active { + background-color: #f2f2f2; + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.button.is-white[disabled], fieldset[disabled] .button.is-white { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 100%); + box-shadow: none; +} +.button.is-white.is-inverted { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.button.is-white.is-inverted:hover, .button.is-white.is-inverted.is-hovered { + background-color: black; +} +.button.is-white.is-inverted[disabled], fieldset[disabled] .button.is-white.is-inverted { + background-color: hsl(0deg, 0%, 4%); + border-color: transparent; + box-shadow: none; + color: hsl(0deg, 0%, 100%); +} +.button.is-white.is-loading::after { + border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; +} +.button.is-white.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 100%); +} +.button.is-white.is-outlined:hover, .button.is-white.is-outlined.is-hovered, .button.is-white.is-outlined:focus, .button.is-white.is-outlined.is-focused { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.button.is-white.is-outlined.is-loading::after { + border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; +} +.button.is-white.is-outlined.is-loading:hover::after, .button.is-white.is-outlined.is-loading.is-hovered::after, .button.is-white.is-outlined.is-loading:focus::after, .button.is-white.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; +} +.button.is-white.is-outlined[disabled], fieldset[disabled] .button.is-white.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 100%); + box-shadow: none; + color: hsl(0deg, 0%, 100%); +} +.button.is-white.is-inverted.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 4%); +} +.button.is-white.is-inverted.is-outlined:hover, .button.is-white.is-inverted.is-outlined.is-hovered, .button.is-white.is-inverted.is-outlined:focus, .button.is-white.is-inverted.is-outlined.is-focused { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.button.is-white.is-inverted.is-outlined.is-loading:hover::after, .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-white.is-inverted.is-outlined.is-loading:focus::after, .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; +} +.button.is-white.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-white.is-inverted.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 4%); + box-shadow: none; + color: hsl(0deg, 0%, 4%); +} +.button.is-black { + background-color: hsl(0deg, 0%, 4%); + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.button.is-black:hover, .button.is-black.is-hovered { + background-color: #040404; + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.button.is-black:focus, .button.is-black.is-focused { + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.button.is-black:focus:not(:active), .button.is-black.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); +} +.button.is-black:active, .button.is-black.is-active { + background-color: black; + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.button.is-black[disabled], fieldset[disabled] .button.is-black { + background-color: hsl(0deg, 0%, 4%); + border-color: hsl(0deg, 0%, 4%); + box-shadow: none; +} +.button.is-black.is-inverted { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.button.is-black.is-inverted:hover, .button.is-black.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-black.is-inverted[disabled], fieldset[disabled] .button.is-black.is-inverted { + background-color: hsl(0deg, 0%, 100%); + border-color: transparent; + box-shadow: none; + color: hsl(0deg, 0%, 4%); +} +.button.is-black.is-loading::after { + border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; +} +.button.is-black.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 4%); +} +.button.is-black.is-outlined:hover, .button.is-black.is-outlined.is-hovered, .button.is-black.is-outlined:focus, .button.is-black.is-outlined.is-focused { + background-color: hsl(0deg, 0%, 4%); + border-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.button.is-black.is-outlined.is-loading::after { + border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; +} +.button.is-black.is-outlined.is-loading:hover::after, .button.is-black.is-outlined.is-loading.is-hovered::after, .button.is-black.is-outlined.is-loading:focus::after, .button.is-black.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; +} +.button.is-black.is-outlined[disabled], fieldset[disabled] .button.is-black.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 4%); + box-shadow: none; + color: hsl(0deg, 0%, 4%); +} +.button.is-black.is-inverted.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 100%); +} +.button.is-black.is-inverted.is-outlined:hover, .button.is-black.is-inverted.is-outlined.is-hovered, .button.is-black.is-inverted.is-outlined:focus, .button.is-black.is-inverted.is-outlined.is-focused { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.button.is-black.is-inverted.is-outlined.is-loading:hover::after, .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-black.is-inverted.is-outlined.is-loading:focus::after, .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; +} +.button.is-black.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-black.is-inverted.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 100%); + box-shadow: none; + color: hsl(0deg, 0%, 100%); +} +.button.is-light { + background-color: hsl(0deg, 0%, 96%); + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-light:hover, .button.is-light.is-hovered { + background-color: #eeeeee; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-light:focus, .button.is-light.is-focused { + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-light:focus:not(:active), .button.is-light.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); +} +.button.is-light:active, .button.is-light.is-active { + background-color: #e8e8e8; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-light[disabled], fieldset[disabled] .button.is-light { + background-color: hsl(0deg, 0%, 96%); + border-color: hsl(0deg, 0%, 96%); + box-shadow: none; +} +.button.is-light.is-inverted { + background-color: rgba(0, 0, 0, 0.7); + color: hsl(0deg, 0%, 96%); +} +.button.is-light.is-inverted:hover, .button.is-light.is-inverted.is-hovered { + background-color: rgba(0, 0, 0, 0.7); +} +.button.is-light.is-inverted[disabled], fieldset[disabled] .button.is-light.is-inverted { + background-color: rgba(0, 0, 0, 0.7); + border-color: transparent; + box-shadow: none; + color: hsl(0deg, 0%, 96%); +} +.button.is-light.is-loading::after { + border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; +} +.button.is-light.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 96%); +} +.button.is-light.is-outlined:hover, .button.is-light.is-outlined.is-hovered, .button.is-light.is-outlined:focus, .button.is-light.is-outlined.is-focused { + background-color: hsl(0deg, 0%, 96%); + border-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.button.is-light.is-outlined.is-loading::after { + border-color: transparent transparent hsl(0deg, 0%, 96%) hsl(0deg, 0%, 96%) !important; +} +.button.is-light.is-outlined.is-loading:hover::after, .button.is-light.is-outlined.is-loading.is-hovered::after, .button.is-light.is-outlined.is-loading:focus::after, .button.is-light.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; +} +.button.is-light.is-outlined[disabled], fieldset[disabled] .button.is-light.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 96%); + box-shadow: none; + color: hsl(0deg, 0%, 96%); +} +.button.is-light.is-inverted.is-outlined { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.7); + color: rgba(0, 0, 0, 0.7); +} +.button.is-light.is-inverted.is-outlined:hover, .button.is-light.is-inverted.is-outlined.is-hovered, .button.is-light.is-inverted.is-outlined:focus, .button.is-light.is-inverted.is-outlined.is-focused { + background-color: rgba(0, 0, 0, 0.7); + color: hsl(0deg, 0%, 96%); +} +.button.is-light.is-inverted.is-outlined.is-loading:hover::after, .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-light.is-inverted.is-outlined.is-loading:focus::after, .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(0deg, 0%, 96%) hsl(0deg, 0%, 96%) !important; +} +.button.is-light.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-light.is-inverted.is-outlined { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.7); + box-shadow: none; + color: rgba(0, 0, 0, 0.7); +} +.button.is-dark { + background-color: hsl(0deg, 0%, 21%); + border-color: transparent; + color: #fff; +} +.button.is-dark:hover, .button.is-dark.is-hovered { + background-color: #2f2f2f; + border-color: transparent; + color: #fff; +} +.button.is-dark:focus, .button.is-dark.is-focused { + border-color: transparent; + color: #fff; +} +.button.is-dark:focus:not(:active), .button.is-dark.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); +} +.button.is-dark:active, .button.is-dark.is-active { + background-color: #292929; + border-color: transparent; + color: #fff; +} +.button.is-dark[disabled], fieldset[disabled] .button.is-dark { + background-color: hsl(0deg, 0%, 21%); + border-color: hsl(0deg, 0%, 21%); + box-shadow: none; +} +.button.is-dark.is-inverted { + background-color: #fff; + color: hsl(0deg, 0%, 21%); +} +.button.is-dark.is-inverted:hover, .button.is-dark.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-dark.is-inverted[disabled], fieldset[disabled] .button.is-dark.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: hsl(0deg, 0%, 21%); +} +.button.is-dark.is-loading::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-dark.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 21%); + color: hsl(0deg, 0%, 21%); +} +.button.is-dark.is-outlined:hover, .button.is-dark.is-outlined.is-hovered, .button.is-dark.is-outlined:focus, .button.is-dark.is-outlined.is-focused { + background-color: hsl(0deg, 0%, 21%); + border-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.button.is-dark.is-outlined.is-loading::after { + border-color: transparent transparent hsl(0deg, 0%, 21%) hsl(0deg, 0%, 21%) !important; +} +.button.is-dark.is-outlined.is-loading:hover::after, .button.is-dark.is-outlined.is-loading.is-hovered::after, .button.is-dark.is-outlined.is-loading:focus::after, .button.is-dark.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-dark.is-outlined[disabled], fieldset[disabled] .button.is-dark.is-outlined { + background-color: transparent; + border-color: hsl(0deg, 0%, 21%); + box-shadow: none; + color: hsl(0deg, 0%, 21%); +} +.button.is-dark.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; +} +.button.is-dark.is-inverted.is-outlined:hover, .button.is-dark.is-inverted.is-outlined.is-hovered, .button.is-dark.is-inverted.is-outlined:focus, .button.is-dark.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: hsl(0deg, 0%, 21%); +} +.button.is-dark.is-inverted.is-outlined.is-loading:hover::after, .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-dark.is-inverted.is-outlined.is-loading:focus::after, .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(0deg, 0%, 21%) hsl(0deg, 0%, 21%) !important; +} +.button.is-dark.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-dark.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; +} +.button.is-primary { + background-color: hsl(171deg, 100%, 41%); + border-color: transparent; + color: #fff; +} +.button.is-primary:hover, .button.is-primary.is-hovered { + background-color: #00c4a7; + border-color: transparent; + color: #fff; +} +.button.is-primary:focus, .button.is-primary.is-focused { + border-color: transparent; + color: #fff; +} +.button.is-primary:focus:not(:active), .button.is-primary.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(0, 209, 178, 0.25); +} +.button.is-primary:active, .button.is-primary.is-active { + background-color: #00b89c; + border-color: transparent; + color: #fff; +} +.button.is-primary[disabled], fieldset[disabled] .button.is-primary { + background-color: hsl(171deg, 100%, 41%); + border-color: hsl(171deg, 100%, 41%); + box-shadow: none; +} +.button.is-primary.is-inverted { + background-color: #fff; + color: hsl(171deg, 100%, 41%); +} +.button.is-primary.is-inverted:hover, .button.is-primary.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-primary.is-inverted[disabled], fieldset[disabled] .button.is-primary.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: hsl(171deg, 100%, 41%); +} +.button.is-primary.is-loading::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-primary.is-outlined { + background-color: transparent; + border-color: hsl(171deg, 100%, 41%); + color: hsl(171deg, 100%, 41%); +} +.button.is-primary.is-outlined:hover, .button.is-primary.is-outlined.is-hovered, .button.is-primary.is-outlined:focus, .button.is-primary.is-outlined.is-focused { + background-color: hsl(171deg, 100%, 41%); + border-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.button.is-primary.is-outlined.is-loading::after { + border-color: transparent transparent hsl(171deg, 100%, 41%) hsl(171deg, 100%, 41%) !important; +} +.button.is-primary.is-outlined.is-loading:hover::after, .button.is-primary.is-outlined.is-loading.is-hovered::after, .button.is-primary.is-outlined.is-loading:focus::after, .button.is-primary.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-primary.is-outlined[disabled], fieldset[disabled] .button.is-primary.is-outlined { + background-color: transparent; + border-color: hsl(171deg, 100%, 41%); + box-shadow: none; + color: hsl(171deg, 100%, 41%); +} +.button.is-primary.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; +} +.button.is-primary.is-inverted.is-outlined:hover, .button.is-primary.is-inverted.is-outlined.is-hovered, .button.is-primary.is-inverted.is-outlined:focus, .button.is-primary.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: hsl(171deg, 100%, 41%); +} +.button.is-primary.is-inverted.is-outlined.is-loading:hover::after, .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-primary.is-inverted.is-outlined.is-loading:focus::after, .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(171deg, 100%, 41%) hsl(171deg, 100%, 41%) !important; +} +.button.is-primary.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-primary.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; +} +.button.is-primary.is-light { + background-color: #ebfffc; + color: #00947e; +} +.button.is-primary.is-light:hover, .button.is-primary.is-light.is-hovered { + background-color: #defffa; + border-color: transparent; + color: #00947e; +} +.button.is-primary.is-light:active, .button.is-primary.is-light.is-active { + background-color: #d1fff8; + border-color: transparent; + color: #00947e; +} +.button.is-link { + background-color: hsl(229deg, 53%, 53%); + border-color: transparent; + color: #fff; +} +.button.is-link:hover, .button.is-link.is-hovered { + background-color: #3e56c4; + border-color: transparent; + color: #fff; +} +.button.is-link:focus, .button.is-link.is-focused { + border-color: transparent; + color: #fff; +} +.button.is-link:focus:not(:active), .button.is-link.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); +} +.button.is-link:active, .button.is-link.is-active { + background-color: #3a51bb; + border-color: transparent; + color: #fff; +} +.button.is-link[disabled], fieldset[disabled] .button.is-link { + background-color: hsl(229deg, 53%, 53%); + border-color: hsl(229deg, 53%, 53%); + box-shadow: none; +} +.button.is-link.is-inverted { + background-color: #fff; + color: hsl(229deg, 53%, 53%); +} +.button.is-link.is-inverted:hover, .button.is-link.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-link.is-inverted[disabled], fieldset[disabled] .button.is-link.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: hsl(229deg, 53%, 53%); +} +.button.is-link.is-loading::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-link.is-outlined { + background-color: transparent; + border-color: hsl(229deg, 53%, 53%); + color: hsl(229deg, 53%, 53%); +} +.button.is-link.is-outlined:hover, .button.is-link.is-outlined.is-hovered, .button.is-link.is-outlined:focus, .button.is-link.is-outlined.is-focused { + background-color: hsl(229deg, 53%, 53%); + border-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.button.is-link.is-outlined.is-loading::after { + border-color: transparent transparent hsl(229deg, 53%, 53%) hsl(229deg, 53%, 53%) !important; +} +.button.is-link.is-outlined.is-loading:hover::after, .button.is-link.is-outlined.is-loading.is-hovered::after, .button.is-link.is-outlined.is-loading:focus::after, .button.is-link.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-link.is-outlined[disabled], fieldset[disabled] .button.is-link.is-outlined { + background-color: transparent; + border-color: hsl(229deg, 53%, 53%); + box-shadow: none; + color: hsl(229deg, 53%, 53%); +} +.button.is-link.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; +} +.button.is-link.is-inverted.is-outlined:hover, .button.is-link.is-inverted.is-outlined.is-hovered, .button.is-link.is-inverted.is-outlined:focus, .button.is-link.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: hsl(229deg, 53%, 53%); +} +.button.is-link.is-inverted.is-outlined.is-loading:hover::after, .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-link.is-inverted.is-outlined.is-loading:focus::after, .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(229deg, 53%, 53%) hsl(229deg, 53%, 53%) !important; +} +.button.is-link.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-link.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; +} +.button.is-link.is-light { + background-color: #eff1fa; + color: #3850b7; +} +.button.is-link.is-light:hover, .button.is-link.is-light.is-hovered { + background-color: #e6e9f7; + border-color: transparent; + color: #3850b7; +} +.button.is-link.is-light:active, .button.is-link.is-light.is-active { + background-color: #dce0f4; + border-color: transparent; + color: #3850b7; +} +.button.is-info { + background-color: hsl(207deg, 61%, 53%); + border-color: transparent; + color: #fff; +} +.button.is-info:hover, .button.is-info.is-hovered { + background-color: #3488ce; + border-color: transparent; + color: #fff; +} +.button.is-info:focus, .button.is-info.is-focused { + border-color: transparent; + color: #fff; +} +.button.is-info:focus:not(:active), .button.is-info.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(62, 142, 208, 0.25); +} +.button.is-info:active, .button.is-info.is-active { + background-color: #3082c5; + border-color: transparent; + color: #fff; +} +.button.is-info[disabled], fieldset[disabled] .button.is-info { + background-color: hsl(207deg, 61%, 53%); + border-color: hsl(207deg, 61%, 53%); + box-shadow: none; +} +.button.is-info.is-inverted { + background-color: #fff; + color: hsl(207deg, 61%, 53%); +} +.button.is-info.is-inverted:hover, .button.is-info.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-info.is-inverted[disabled], fieldset[disabled] .button.is-info.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: hsl(207deg, 61%, 53%); +} +.button.is-info.is-loading::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-info.is-outlined { + background-color: transparent; + border-color: hsl(207deg, 61%, 53%); + color: hsl(207deg, 61%, 53%); +} +.button.is-info.is-outlined:hover, .button.is-info.is-outlined.is-hovered, .button.is-info.is-outlined:focus, .button.is-info.is-outlined.is-focused { + background-color: hsl(207deg, 61%, 53%); + border-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.button.is-info.is-outlined.is-loading::after { + border-color: transparent transparent hsl(207deg, 61%, 53%) hsl(207deg, 61%, 53%) !important; +} +.button.is-info.is-outlined.is-loading:hover::after, .button.is-info.is-outlined.is-loading.is-hovered::after, .button.is-info.is-outlined.is-loading:focus::after, .button.is-info.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-info.is-outlined[disabled], fieldset[disabled] .button.is-info.is-outlined { + background-color: transparent; + border-color: hsl(207deg, 61%, 53%); + box-shadow: none; + color: hsl(207deg, 61%, 53%); +} +.button.is-info.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; +} +.button.is-info.is-inverted.is-outlined:hover, .button.is-info.is-inverted.is-outlined.is-hovered, .button.is-info.is-inverted.is-outlined:focus, .button.is-info.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: hsl(207deg, 61%, 53%); +} +.button.is-info.is-inverted.is-outlined.is-loading:hover::after, .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-info.is-inverted.is-outlined.is-loading:focus::after, .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(207deg, 61%, 53%) hsl(207deg, 61%, 53%) !important; +} +.button.is-info.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-info.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; +} +.button.is-info.is-light { + background-color: #eff5fb; + color: #296fa8; +} +.button.is-info.is-light:hover, .button.is-info.is-light.is-hovered { + background-color: #e4eff9; + border-color: transparent; + color: #296fa8; +} +.button.is-info.is-light:active, .button.is-info.is-light.is-active { + background-color: #dae9f6; + border-color: transparent; + color: #296fa8; +} +.button.is-success { + background-color: hsl(153deg, 53%, 53%); + border-color: transparent; + color: #fff; +} +.button.is-success:hover, .button.is-success.is-hovered { + background-color: #3ec487; + border-color: transparent; + color: #fff; +} +.button.is-success:focus, .button.is-success.is-focused { + border-color: transparent; + color: #fff; +} +.button.is-success:focus:not(:active), .button.is-success.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(72, 199, 142, 0.25); +} +.button.is-success:active, .button.is-success.is-active { + background-color: #3abb81; + border-color: transparent; + color: #fff; +} +.button.is-success[disabled], fieldset[disabled] .button.is-success { + background-color: hsl(153deg, 53%, 53%); + border-color: hsl(153deg, 53%, 53%); + box-shadow: none; +} +.button.is-success.is-inverted { + background-color: #fff; + color: hsl(153deg, 53%, 53%); +} +.button.is-success.is-inverted:hover, .button.is-success.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-success.is-inverted[disabled], fieldset[disabled] .button.is-success.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: hsl(153deg, 53%, 53%); +} +.button.is-success.is-loading::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-success.is-outlined { + background-color: transparent; + border-color: hsl(153deg, 53%, 53%); + color: hsl(153deg, 53%, 53%); +} +.button.is-success.is-outlined:hover, .button.is-success.is-outlined.is-hovered, .button.is-success.is-outlined:focus, .button.is-success.is-outlined.is-focused { + background-color: hsl(153deg, 53%, 53%); + border-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.button.is-success.is-outlined.is-loading::after { + border-color: transparent transparent hsl(153deg, 53%, 53%) hsl(153deg, 53%, 53%) !important; +} +.button.is-success.is-outlined.is-loading:hover::after, .button.is-success.is-outlined.is-loading.is-hovered::after, .button.is-success.is-outlined.is-loading:focus::after, .button.is-success.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-success.is-outlined[disabled], fieldset[disabled] .button.is-success.is-outlined { + background-color: transparent; + border-color: hsl(153deg, 53%, 53%); + box-shadow: none; + color: hsl(153deg, 53%, 53%); +} +.button.is-success.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; +} +.button.is-success.is-inverted.is-outlined:hover, .button.is-success.is-inverted.is-outlined.is-hovered, .button.is-success.is-inverted.is-outlined:focus, .button.is-success.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: hsl(153deg, 53%, 53%); +} +.button.is-success.is-inverted.is-outlined.is-loading:hover::after, .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-success.is-inverted.is-outlined.is-loading:focus::after, .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(153deg, 53%, 53%) hsl(153deg, 53%, 53%) !important; +} +.button.is-success.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-success.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; +} +.button.is-success.is-light { + background-color: #effaf5; + color: #257953; +} +.button.is-success.is-light:hover, .button.is-success.is-light.is-hovered { + background-color: #e6f7ef; + border-color: transparent; + color: #257953; +} +.button.is-success.is-light:active, .button.is-success.is-light.is-active { + background-color: #dcf4e9; + border-color: transparent; + color: #257953; +} +.button.is-warning { + background-color: hsl(44deg, 100%, 77%); + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning:hover, .button.is-warning.is-hovered { + background-color: #ffdc7d; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning:focus, .button.is-warning.is-focused { + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning:focus:not(:active), .button.is-warning.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(255, 224, 138, 0.25); +} +.button.is-warning:active, .button.is-warning.is-active { + background-color: #ffd970; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning[disabled], fieldset[disabled] .button.is-warning { + background-color: hsl(44deg, 100%, 77%); + border-color: hsl(44deg, 100%, 77%); + box-shadow: none; +} +.button.is-warning.is-inverted { + background-color: rgba(0, 0, 0, 0.7); + color: hsl(44deg, 100%, 77%); +} +.button.is-warning.is-inverted:hover, .button.is-warning.is-inverted.is-hovered { + background-color: rgba(0, 0, 0, 0.7); +} +.button.is-warning.is-inverted[disabled], fieldset[disabled] .button.is-warning.is-inverted { + background-color: rgba(0, 0, 0, 0.7); + border-color: transparent; + box-shadow: none; + color: hsl(44deg, 100%, 77%); +} +.button.is-warning.is-loading::after { + border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; +} +.button.is-warning.is-outlined { + background-color: transparent; + border-color: hsl(44deg, 100%, 77%); + color: hsl(44deg, 100%, 77%); +} +.button.is-warning.is-outlined:hover, .button.is-warning.is-outlined.is-hovered, .button.is-warning.is-outlined:focus, .button.is-warning.is-outlined.is-focused { + background-color: hsl(44deg, 100%, 77%); + border-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning.is-outlined.is-loading::after { + border-color: transparent transparent hsl(44deg, 100%, 77%) hsl(44deg, 100%, 77%) !important; +} +.button.is-warning.is-outlined.is-loading:hover::after, .button.is-warning.is-outlined.is-loading.is-hovered::after, .button.is-warning.is-outlined.is-loading:focus::after, .button.is-warning.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; +} +.button.is-warning.is-outlined[disabled], fieldset[disabled] .button.is-warning.is-outlined { + background-color: transparent; + border-color: hsl(44deg, 100%, 77%); + box-shadow: none; + color: hsl(44deg, 100%, 77%); +} +.button.is-warning.is-inverted.is-outlined { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.7); + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning.is-inverted.is-outlined:hover, .button.is-warning.is-inverted.is-outlined.is-hovered, .button.is-warning.is-inverted.is-outlined:focus, .button.is-warning.is-inverted.is-outlined.is-focused { + background-color: rgba(0, 0, 0, 0.7); + color: hsl(44deg, 100%, 77%); +} +.button.is-warning.is-inverted.is-outlined.is-loading:hover::after, .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-warning.is-inverted.is-outlined.is-loading:focus::after, .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(44deg, 100%, 77%) hsl(44deg, 100%, 77%) !important; +} +.button.is-warning.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-warning.is-inverted.is-outlined { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.7); + box-shadow: none; + color: rgba(0, 0, 0, 0.7); +} +.button.is-warning.is-light { + background-color: #fffaeb; + color: #946c00; +} +.button.is-warning.is-light:hover, .button.is-warning.is-light.is-hovered { + background-color: #fff6de; + border-color: transparent; + color: #946c00; +} +.button.is-warning.is-light:active, .button.is-warning.is-light.is-active { + background-color: #fff3d1; + border-color: transparent; + color: #946c00; +} +.button.is-danger { + background-color: hsl(348deg, 86%, 61%); + border-color: transparent; + color: #fff; +} +.button.is-danger:hover, .button.is-danger.is-hovered { + background-color: #f03a5f; + border-color: transparent; + color: #fff; +} +.button.is-danger:focus, .button.is-danger.is-focused { + border-color: transparent; + color: #fff; +} +.button.is-danger:focus:not(:active), .button.is-danger.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(241, 70, 104, 0.25); +} +.button.is-danger:active, .button.is-danger.is-active { + background-color: #ef2e55; + border-color: transparent; + color: #fff; +} +.button.is-danger[disabled], fieldset[disabled] .button.is-danger { + background-color: hsl(348deg, 86%, 61%); + border-color: hsl(348deg, 86%, 61%); + box-shadow: none; +} +.button.is-danger.is-inverted { + background-color: #fff; + color: hsl(348deg, 86%, 61%); +} +.button.is-danger.is-inverted:hover, .button.is-danger.is-inverted.is-hovered { + background-color: #f2f2f2; +} +.button.is-danger.is-inverted[disabled], fieldset[disabled] .button.is-danger.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: hsl(348deg, 86%, 61%); +} +.button.is-danger.is-loading::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-danger.is-outlined { + background-color: transparent; + border-color: hsl(348deg, 86%, 61%); + color: hsl(348deg, 86%, 61%); +} +.button.is-danger.is-outlined:hover, .button.is-danger.is-outlined.is-hovered, .button.is-danger.is-outlined:focus, .button.is-danger.is-outlined.is-focused { + background-color: hsl(348deg, 86%, 61%); + border-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.button.is-danger.is-outlined.is-loading::after { + border-color: transparent transparent hsl(348deg, 86%, 61%) hsl(348deg, 86%, 61%) !important; +} +.button.is-danger.is-outlined.is-loading:hover::after, .button.is-danger.is-outlined.is-loading.is-hovered::after, .button.is-danger.is-outlined.is-loading:focus::after, .button.is-danger.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; +} +.button.is-danger.is-outlined[disabled], fieldset[disabled] .button.is-danger.is-outlined { + background-color: transparent; + border-color: hsl(348deg, 86%, 61%); + box-shadow: none; + color: hsl(348deg, 86%, 61%); +} +.button.is-danger.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; +} +.button.is-danger.is-inverted.is-outlined:hover, .button.is-danger.is-inverted.is-outlined.is-hovered, .button.is-danger.is-inverted.is-outlined:focus, .button.is-danger.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: hsl(348deg, 86%, 61%); +} +.button.is-danger.is-inverted.is-outlined.is-loading:hover::after, .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-danger.is-inverted.is-outlined.is-loading:focus::after, .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent hsl(348deg, 86%, 61%) hsl(348deg, 86%, 61%) !important; +} +.button.is-danger.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-danger.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; +} +.button.is-danger.is-light { + background-color: #feecf0; + color: #cc0f35; +} +.button.is-danger.is-light:hover, .button.is-danger.is-light.is-hovered { + background-color: #fde0e6; + border-color: transparent; + color: #cc0f35; +} +.button.is-danger.is-light:active, .button.is-danger.is-light.is-active { + background-color: #fcd4dc; + border-color: transparent; + color: #cc0f35; +} +.button.is-small { + font-size: 0.75rem; +} +.button.is-small:not(.is-rounded) { + border-radius: 2px; +} +.button.is-normal { + font-size: 1rem; +} +.button.is-medium { + font-size: 1.25rem; +} +.button.is-large { + font-size: 1.5rem; +} +.button[disabled], fieldset[disabled] .button { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 86%); + box-shadow: none; + opacity: 0.5; +} +.button.is-fullwidth { + display: flex; + width: 100%; +} +.button.is-loading { + color: transparent !important; + pointer-events: none; +} +.button.is-loading::after { + position: absolute; + left: calc(50% - (1em * 0.5)); + top: calc(50% - (1em * 0.5)); + position: absolute !important; +} +.button.is-static { + background-color: hsl(0deg, 0%, 96%); + border-color: hsl(0deg, 0%, 86%); + color: hsl(0deg, 0%, 48%); + box-shadow: none; + pointer-events: none; +} +.button.is-rounded { + border-radius: 9999px; + padding-left: calc(1em + 0.25em); + padding-right: calc(1em + 0.25em); +} + +.buttons { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} +.buttons .button { + margin-bottom: 0.5rem; +} +.buttons .button:not(:last-child):not(.is-fullwidth) { + margin-right: 0.5rem; +} +.buttons:last-child { + margin-bottom: -0.5rem; +} +.buttons:not(:last-child) { + margin-bottom: 1rem; +} +.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large) { + font-size: 0.75rem; +} +.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded) { + border-radius: 2px; +} +.buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large) { + font-size: 1.25rem; +} +.buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium) { + font-size: 1.5rem; +} +.buttons.has-addons .button:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.buttons.has-addons .button:not(:last-child) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; + margin-right: -1px; +} +.buttons.has-addons .button:last-child { + margin-right: 0; +} +.buttons.has-addons .button:hover, .buttons.has-addons .button.is-hovered { + z-index: 2; +} +.buttons.has-addons .button:focus, .buttons.has-addons .button.is-focused, .buttons.has-addons .button:active, .buttons.has-addons .button.is-active, .buttons.has-addons .button.is-selected { + z-index: 3; +} +.buttons.has-addons .button:focus:hover, .buttons.has-addons .button.is-focused:hover, .buttons.has-addons .button:active:hover, .buttons.has-addons .button.is-active:hover, .buttons.has-addons .button.is-selected:hover { + z-index: 4; +} +.buttons.has-addons .button.is-expanded { + flex-grow: 1; + flex-shrink: 1; +} +.buttons.is-centered { + justify-content: center; +} +.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth) { + margin-left: 0.25rem; + margin-right: 0.25rem; +} +.buttons.is-right { + justify-content: flex-end; +} +.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth) { + margin-left: 0.25rem; + margin-right: 0.25rem; +} + +@media screen and (max-width: 768px) { + .button.is-responsive.is-small { + font-size: 0.5625rem; + } + .button.is-responsive, + .button.is-responsive.is-normal { + font-size: 0.65625rem; + } + .button.is-responsive.is-medium { + font-size: 0.75rem; + } + .button.is-responsive.is-large { + font-size: 1rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .button.is-responsive.is-small { + font-size: 0.65625rem; + } + .button.is-responsive, + .button.is-responsive.is-normal { + font-size: 0.75rem; + } + .button.is-responsive.is-medium { + font-size: 1rem; + } + .button.is-responsive.is-large { + font-size: 1.25rem; + } +} +.navbar { + background-color: hsl(0deg, 0%, 100%); + min-height: 3.25rem; + position: relative; + z-index: 30; +} +.navbar.is-white { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.navbar.is-white .navbar-brand > .navbar-item, +.navbar.is-white .navbar-brand .navbar-link { + color: hsl(0deg, 0%, 4%); +} +.navbar.is-white .navbar-brand > a.navbar-item:focus, .navbar.is-white .navbar-brand > a.navbar-item:hover, .navbar.is-white .navbar-brand > a.navbar-item.is-active, +.navbar.is-white .navbar-brand .navbar-link:focus, +.navbar.is-white .navbar-brand .navbar-link:hover, +.navbar.is-white .navbar-brand .navbar-link.is-active { + background-color: #f2f2f2; + color: hsl(0deg, 0%, 4%); +} +.navbar.is-white .navbar-brand .navbar-link::after { + border-color: hsl(0deg, 0%, 4%); +} +.navbar.is-white .navbar-burger { + color: hsl(0deg, 0%, 4%); +} +@media screen and (min-width: 1024px) { + .navbar.is-white .navbar-start > .navbar-item, + .navbar.is-white .navbar-start .navbar-link, + .navbar.is-white .navbar-end > .navbar-item, + .navbar.is-white .navbar-end .navbar-link { + color: hsl(0deg, 0%, 4%); + } + .navbar.is-white .navbar-start > a.navbar-item:focus, .navbar.is-white .navbar-start > a.navbar-item:hover, .navbar.is-white .navbar-start > a.navbar-item.is-active, + .navbar.is-white .navbar-start .navbar-link:focus, + .navbar.is-white .navbar-start .navbar-link:hover, + .navbar.is-white .navbar-start .navbar-link.is-active, + .navbar.is-white .navbar-end > a.navbar-item:focus, + .navbar.is-white .navbar-end > a.navbar-item:hover, + .navbar.is-white .navbar-end > a.navbar-item.is-active, + .navbar.is-white .navbar-end .navbar-link:focus, + .navbar.is-white .navbar-end .navbar-link:hover, + .navbar.is-white .navbar-end .navbar-link.is-active { + background-color: #f2f2f2; + color: hsl(0deg, 0%, 4%); + } + .navbar.is-white .navbar-start .navbar-link::after, + .navbar.is-white .navbar-end .navbar-link::after { + border-color: hsl(0deg, 0%, 4%); + } + .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #f2f2f2; + color: hsl(0deg, 0%, 4%); + } + .navbar.is-white .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); + } +} +.navbar.is-black { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.navbar.is-black .navbar-brand > .navbar-item, +.navbar.is-black .navbar-brand .navbar-link { + color: hsl(0deg, 0%, 100%); +} +.navbar.is-black .navbar-brand > a.navbar-item:focus, .navbar.is-black .navbar-brand > a.navbar-item:hover, .navbar.is-black .navbar-brand > a.navbar-item.is-active, +.navbar.is-black .navbar-brand .navbar-link:focus, +.navbar.is-black .navbar-brand .navbar-link:hover, +.navbar.is-black .navbar-brand .navbar-link.is-active { + background-color: black; + color: hsl(0deg, 0%, 100%); +} +.navbar.is-black .navbar-brand .navbar-link::after { + border-color: hsl(0deg, 0%, 100%); +} +.navbar.is-black .navbar-burger { + color: hsl(0deg, 0%, 100%); +} +@media screen and (min-width: 1024px) { + .navbar.is-black .navbar-start > .navbar-item, + .navbar.is-black .navbar-start .navbar-link, + .navbar.is-black .navbar-end > .navbar-item, + .navbar.is-black .navbar-end .navbar-link { + color: hsl(0deg, 0%, 100%); + } + .navbar.is-black .navbar-start > a.navbar-item:focus, .navbar.is-black .navbar-start > a.navbar-item:hover, .navbar.is-black .navbar-start > a.navbar-item.is-active, + .navbar.is-black .navbar-start .navbar-link:focus, + .navbar.is-black .navbar-start .navbar-link:hover, + .navbar.is-black .navbar-start .navbar-link.is-active, + .navbar.is-black .navbar-end > a.navbar-item:focus, + .navbar.is-black .navbar-end > a.navbar-item:hover, + .navbar.is-black .navbar-end > a.navbar-item.is-active, + .navbar.is-black .navbar-end .navbar-link:focus, + .navbar.is-black .navbar-end .navbar-link:hover, + .navbar.is-black .navbar-end .navbar-link.is-active { + background-color: black; + color: hsl(0deg, 0%, 100%); + } + .navbar.is-black .navbar-start .navbar-link::after, + .navbar.is-black .navbar-end .navbar-link::after { + border-color: hsl(0deg, 0%, 100%); + } + .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link { + background-color: black; + color: hsl(0deg, 0%, 100%); + } + .navbar.is-black .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); + } +} +.navbar.is-light { + background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.navbar.is-light .navbar-brand > .navbar-item, +.navbar.is-light .navbar-brand .navbar-link { + color: rgba(0, 0, 0, 0.7); +} +.navbar.is-light .navbar-brand > a.navbar-item:focus, .navbar.is-light .navbar-brand > a.navbar-item:hover, .navbar.is-light .navbar-brand > a.navbar-item.is-active, +.navbar.is-light .navbar-brand .navbar-link:focus, +.navbar.is-light .navbar-brand .navbar-link:hover, +.navbar.is-light .navbar-brand .navbar-link.is-active { + background-color: #e8e8e8; + color: rgba(0, 0, 0, 0.7); +} +.navbar.is-light .navbar-brand .navbar-link::after { + border-color: rgba(0, 0, 0, 0.7); +} +.navbar.is-light .navbar-burger { + color: rgba(0, 0, 0, 0.7); +} +@media screen and (min-width: 1024px) { + .navbar.is-light .navbar-start > .navbar-item, + .navbar.is-light .navbar-start .navbar-link, + .navbar.is-light .navbar-end > .navbar-item, + .navbar.is-light .navbar-end .navbar-link { + color: rgba(0, 0, 0, 0.7); + } + .navbar.is-light .navbar-start > a.navbar-item:focus, .navbar.is-light .navbar-start > a.navbar-item:hover, .navbar.is-light .navbar-start > a.navbar-item.is-active, + .navbar.is-light .navbar-start .navbar-link:focus, + .navbar.is-light .navbar-start .navbar-link:hover, + .navbar.is-light .navbar-start .navbar-link.is-active, + .navbar.is-light .navbar-end > a.navbar-item:focus, + .navbar.is-light .navbar-end > a.navbar-item:hover, + .navbar.is-light .navbar-end > a.navbar-item.is-active, + .navbar.is-light .navbar-end .navbar-link:focus, + .navbar.is-light .navbar-end .navbar-link:hover, + .navbar.is-light .navbar-end .navbar-link.is-active { + background-color: #e8e8e8; + color: rgba(0, 0, 0, 0.7); + } + .navbar.is-light .navbar-start .navbar-link::after, + .navbar.is-light .navbar-end .navbar-link::after { + border-color: rgba(0, 0, 0, 0.7); + } + .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #e8e8e8; + color: rgba(0, 0, 0, 0.7); + } + .navbar.is-light .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); + } +} +.navbar.is-dark { + background-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.navbar.is-dark .navbar-brand > .navbar-item, +.navbar.is-dark .navbar-brand .navbar-link { + color: #fff; +} +.navbar.is-dark .navbar-brand > a.navbar-item:focus, .navbar.is-dark .navbar-brand > a.navbar-item:hover, .navbar.is-dark .navbar-brand > a.navbar-item.is-active, +.navbar.is-dark .navbar-brand .navbar-link:focus, +.navbar.is-dark .navbar-brand .navbar-link:hover, +.navbar.is-dark .navbar-brand .navbar-link.is-active { + background-color: #292929; + color: #fff; +} +.navbar.is-dark .navbar-brand .navbar-link::after { + border-color: #fff; +} +.navbar.is-dark .navbar-burger { + color: #fff; +} +@media screen and (min-width: 1024px) { + .navbar.is-dark .navbar-start > .navbar-item, + .navbar.is-dark .navbar-start .navbar-link, + .navbar.is-dark .navbar-end > .navbar-item, + .navbar.is-dark .navbar-end .navbar-link { + color: #fff; + } + .navbar.is-dark .navbar-start > a.navbar-item:focus, .navbar.is-dark .navbar-start > a.navbar-item:hover, .navbar.is-dark .navbar-start > a.navbar-item.is-active, + .navbar.is-dark .navbar-start .navbar-link:focus, + .navbar.is-dark .navbar-start .navbar-link:hover, + .navbar.is-dark .navbar-start .navbar-link.is-active, + .navbar.is-dark .navbar-end > a.navbar-item:focus, + .navbar.is-dark .navbar-end > a.navbar-item:hover, + .navbar.is-dark .navbar-end > a.navbar-item.is-active, + .navbar.is-dark .navbar-end .navbar-link:focus, + .navbar.is-dark .navbar-end .navbar-link:hover, + .navbar.is-dark .navbar-end .navbar-link.is-active { + background-color: #292929; + color: #fff; + } + .navbar.is-dark .navbar-start .navbar-link::after, + .navbar.is-dark .navbar-end .navbar-link::after { + border-color: #fff; + } + .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #292929; + color: #fff; + } + .navbar.is-dark .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(0deg, 0%, 21%); + color: #fff; + } +} +.navbar.is-primary { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.navbar.is-primary .navbar-brand > .navbar-item, +.navbar.is-primary .navbar-brand .navbar-link { + color: #fff; +} +.navbar.is-primary .navbar-brand > a.navbar-item:focus, .navbar.is-primary .navbar-brand > a.navbar-item:hover, .navbar.is-primary .navbar-brand > a.navbar-item.is-active, +.navbar.is-primary .navbar-brand .navbar-link:focus, +.navbar.is-primary .navbar-brand .navbar-link:hover, +.navbar.is-primary .navbar-brand .navbar-link.is-active { + background-color: #00b89c; + color: #fff; +} +.navbar.is-primary .navbar-brand .navbar-link::after { + border-color: #fff; +} +.navbar.is-primary .navbar-burger { + color: #fff; +} +@media screen and (min-width: 1024px) { + .navbar.is-primary .navbar-start > .navbar-item, + .navbar.is-primary .navbar-start .navbar-link, + .navbar.is-primary .navbar-end > .navbar-item, + .navbar.is-primary .navbar-end .navbar-link { + color: #fff; + } + .navbar.is-primary .navbar-start > a.navbar-item:focus, .navbar.is-primary .navbar-start > a.navbar-item:hover, .navbar.is-primary .navbar-start > a.navbar-item.is-active, + .navbar.is-primary .navbar-start .navbar-link:focus, + .navbar.is-primary .navbar-start .navbar-link:hover, + .navbar.is-primary .navbar-start .navbar-link.is-active, + .navbar.is-primary .navbar-end > a.navbar-item:focus, + .navbar.is-primary .navbar-end > a.navbar-item:hover, + .navbar.is-primary .navbar-end > a.navbar-item.is-active, + .navbar.is-primary .navbar-end .navbar-link:focus, + .navbar.is-primary .navbar-end .navbar-link:hover, + .navbar.is-primary .navbar-end .navbar-link.is-active { + background-color: #00b89c; + color: #fff; + } + .navbar.is-primary .navbar-start .navbar-link::after, + .navbar.is-primary .navbar-end .navbar-link::after { + border-color: #fff; + } + .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #00b89c; + color: #fff; + } + .navbar.is-primary .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(171deg, 100%, 41%); + color: #fff; + } +} +.navbar.is-link { + background-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.navbar.is-link .navbar-brand > .navbar-item, +.navbar.is-link .navbar-brand .navbar-link { + color: #fff; +} +.navbar.is-link .navbar-brand > a.navbar-item:focus, .navbar.is-link .navbar-brand > a.navbar-item:hover, .navbar.is-link .navbar-brand > a.navbar-item.is-active, +.navbar.is-link .navbar-brand .navbar-link:focus, +.navbar.is-link .navbar-brand .navbar-link:hover, +.navbar.is-link .navbar-brand .navbar-link.is-active { + background-color: #3a51bb; + color: #fff; +} +.navbar.is-link .navbar-brand .navbar-link::after { + border-color: #fff; +} +.navbar.is-link .navbar-burger { + color: #fff; +} +@media screen and (min-width: 1024px) { + .navbar.is-link .navbar-start > .navbar-item, + .navbar.is-link .navbar-start .navbar-link, + .navbar.is-link .navbar-end > .navbar-item, + .navbar.is-link .navbar-end .navbar-link { + color: #fff; + } + .navbar.is-link .navbar-start > a.navbar-item:focus, .navbar.is-link .navbar-start > a.navbar-item:hover, .navbar.is-link .navbar-start > a.navbar-item.is-active, + .navbar.is-link .navbar-start .navbar-link:focus, + .navbar.is-link .navbar-start .navbar-link:hover, + .navbar.is-link .navbar-start .navbar-link.is-active, + .navbar.is-link .navbar-end > a.navbar-item:focus, + .navbar.is-link .navbar-end > a.navbar-item:hover, + .navbar.is-link .navbar-end > a.navbar-item.is-active, + .navbar.is-link .navbar-end .navbar-link:focus, + .navbar.is-link .navbar-end .navbar-link:hover, + .navbar.is-link .navbar-end .navbar-link.is-active { + background-color: #3a51bb; + color: #fff; + } + .navbar.is-link .navbar-start .navbar-link::after, + .navbar.is-link .navbar-end .navbar-link::after { + border-color: #fff; + } + .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #3a51bb; + color: #fff; + } + .navbar.is-link .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(229deg, 53%, 53%); + color: #fff; + } +} +.navbar.is-info { + background-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.navbar.is-info .navbar-brand > .navbar-item, +.navbar.is-info .navbar-brand .navbar-link { + color: #fff; +} +.navbar.is-info .navbar-brand > a.navbar-item:focus, .navbar.is-info .navbar-brand > a.navbar-item:hover, .navbar.is-info .navbar-brand > a.navbar-item.is-active, +.navbar.is-info .navbar-brand .navbar-link:focus, +.navbar.is-info .navbar-brand .navbar-link:hover, +.navbar.is-info .navbar-brand .navbar-link.is-active { + background-color: #3082c5; + color: #fff; +} +.navbar.is-info .navbar-brand .navbar-link::after { + border-color: #fff; +} +.navbar.is-info .navbar-burger { + color: #fff; +} +@media screen and (min-width: 1024px) { + .navbar.is-info .navbar-start > .navbar-item, + .navbar.is-info .navbar-start .navbar-link, + .navbar.is-info .navbar-end > .navbar-item, + .navbar.is-info .navbar-end .navbar-link { + color: #fff; + } + .navbar.is-info .navbar-start > a.navbar-item:focus, .navbar.is-info .navbar-start > a.navbar-item:hover, .navbar.is-info .navbar-start > a.navbar-item.is-active, + .navbar.is-info .navbar-start .navbar-link:focus, + .navbar.is-info .navbar-start .navbar-link:hover, + .navbar.is-info .navbar-start .navbar-link.is-active, + .navbar.is-info .navbar-end > a.navbar-item:focus, + .navbar.is-info .navbar-end > a.navbar-item:hover, + .navbar.is-info .navbar-end > a.navbar-item.is-active, + .navbar.is-info .navbar-end .navbar-link:focus, + .navbar.is-info .navbar-end .navbar-link:hover, + .navbar.is-info .navbar-end .navbar-link.is-active { + background-color: #3082c5; + color: #fff; + } + .navbar.is-info .navbar-start .navbar-link::after, + .navbar.is-info .navbar-end .navbar-link::after { + border-color: #fff; + } + .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #3082c5; + color: #fff; + } + .navbar.is-info .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(207deg, 61%, 53%); + color: #fff; + } +} +.navbar.is-success { + background-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.navbar.is-success .navbar-brand > .navbar-item, +.navbar.is-success .navbar-brand .navbar-link { + color: #fff; +} +.navbar.is-success .navbar-brand > a.navbar-item:focus, .navbar.is-success .navbar-brand > a.navbar-item:hover, .navbar.is-success .navbar-brand > a.navbar-item.is-active, +.navbar.is-success .navbar-brand .navbar-link:focus, +.navbar.is-success .navbar-brand .navbar-link:hover, +.navbar.is-success .navbar-brand .navbar-link.is-active { + background-color: #3abb81; + color: #fff; +} +.navbar.is-success .navbar-brand .navbar-link::after { + border-color: #fff; +} +.navbar.is-success .navbar-burger { + color: #fff; +} +@media screen and (min-width: 1024px) { + .navbar.is-success .navbar-start > .navbar-item, + .navbar.is-success .navbar-start .navbar-link, + .navbar.is-success .navbar-end > .navbar-item, + .navbar.is-success .navbar-end .navbar-link { + color: #fff; + } + .navbar.is-success .navbar-start > a.navbar-item:focus, .navbar.is-success .navbar-start > a.navbar-item:hover, .navbar.is-success .navbar-start > a.navbar-item.is-active, + .navbar.is-success .navbar-start .navbar-link:focus, + .navbar.is-success .navbar-start .navbar-link:hover, + .navbar.is-success .navbar-start .navbar-link.is-active, + .navbar.is-success .navbar-end > a.navbar-item:focus, + .navbar.is-success .navbar-end > a.navbar-item:hover, + .navbar.is-success .navbar-end > a.navbar-item.is-active, + .navbar.is-success .navbar-end .navbar-link:focus, + .navbar.is-success .navbar-end .navbar-link:hover, + .navbar.is-success .navbar-end .navbar-link.is-active { + background-color: #3abb81; + color: #fff; + } + .navbar.is-success .navbar-start .navbar-link::after, + .navbar.is-success .navbar-end .navbar-link::after { + border-color: #fff; + } + .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #3abb81; + color: #fff; + } + .navbar.is-success .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(153deg, 53%, 53%); + color: #fff; + } +} +.navbar.is-warning { + background-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.navbar.is-warning .navbar-brand > .navbar-item, +.navbar.is-warning .navbar-brand .navbar-link { + color: rgba(0, 0, 0, 0.7); +} +.navbar.is-warning .navbar-brand > a.navbar-item:focus, .navbar.is-warning .navbar-brand > a.navbar-item:hover, .navbar.is-warning .navbar-brand > a.navbar-item.is-active, +.navbar.is-warning .navbar-brand .navbar-link:focus, +.navbar.is-warning .navbar-brand .navbar-link:hover, +.navbar.is-warning .navbar-brand .navbar-link.is-active { + background-color: #ffd970; + color: rgba(0, 0, 0, 0.7); +} +.navbar.is-warning .navbar-brand .navbar-link::after { + border-color: rgba(0, 0, 0, 0.7); +} +.navbar.is-warning .navbar-burger { + color: rgba(0, 0, 0, 0.7); +} +@media screen and (min-width: 1024px) { + .navbar.is-warning .navbar-start > .navbar-item, + .navbar.is-warning .navbar-start .navbar-link, + .navbar.is-warning .navbar-end > .navbar-item, + .navbar.is-warning .navbar-end .navbar-link { + color: rgba(0, 0, 0, 0.7); + } + .navbar.is-warning .navbar-start > a.navbar-item:focus, .navbar.is-warning .navbar-start > a.navbar-item:hover, .navbar.is-warning .navbar-start > a.navbar-item.is-active, + .navbar.is-warning .navbar-start .navbar-link:focus, + .navbar.is-warning .navbar-start .navbar-link:hover, + .navbar.is-warning .navbar-start .navbar-link.is-active, + .navbar.is-warning .navbar-end > a.navbar-item:focus, + .navbar.is-warning .navbar-end > a.navbar-item:hover, + .navbar.is-warning .navbar-end > a.navbar-item.is-active, + .navbar.is-warning .navbar-end .navbar-link:focus, + .navbar.is-warning .navbar-end .navbar-link:hover, + .navbar.is-warning .navbar-end .navbar-link.is-active { + background-color: #ffd970; + color: rgba(0, 0, 0, 0.7); + } + .navbar.is-warning .navbar-start .navbar-link::after, + .navbar.is-warning .navbar-end .navbar-link::after { + border-color: rgba(0, 0, 0, 0.7); + } + .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #ffd970; + color: rgba(0, 0, 0, 0.7); + } + .navbar.is-warning .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); + } +} +.navbar.is-danger { + background-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.navbar.is-danger .navbar-brand > .navbar-item, +.navbar.is-danger .navbar-brand .navbar-link { + color: #fff; +} +.navbar.is-danger .navbar-brand > a.navbar-item:focus, .navbar.is-danger .navbar-brand > a.navbar-item:hover, .navbar.is-danger .navbar-brand > a.navbar-item.is-active, +.navbar.is-danger .navbar-brand .navbar-link:focus, +.navbar.is-danger .navbar-brand .navbar-link:hover, +.navbar.is-danger .navbar-brand .navbar-link.is-active { + background-color: #ef2e55; + color: #fff; +} +.navbar.is-danger .navbar-brand .navbar-link::after { + border-color: #fff; +} +.navbar.is-danger .navbar-burger { + color: #fff; +} +@media screen and (min-width: 1024px) { + .navbar.is-danger .navbar-start > .navbar-item, + .navbar.is-danger .navbar-start .navbar-link, + .navbar.is-danger .navbar-end > .navbar-item, + .navbar.is-danger .navbar-end .navbar-link { + color: #fff; + } + .navbar.is-danger .navbar-start > a.navbar-item:focus, .navbar.is-danger .navbar-start > a.navbar-item:hover, .navbar.is-danger .navbar-start > a.navbar-item.is-active, + .navbar.is-danger .navbar-start .navbar-link:focus, + .navbar.is-danger .navbar-start .navbar-link:hover, + .navbar.is-danger .navbar-start .navbar-link.is-active, + .navbar.is-danger .navbar-end > a.navbar-item:focus, + .navbar.is-danger .navbar-end > a.navbar-item:hover, + .navbar.is-danger .navbar-end > a.navbar-item.is-active, + .navbar.is-danger .navbar-end .navbar-link:focus, + .navbar.is-danger .navbar-end .navbar-link:hover, + .navbar.is-danger .navbar-end .navbar-link.is-active { + background-color: #ef2e55; + color: #fff; + } + .navbar.is-danger .navbar-start .navbar-link::after, + .navbar.is-danger .navbar-end .navbar-link::after { + border-color: #fff; + } + .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #ef2e55; + color: #fff; + } + .navbar.is-danger .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(348deg, 86%, 61%); + color: #fff; + } +} +.navbar > .container { + align-items: stretch; + display: flex; + min-height: 3.25rem; + width: 100%; +} +.navbar.has-shadow { + box-shadow: 0 2px 0 0 hsl(0deg, 0%, 96%); +} +.navbar.is-fixed-bottom, .navbar.is-fixed-top { + left: 0; + position: fixed; + right: 0; + z-index: 30; +} +.navbar.is-fixed-bottom { + bottom: 0; +} +.navbar.is-fixed-bottom.has-shadow { + box-shadow: 0 -2px 0 0 hsl(0deg, 0%, 96%); +} +.navbar.is-fixed-top { + top: 0; +} + +html.has-navbar-fixed-top, +body.has-navbar-fixed-top { + padding-top: 3.25rem; +} +html.has-navbar-fixed-bottom, +body.has-navbar-fixed-bottom { + padding-bottom: 3.25rem; +} + +.navbar-brand, +.navbar-tabs { + align-items: stretch; + display: flex; + flex-shrink: 0; + min-height: 3.25rem; +} + +.navbar-brand a.navbar-item:focus, .navbar-brand a.navbar-item:hover { + background-color: transparent; +} + +.navbar-tabs { + -webkit-overflow-scrolling: touch; + max-width: 100vw; + overflow-x: auto; + overflow-y: hidden; +} + +.navbar-burger { + color: hsl(0deg, 0%, 29%); + -moz-appearance: none; + -webkit-appearance: none; + appearance: none; + background: none; + border: none; + cursor: pointer; + display: block; + height: 3.25rem; + position: relative; + width: 3.25rem; + margin-left: auto; +} +.navbar-burger span { + background-color: currentColor; + display: block; + height: 1px; + left: calc(50% - 8px); + position: absolute; + transform-origin: center; + transition-duration: 86ms; + transition-property: background-color, opacity, transform; + transition-timing-function: ease-out; + width: 16px; +} +.navbar-burger span:nth-child(1) { + top: calc(50% - 6px); +} +.navbar-burger span:nth-child(2) { + top: calc(50% - 1px); +} +.navbar-burger span:nth-child(3) { + top: calc(50% + 4px); +} +.navbar-burger:hover { + background-color: rgba(0, 0, 0, 0.05); +} +.navbar-burger.is-active span:nth-child(1) { + transform: translateY(5px) rotate(45deg); +} +.navbar-burger.is-active span:nth-child(2) { + opacity: 0; +} +.navbar-burger.is-active span:nth-child(3) { + transform: translateY(-5px) rotate(-45deg); +} + +.navbar-menu { + display: none; +} + +.navbar-item, +.navbar-link { + color: hsl(0deg, 0%, 29%); + display: block; + line-height: 1.5; + padding: 0.5rem 0.75rem; + position: relative; +} +.navbar-item .icon:only-child, +.navbar-link .icon:only-child { + margin-left: -0.25rem; + margin-right: -0.25rem; +} + +a.navbar-item, +.navbar-link { + cursor: pointer; +} +a.navbar-item:focus, a.navbar-item:focus-within, a.navbar-item:hover, a.navbar-item.is-active, +.navbar-link:focus, +.navbar-link:focus-within, +.navbar-link:hover, +.navbar-link.is-active { + background-color: hsl(0deg, 0%, 98%); + color: hsl(229deg, 53%, 53%); +} + +.navbar-item { + flex-grow: 0; + flex-shrink: 0; +} +.navbar-item img { + max-height: 1.75rem; +} +.navbar-item.has-dropdown { + padding: 0; +} +.navbar-item.is-expanded { + flex-grow: 1; + flex-shrink: 1; +} +.navbar-item.is-tab { + border-bottom: 1px solid transparent; + min-height: 3.25rem; + padding-bottom: calc(0.5rem - 1px); +} +.navbar-item.is-tab:focus, .navbar-item.is-tab:hover { + background-color: transparent; + border-bottom-color: hsl(229deg, 53%, 53%); +} +.navbar-item.is-tab.is-active { + background-color: transparent; + border-bottom-color: hsl(229deg, 53%, 53%); + border-bottom-style: solid; + border-bottom-width: 3px; + color: hsl(229deg, 53%, 53%); + padding-bottom: calc(0.5rem - 3px); +} + +.navbar-content { + flex-grow: 1; + flex-shrink: 1; +} + +.navbar-link:not(.is-arrowless) { + padding-right: 2.5em; +} +.navbar-link:not(.is-arrowless)::after { + border-color: hsl(229deg, 53%, 53%); + margin-top: -0.375em; + right: 1.125em; +} + +.navbar-dropdown { + font-size: 0.875rem; + padding-bottom: 0.5rem; + padding-top: 0.5rem; +} +.navbar-dropdown .navbar-item { + padding-left: 1.5rem; + padding-right: 1.5rem; +} + +.navbar-divider { + background-color: hsl(0deg, 0%, 96%); + border: none; + display: none; + height: 2px; + margin: 0.5rem 0; +} + +@media screen and (max-width: 1023px) { + .navbar > .container { + display: block; + } + .navbar-brand .navbar-item, + .navbar-tabs .navbar-item { + align-items: center; + display: flex; + } + .navbar-link::after { + display: none; + } + .navbar-menu { + background-color: hsl(0deg, 0%, 100%); + box-shadow: 0 8px 16px rgba(10, 10, 10, 0.1); + padding: 0.5rem 0; + } + .navbar-menu.is-active { + display: block; + } + .navbar.is-fixed-bottom-touch, .navbar.is-fixed-top-touch { + left: 0; + position: fixed; + right: 0; + z-index: 30; + } + .navbar.is-fixed-bottom-touch { + bottom: 0; + } + .navbar.is-fixed-bottom-touch.has-shadow { + box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); + } + .navbar.is-fixed-top-touch { + top: 0; + } + .navbar.is-fixed-top .navbar-menu, .navbar.is-fixed-top-touch .navbar-menu { + -webkit-overflow-scrolling: touch; + max-height: calc(100vh - 3.25rem); + overflow: auto; + } + html.has-navbar-fixed-top-touch, + body.has-navbar-fixed-top-touch { + padding-top: 3.25rem; + } + html.has-navbar-fixed-bottom-touch, + body.has-navbar-fixed-bottom-touch { + padding-bottom: 3.25rem; + } +} +@media screen and (min-width: 1024px) { + .navbar, + .navbar-menu, + .navbar-start, + .navbar-end { + align-items: stretch; + display: flex; + } + .navbar { + min-height: 3.25rem; + } + .navbar.is-spaced { + padding: 1rem 2rem; + } + .navbar.is-spaced .navbar-start, + .navbar.is-spaced .navbar-end { + align-items: center; + } + .navbar.is-spaced a.navbar-item, + .navbar.is-spaced .navbar-link { + border-radius: 4px; + } + .navbar.is-transparent a.navbar-item:focus, .navbar.is-transparent a.navbar-item:hover, .navbar.is-transparent a.navbar-item.is-active, + .navbar.is-transparent .navbar-link:focus, + .navbar.is-transparent .navbar-link:hover, + .navbar.is-transparent .navbar-link.is-active { + background-color: transparent !important; + } + .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link { + background-color: transparent !important; + } + .navbar.is-transparent .navbar-dropdown a.navbar-item:focus, .navbar.is-transparent .navbar-dropdown a.navbar-item:hover { + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 4%); + } + .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(0deg, 0%, 96%); + color: hsl(229deg, 53%, 53%); + } + .navbar-burger { + display: none; + } + .navbar-item, + .navbar-link { + align-items: center; + display: flex; + } + .navbar-item.has-dropdown { + align-items: stretch; + } + .navbar-item.has-dropdown-up .navbar-link::after { + transform: rotate(135deg) translate(0.25em, -0.25em); + } + .navbar-item.has-dropdown-up .navbar-dropdown { + border-bottom: 2px solid hsl(0deg, 0%, 86%); + border-radius: 6px 6px 0 0; + border-top: none; + bottom: 100%; + box-shadow: 0 -8px 8px rgba(10, 10, 10, 0.1); + top: auto; + } + .navbar-item.is-active .navbar-dropdown, .navbar-item.is-hoverable:focus .navbar-dropdown, .navbar-item.is-hoverable:focus-within .navbar-dropdown, .navbar-item.is-hoverable:hover .navbar-dropdown { + display: block; + } + .navbar.is-spaced .navbar-item.is-active .navbar-dropdown, .navbar-item.is-active .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown, .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown, .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown, .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed { + opacity: 1; + pointer-events: auto; + transform: translateY(0); + } + .navbar-menu { + flex-grow: 1; + flex-shrink: 0; + } + .navbar-start { + justify-content: flex-start; + margin-right: auto; + } + .navbar-end { + justify-content: flex-end; + margin-left: auto; + } + .navbar-dropdown { + background-color: hsl(0deg, 0%, 100%); + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-top: 2px solid hsl(0deg, 0%, 86%); + box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1); + display: none; + font-size: 0.875rem; + left: 0; + min-width: 100%; + position: absolute; + top: 100%; + z-index: 20; + } + .navbar-dropdown .navbar-item { + padding: 0.375rem 1rem; + white-space: nowrap; + } + .navbar-dropdown a.navbar-item { + padding-right: 3rem; + } + .navbar-dropdown a.navbar-item:focus, .navbar-dropdown a.navbar-item:hover { + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 4%); + } + .navbar-dropdown a.navbar-item.is-active { + background-color: hsl(0deg, 0%, 96%); + color: hsl(229deg, 53%, 53%); + } + .navbar.is-spaced .navbar-dropdown, .navbar-dropdown.is-boxed { + border-radius: 6px; + border-top: none; + box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + display: block; + opacity: 0; + pointer-events: none; + top: calc(100% + (-4px)); + transform: translateY(-5px); + transition-duration: 86ms; + transition-property: opacity, transform; + } + .navbar-dropdown.is-right { + left: auto; + right: 0; + } + .navbar-divider { + display: block; + } + .navbar > .container .navbar-brand, + .container > .navbar .navbar-brand { + margin-left: -0.75rem; + } + .navbar > .container .navbar-menu, + .container > .navbar .navbar-menu { + margin-right: -0.75rem; + } + .navbar.is-fixed-bottom-desktop, .navbar.is-fixed-top-desktop { + left: 0; + position: fixed; + right: 0; + z-index: 30; + } + .navbar.is-fixed-bottom-desktop { + bottom: 0; + } + .navbar.is-fixed-bottom-desktop.has-shadow { + box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); + } + .navbar.is-fixed-top-desktop { + top: 0; + } + html.has-navbar-fixed-top-desktop, + body.has-navbar-fixed-top-desktop { + padding-top: 3.25rem; + } + html.has-navbar-fixed-bottom-desktop, + body.has-navbar-fixed-bottom-desktop { + padding-bottom: 3.25rem; + } + html.has-spaced-navbar-fixed-top, + body.has-spaced-navbar-fixed-top { + padding-top: 5.25rem; + } + html.has-spaced-navbar-fixed-bottom, + body.has-spaced-navbar-fixed-bottom { + padding-bottom: 5.25rem; + } + a.navbar-item.is-active, + .navbar-link.is-active { + color: hsl(0deg, 0%, 4%); + } + a.navbar-item.is-active:not(:focus):not(:hover), + .navbar-link.is-active:not(:focus):not(:hover) { + background-color: transparent; + } + .navbar-item.has-dropdown:focus .navbar-link, .navbar-item.has-dropdown:hover .navbar-link, .navbar-item.has-dropdown.is-active .navbar-link { + background-color: hsl(0deg, 0%, 98%); + } +} +.hero.is-fullheight-with-navbar { + min-height: calc(100vh - 3.25rem); +} + +#player .button, #player a.button, #player button.button, .ax .button, .ax a.button, .ax button.button { + font-size: 1rem; + display: inline-block; + padding: 0.4rem; + border: none; + justify-content: center; + text-align: center; + cursor: pointer; + text-decoration: none; + color: var(--button-fg); + background-color: var(--button-bg); +} +#player .button.secondary, #player a.button.secondary, #player button.button.secondary, .ax .button.secondary, .ax a.button.secondary, .ax button.button.secondary { + background-color: var(--button-sec-bg); +} +#player .button .label, #player .button label, #player a.button .label, #player a.button label, #player button.button .label, #player button.button label, .ax .button .label, .ax .button label, .ax a.button .label, .ax a.button label, .ax button.button .label, .ax button.button label { + cursor: pointer; +} +#player .button .icon, #player a.button .icon, #player button.button .icon, .ax .button .icon, .ax a.button .icon, .ax button.button .icon { + vertical-align: middle; +} +#player .button .icon:not(:only-child):first-child, #player a.button .icon:not(:only-child):first-child, #player button.button .icon:not(:only-child):first-child, .ax .button .icon:not(:only-child):first-child, .ax a.button .icon:not(:only-child):first-child, .ax button.button .icon:not(:only-child):first-child { + margin-right: 0.6rem; +} +#player .button .icon:not(:only-child):last-child, #player a.button .icon:not(:only-child):last-child, #player button.button .icon:not(:only-child):last-child, .ax .button .icon:not(:only-child):last-child, .ax a.button .icon:not(:only-child):last-child, .ax button.button .icon:not(:only-child):last-child { + margin-left: 0.6rem; +} +#player .button:hover, #player a.button:hover, #player button.button:hover, .ax .button:hover, .ax a.button:hover, .ax button.button:hover { + color: var(--button-hv-fg); + background-color: var(--button-hv-bg); + opacity: 1 !important; +} +#player .button.active:not(:hover), #player a.button.active:not(:hover), #player button.button.active:not(:hover), .ax .button.active:not(:hover), .ax a.button.active:not(:hover), .ax button.button.active:not(:hover) { + color: var(--button-active-fg); + background-color: var(--button-active-bg); +} +#player .button:not([disabled]), #player .button:not(.disabled), #player a.button:not([disabled]), #player a.button:not(.disabled), #player button.button:not([disabled]), #player button.button:not(.disabled), .ax .button:not([disabled]), .ax .button:not(.disabled), .ax a.button:not([disabled]), .ax a.button:not(.disabled), .ax button.button:not([disabled]), .ax button.button:not(.disabled) { + cursor: pointer; +} +#player .button[disabled], #player .button.disabled, #player a.button[disabled], #player a.button.disabled, #player button.button[disabled], #player button.button.disabled, .ax .button[disabled], .ax .button.disabled, .ax a.button[disabled], .ax a.button.disabled, .ax button.button[disabled], .ax button.button.disabled { + background-color: var(--text-color-light); + color: var(--secondary-color); + border-color: var(--secondary-color-light); +} +#player .button .dropdown-trigger, #player a.button .dropdown-trigger, #player button.button .dropdown-trigger, .ax .button .dropdown-trigger, .ax a.button .dropdown-trigger, .ax button.button .dropdown-trigger { + border-radius: 1.5em; +} +#player .button-group .button, #player .nav .button, .ax .button-group .button, .ax .nav .button { + border-radius: 0px; + background-color: transparent; + border-top: 0px; + border-bottom: 0px; + height: 100%; +} +#player .button-group .button:not(:first-child), #player .nav .button:not(:first-child), .ax .button-group .button:not(:first-child), .ax .nav .button:not(:first-child) { + border-left: 0px; +} +#player .button-group .button:last-child, #player .nav .button:last-child, .ax .button-group .button:last-child, .ax .nav .button:last-child { + border-right: 0px; +} + +.admin .navbar.has-shadow, .admin .navbar.is-fixed-bottom.has-shadow { + box-shadow: 0em 0em 1em rgba(0, 0, 0, 0.1); +} +.admin a.navbar-item.is-active { + border-bottom: 1px grey solid; +} +.admin .navbar + .container { + margin-top: 1em; +} +.admin .navbar .navbar-dropdown { + z-index: 2000; +} +.admin .navbar .navbar-split { + margin: 0.2em 0em; + margin-right: 1em; + padding-right: 1em; + border-right: 1px #ddd solid; + display: inline-block; +} +.admin .navbar form { + margin: 0em; + padding: 0em; +} +.admin .navbar.toolbar { + margin: 1em 0em; + background-color: transparent; + margin-bottom: 1em; +} +.admin .navbar.toolbar .title { + padding-right: 2em; + margin-right: 1em; + border-right: 1px #ddd solid; + font-size: 1rem; + font-weight: 100; +} +.admin .navbar .navbar-dropdown { + max-height: 40rem; + overflow-y: auto; +} +.admin .navbar .navbar-dropdown input { + z-index: 10000; + position: sticky; + top: 0; +} .admin .navbar .navbar-brand { padding-right: 1em; } diff --git a/aircox/static/aircox/css/chunk-common.css b/aircox/static/aircox/css/chunk-common.css index 90019a9..dbc0849 100644 --- a/aircox/static/aircox/css/chunk-common.css +++ b/aircox/static/aircox/css/chunk-common.css @@ -1,13 +1,48 @@ +/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css ***! + \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ + +.a-carousel[data-v-b79f173e] { + width: 100%; + position: relative; +} +.a-carousel-viewport[data-v-b79f173e] { + width: 100%; + overflow-x: hidden; +} +.a-carousel-container[data-v-b79f173e] { + display: flex; + flex-direction: row; + align-items: left; +} +.a-carousel-container > *[data-v-b79f173e] { + flex-shrink: 0; +} +.a-carousel-bullets-container[data-v-b79f173e] { + flex-grow: 1; +} +.a-carousel-bullets-container .bullet[data-v-b79f173e] { + cursor: pointer; +} +.a-carousel-bullets-container .left[data-v-b79f173e] { + min-width: 2rem; + margin-right: auto; +} +.a-carousel-bullets-container .right[data-v-b79f173e] { + min-width: 2rem; + margin-left: auto; +} +.a-carousel-bullets-container[data-v-b79f173e] { + display: flex; + flex-direction: row; +} + /*!**************************************************************************************************************************************************************************************************************************************!*\ - !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-24.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-24.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-24.use[3]!./src/assets/styles.scss ***! + !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-24.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-24.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-24.use[3]!./src/assets/common.scss ***! \**************************************************************************************************************************************************************************************************************************************/ -@charset "UTF-8"; /* Bulma Utilities */ -.pagination-previous, -.pagination-next, -.pagination-link, -.pagination-ellipsis, .file-cta, -.file-name, .select select, .textarea, .input, .button { +.file-cta, +.file-name, .select select, .textarea, .input { -moz-appearance: none; -webkit-appearance: none; align-items: center; @@ -26,48 +61,27 @@ position: relative; vertical-align: top; } -.pagination-previous:focus, -.pagination-next:focus, -.pagination-link:focus, -.pagination-ellipsis:focus, .file-cta:focus, -.file-name:focus, .select select:focus, .textarea:focus, .input:focus, .button:focus, .is-focused.pagination-previous, -.is-focused.pagination-next, -.is-focused.pagination-link, -.is-focused.pagination-ellipsis, .is-focused.file-cta, -.is-focused.file-name, .select select.is-focused, .is-focused.textarea, .is-focused.input, .is-focused.button, .pagination-previous:active, -.pagination-next:active, -.pagination-link:active, -.pagination-ellipsis:active, .file-cta:active, -.file-name:active, .select select:active, .textarea:active, .input:active, .button:active, .is-active.pagination-previous, -.is-active.pagination-next, -.is-active.pagination-link, -.is-active.pagination-ellipsis, .is-active.file-cta, -.is-active.file-name, .select select.is-active, .is-active.textarea, .is-active.input, .is-active.button { +.file-cta:focus, +.file-name:focus, .select select:focus, .textarea:focus, .input:focus, .is-focused.file-cta, +.is-focused.file-name, .select select.is-focused, .is-focused.textarea, .is-focused.input, .file-cta:active, +.file-name:active, .select select:active, .textarea:active, .input:active, .is-active.file-cta, +.is-active.file-name, .select select.is-active, .is-active.textarea, .is-active.input { outline: none; } -[disabled].pagination-previous, -[disabled].pagination-next, -[disabled].pagination-link, -[disabled].pagination-ellipsis, [disabled].file-cta, -[disabled].file-name, .select select[disabled], [disabled].textarea, [disabled].input, [disabled].button, fieldset[disabled] .pagination-previous, -fieldset[disabled] .pagination-next, -fieldset[disabled] .pagination-link, -fieldset[disabled] .pagination-ellipsis, fieldset[disabled] .file-cta, -fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input, fieldset[disabled] .button { +[disabled].file-cta, +[disabled].file-name, .select select[disabled], [disabled].textarea, [disabled].input, fieldset[disabled] .file-cta, +fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input { cursor: not-allowed; } -.is-unselectable, .tabs, .pagination-previous, -.pagination-next, -.pagination-link, -.pagination-ellipsis, .breadcrumb, .file, .button { +.is-unselectable, .file { -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; user-select: none; } -.navbar-link:not(.is-arrowless)::after, .select:not(.is-multiple):not(.is-loading)::after { +.select:not(.is-multiple):not(.is-loading)::after { border: 3px solid transparent; border-radius: 2px; border-right: 0; @@ -84,12 +98,11 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields width: 0.625em; } -.tabs:not(:last-child), .pagination:not(:last-child), .message:not(:last-child), .level:not(:last-child), .breadcrumb:not(:last-child), .block:not(:last-child), .title:not(:last-child), -.subtitle:not(:last-child), .table-container:not(:last-child), .table:not(:last-child), .progress:not(:last-child), .notification:not(:last-child), .content:not(:last-child), .box:not(:last-child) { +.table-container:not(:last-child), .table:not(:last-child), .box:not(:last-child), .message:not(:last-child) { margin-bottom: 1.5rem; } -.modal-close, .delete { +.modal-close { -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; @@ -115,7 +128,7 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields vertical-align: top; width: 20px; } -.modal-close::before, .delete::before, .modal-close::after, .delete::after { +.modal-close::before, .modal-close::after { background-color: hsl(0deg, 0%, 100%); content: ""; display: block; @@ -125,21 +138,21 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields transform: translateX(-50%) translateY(-50%) rotate(45deg); transform-origin: center center; } -.modal-close::before, .delete::before { +.modal-close::before { height: 2px; width: 50%; } -.modal-close::after, .delete::after { +.modal-close::after { height: 50%; width: 2px; } -.modal-close:hover, .delete:hover, .modal-close:focus, .delete:focus { +.modal-close:hover, .modal-close:focus { background-color: rgba(10, 10, 10, 0.3); } -.modal-close:active, .delete:active { +.modal-close:active { background-color: rgba(10, 10, 10, 0.4); } -.is-small.modal-close, .is-small.delete { +.is-small.modal-close { height: 16px; max-height: 16px; max-width: 16px; @@ -147,7 +160,7 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields min-width: 16px; width: 16px; } -.is-medium.modal-close, .is-medium.delete { +.is-medium.modal-close { height: 24px; max-height: 24px; max-width: 24px; @@ -155,7 +168,7 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields min-width: 24px; width: 24px; } -.is-large.modal-close, .is-large.delete { +.is-large.modal-close { height: 32px; max-height: 32px; max-width: 32px; @@ -164,7 +177,7 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields width: 32px; } -.control.is-loading::after, .select.is-loading::after, .loader, .button.is-loading::after { +.control.is-loading::after, .select.is-loading::after { animation: spinAround 500ms infinite linear; border: 2px solid hsl(0deg, 0%, 86%); border-radius: 9999px; @@ -177,23 +190,7 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields width: 1em; } -.hero-video, .is-overlay, .modal-background, .modal, .image.is-square img, -.image.is-square .has-ratio, .image.is-1by1 img, -.image.is-1by1 .has-ratio, .image.is-5by4 img, -.image.is-5by4 .has-ratio, .image.is-4by3 img, -.image.is-4by3 .has-ratio, .image.is-3by2 img, -.image.is-3by2 .has-ratio, .image.is-5by3 img, -.image.is-5by3 .has-ratio, .image.is-16by9 img, -.image.is-16by9 .has-ratio, .image.is-2by1 img, -.image.is-2by1 .has-ratio, .image.is-3by1 img, -.image.is-3by1 .has-ratio, .image.is-4by5 img, -.image.is-4by5 .has-ratio, .image.is-3by4 img, -.image.is-3by4 .has-ratio, .image.is-2by3 img, -.image.is-2by3 .has-ratio, .image.is-3by5 img, -.image.is-3by5 .has-ratio, .image.is-9by16 img, -.image.is-9by16 .has-ratio, .image.is-1by2 img, -.image.is-1by2 .has-ratio, .image.is-1by3 img, -.image.is-1by3 .has-ratio { +.hero-video, .is-overlay, .modal-background, .modal { bottom: 0; left: 0; position: absolute; @@ -201,304 +198,6 @@ fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fields top: 0; } -.navbar-burger { - -moz-appearance: none; - -webkit-appearance: none; - appearance: none; - background: none; - border: none; - color: currentColor; - font-family: inherit; - font-size: 1em; - margin: 0; - padding: 0; -} - -.dropdown { - display: inline-flex; - position: relative; - vertical-align: top; -} -.dropdown.is-active .dropdown-menu, .dropdown.is-hoverable:hover .dropdown-menu { - display: block; -} -.dropdown.is-right .dropdown-menu { - left: auto; - right: 0; -} -.dropdown.is-up .dropdown-menu { - bottom: 100%; - padding-bottom: 4px; - padding-top: initial; - top: auto; -} - -.dropdown-menu { - display: none; - left: 0; - min-width: 12rem; - padding-top: 4px; - position: absolute; - top: 100%; - z-index: 20; -} - -.dropdown-content { - background-color: hsl(0deg, 0%, 100%); - border-radius: 4px; - box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); - padding-bottom: 0.5rem; - padding-top: 0.5rem; -} - -.dropdown-item { - color: hsl(0deg, 0%, 29%); - display: block; - font-size: 0.875rem; - line-height: 1.5; - padding: 0.375rem 1rem; - position: relative; -} - -a.dropdown-item, -button.dropdown-item { - padding-right: 3rem; - text-align: inherit; - white-space: nowrap; - width: 100%; -} -a.dropdown-item:hover, -button.dropdown-item:hover { - background-color: hsl(0deg, 0%, 96%); - color: hsl(0deg, 0%, 4%); -} -a.dropdown-item.is-active, -button.dropdown-item.is-active { - background-color: hsl(229deg, 53%, 53%); - color: #fff; -} - -.dropdown-divider { - background-color: hsl(0deg, 0%, 93%); - border: none; - display: block; - height: 1px; - margin: 0.5rem 0; -} - -/*! bulma.io v0.9.4 | MIT License | github.com/jgthms/bulma */ -/* Bulma Utilities */ -.pagination-previous, -.pagination-next, -.pagination-link, -.pagination-ellipsis, .file-cta, -.file-name, .select select, .textarea, .input, .button { - -moz-appearance: none; - -webkit-appearance: none; - align-items: center; - border: 1px solid transparent; - border-radius: 4px; - box-shadow: none; - display: inline-flex; - font-size: 1rem; - height: 2.5em; - justify-content: flex-start; - line-height: 1.5; - padding-bottom: calc(0.5em - 1px); - padding-left: calc(0.75em - 1px); - padding-right: calc(0.75em - 1px); - padding-top: calc(0.5em - 1px); - position: relative; - vertical-align: top; -} -.pagination-previous:focus, -.pagination-next:focus, -.pagination-link:focus, -.pagination-ellipsis:focus, .file-cta:focus, -.file-name:focus, .select select:focus, .textarea:focus, .input:focus, .button:focus, .is-focused.pagination-previous, -.is-focused.pagination-next, -.is-focused.pagination-link, -.is-focused.pagination-ellipsis, .is-focused.file-cta, -.is-focused.file-name, .select select.is-focused, .is-focused.textarea, .is-focused.input, .is-focused.button, .pagination-previous:active, -.pagination-next:active, -.pagination-link:active, -.pagination-ellipsis:active, .file-cta:active, -.file-name:active, .select select:active, .textarea:active, .input:active, .button:active, .is-active.pagination-previous, -.is-active.pagination-next, -.is-active.pagination-link, -.is-active.pagination-ellipsis, .is-active.file-cta, -.is-active.file-name, .select select.is-active, .is-active.textarea, .is-active.input, .is-active.button { - outline: none; -} -[disabled].pagination-previous, -[disabled].pagination-next, -[disabled].pagination-link, -[disabled].pagination-ellipsis, [disabled].file-cta, -[disabled].file-name, .select select[disabled], [disabled].textarea, [disabled].input, [disabled].button, fieldset[disabled] .pagination-previous, -fieldset[disabled] .pagination-next, -fieldset[disabled] .pagination-link, -fieldset[disabled] .pagination-ellipsis, fieldset[disabled] .file-cta, -fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input, fieldset[disabled] .button { - cursor: not-allowed; -} - -.is-unselectable, .tabs, .pagination-previous, -.pagination-next, -.pagination-link, -.pagination-ellipsis, .breadcrumb, .file, .button { - -webkit-touch-callout: none; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; -} - -.navbar-link:not(.is-arrowless)::after, .select:not(.is-multiple):not(.is-loading)::after { - border: 3px solid transparent; - border-radius: 2px; - border-right: 0; - border-top: 0; - content: " "; - display: block; - height: 0.625em; - margin-top: -0.4375em; - pointer-events: none; - position: absolute; - top: 50%; - transform: rotate(-45deg); - transform-origin: center; - width: 0.625em; -} - -.tabs:not(:last-child), .pagination:not(:last-child), .message:not(:last-child), .level:not(:last-child), .breadcrumb:not(:last-child), .block:not(:last-child), .title:not(:last-child), -.subtitle:not(:last-child), .table-container:not(:last-child), .table:not(:last-child), .progress:not(:last-child), .notification:not(:last-child), .content:not(:last-child), .box:not(:last-child) { - margin-bottom: 1.5rem; -} - -.modal-close, .delete { - -webkit-touch-callout: none; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; - -moz-appearance: none; - -webkit-appearance: none; - background-color: rgba(10, 10, 10, 0.2); - border: none; - border-radius: 9999px; - cursor: pointer; - pointer-events: auto; - display: inline-block; - flex-grow: 0; - flex-shrink: 0; - font-size: 0; - height: 20px; - max-height: 20px; - max-width: 20px; - min-height: 20px; - min-width: 20px; - outline: none; - position: relative; - vertical-align: top; - width: 20px; -} -.modal-close::before, .delete::before, .modal-close::after, .delete::after { - background-color: hsl(0deg, 0%, 100%); - content: ""; - display: block; - left: 50%; - position: absolute; - top: 50%; - transform: translateX(-50%) translateY(-50%) rotate(45deg); - transform-origin: center center; -} -.modal-close::before, .delete::before { - height: 2px; - width: 50%; -} -.modal-close::after, .delete::after { - height: 50%; - width: 2px; -} -.modal-close:hover, .delete:hover, .modal-close:focus, .delete:focus { - background-color: rgba(10, 10, 10, 0.3); -} -.modal-close:active, .delete:active { - background-color: rgba(10, 10, 10, 0.4); -} -.is-small.modal-close, .is-small.delete { - height: 16px; - max-height: 16px; - max-width: 16px; - min-height: 16px; - min-width: 16px; - width: 16px; -} -.is-medium.modal-close, .is-medium.delete { - height: 24px; - max-height: 24px; - max-width: 24px; - min-height: 24px; - min-width: 24px; - width: 24px; -} -.is-large.modal-close, .is-large.delete { - height: 32px; - max-height: 32px; - max-width: 32px; - min-height: 32px; - min-width: 32px; - width: 32px; -} - -.control.is-loading::after, .select.is-loading::after, .loader, .button.is-loading::after { - animation: spinAround 500ms infinite linear; - border: 2px solid hsl(0deg, 0%, 86%); - border-radius: 9999px; - border-right-color: transparent; - border-top-color: transparent; - content: ""; - display: block; - height: 1em; - position: relative; - width: 1em; -} - -.hero-video, .is-overlay, .modal-background, .modal, .image.is-square img, -.image.is-square .has-ratio, .image.is-1by1 img, -.image.is-1by1 .has-ratio, .image.is-5by4 img, -.image.is-5by4 .has-ratio, .image.is-4by3 img, -.image.is-4by3 .has-ratio, .image.is-3by2 img, -.image.is-3by2 .has-ratio, .image.is-5by3 img, -.image.is-5by3 .has-ratio, .image.is-16by9 img, -.image.is-16by9 .has-ratio, .image.is-2by1 img, -.image.is-2by1 .has-ratio, .image.is-3by1 img, -.image.is-3by1 .has-ratio, .image.is-4by5 img, -.image.is-4by5 .has-ratio, .image.is-3by4 img, -.image.is-3by4 .has-ratio, .image.is-2by3 img, -.image.is-2by3 .has-ratio, .image.is-3by5 img, -.image.is-3by5 .has-ratio, .image.is-9by16 img, -.image.is-9by16 .has-ratio, .image.is-1by2 img, -.image.is-1by2 .has-ratio, .image.is-1by3 img, -.image.is-1by3 .has-ratio { - bottom: 0; - left: 0; - position: absolute; - right: 0; - top: 0; -} - -.navbar-burger { - -moz-appearance: none; - -webkit-appearance: none; - appearance: none; - background: none; - border: none; - color: currentColor; - font-family: inherit; - font-size: 1em; - margin: 0; - padding: 0; -} - /* Bulma Base */ /*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */ html, body, @@ -581,7 +280,7 @@ th:not([align]) { } html { - background-color: hsl(0deg, 0%, 96%); + background-color: hsl(0deg, 0%, 100%); font-size: 16px; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; @@ -621,7 +320,7 @@ pre { } body { - color: hsl(0deg, 0%, 29%); + color: #000; font-size: 1em; font-weight: 400; line-height: 1.5; @@ -720,2274 +419,397 @@ table th { transform: rotate(359deg); } } -/* Bulma Elements */ -.box { +.dropdown { + display: inline-flex; + position: relative; + vertical-align: top; +} +.dropdown.is-active .dropdown-menu, .dropdown.is-hoverable:hover .dropdown-menu { + display: block; +} +.dropdown.is-right .dropdown-menu { + left: auto; + right: 0; +} +.dropdown.is-up .dropdown-menu { + bottom: 100%; + padding-bottom: 4px; + padding-top: initial; + top: auto; +} + +.dropdown-menu { + display: none; + left: 0; + min-width: 12rem; + padding-top: 4px; + position: absolute; + top: 100%; + z-index: 20; +} + +.dropdown-content { background-color: hsl(0deg, 0%, 100%); - border-radius: 6px; + border-radius: 4px; box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); + padding-bottom: 0.5rem; + padding-top: 0.5rem; +} + +.dropdown-item { color: hsl(0deg, 0%, 29%); display: block; - padding: 1.25rem; -} - -a.box:hover, a.box:focus { - box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0 0 1px hsl(229deg, 53%, 53%); -} -a.box:active { - box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px hsl(229deg, 53%, 53%); -} - -.button { - background-color: hsl(0deg, 0%, 100%); - border-color: hsl(0deg, 0%, 86%); - border-width: 1px; - color: hsl(0deg, 0%, 21%); - cursor: pointer; - justify-content: center; - padding-bottom: calc(0.5em - 1px); - padding-left: 1em; - padding-right: 1em; - padding-top: calc(0.5em - 1px); - text-align: center; - white-space: nowrap; -} -.button strong { - color: inherit; -} -.button .icon, .button .icon.is-small, .button .icon.is-medium, .button .icon.is-large { - height: 1.5em; - width: 1.5em; -} -.button .icon:first-child:not(:last-child) { - margin-left: calc(-0.5em - 1px); - margin-right: 0.25em; -} -.button .icon:last-child:not(:first-child) { - margin-left: 0.25em; - margin-right: calc(-0.5em - 1px); -} -.button .icon:first-child:last-child { - margin-left: calc(-0.5em - 1px); - margin-right: calc(-0.5em - 1px); -} -.button:hover, .button.is-hovered { - border-color: hsl(0deg, 0%, 71%); - color: hsl(0deg, 0%, 21%); -} -.button:focus, .button.is-focused { - border-color: hsl(229deg, 53%, 53%); - color: hsl(0deg, 0%, 21%); -} -.button:focus:not(:active), .button.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); -} -.button:active, .button.is-active { - border-color: hsl(0deg, 0%, 29%); - color: hsl(0deg, 0%, 21%); -} -.button.is-text { - background-color: transparent; - border-color: transparent; - color: hsl(0deg, 0%, 29%); - text-decoration: underline; -} -.button.is-text:hover, .button.is-text.is-hovered, .button.is-text:focus, .button.is-text.is-focused { - background-color: hsl(0deg, 0%, 96%); - color: hsl(0deg, 0%, 21%); -} -.button.is-text:active, .button.is-text.is-active { - background-color: #e8e8e8; - color: hsl(0deg, 0%, 21%); -} -.button.is-text[disabled], fieldset[disabled] .button.is-text { - background-color: transparent; - border-color: transparent; - box-shadow: none; -} -.button.is-ghost { - background: none; - border-color: transparent; - color: hsl(229deg, 53%, 53%); - text-decoration: none; -} -.button.is-ghost:hover, .button.is-ghost.is-hovered { - color: hsl(229deg, 53%, 53%); - text-decoration: underline; -} -.button.is-white { - background-color: hsl(0deg, 0%, 100%); - border-color: transparent; - color: hsl(0deg, 0%, 4%); -} -.button.is-white:hover, .button.is-white.is-hovered { - background-color: #f9f9f9; - border-color: transparent; - color: hsl(0deg, 0%, 4%); -} -.button.is-white:focus, .button.is-white.is-focused { - border-color: transparent; - color: hsl(0deg, 0%, 4%); -} -.button.is-white:focus:not(:active), .button.is-white.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); -} -.button.is-white:active, .button.is-white.is-active { - background-color: #f2f2f2; - border-color: transparent; - color: hsl(0deg, 0%, 4%); -} -.button.is-white[disabled], fieldset[disabled] .button.is-white { - background-color: hsl(0deg, 0%, 100%); - border-color: hsl(0deg, 0%, 100%); - box-shadow: none; -} -.button.is-white.is-inverted { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.button.is-white.is-inverted:hover, .button.is-white.is-inverted.is-hovered { - background-color: black; -} -.button.is-white.is-inverted[disabled], fieldset[disabled] .button.is-white.is-inverted { - background-color: hsl(0deg, 0%, 4%); - border-color: transparent; - box-shadow: none; - color: hsl(0deg, 0%, 100%); -} -.button.is-white.is-loading::after { - border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; -} -.button.is-white.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 100%); -} -.button.is-white.is-outlined:hover, .button.is-white.is-outlined.is-hovered, .button.is-white.is-outlined:focus, .button.is-white.is-outlined.is-focused { - background-color: hsl(0deg, 0%, 100%); - border-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.button.is-white.is-outlined.is-loading::after { - border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; -} -.button.is-white.is-outlined.is-loading:hover::after, .button.is-white.is-outlined.is-loading.is-hovered::after, .button.is-white.is-outlined.is-loading:focus::after, .button.is-white.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; -} -.button.is-white.is-outlined[disabled], fieldset[disabled] .button.is-white.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 100%); - box-shadow: none; - color: hsl(0deg, 0%, 100%); -} -.button.is-white.is-inverted.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 4%); -} -.button.is-white.is-inverted.is-outlined:hover, .button.is-white.is-inverted.is-outlined.is-hovered, .button.is-white.is-inverted.is-outlined:focus, .button.is-white.is-inverted.is-outlined.is-focused { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.button.is-white.is-inverted.is-outlined.is-loading:hover::after, .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-white.is-inverted.is-outlined.is-loading:focus::after, .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; -} -.button.is-white.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-white.is-inverted.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 4%); - box-shadow: none; - color: hsl(0deg, 0%, 4%); -} -.button.is-black { - background-color: hsl(0deg, 0%, 4%); - border-color: transparent; - color: hsl(0deg, 0%, 100%); -} -.button.is-black:hover, .button.is-black.is-hovered { - background-color: #040404; - border-color: transparent; - color: hsl(0deg, 0%, 100%); -} -.button.is-black:focus, .button.is-black.is-focused { - border-color: transparent; - color: hsl(0deg, 0%, 100%); -} -.button.is-black:focus:not(:active), .button.is-black.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); -} -.button.is-black:active, .button.is-black.is-active { - background-color: black; - border-color: transparent; - color: hsl(0deg, 0%, 100%); -} -.button.is-black[disabled], fieldset[disabled] .button.is-black { - background-color: hsl(0deg, 0%, 4%); - border-color: hsl(0deg, 0%, 4%); - box-shadow: none; -} -.button.is-black.is-inverted { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.button.is-black.is-inverted:hover, .button.is-black.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-black.is-inverted[disabled], fieldset[disabled] .button.is-black.is-inverted { - background-color: hsl(0deg, 0%, 100%); - border-color: transparent; - box-shadow: none; - color: hsl(0deg, 0%, 4%); -} -.button.is-black.is-loading::after { - border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; -} -.button.is-black.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 4%); -} -.button.is-black.is-outlined:hover, .button.is-black.is-outlined.is-hovered, .button.is-black.is-outlined:focus, .button.is-black.is-outlined.is-focused { - background-color: hsl(0deg, 0%, 4%); - border-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.button.is-black.is-outlined.is-loading::after { - border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; -} -.button.is-black.is-outlined.is-loading:hover::after, .button.is-black.is-outlined.is-loading.is-hovered::after, .button.is-black.is-outlined.is-loading:focus::after, .button.is-black.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(0deg, 0%, 100%) hsl(0deg, 0%, 100%) !important; -} -.button.is-black.is-outlined[disabled], fieldset[disabled] .button.is-black.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 4%); - box-shadow: none; - color: hsl(0deg, 0%, 4%); -} -.button.is-black.is-inverted.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 100%); -} -.button.is-black.is-inverted.is-outlined:hover, .button.is-black.is-inverted.is-outlined.is-hovered, .button.is-black.is-inverted.is-outlined:focus, .button.is-black.is-inverted.is-outlined.is-focused { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.button.is-black.is-inverted.is-outlined.is-loading:hover::after, .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-black.is-inverted.is-outlined.is-loading:focus::after, .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(0deg, 0%, 4%) hsl(0deg, 0%, 4%) !important; -} -.button.is-black.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-black.is-inverted.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 100%); - box-shadow: none; - color: hsl(0deg, 0%, 100%); -} -.button.is-light { - background-color: hsl(0deg, 0%, 96%); - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-light:hover, .button.is-light.is-hovered { - background-color: #eeeeee; - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-light:focus, .button.is-light.is-focused { - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-light:focus:not(:active), .button.is-light.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); -} -.button.is-light:active, .button.is-light.is-active { - background-color: #e8e8e8; - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-light[disabled], fieldset[disabled] .button.is-light { - background-color: hsl(0deg, 0%, 96%); - border-color: hsl(0deg, 0%, 96%); - box-shadow: none; -} -.button.is-light.is-inverted { - background-color: rgba(0, 0, 0, 0.7); - color: hsl(0deg, 0%, 96%); -} -.button.is-light.is-inverted:hover, .button.is-light.is-inverted.is-hovered { - background-color: rgba(0, 0, 0, 0.7); -} -.button.is-light.is-inverted[disabled], fieldset[disabled] .button.is-light.is-inverted { - background-color: rgba(0, 0, 0, 0.7); - border-color: transparent; - box-shadow: none; - color: hsl(0deg, 0%, 96%); -} -.button.is-light.is-loading::after { - border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; -} -.button.is-light.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 96%); - color: hsl(0deg, 0%, 96%); -} -.button.is-light.is-outlined:hover, .button.is-light.is-outlined.is-hovered, .button.is-light.is-outlined:focus, .button.is-light.is-outlined.is-focused { - background-color: hsl(0deg, 0%, 96%); - border-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); -} -.button.is-light.is-outlined.is-loading::after { - border-color: transparent transparent hsl(0deg, 0%, 96%) hsl(0deg, 0%, 96%) !important; -} -.button.is-light.is-outlined.is-loading:hover::after, .button.is-light.is-outlined.is-loading.is-hovered::after, .button.is-light.is-outlined.is-loading:focus::after, .button.is-light.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; -} -.button.is-light.is-outlined[disabled], fieldset[disabled] .button.is-light.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 96%); - box-shadow: none; - color: hsl(0deg, 0%, 96%); -} -.button.is-light.is-inverted.is-outlined { - background-color: transparent; - border-color: rgba(0, 0, 0, 0.7); - color: rgba(0, 0, 0, 0.7); -} -.button.is-light.is-inverted.is-outlined:hover, .button.is-light.is-inverted.is-outlined.is-hovered, .button.is-light.is-inverted.is-outlined:focus, .button.is-light.is-inverted.is-outlined.is-focused { - background-color: rgba(0, 0, 0, 0.7); - color: hsl(0deg, 0%, 96%); -} -.button.is-light.is-inverted.is-outlined.is-loading:hover::after, .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-light.is-inverted.is-outlined.is-loading:focus::after, .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(0deg, 0%, 96%) hsl(0deg, 0%, 96%) !important; -} -.button.is-light.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-light.is-inverted.is-outlined { - background-color: transparent; - border-color: rgba(0, 0, 0, 0.7); - box-shadow: none; - color: rgba(0, 0, 0, 0.7); -} -.button.is-dark { - background-color: hsl(0deg, 0%, 21%); - border-color: transparent; - color: #fff; -} -.button.is-dark:hover, .button.is-dark.is-hovered { - background-color: #2f2f2f; - border-color: transparent; - color: #fff; -} -.button.is-dark:focus, .button.is-dark.is-focused { - border-color: transparent; - color: #fff; -} -.button.is-dark:focus:not(:active), .button.is-dark.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); -} -.button.is-dark:active, .button.is-dark.is-active { - background-color: #292929; - border-color: transparent; - color: #fff; -} -.button.is-dark[disabled], fieldset[disabled] .button.is-dark { - background-color: hsl(0deg, 0%, 21%); - border-color: hsl(0deg, 0%, 21%); - box-shadow: none; -} -.button.is-dark.is-inverted { - background-color: #fff; - color: hsl(0deg, 0%, 21%); -} -.button.is-dark.is-inverted:hover, .button.is-dark.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-dark.is-inverted[disabled], fieldset[disabled] .button.is-dark.is-inverted { - background-color: #fff; - border-color: transparent; - box-shadow: none; - color: hsl(0deg, 0%, 21%); -} -.button.is-dark.is-loading::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-dark.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 21%); - color: hsl(0deg, 0%, 21%); -} -.button.is-dark.is-outlined:hover, .button.is-dark.is-outlined.is-hovered, .button.is-dark.is-outlined:focus, .button.is-dark.is-outlined.is-focused { - background-color: hsl(0deg, 0%, 21%); - border-color: hsl(0deg, 0%, 21%); - color: #fff; -} -.button.is-dark.is-outlined.is-loading::after { - border-color: transparent transparent hsl(0deg, 0%, 21%) hsl(0deg, 0%, 21%) !important; -} -.button.is-dark.is-outlined.is-loading:hover::after, .button.is-dark.is-outlined.is-loading.is-hovered::after, .button.is-dark.is-outlined.is-loading:focus::after, .button.is-dark.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-dark.is-outlined[disabled], fieldset[disabled] .button.is-dark.is-outlined { - background-color: transparent; - border-color: hsl(0deg, 0%, 21%); - box-shadow: none; - color: hsl(0deg, 0%, 21%); -} -.button.is-dark.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - color: #fff; -} -.button.is-dark.is-inverted.is-outlined:hover, .button.is-dark.is-inverted.is-outlined.is-hovered, .button.is-dark.is-inverted.is-outlined:focus, .button.is-dark.is-inverted.is-outlined.is-focused { - background-color: #fff; - color: hsl(0deg, 0%, 21%); -} -.button.is-dark.is-inverted.is-outlined.is-loading:hover::after, .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-dark.is-inverted.is-outlined.is-loading:focus::after, .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(0deg, 0%, 21%) hsl(0deg, 0%, 21%) !important; -} -.button.is-dark.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-dark.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - box-shadow: none; - color: #fff; -} -.button.is-primary { - background-color: hsl(171deg, 100%, 41%); - border-color: transparent; - color: #fff; -} -.button.is-primary:hover, .button.is-primary.is-hovered { - background-color: #00c4a7; - border-color: transparent; - color: #fff; -} -.button.is-primary:focus, .button.is-primary.is-focused { - border-color: transparent; - color: #fff; -} -.button.is-primary:focus:not(:active), .button.is-primary.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(0, 209, 178, 0.25); -} -.button.is-primary:active, .button.is-primary.is-active { - background-color: #00b89c; - border-color: transparent; - color: #fff; -} -.button.is-primary[disabled], fieldset[disabled] .button.is-primary { - background-color: hsl(171deg, 100%, 41%); - border-color: hsl(171deg, 100%, 41%); - box-shadow: none; -} -.button.is-primary.is-inverted { - background-color: #fff; - color: hsl(171deg, 100%, 41%); -} -.button.is-primary.is-inverted:hover, .button.is-primary.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-primary.is-inverted[disabled], fieldset[disabled] .button.is-primary.is-inverted { - background-color: #fff; - border-color: transparent; - box-shadow: none; - color: hsl(171deg, 100%, 41%); -} -.button.is-primary.is-loading::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-primary.is-outlined { - background-color: transparent; - border-color: hsl(171deg, 100%, 41%); - color: hsl(171deg, 100%, 41%); -} -.button.is-primary.is-outlined:hover, .button.is-primary.is-outlined.is-hovered, .button.is-primary.is-outlined:focus, .button.is-primary.is-outlined.is-focused { - background-color: hsl(171deg, 100%, 41%); - border-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.button.is-primary.is-outlined.is-loading::after { - border-color: transparent transparent hsl(171deg, 100%, 41%) hsl(171deg, 100%, 41%) !important; -} -.button.is-primary.is-outlined.is-loading:hover::after, .button.is-primary.is-outlined.is-loading.is-hovered::after, .button.is-primary.is-outlined.is-loading:focus::after, .button.is-primary.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-primary.is-outlined[disabled], fieldset[disabled] .button.is-primary.is-outlined { - background-color: transparent; - border-color: hsl(171deg, 100%, 41%); - box-shadow: none; - color: hsl(171deg, 100%, 41%); -} -.button.is-primary.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - color: #fff; -} -.button.is-primary.is-inverted.is-outlined:hover, .button.is-primary.is-inverted.is-outlined.is-hovered, .button.is-primary.is-inverted.is-outlined:focus, .button.is-primary.is-inverted.is-outlined.is-focused { - background-color: #fff; - color: hsl(171deg, 100%, 41%); -} -.button.is-primary.is-inverted.is-outlined.is-loading:hover::after, .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-primary.is-inverted.is-outlined.is-loading:focus::after, .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(171deg, 100%, 41%) hsl(171deg, 100%, 41%) !important; -} -.button.is-primary.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-primary.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - box-shadow: none; - color: #fff; -} -.button.is-primary.is-light { - background-color: #ebfffc; - color: #00947e; -} -.button.is-primary.is-light:hover, .button.is-primary.is-light.is-hovered { - background-color: #defffa; - border-color: transparent; - color: #00947e; -} -.button.is-primary.is-light:active, .button.is-primary.is-light.is-active { - background-color: #d1fff8; - border-color: transparent; - color: #00947e; -} -.button.is-link { - background-color: hsl(229deg, 53%, 53%); - border-color: transparent; - color: #fff; -} -.button.is-link:hover, .button.is-link.is-hovered { - background-color: #3e56c4; - border-color: transparent; - color: #fff; -} -.button.is-link:focus, .button.is-link.is-focused { - border-color: transparent; - color: #fff; -} -.button.is-link:focus:not(:active), .button.is-link.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); -} -.button.is-link:active, .button.is-link.is-active { - background-color: #3a51bb; - border-color: transparent; - color: #fff; -} -.button.is-link[disabled], fieldset[disabled] .button.is-link { - background-color: hsl(229deg, 53%, 53%); - border-color: hsl(229deg, 53%, 53%); - box-shadow: none; -} -.button.is-link.is-inverted { - background-color: #fff; - color: hsl(229deg, 53%, 53%); -} -.button.is-link.is-inverted:hover, .button.is-link.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-link.is-inverted[disabled], fieldset[disabled] .button.is-link.is-inverted { - background-color: #fff; - border-color: transparent; - box-shadow: none; - color: hsl(229deg, 53%, 53%); -} -.button.is-link.is-loading::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-link.is-outlined { - background-color: transparent; - border-color: hsl(229deg, 53%, 53%); - color: hsl(229deg, 53%, 53%); -} -.button.is-link.is-outlined:hover, .button.is-link.is-outlined.is-hovered, .button.is-link.is-outlined:focus, .button.is-link.is-outlined.is-focused { - background-color: hsl(229deg, 53%, 53%); - border-color: hsl(229deg, 53%, 53%); - color: #fff; -} -.button.is-link.is-outlined.is-loading::after { - border-color: transparent transparent hsl(229deg, 53%, 53%) hsl(229deg, 53%, 53%) !important; -} -.button.is-link.is-outlined.is-loading:hover::after, .button.is-link.is-outlined.is-loading.is-hovered::after, .button.is-link.is-outlined.is-loading:focus::after, .button.is-link.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-link.is-outlined[disabled], fieldset[disabled] .button.is-link.is-outlined { - background-color: transparent; - border-color: hsl(229deg, 53%, 53%); - box-shadow: none; - color: hsl(229deg, 53%, 53%); -} -.button.is-link.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - color: #fff; -} -.button.is-link.is-inverted.is-outlined:hover, .button.is-link.is-inverted.is-outlined.is-hovered, .button.is-link.is-inverted.is-outlined:focus, .button.is-link.is-inverted.is-outlined.is-focused { - background-color: #fff; - color: hsl(229deg, 53%, 53%); -} -.button.is-link.is-inverted.is-outlined.is-loading:hover::after, .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-link.is-inverted.is-outlined.is-loading:focus::after, .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(229deg, 53%, 53%) hsl(229deg, 53%, 53%) !important; -} -.button.is-link.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-link.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - box-shadow: none; - color: #fff; -} -.button.is-link.is-light { - background-color: #eff1fa; - color: #3850b7; -} -.button.is-link.is-light:hover, .button.is-link.is-light.is-hovered { - background-color: #e6e9f7; - border-color: transparent; - color: #3850b7; -} -.button.is-link.is-light:active, .button.is-link.is-light.is-active { - background-color: #dce0f4; - border-color: transparent; - color: #3850b7; -} -.button.is-info { - background-color: hsl(207deg, 61%, 53%); - border-color: transparent; - color: #fff; -} -.button.is-info:hover, .button.is-info.is-hovered { - background-color: #3488ce; - border-color: transparent; - color: #fff; -} -.button.is-info:focus, .button.is-info.is-focused { - border-color: transparent; - color: #fff; -} -.button.is-info:focus:not(:active), .button.is-info.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(62, 142, 208, 0.25); -} -.button.is-info:active, .button.is-info.is-active { - background-color: #3082c5; - border-color: transparent; - color: #fff; -} -.button.is-info[disabled], fieldset[disabled] .button.is-info { - background-color: hsl(207deg, 61%, 53%); - border-color: hsl(207deg, 61%, 53%); - box-shadow: none; -} -.button.is-info.is-inverted { - background-color: #fff; - color: hsl(207deg, 61%, 53%); -} -.button.is-info.is-inverted:hover, .button.is-info.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-info.is-inverted[disabled], fieldset[disabled] .button.is-info.is-inverted { - background-color: #fff; - border-color: transparent; - box-shadow: none; - color: hsl(207deg, 61%, 53%); -} -.button.is-info.is-loading::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-info.is-outlined { - background-color: transparent; - border-color: hsl(207deg, 61%, 53%); - color: hsl(207deg, 61%, 53%); -} -.button.is-info.is-outlined:hover, .button.is-info.is-outlined.is-hovered, .button.is-info.is-outlined:focus, .button.is-info.is-outlined.is-focused { - background-color: hsl(207deg, 61%, 53%); - border-color: hsl(207deg, 61%, 53%); - color: #fff; -} -.button.is-info.is-outlined.is-loading::after { - border-color: transparent transparent hsl(207deg, 61%, 53%) hsl(207deg, 61%, 53%) !important; -} -.button.is-info.is-outlined.is-loading:hover::after, .button.is-info.is-outlined.is-loading.is-hovered::after, .button.is-info.is-outlined.is-loading:focus::after, .button.is-info.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-info.is-outlined[disabled], fieldset[disabled] .button.is-info.is-outlined { - background-color: transparent; - border-color: hsl(207deg, 61%, 53%); - box-shadow: none; - color: hsl(207deg, 61%, 53%); -} -.button.is-info.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - color: #fff; -} -.button.is-info.is-inverted.is-outlined:hover, .button.is-info.is-inverted.is-outlined.is-hovered, .button.is-info.is-inverted.is-outlined:focus, .button.is-info.is-inverted.is-outlined.is-focused { - background-color: #fff; - color: hsl(207deg, 61%, 53%); -} -.button.is-info.is-inverted.is-outlined.is-loading:hover::after, .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-info.is-inverted.is-outlined.is-loading:focus::after, .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(207deg, 61%, 53%) hsl(207deg, 61%, 53%) !important; -} -.button.is-info.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-info.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - box-shadow: none; - color: #fff; -} -.button.is-info.is-light { - background-color: #eff5fb; - color: #296fa8; -} -.button.is-info.is-light:hover, .button.is-info.is-light.is-hovered { - background-color: #e4eff9; - border-color: transparent; - color: #296fa8; -} -.button.is-info.is-light:active, .button.is-info.is-light.is-active { - background-color: #dae9f6; - border-color: transparent; - color: #296fa8; -} -.button.is-success { - background-color: hsl(153deg, 53%, 53%); - border-color: transparent; - color: #fff; -} -.button.is-success:hover, .button.is-success.is-hovered { - background-color: #3ec487; - border-color: transparent; - color: #fff; -} -.button.is-success:focus, .button.is-success.is-focused { - border-color: transparent; - color: #fff; -} -.button.is-success:focus:not(:active), .button.is-success.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(72, 199, 142, 0.25); -} -.button.is-success:active, .button.is-success.is-active { - background-color: #3abb81; - border-color: transparent; - color: #fff; -} -.button.is-success[disabled], fieldset[disabled] .button.is-success { - background-color: hsl(153deg, 53%, 53%); - border-color: hsl(153deg, 53%, 53%); - box-shadow: none; -} -.button.is-success.is-inverted { - background-color: #fff; - color: hsl(153deg, 53%, 53%); -} -.button.is-success.is-inverted:hover, .button.is-success.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-success.is-inverted[disabled], fieldset[disabled] .button.is-success.is-inverted { - background-color: #fff; - border-color: transparent; - box-shadow: none; - color: hsl(153deg, 53%, 53%); -} -.button.is-success.is-loading::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-success.is-outlined { - background-color: transparent; - border-color: hsl(153deg, 53%, 53%); - color: hsl(153deg, 53%, 53%); -} -.button.is-success.is-outlined:hover, .button.is-success.is-outlined.is-hovered, .button.is-success.is-outlined:focus, .button.is-success.is-outlined.is-focused { - background-color: hsl(153deg, 53%, 53%); - border-color: hsl(153deg, 53%, 53%); - color: #fff; -} -.button.is-success.is-outlined.is-loading::after { - border-color: transparent transparent hsl(153deg, 53%, 53%) hsl(153deg, 53%, 53%) !important; -} -.button.is-success.is-outlined.is-loading:hover::after, .button.is-success.is-outlined.is-loading.is-hovered::after, .button.is-success.is-outlined.is-loading:focus::after, .button.is-success.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-success.is-outlined[disabled], fieldset[disabled] .button.is-success.is-outlined { - background-color: transparent; - border-color: hsl(153deg, 53%, 53%); - box-shadow: none; - color: hsl(153deg, 53%, 53%); -} -.button.is-success.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - color: #fff; -} -.button.is-success.is-inverted.is-outlined:hover, .button.is-success.is-inverted.is-outlined.is-hovered, .button.is-success.is-inverted.is-outlined:focus, .button.is-success.is-inverted.is-outlined.is-focused { - background-color: #fff; - color: hsl(153deg, 53%, 53%); -} -.button.is-success.is-inverted.is-outlined.is-loading:hover::after, .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-success.is-inverted.is-outlined.is-loading:focus::after, .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(153deg, 53%, 53%) hsl(153deg, 53%, 53%) !important; -} -.button.is-success.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-success.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - box-shadow: none; - color: #fff; -} -.button.is-success.is-light { - background-color: #effaf5; - color: #257953; -} -.button.is-success.is-light:hover, .button.is-success.is-light.is-hovered { - background-color: #e6f7ef; - border-color: transparent; - color: #257953; -} -.button.is-success.is-light:active, .button.is-success.is-light.is-active { - background-color: #dcf4e9; - border-color: transparent; - color: #257953; -} -.button.is-warning { - background-color: hsl(44deg, 100%, 77%); - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning:hover, .button.is-warning.is-hovered { - background-color: #ffdc7d; - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning:focus, .button.is-warning.is-focused { - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning:focus:not(:active), .button.is-warning.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(255, 224, 138, 0.25); -} -.button.is-warning:active, .button.is-warning.is-active { - background-color: #ffd970; - border-color: transparent; - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning[disabled], fieldset[disabled] .button.is-warning { - background-color: hsl(44deg, 100%, 77%); - border-color: hsl(44deg, 100%, 77%); - box-shadow: none; -} -.button.is-warning.is-inverted { - background-color: rgba(0, 0, 0, 0.7); - color: hsl(44deg, 100%, 77%); -} -.button.is-warning.is-inverted:hover, .button.is-warning.is-inverted.is-hovered { - background-color: rgba(0, 0, 0, 0.7); -} -.button.is-warning.is-inverted[disabled], fieldset[disabled] .button.is-warning.is-inverted { - background-color: rgba(0, 0, 0, 0.7); - border-color: transparent; - box-shadow: none; - color: hsl(44deg, 100%, 77%); -} -.button.is-warning.is-loading::after { - border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; -} -.button.is-warning.is-outlined { - background-color: transparent; - border-color: hsl(44deg, 100%, 77%); - color: hsl(44deg, 100%, 77%); -} -.button.is-warning.is-outlined:hover, .button.is-warning.is-outlined.is-hovered, .button.is-warning.is-outlined:focus, .button.is-warning.is-outlined.is-focused { - background-color: hsl(44deg, 100%, 77%); - border-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning.is-outlined.is-loading::after { - border-color: transparent transparent hsl(44deg, 100%, 77%) hsl(44deg, 100%, 77%) !important; -} -.button.is-warning.is-outlined.is-loading:hover::after, .button.is-warning.is-outlined.is-loading.is-hovered::after, .button.is-warning.is-outlined.is-loading:focus::after, .button.is-warning.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; -} -.button.is-warning.is-outlined[disabled], fieldset[disabled] .button.is-warning.is-outlined { - background-color: transparent; - border-color: hsl(44deg, 100%, 77%); - box-shadow: none; - color: hsl(44deg, 100%, 77%); -} -.button.is-warning.is-inverted.is-outlined { - background-color: transparent; - border-color: rgba(0, 0, 0, 0.7); - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning.is-inverted.is-outlined:hover, .button.is-warning.is-inverted.is-outlined.is-hovered, .button.is-warning.is-inverted.is-outlined:focus, .button.is-warning.is-inverted.is-outlined.is-focused { - background-color: rgba(0, 0, 0, 0.7); - color: hsl(44deg, 100%, 77%); -} -.button.is-warning.is-inverted.is-outlined.is-loading:hover::after, .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-warning.is-inverted.is-outlined.is-loading:focus::after, .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(44deg, 100%, 77%) hsl(44deg, 100%, 77%) !important; -} -.button.is-warning.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-warning.is-inverted.is-outlined { - background-color: transparent; - border-color: rgba(0, 0, 0, 0.7); - box-shadow: none; - color: rgba(0, 0, 0, 0.7); -} -.button.is-warning.is-light { - background-color: #fffaeb; - color: #946c00; -} -.button.is-warning.is-light:hover, .button.is-warning.is-light.is-hovered { - background-color: #fff6de; - border-color: transparent; - color: #946c00; -} -.button.is-warning.is-light:active, .button.is-warning.is-light.is-active { - background-color: #fff3d1; - border-color: transparent; - color: #946c00; -} -.button.is-danger { - background-color: hsl(348deg, 86%, 61%); - border-color: transparent; - color: #fff; -} -.button.is-danger:hover, .button.is-danger.is-hovered { - background-color: #f03a5f; - border-color: transparent; - color: #fff; -} -.button.is-danger:focus, .button.is-danger.is-focused { - border-color: transparent; - color: #fff; -} -.button.is-danger:focus:not(:active), .button.is-danger.is-focused:not(:active) { - box-shadow: 0 0 0 0.125em rgba(241, 70, 104, 0.25); -} -.button.is-danger:active, .button.is-danger.is-active { - background-color: #ef2e55; - border-color: transparent; - color: #fff; -} -.button.is-danger[disabled], fieldset[disabled] .button.is-danger { - background-color: hsl(348deg, 86%, 61%); - border-color: hsl(348deg, 86%, 61%); - box-shadow: none; -} -.button.is-danger.is-inverted { - background-color: #fff; - color: hsl(348deg, 86%, 61%); -} -.button.is-danger.is-inverted:hover, .button.is-danger.is-inverted.is-hovered { - background-color: #f2f2f2; -} -.button.is-danger.is-inverted[disabled], fieldset[disabled] .button.is-danger.is-inverted { - background-color: #fff; - border-color: transparent; - box-shadow: none; - color: hsl(348deg, 86%, 61%); -} -.button.is-danger.is-loading::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-danger.is-outlined { - background-color: transparent; - border-color: hsl(348deg, 86%, 61%); - color: hsl(348deg, 86%, 61%); -} -.button.is-danger.is-outlined:hover, .button.is-danger.is-outlined.is-hovered, .button.is-danger.is-outlined:focus, .button.is-danger.is-outlined.is-focused { - background-color: hsl(348deg, 86%, 61%); - border-color: hsl(348deg, 86%, 61%); - color: #fff; -} -.button.is-danger.is-outlined.is-loading::after { - border-color: transparent transparent hsl(348deg, 86%, 61%) hsl(348deg, 86%, 61%) !important; -} -.button.is-danger.is-outlined.is-loading:hover::after, .button.is-danger.is-outlined.is-loading.is-hovered::after, .button.is-danger.is-outlined.is-loading:focus::after, .button.is-danger.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent #fff #fff !important; -} -.button.is-danger.is-outlined[disabled], fieldset[disabled] .button.is-danger.is-outlined { - background-color: transparent; - border-color: hsl(348deg, 86%, 61%); - box-shadow: none; - color: hsl(348deg, 86%, 61%); -} -.button.is-danger.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - color: #fff; -} -.button.is-danger.is-inverted.is-outlined:hover, .button.is-danger.is-inverted.is-outlined.is-hovered, .button.is-danger.is-inverted.is-outlined:focus, .button.is-danger.is-inverted.is-outlined.is-focused { - background-color: #fff; - color: hsl(348deg, 86%, 61%); -} -.button.is-danger.is-inverted.is-outlined.is-loading:hover::after, .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-danger.is-inverted.is-outlined.is-loading:focus::after, .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after { - border-color: transparent transparent hsl(348deg, 86%, 61%) hsl(348deg, 86%, 61%) !important; -} -.button.is-danger.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-danger.is-inverted.is-outlined { - background-color: transparent; - border-color: #fff; - box-shadow: none; - color: #fff; -} -.button.is-danger.is-light { - background-color: #feecf0; - color: #cc0f35; -} -.button.is-danger.is-light:hover, .button.is-danger.is-light.is-hovered { - background-color: #fde0e6; - border-color: transparent; - color: #cc0f35; -} -.button.is-danger.is-light:active, .button.is-danger.is-light.is-active { - background-color: #fcd4dc; - border-color: transparent; - color: #cc0f35; -} -.button.is-small { - font-size: 0.75rem; -} -.button.is-small:not(.is-rounded) { - border-radius: 2px; -} -.button.is-normal { - font-size: 1rem; -} -.button.is-medium { - font-size: 1.25rem; -} -.button.is-large { - font-size: 1.5rem; -} -.button[disabled], fieldset[disabled] .button { - background-color: hsl(0deg, 0%, 100%); - border-color: hsl(0deg, 0%, 86%); - box-shadow: none; - opacity: 0.5; -} -.button.is-fullwidth { - display: flex; - width: 100%; -} -.button.is-loading { - color: transparent !important; - pointer-events: none; -} -.button.is-loading::after { - position: absolute; - left: calc(50% - (1em * 0.5)); - top: calc(50% - (1em * 0.5)); - position: absolute !important; -} -.button.is-static { - background-color: hsl(0deg, 0%, 96%); - border-color: hsl(0deg, 0%, 86%); - color: hsl(0deg, 0%, 48%); - box-shadow: none; - pointer-events: none; -} -.button.is-rounded { - border-radius: 9999px; - padding-left: calc(1em + 0.25em); - padding-right: calc(1em + 0.25em); -} - -.buttons { - align-items: center; - display: flex; - flex-wrap: wrap; - justify-content: flex-start; -} -.buttons .button { - margin-bottom: 0.5rem; -} -.buttons .button:not(:last-child):not(.is-fullwidth) { - margin-right: 0.5rem; -} -.buttons:last-child { - margin-bottom: -0.5rem; -} -.buttons:not(:last-child) { - margin-bottom: 1rem; -} -.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large) { - font-size: 0.75rem; -} -.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded) { - border-radius: 2px; -} -.buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large) { - font-size: 1.25rem; -} -.buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium) { - font-size: 1.5rem; -} -.buttons.has-addons .button:not(:first-child) { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} -.buttons.has-addons .button:not(:last-child) { - border-bottom-right-radius: 0; - border-top-right-radius: 0; - margin-right: -1px; -} -.buttons.has-addons .button:last-child { - margin-right: 0; -} -.buttons.has-addons .button:hover, .buttons.has-addons .button.is-hovered { - z-index: 2; -} -.buttons.has-addons .button:focus, .buttons.has-addons .button.is-focused, .buttons.has-addons .button:active, .buttons.has-addons .button.is-active, .buttons.has-addons .button.is-selected { - z-index: 3; -} -.buttons.has-addons .button:focus:hover, .buttons.has-addons .button.is-focused:hover, .buttons.has-addons .button:active:hover, .buttons.has-addons .button.is-active:hover, .buttons.has-addons .button.is-selected:hover { - z-index: 4; -} -.buttons.has-addons .button.is-expanded { - flex-grow: 1; - flex-shrink: 1; -} -.buttons.is-centered { - justify-content: center; -} -.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth) { - margin-left: 0.25rem; - margin-right: 0.25rem; -} -.buttons.is-right { - justify-content: flex-end; -} -.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth) { - margin-left: 0.25rem; - margin-right: 0.25rem; -} - -@media screen and (max-width: 768px) { - .button.is-responsive.is-small { - font-size: 0.5625rem; - } - .button.is-responsive, - .button.is-responsive.is-normal { - font-size: 0.65625rem; - } - .button.is-responsive.is-medium { - font-size: 0.75rem; - } - .button.is-responsive.is-large { - font-size: 1rem; - } -} -@media screen and (min-width: 769px) and (max-width: 1023px) { - .button.is-responsive.is-small { - font-size: 0.65625rem; - } - .button.is-responsive, - .button.is-responsive.is-normal { - font-size: 0.75rem; - } - .button.is-responsive.is-medium { - font-size: 1rem; - } - .button.is-responsive.is-large { - font-size: 1.25rem; - } -} -.container { - flex-grow: 1; - margin: 0 auto; + font-size: 0.875rem; + line-height: 1.5; + padding: 0.375rem 1rem; position: relative; - width: auto; -} -.container.is-fluid { - max-width: none !important; - padding-left: 32px; - padding-right: 32px; - width: 100%; -} -@media screen and (min-width: 1024px) { - .container { - max-width: 960px; - } -} -@media screen and (max-width: 1215px) { - .container.is-widescreen:not(.is-max-desktop) { - max-width: 1152px; - } -} -@media screen and (max-width: 1407px) { - .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen) { - max-width: 1344px; - } -} -@media screen and (min-width: 1216px) { - .container:not(.is-max-desktop) { - max-width: 1152px; - } -} -@media screen and (min-width: 1408px) { - .container:not(.is-max-desktop):not(.is-max-widescreen) { - max-width: 1344px; - } } -.content li + li { - margin-top: 0.25em; -} -.content p:not(:last-child), -.content dl:not(:last-child), -.content ol:not(:last-child), -.content ul:not(:last-child), -.content blockquote:not(:last-child), -.content pre:not(:last-child), -.content table:not(:last-child) { - margin-bottom: 1em; -} -.content h1, -.content h2, -.content h3, -.content h4, -.content h5, -.content h6 { - color: hsl(0deg, 0%, 21%); - font-weight: 600; - line-height: 1.125; -} -.content h1 { - font-size: 2em; - margin-bottom: 0.5em; -} -.content h1:not(:first-child) { - margin-top: 1em; -} -.content h2 { - font-size: 1.75em; - margin-bottom: 0.5714em; -} -.content h2:not(:first-child) { - margin-top: 1.1428em; -} -.content h3 { - font-size: 1.5em; - margin-bottom: 0.6666em; -} -.content h3:not(:first-child) { - margin-top: 1.3333em; -} -.content h4 { - font-size: 1.25em; - margin-bottom: 0.8em; -} -.content h5 { - font-size: 1.125em; - margin-bottom: 0.8888em; -} -.content h6 { - font-size: 1em; - margin-bottom: 1em; -} -.content blockquote { - background-color: hsl(0deg, 0%, 96%); - border-left: 5px solid hsl(0deg, 0%, 86%); - padding: 1.25em 1.5em; -} -.content ol { - list-style-position: outside; - margin-left: 2em; - margin-top: 1em; -} -.content ol:not([type]) { - list-style-type: decimal; -} -.content ol:not([type]).is-lower-alpha { - list-style-type: lower-alpha; -} -.content ol:not([type]).is-lower-roman { - list-style-type: lower-roman; -} -.content ol:not([type]).is-upper-alpha { - list-style-type: upper-alpha; -} -.content ol:not([type]).is-upper-roman { - list-style-type: upper-roman; -} -.content ul { - list-style: disc outside; - margin-left: 2em; - margin-top: 1em; -} -.content ul ul { - list-style-type: circle; - margin-top: 0.5em; -} -.content ul ul ul { - list-style-type: square; -} -.content dd { - margin-left: 2em; -} -.content figure { - margin-left: 2em; - margin-right: 2em; - text-align: center; -} -.content figure:not(:first-child) { - margin-top: 2em; -} -.content figure:not(:last-child) { - margin-bottom: 2em; -} -.content figure img { - display: inline-block; -} -.content figure figcaption { - font-style: italic; -} -.content pre { - -webkit-overflow-scrolling: touch; - overflow-x: auto; - padding: 1.25em 1.5em; - white-space: pre; - word-wrap: normal; -} -.content sup, -.content sub { - font-size: 75%; -} -.content table { +a.dropdown-item, +button.dropdown-item { + padding-right: 3rem; + text-align: inherit; + white-space: nowrap; width: 100%; } -.content table td, -.content table th { - border: 1px solid hsl(0deg, 0%, 86%); - border-width: 0 0 1px; - padding: 0.5em 0.75em; - vertical-align: top; +a.dropdown-item:hover, +button.dropdown-item:hover { + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 4%); } -.content table th { - color: hsl(0deg, 0%, 21%); +a.dropdown-item.is-active, +button.dropdown-item.is-active { + background-color: hsl(229deg, 53%, 53%); + color: #fff; } -.content table th:not([align]) { + +.dropdown-divider { + background-color: hsl(0deg, 0%, 93%); + border: none; + display: block; + height: 1px; + margin: 0.5rem 0; +} + +.media { + align-items: flex-start; + display: flex; text-align: inherit; } -.content table thead td, -.content table thead th { - border-width: 0 0 2px; - color: hsl(0deg, 0%, 21%); +.media .content:not(:last-child) { + margin-bottom: 0.75rem; } -.content table tfoot td, -.content table tfoot th { - border-width: 2px 0 0; - color: hsl(0deg, 0%, 21%); +.media .media { + border-top: 1px solid rgba(219, 219, 219, 0.5); + display: flex; + padding-top: 0.75rem; } -.content table tbody tr:last-child td, -.content table tbody tr:last-child th { - border-bottom-width: 0; +.media .media .content:not(:last-child), +.media .media .control:not(:last-child) { + margin-bottom: 0.5rem; } -.content .tabs li + li { - margin-top: 0; +.media .media .media { + padding-top: 0.5rem; } -.content.is-small { - font-size: 0.75rem; +.media .media .media + .media { + margin-top: 0.5rem; } -.content.is-normal { - font-size: 1rem; +.media + .media { + border-top: 1px solid rgba(219, 219, 219, 0.5); + margin-top: 1rem; + padding-top: 1rem; } -.content.is-medium { - font-size: 1.25rem; -} -.content.is-large { - font-size: 1.5rem; +.media.is-large + .media { + margin-top: 1.5rem; + padding-top: 1.5rem; } -.icon { - align-items: center; - display: inline-flex; - justify-content: center; - height: 1.5rem; - width: 1.5rem; -} -.icon.is-small { - height: 1rem; - width: 1rem; -} -.icon.is-medium { - height: 2rem; - width: 2rem; -} -.icon.is-large { - height: 3rem; - width: 3rem; -} - -.icon-text { - align-items: flex-start; - color: inherit; - display: inline-flex; - flex-wrap: wrap; - line-height: 1.5rem; - vertical-align: top; -} -.icon-text .icon { +.media-left, +.media-right { + flex-basis: auto; flex-grow: 0; flex-shrink: 0; } -.icon-text .icon:not(:last-child) { - margin-right: 0.25em; -} -.icon-text .icon:not(:first-child) { - margin-left: 0.25em; + +.media-left { + margin-right: 1rem; } -div.icon-text { - display: flex; +.media-right { + margin-left: 1rem; } -.image { - display: block; - position: relative; -} -.image img { - display: block; - height: auto; - width: 100%; -} -.image img.is-rounded { - border-radius: 9999px; -} -.image.is-fullwidth { - width: 100%; -} -.image.is-square img, -.image.is-square .has-ratio, .image.is-1by1 img, -.image.is-1by1 .has-ratio, .image.is-5by4 img, -.image.is-5by4 .has-ratio, .image.is-4by3 img, -.image.is-4by3 .has-ratio, .image.is-3by2 img, -.image.is-3by2 .has-ratio, .image.is-5by3 img, -.image.is-5by3 .has-ratio, .image.is-16by9 img, -.image.is-16by9 .has-ratio, .image.is-2by1 img, -.image.is-2by1 .has-ratio, .image.is-3by1 img, -.image.is-3by1 .has-ratio, .image.is-4by5 img, -.image.is-4by5 .has-ratio, .image.is-3by4 img, -.image.is-3by4 .has-ratio, .image.is-2by3 img, -.image.is-2by3 .has-ratio, .image.is-3by5 img, -.image.is-3by5 .has-ratio, .image.is-9by16 img, -.image.is-9by16 .has-ratio, .image.is-1by2 img, -.image.is-1by2 .has-ratio, .image.is-1by3 img, -.image.is-1by3 .has-ratio { - height: 100%; - width: 100%; -} -.image.is-square, .image.is-1by1 { - padding-top: 100%; -} -.image.is-5by4 { - padding-top: 80%; -} -.image.is-4by3 { - padding-top: 75%; -} -.image.is-3by2 { - padding-top: 66.6666%; -} -.image.is-5by3 { - padding-top: 60%; -} -.image.is-16by9 { - padding-top: 56.25%; -} -.image.is-2by1 { - padding-top: 50%; -} -.image.is-3by1 { - padding-top: 33.3333%; -} -.image.is-4by5 { - padding-top: 125%; -} -.image.is-3by4 { - padding-top: 133.3333%; -} -.image.is-2by3 { - padding-top: 150%; -} -.image.is-3by5 { - padding-top: 166.6666%; -} -.image.is-9by16 { - padding-top: 177.7777%; -} -.image.is-1by2 { - padding-top: 200%; -} -.image.is-1by3 { - padding-top: 300%; -} -.image.is-16x16 { - height: 16px; - width: 16px; -} -.image.is-24x24 { - height: 24px; - width: 24px; -} -.image.is-32x32 { - height: 32px; - width: 32px; -} -.image.is-48x48 { - height: 48px; - width: 48px; -} -.image.is-64x64 { - height: 64px; - width: 64px; -} -.image.is-96x96 { - height: 96px; - width: 96px; -} -.image.is-128x128 { - height: 128px; - width: 128px; +.media-content { + flex-basis: auto; + flex-grow: 1; + flex-shrink: 1; + text-align: inherit; } -.notification { +@media screen and (max-width: 768px) { + .media-content { + overflow-x: auto; + } +} +.message { background-color: hsl(0deg, 0%, 96%); border-radius: 4px; - position: relative; - padding: 1.25rem 2.5rem 1.25rem 1.5rem; + font-size: 1rem; } -.notification a:not(.button):not(.dropdown-item) { +.message strong { + color: currentColor; +} +.message a:not(.button):not(.tag):not(.dropdown-item) { color: currentColor; text-decoration: underline; } -.notification strong { - color: currentColor; +.message.is-small { + font-size: 0.75rem; } -.notification code, -.notification pre { - background: hsl(0deg, 0%, 100%); +.message.is-medium { + font-size: 1.25rem; } -.notification pre code { - background: transparent; +.message.is-large { + font-size: 1.5rem; } -.notification > .delete { - right: 0.5rem; - position: absolute; - top: 0.5rem; +.message.is-white { + background-color: white; } -.notification .title, -.notification .subtitle, -.notification .content { - color: currentColor; -} -.notification.is-white { +.message.is-white .message-header { background-color: hsl(0deg, 0%, 100%); color: hsl(0deg, 0%, 4%); } -.notification.is-black { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.notification.is-light { - background-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); -} -.notification.is-dark { - background-color: hsl(0deg, 0%, 21%); - color: #fff; -} -.notification.is-primary { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.notification.is-primary.is-light { - background-color: #ebfffc; - color: #00947e; -} -.notification.is-link { - background-color: hsl(229deg, 53%, 53%); - color: #fff; -} -.notification.is-link.is-light { - background-color: #eff1fa; - color: #3850b7; -} -.notification.is-info { - background-color: hsl(207deg, 61%, 53%); - color: #fff; -} -.notification.is-info.is-light { - background-color: #eff5fb; - color: #296fa8; -} -.notification.is-success { - background-color: hsl(153deg, 53%, 53%); - color: #fff; -} -.notification.is-success.is-light { - background-color: #effaf5; - color: #257953; -} -.notification.is-warning { - background-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); -} -.notification.is-warning.is-light { - background-color: #fffaeb; - color: #946c00; -} -.notification.is-danger { - background-color: hsl(348deg, 86%, 61%); - color: #fff; -} -.notification.is-danger.is-light { - background-color: #feecf0; - color: #cc0f35; -} - -.progress { - -moz-appearance: none; - -webkit-appearance: none; - border: none; - border-radius: 9999px; - display: block; - height: 1rem; - overflow: hidden; - padding: 0; - width: 100%; -} -.progress::-webkit-progress-bar { - background-color: hsl(0deg, 0%, 93%); -} -.progress::-webkit-progress-value { - background-color: hsl(0deg, 0%, 29%); -} -.progress::-moz-progress-bar { - background-color: hsl(0deg, 0%, 29%); -} -.progress::-ms-fill { - background-color: hsl(0deg, 0%, 29%); - border: none; -} -.progress.is-white::-webkit-progress-value { - background-color: hsl(0deg, 0%, 100%); -} -.progress.is-white::-moz-progress-bar { - background-color: hsl(0deg, 0%, 100%); -} -.progress.is-white::-ms-fill { - background-color: hsl(0deg, 0%, 100%); -} -.progress.is-white:indeterminate { - background-image: linear-gradient(to right, hsl(0deg, 0%, 100%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-black::-webkit-progress-value { - background-color: hsl(0deg, 0%, 4%); -} -.progress.is-black::-moz-progress-bar { - background-color: hsl(0deg, 0%, 4%); -} -.progress.is-black::-ms-fill { - background-color: hsl(0deg, 0%, 4%); -} -.progress.is-black:indeterminate { - background-image: linear-gradient(to right, hsl(0deg, 0%, 4%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-light::-webkit-progress-value { - background-color: hsl(0deg, 0%, 96%); -} -.progress.is-light::-moz-progress-bar { - background-color: hsl(0deg, 0%, 96%); -} -.progress.is-light::-ms-fill { - background-color: hsl(0deg, 0%, 96%); -} -.progress.is-light:indeterminate { - background-image: linear-gradient(to right, hsl(0deg, 0%, 96%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-dark::-webkit-progress-value { - background-color: hsl(0deg, 0%, 21%); -} -.progress.is-dark::-moz-progress-bar { - background-color: hsl(0deg, 0%, 21%); -} -.progress.is-dark::-ms-fill { - background-color: hsl(0deg, 0%, 21%); -} -.progress.is-dark:indeterminate { - background-image: linear-gradient(to right, hsl(0deg, 0%, 21%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-primary::-webkit-progress-value { - background-color: hsl(171deg, 100%, 41%); -} -.progress.is-primary::-moz-progress-bar { - background-color: hsl(171deg, 100%, 41%); -} -.progress.is-primary::-ms-fill { - background-color: hsl(171deg, 100%, 41%); -} -.progress.is-primary:indeterminate { - background-image: linear-gradient(to right, hsl(171deg, 100%, 41%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-link::-webkit-progress-value { - background-color: hsl(229deg, 53%, 53%); -} -.progress.is-link::-moz-progress-bar { - background-color: hsl(229deg, 53%, 53%); -} -.progress.is-link::-ms-fill { - background-color: hsl(229deg, 53%, 53%); -} -.progress.is-link:indeterminate { - background-image: linear-gradient(to right, hsl(229deg, 53%, 53%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-info::-webkit-progress-value { - background-color: hsl(207deg, 61%, 53%); -} -.progress.is-info::-moz-progress-bar { - background-color: hsl(207deg, 61%, 53%); -} -.progress.is-info::-ms-fill { - background-color: hsl(207deg, 61%, 53%); -} -.progress.is-info:indeterminate { - background-image: linear-gradient(to right, hsl(207deg, 61%, 53%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-success::-webkit-progress-value { - background-color: hsl(153deg, 53%, 53%); -} -.progress.is-success::-moz-progress-bar { - background-color: hsl(153deg, 53%, 53%); -} -.progress.is-success::-ms-fill { - background-color: hsl(153deg, 53%, 53%); -} -.progress.is-success:indeterminate { - background-image: linear-gradient(to right, hsl(153deg, 53%, 53%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-warning::-webkit-progress-value { - background-color: hsl(44deg, 100%, 77%); -} -.progress.is-warning::-moz-progress-bar { - background-color: hsl(44deg, 100%, 77%); -} -.progress.is-warning::-ms-fill { - background-color: hsl(44deg, 100%, 77%); -} -.progress.is-warning:indeterminate { - background-image: linear-gradient(to right, hsl(44deg, 100%, 77%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress.is-danger::-webkit-progress-value { - background-color: hsl(348deg, 86%, 61%); -} -.progress.is-danger::-moz-progress-bar { - background-color: hsl(348deg, 86%, 61%); -} -.progress.is-danger::-ms-fill { - background-color: hsl(348deg, 86%, 61%); -} -.progress.is-danger:indeterminate { - background-image: linear-gradient(to right, hsl(348deg, 86%, 61%) 30%, hsl(0deg, 0%, 93%) 30%); -} -.progress:indeterminate { - animation-duration: 1.5s; - animation-iteration-count: infinite; - animation-name: moveIndeterminate; - animation-timing-function: linear; - background-color: hsl(0deg, 0%, 93%); - background-image: linear-gradient(to right, hsl(0deg, 0%, 29%) 30%, hsl(0deg, 0%, 93%) 30%); - background-position: top left; - background-repeat: no-repeat; - background-size: 150% 150%; -} -.progress:indeterminate::-webkit-progress-bar { - background-color: transparent; -} -.progress:indeterminate::-moz-progress-bar { - background-color: transparent; -} -.progress:indeterminate::-ms-fill { - animation-name: none; -} -.progress.is-small { - height: 0.75rem; -} -.progress.is-medium { - height: 1.25rem; -} -.progress.is-large { - height: 1.5rem; -} - -@keyframes moveIndeterminate { - from { - background-position: 200% 0; - } - to { - background-position: -200% 0; - } -} -.table { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 21%); -} -.table td, -.table th { - border: 1px solid hsl(0deg, 0%, 86%); - border-width: 0 0 1px; - padding: 0.5em 0.75em; - vertical-align: top; -} -.table td.is-white, -.table th.is-white { - background-color: hsl(0deg, 0%, 100%); +.message.is-white .message-body { border-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); } -.table td.is-black, -.table th.is-black { +.message.is-black { + background-color: #fafafa; +} +.message.is-black .message-header { background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.message.is-black .message-body { border-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); } -.table td.is-light, -.table th.is-light { +.message.is-light { + background-color: #fafafa; +} +.message.is-light .message-header { background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.message.is-light .message-body { border-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); } -.table td.is-dark, -.table th.is-dark { +.message.is-dark { + background-color: #fafafa; +} +.message.is-dark .message-header { background-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.message.is-dark .message-body { border-color: hsl(0deg, 0%, 21%); - color: #fff; } -.table td.is-primary, -.table th.is-primary { - background-color: hsl(171deg, 100%, 41%); - border-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.table td.is-link, -.table th.is-link { - background-color: hsl(229deg, 53%, 53%); - border-color: hsl(229deg, 53%, 53%); - color: #fff; -} -.table td.is-info, -.table th.is-info { - background-color: hsl(207deg, 61%, 53%); - border-color: hsl(207deg, 61%, 53%); - color: #fff; -} -.table td.is-success, -.table th.is-success { - background-color: hsl(153deg, 53%, 53%); - border-color: hsl(153deg, 53%, 53%); - color: #fff; -} -.table td.is-warning, -.table th.is-warning { - background-color: hsl(44deg, 100%, 77%); - border-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); -} -.table td.is-danger, -.table th.is-danger { - background-color: hsl(348deg, 86%, 61%); - border-color: hsl(348deg, 86%, 61%); - color: #fff; -} -.table td.is-narrow, -.table th.is-narrow { - white-space: nowrap; - width: 1%; -} -.table td.is-selected, -.table th.is-selected { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.table td.is-selected a, -.table td.is-selected strong, -.table th.is-selected a, -.table th.is-selected strong { - color: currentColor; -} -.table td.is-vcentered, -.table th.is-vcentered { - vertical-align: middle; -} -.table th { - color: hsl(0deg, 0%, 21%); -} -.table th:not([align]) { - text-align: left; -} -.table tr.is-selected { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.table tr.is-selected a, -.table tr.is-selected strong { - color: currentColor; -} -.table tr.is-selected td, -.table tr.is-selected th { - border-color: #fff; - color: currentColor; -} -.table thead { - background-color: transparent; -} -.table thead td, -.table thead th { - border-width: 0 0 2px; - color: hsl(0deg, 0%, 21%); -} -.table tfoot { - background-color: transparent; -} -.table tfoot td, -.table tfoot th { - border-width: 2px 0 0; - color: hsl(0deg, 0%, 21%); -} -.table tbody { - background-color: transparent; -} -.table tbody tr:last-child td, -.table tbody tr:last-child th { - border-bottom-width: 0; -} -.table.is-bordered td, -.table.is-bordered th { - border-width: 1px; -} -.table.is-bordered tr:last-child td, -.table.is-bordered tr:last-child th { - border-bottom-width: 1px; -} -.table.is-fullwidth { - width: 100%; -} -.table.is-hoverable tbody tr:not(.is-selected):hover { - background-color: hsl(0deg, 0%, 98%); -} -.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover { - background-color: hsl(0deg, 0%, 98%); -} -.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) { - background-color: hsl(0deg, 0%, 96%); -} -.table.is-narrow td, -.table.is-narrow th { - padding: 0.25em 0.5em; -} -.table.is-striped tbody tr:not(.is-selected):nth-child(even) { - background-color: hsl(0deg, 0%, 98%); -} - -.table-container { - -webkit-overflow-scrolling: touch; - overflow: auto; - overflow-y: hidden; - max-width: 100%; -} - -.tags { - align-items: center; - display: flex; - flex-wrap: wrap; - justify-content: flex-start; -} -.tags .tag { - margin-bottom: 0.5rem; -} -.tags .tag:not(:last-child) { - margin-right: 0.5rem; -} -.tags:last-child { - margin-bottom: -0.5rem; -} -.tags:not(:last-child) { - margin-bottom: 1rem; -} -.tags.are-medium .tag:not(.is-normal):not(.is-large) { - font-size: 1rem; -} -.tags.are-large .tag:not(.is-normal):not(.is-medium) { - font-size: 1.25rem; -} -.tags.is-centered { - justify-content: center; -} -.tags.is-centered .tag { - margin-right: 0.25rem; - margin-left: 0.25rem; -} -.tags.is-right { - justify-content: flex-end; -} -.tags.is-right .tag:not(:first-child) { - margin-left: 0.5rem; -} -.tags.is-right .tag:not(:last-child) { - margin-right: 0; -} -.tags.has-addons .tag { - margin-right: 0; -} -.tags.has-addons .tag:not(:first-child) { - margin-left: 0; - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} -.tags.has-addons .tag:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.tag:not(body) { - align-items: center; - background-color: hsl(0deg, 0%, 96%); - border-radius: 4px; - color: hsl(0deg, 0%, 29%); - display: inline-flex; - font-size: 0.75rem; - height: 2em; - justify-content: center; - line-height: 1.5; - padding-left: 0.75em; - padding-right: 0.75em; - white-space: nowrap; -} -.tag:not(body) .delete { - margin-left: 0.25rem; - margin-right: -0.375rem; -} -.tag:not(body).is-white { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.tag:not(body).is-black { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.tag:not(body).is-light { - background-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); -} -.tag:not(body).is-dark { - background-color: hsl(0deg, 0%, 21%); - color: #fff; -} -.tag:not(body).is-primary { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.tag:not(body).is-primary.is-light { +.message.is-primary { background-color: #ebfffc; +} +.message.is-primary .message-header { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.message.is-primary .message-body { + border-color: hsl(171deg, 100%, 41%); color: #00947e; } -.tag:not(body).is-link { +.message.is-link { + background-color: #eff1fa; +} +.message.is-link .message-header { background-color: hsl(229deg, 53%, 53%); color: #fff; } -.tag:not(body).is-link.is-light { - background-color: #eff1fa; +.message.is-link .message-body { + border-color: hsl(229deg, 53%, 53%); color: #3850b7; } -.tag:not(body).is-info { +.message.is-info { + background-color: #eff5fb; +} +.message.is-info .message-header { background-color: hsl(207deg, 61%, 53%); color: #fff; } -.tag:not(body).is-info.is-light { - background-color: #eff5fb; +.message.is-info .message-body { + border-color: hsl(207deg, 61%, 53%); color: #296fa8; } -.tag:not(body).is-success { +.message.is-success { + background-color: #effaf5; +} +.message.is-success .message-header { background-color: hsl(153deg, 53%, 53%); color: #fff; } -.tag:not(body).is-success.is-light { - background-color: #effaf5; +.message.is-success .message-body { + border-color: hsl(153deg, 53%, 53%); color: #257953; } -.tag:not(body).is-warning { +.message.is-warning { + background-color: #fffaeb; +} +.message.is-warning .message-header { background-color: hsl(44deg, 100%, 77%); color: rgba(0, 0, 0, 0.7); } -.tag:not(body).is-warning.is-light { - background-color: #fffaeb; +.message.is-warning .message-body { + border-color: hsl(44deg, 100%, 77%); color: #946c00; } -.tag:not(body).is-danger { +.message.is-danger { + background-color: #feecf0; +} +.message.is-danger .message-header { background-color: hsl(348deg, 86%, 61%); color: #fff; } -.tag:not(body).is-danger.is-light { - background-color: #feecf0; +.message.is-danger .message-body { + border-color: hsl(348deg, 86%, 61%); color: #cc0f35; } -.tag:not(body).is-normal { - font-size: 0.75rem; -} -.tag:not(body).is-medium { - font-size: 1rem; -} -.tag:not(body).is-large { - font-size: 1.25rem; -} -.tag:not(body) .icon:first-child:not(:last-child) { - margin-left: -0.375em; - margin-right: 0.1875em; -} -.tag:not(body) .icon:last-child:not(:first-child) { - margin-left: 0.1875em; - margin-right: -0.375em; -} -.tag:not(body) .icon:first-child:last-child { - margin-left: -0.375em; - margin-right: -0.375em; -} -.tag:not(body).is-delete { - margin-left: 1px; - padding: 0; - position: relative; - width: 2em; -} -.tag:not(body).is-delete::before, .tag:not(body).is-delete::after { - background-color: currentColor; - content: ""; - display: block; - left: 50%; - position: absolute; - top: 50%; - transform: translateX(-50%) translateY(-50%) rotate(45deg); - transform-origin: center center; -} -.tag:not(body).is-delete::before { - height: 1px; - width: 50%; -} -.tag:not(body).is-delete::after { - height: 50%; - width: 1px; -} -.tag:not(body).is-delete:hover, .tag:not(body).is-delete:focus { - background-color: #e8e8e8; -} -.tag:not(body).is-delete:active { - background-color: #dbdbdb; -} -.tag:not(body).is-rounded { - border-radius: 9999px; -} -a.tag:hover { - text-decoration: underline; -} - -.title, -.subtitle { - word-break: break-word; -} -.title em, -.title span, -.subtitle em, -.subtitle span { - font-weight: inherit; -} -.title sub, -.subtitle sub { - font-size: 0.75em; -} -.title sup, -.subtitle sup { - font-size: 0.75em; -} -.title .tag, -.subtitle .tag { - vertical-align: middle; -} - -.title { - color: hsl(0deg, 0%, 21%); - font-size: 2rem; - font-weight: 600; - line-height: 1.125; -} -.title strong { - color: inherit; - font-weight: inherit; -} -.title:not(.is-spaced) + .subtitle { - margin-top: -1.25rem; -} -.title.is-1 { - font-size: 3rem; -} -.title.is-2 { - font-size: 2.5rem; -} -.title.is-3 { - font-size: 2rem; -} -.title.is-4 { - font-size: 1.5rem; -} -.title.is-5 { - font-size: 1.25rem; -} -.title.is-6 { - font-size: 1rem; -} -.title.is-7 { - font-size: 0.75rem; -} - -.subtitle { - color: hsl(0deg, 0%, 29%); - font-size: 1.25rem; - font-weight: 400; +.message-header { + align-items: center; + background-color: hsl(0deg, 0%, 29%); + border-radius: 4px 4px 0 0; + color: #fff; + display: flex; + font-weight: 700; + justify-content: space-between; line-height: 1.25; + padding: 0.75em 1em; + position: relative; } -.subtitle strong { - color: hsl(0deg, 0%, 21%); - font-weight: 600; +.message-header .delete { + flex-grow: 0; + flex-shrink: 0; + margin-left: 0.75em; } -.subtitle:not(.is-spaced) + .title { - margin-top: -1.25rem; -} -.subtitle.is-1 { - font-size: 3rem; -} -.subtitle.is-2 { - font-size: 2.5rem; -} -.subtitle.is-3 { - font-size: 2rem; -} -.subtitle.is-4 { - font-size: 1.5rem; -} -.subtitle.is-5 { - font-size: 1.25rem; -} -.subtitle.is-6 { - font-size: 1rem; -} -.subtitle.is-7 { - font-size: 0.75rem; +.message-header + .message-body { + border-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; } -.heading { - display: block; - font-size: 11px; - letter-spacing: 1px; - margin-bottom: 5px; - text-transform: uppercase; +.message-body { + border-color: hsl(0deg, 0%, 86%); + border-radius: 4px; + border-style: solid; + border-width: 0 0 0 4px; + color: hsl(0deg, 0%, 29%); + padding: 1.25em 1.5em; +} +.message-body code, +.message-body pre { + background-color: hsl(0deg, 0%, 100%); +} +.message-body pre code { + background-color: transparent; } -.number { +.modal { + align-items: center; + display: none; + flex-direction: column; + justify-content: center; + overflow: hidden; + position: fixed; + z-index: 40; +} +.modal.is-active { + display: flex; +} + +.modal-background { + background-color: rgba(10, 10, 10, 0.86); +} + +.modal-content, +.modal-card { + margin: 0 20px; + max-height: calc(100vh - 160px); + overflow: auto; + position: relative; + width: 100%; +} +@media screen and (min-width: 769px) { + .modal-content, + .modal-card { + margin: 0 auto; + max-height: calc(100vh - 40px); + width: 640px; + } +} + +.modal-close { + background: none; + height: 40px; + position: fixed; + right: 20px; + top: 20px; + width: 40px; +} + +.modal-card { + display: flex; + flex-direction: column; + max-height: calc(100vh - 40px); + overflow: hidden; + -ms-overflow-y: visible; +} + +.modal-card-head, +.modal-card-foot { align-items: center; background-color: hsl(0deg, 0%, 96%); - border-radius: 9999px; - display: inline-flex; - font-size: 1.25rem; - height: 2em; - justify-content: center; - margin-right: 1.5rem; - min-width: 2.5em; - padding: 0.25rem 0.5rem; - text-align: center; - vertical-align: top; + display: flex; + flex-shrink: 0; + justify-content: flex-start; + padding: 20px; + position: relative; +} + +.modal-card-head { + border-bottom: 1px solid hsl(0deg, 0%, 86%); + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.modal-card-title { + color: hsl(0deg, 0%, 21%); + flex-grow: 1; + flex-shrink: 0; + font-size: 1.5rem; + line-height: 1; +} + +.modal-card-foot { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-top: 1px solid hsl(0deg, 0%, 86%); +} +.modal-card-foot .button:not(:last-child) { + margin-right: 0.5em; +} + +.modal-card-body { + -webkit-overflow-scrolling: touch; + background-color: hsl(0deg, 0%, 100%); + flex-grow: 1; + flex-shrink: 1; + overflow: auto; + padding: 20px; } /* Bulma Form */ @@ -4029,2213 +1851,6 @@ a.tag:hover { font-size: 1.5rem; } -/* Bulma Components */ -.breadcrumb { - font-size: 1rem; - white-space: nowrap; -} -.breadcrumb a { - align-items: center; - color: hsl(229deg, 53%, 53%); - display: flex; - justify-content: center; - padding: 0 0.75em; -} -.breadcrumb a:hover { - color: hsl(0deg, 0%, 21%); -} -.breadcrumb li { - align-items: center; - display: flex; -} -.breadcrumb li:first-child a { - padding-left: 0; -} -.breadcrumb li.is-active a { - color: hsl(0deg, 0%, 21%); - cursor: default; - pointer-events: none; -} -.breadcrumb li + li::before { - color: hsl(0deg, 0%, 71%); - content: "/"; -} -.breadcrumb ul, -.breadcrumb ol { - align-items: flex-start; - display: flex; - flex-wrap: wrap; - justify-content: flex-start; -} -.breadcrumb .icon:first-child { - margin-right: 0.5em; -} -.breadcrumb .icon:last-child { - margin-left: 0.5em; -} -.breadcrumb.is-centered ol, -.breadcrumb.is-centered ul { - justify-content: center; -} -.breadcrumb.is-right ol, -.breadcrumb.is-right ul { - justify-content: flex-end; -} -.breadcrumb.is-small { - font-size: 0.75rem; -} -.breadcrumb.is-medium { - font-size: 1.25rem; -} -.breadcrumb.is-large { - font-size: 1.5rem; -} -.breadcrumb.has-arrow-separator li + li::before { - content: "→"; -} -.breadcrumb.has-bullet-separator li + li::before { - content: "•"; -} -.breadcrumb.has-dot-separator li + li::before { - content: "·"; -} -.breadcrumb.has-succeeds-separator li + li::before { - content: "≻"; -} - -.card { - background-color: hsl(0deg, 0%, 100%); - border-radius: 0.25rem; - box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); - color: hsl(0deg, 0%, 29%); - max-width: 100%; - position: relative; -} - -.card-footer:first-child, .card-content:first-child, .card-header:first-child { - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.card-footer:last-child, .card-content:last-child, .card-header:last-child { - border-bottom-left-radius: 0.25rem; - border-bottom-right-radius: 0.25rem; -} - -.card-header { - background-color: transparent; - align-items: stretch; - box-shadow: 0 0.125em 0.25em rgba(10, 10, 10, 0.1); - display: flex; -} - -.card-header-title { - align-items: center; - color: hsl(0deg, 0%, 21%); - display: flex; - flex-grow: 1; - font-weight: 700; - padding: 0.75rem 1rem; -} -.card-header-title.is-centered { - justify-content: center; -} - -.card-header-icon { - -moz-appearance: none; - -webkit-appearance: none; - appearance: none; - background: none; - border: none; - color: currentColor; - font-family: inherit; - font-size: 1em; - margin: 0; - padding: 0; - align-items: center; - cursor: pointer; - display: flex; - justify-content: center; - padding: 0.75rem 1rem; -} - -.card-image { - display: block; - position: relative; -} -.card-image:first-child img { - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.card-image:last-child img { - border-bottom-left-radius: 0.25rem; - border-bottom-right-radius: 0.25rem; -} - -.card-content { - background-color: transparent; - padding: 1.5rem; -} - -.card-footer { - background-color: transparent; - border-top: 1px solid hsl(0deg, 0%, 93%); - align-items: stretch; - display: flex; -} - -.card-footer-item { - align-items: center; - display: flex; - flex-basis: 0; - flex-grow: 1; - flex-shrink: 0; - justify-content: center; - padding: 0.75rem; -} -.card-footer-item:not(:last-child) { - border-right: 1px solid hsl(0deg, 0%, 93%); -} - -.card .media:not(:last-child) { - margin-bottom: 1.5rem; -} - -.dropdown { - display: inline-flex; - position: relative; - vertical-align: top; -} -.dropdown.is-active .dropdown-menu, .dropdown.is-hoverable:hover .dropdown-menu { - display: block; -} -.dropdown.is-right .dropdown-menu { - left: auto; - right: 0; -} -.dropdown.is-up .dropdown-menu { - bottom: 100%; - padding-bottom: 4px; - padding-top: initial; - top: auto; -} - -.dropdown-menu { - display: none; - left: 0; - min-width: 12rem; - padding-top: 4px; - position: absolute; - top: 100%; - z-index: 20; -} - -.dropdown-content { - background-color: hsl(0deg, 0%, 100%); - border-radius: 4px; - box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); - padding-bottom: 0.5rem; - padding-top: 0.5rem; -} - -.dropdown-item { - color: hsl(0deg, 0%, 29%); - display: block; - font-size: 0.875rem; - line-height: 1.5; - padding: 0.375rem 1rem; - position: relative; -} - -a.dropdown-item, -button.dropdown-item { - padding-right: 3rem; - text-align: inherit; - white-space: nowrap; - width: 100%; -} -a.dropdown-item:hover, -button.dropdown-item:hover { - background-color: hsl(0deg, 0%, 96%); - color: hsl(0deg, 0%, 4%); -} -a.dropdown-item.is-active, -button.dropdown-item.is-active { - background-color: hsl(229deg, 53%, 53%); - color: #fff; -} - -.dropdown-divider { - background-color: hsl(0deg, 0%, 93%); - border: none; - display: block; - height: 1px; - margin: 0.5rem 0; -} - -.level { - align-items: center; - justify-content: space-between; -} -.level code { - border-radius: 4px; -} -.level img { - display: inline-block; - vertical-align: top; -} -.level.is-mobile { - display: flex; -} -.level.is-mobile .level-left, -.level.is-mobile .level-right { - display: flex; -} -.level.is-mobile .level-left + .level-right { - margin-top: 0; -} -.level.is-mobile .level-item:not(:last-child) { - margin-bottom: 0; - margin-right: 0.75rem; -} -.level.is-mobile .level-item:not(.is-narrow) { - flex-grow: 1; -} -@media screen and (min-width: 769px), print { - .level { - display: flex; - } - .level > .level-item:not(.is-narrow) { - flex-grow: 1; - } -} - -.level-item { - align-items: center; - display: flex; - flex-basis: auto; - flex-grow: 0; - flex-shrink: 0; - justify-content: center; -} -.level-item .title, -.level-item .subtitle { - margin-bottom: 0; -} -@media screen and (max-width: 768px) { - .level-item:not(:last-child) { - margin-bottom: 0.75rem; - } -} - -.level-left, -.level-right { - flex-basis: auto; - flex-grow: 0; - flex-shrink: 0; -} -.level-left .level-item.is-flexible, -.level-right .level-item.is-flexible { - flex-grow: 1; -} -@media screen and (min-width: 769px), print { - .level-left .level-item:not(:last-child), - .level-right .level-item:not(:last-child) { - margin-right: 0.75rem; - } -} - -.level-left { - align-items: center; - justify-content: flex-start; -} -@media screen and (max-width: 768px) { - .level-left + .level-right { - margin-top: 1.5rem; - } -} -@media screen and (min-width: 769px), print { - .level-left { - display: flex; - } -} - -.level-right { - align-items: center; - justify-content: flex-end; -} -@media screen and (min-width: 769px), print { - .level-right { - display: flex; - } -} - -.media { - align-items: flex-start; - display: flex; - text-align: inherit; -} -.media .content:not(:last-child) { - margin-bottom: 0.75rem; -} -.media .media { - border-top: 1px solid rgba(219, 219, 219, 0.5); - display: flex; - padding-top: 0.75rem; -} -.media .media .content:not(:last-child), -.media .media .control:not(:last-child) { - margin-bottom: 0.5rem; -} -.media .media .media { - padding-top: 0.5rem; -} -.media .media .media + .media { - margin-top: 0.5rem; -} -.media + .media { - border-top: 1px solid rgba(219, 219, 219, 0.5); - margin-top: 1rem; - padding-top: 1rem; -} -.media.is-large + .media { - margin-top: 1.5rem; - padding-top: 1.5rem; -} - -.media-left, -.media-right { - flex-basis: auto; - flex-grow: 0; - flex-shrink: 0; -} - -.media-left { - margin-right: 1rem; -} - -.media-right { - margin-left: 1rem; -} - -.media-content { - flex-basis: auto; - flex-grow: 1; - flex-shrink: 1; - text-align: inherit; -} - -@media screen and (max-width: 768px) { - .media-content { - overflow-x: auto; - } -} -.menu { - font-size: 1rem; -} -.menu.is-small { - font-size: 0.75rem; -} -.menu.is-medium { - font-size: 1.25rem; -} -.menu.is-large { - font-size: 1.5rem; -} - -.menu-list { - line-height: 1.25; -} -.menu-list a { - border-radius: 2px; - color: hsl(0deg, 0%, 29%); - display: block; - padding: 0.5em 0.75em; -} -.menu-list a:hover { - background-color: #dfdfdf; - color: hsl(0deg, 0%, 21%); -} -.menu-list a.is-active { - background-color: #d2d2d2; - color: #fff; -} -.menu-list li ul { - border-left: 1px solid hsl(0deg, 0%, 86%); - margin: 0.75em; - padding-left: 0.75em; -} - -.menu-label { - color: hsl(0deg, 0%, 48%); - font-size: 0.75em; - letter-spacing: 0.1em; - text-transform: uppercase; -} -.menu-label:not(:first-child) { - margin-top: 1em; -} -.menu-label:not(:last-child) { - margin-bottom: 1em; -} - -.message { - background-color: hsl(0deg, 0%, 96%); - border-radius: 4px; - font-size: 1rem; -} -.message strong { - color: currentColor; -} -.message a:not(.button):not(.tag):not(.dropdown-item) { - color: currentColor; - text-decoration: underline; -} -.message.is-small { - font-size: 0.75rem; -} -.message.is-medium { - font-size: 1.25rem; -} -.message.is-large { - font-size: 1.5rem; -} -.message.is-white { - background-color: white; -} -.message.is-white .message-header { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.message.is-white .message-body { - border-color: hsl(0deg, 0%, 100%); -} -.message.is-black { - background-color: #fafafa; -} -.message.is-black .message-header { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.message.is-black .message-body { - border-color: hsl(0deg, 0%, 4%); -} -.message.is-light { - background-color: #fafafa; -} -.message.is-light .message-header { - background-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); -} -.message.is-light .message-body { - border-color: hsl(0deg, 0%, 96%); -} -.message.is-dark { - background-color: #fafafa; -} -.message.is-dark .message-header { - background-color: hsl(0deg, 0%, 21%); - color: #fff; -} -.message.is-dark .message-body { - border-color: hsl(0deg, 0%, 21%); -} -.message.is-primary { - background-color: #ebfffc; -} -.message.is-primary .message-header { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.message.is-primary .message-body { - border-color: hsl(171deg, 100%, 41%); - color: #00947e; -} -.message.is-link { - background-color: #eff1fa; -} -.message.is-link .message-header { - background-color: hsl(229deg, 53%, 53%); - color: #fff; -} -.message.is-link .message-body { - border-color: hsl(229deg, 53%, 53%); - color: #3850b7; -} -.message.is-info { - background-color: #eff5fb; -} -.message.is-info .message-header { - background-color: hsl(207deg, 61%, 53%); - color: #fff; -} -.message.is-info .message-body { - border-color: hsl(207deg, 61%, 53%); - color: #296fa8; -} -.message.is-success { - background-color: #effaf5; -} -.message.is-success .message-header { - background-color: hsl(153deg, 53%, 53%); - color: #fff; -} -.message.is-success .message-body { - border-color: hsl(153deg, 53%, 53%); - color: #257953; -} -.message.is-warning { - background-color: #fffaeb; -} -.message.is-warning .message-header { - background-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); -} -.message.is-warning .message-body { - border-color: hsl(44deg, 100%, 77%); - color: #946c00; -} -.message.is-danger { - background-color: #feecf0; -} -.message.is-danger .message-header { - background-color: hsl(348deg, 86%, 61%); - color: #fff; -} -.message.is-danger .message-body { - border-color: hsl(348deg, 86%, 61%); - color: #cc0f35; -} - -.message-header { - align-items: center; - background-color: hsl(0deg, 0%, 29%); - border-radius: 4px 4px 0 0; - color: #fff; - display: flex; - font-weight: 700; - justify-content: space-between; - line-height: 1.25; - padding: 0.75em 1em; - position: relative; -} -.message-header .delete { - flex-grow: 0; - flex-shrink: 0; - margin-left: 0.75em; -} -.message-header + .message-body { - border-width: 0; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.message-body { - border-color: hsl(0deg, 0%, 86%); - border-radius: 4px; - border-style: solid; - border-width: 0 0 0 4px; - color: hsl(0deg, 0%, 29%); - padding: 1.25em 1.5em; -} -.message-body code, -.message-body pre { - background-color: hsl(0deg, 0%, 100%); -} -.message-body pre code { - background-color: transparent; -} - -.modal { - align-items: center; - display: none; - flex-direction: column; - justify-content: center; - overflow: hidden; - position: fixed; - z-index: 40; -} -.modal.is-active { - display: flex; -} - -.modal-background { - background-color: rgba(10, 10, 10, 0.86); -} - -.modal-content, -.modal-card { - margin: 0 20px; - max-height: calc(100vh - 160px); - overflow: auto; - position: relative; - width: 100%; -} -@media screen and (min-width: 769px) { - .modal-content, - .modal-card { - margin: 0 auto; - max-height: calc(100vh - 40px); - width: 640px; - } -} - -.modal-close { - background: none; - height: 40px; - position: fixed; - right: 20px; - top: 20px; - width: 40px; -} - -.modal-card { - display: flex; - flex-direction: column; - max-height: calc(100vh - 40px); - overflow: hidden; - -ms-overflow-y: visible; -} - -.modal-card-head, -.modal-card-foot { - align-items: center; - background-color: hsl(0deg, 0%, 96%); - display: flex; - flex-shrink: 0; - justify-content: flex-start; - padding: 20px; - position: relative; -} - -.modal-card-head { - border-bottom: 1px solid hsl(0deg, 0%, 86%); - border-top-left-radius: 6px; - border-top-right-radius: 6px; -} - -.modal-card-title { - color: hsl(0deg, 0%, 21%); - flex-grow: 1; - flex-shrink: 0; - font-size: 1.5rem; - line-height: 1; -} - -.modal-card-foot { - border-bottom-left-radius: 6px; - border-bottom-right-radius: 6px; - border-top: 1px solid hsl(0deg, 0%, 86%); -} -.modal-card-foot .button:not(:last-child) { - margin-right: 0.5em; -} - -.modal-card-body { - -webkit-overflow-scrolling: touch; - background-color: hsl(0deg, 0%, 100%); - flex-grow: 1; - flex-shrink: 1; - overflow: auto; - padding: 20px; -} - -.navbar { - background-color: hsl(0deg, 0%, 100%); - min-height: 3.25rem; - position: relative; - z-index: 30; -} -.navbar.is-white { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.navbar.is-white .navbar-brand > .navbar-item, -.navbar.is-white .navbar-brand .navbar-link { - color: hsl(0deg, 0%, 4%); -} -.navbar.is-white .navbar-brand > a.navbar-item:focus, .navbar.is-white .navbar-brand > a.navbar-item:hover, .navbar.is-white .navbar-brand > a.navbar-item.is-active, -.navbar.is-white .navbar-brand .navbar-link:focus, -.navbar.is-white .navbar-brand .navbar-link:hover, -.navbar.is-white .navbar-brand .navbar-link.is-active { - background-color: #f2f2f2; - color: hsl(0deg, 0%, 4%); -} -.navbar.is-white .navbar-brand .navbar-link::after { - border-color: hsl(0deg, 0%, 4%); -} -.navbar.is-white .navbar-burger { - color: hsl(0deg, 0%, 4%); -} -@media screen and (min-width: 1024px) { - .navbar.is-white .navbar-start > .navbar-item, - .navbar.is-white .navbar-start .navbar-link, - .navbar.is-white .navbar-end > .navbar-item, - .navbar.is-white .navbar-end .navbar-link { - color: hsl(0deg, 0%, 4%); - } - .navbar.is-white .navbar-start > a.navbar-item:focus, .navbar.is-white .navbar-start > a.navbar-item:hover, .navbar.is-white .navbar-start > a.navbar-item.is-active, - .navbar.is-white .navbar-start .navbar-link:focus, - .navbar.is-white .navbar-start .navbar-link:hover, - .navbar.is-white .navbar-start .navbar-link.is-active, - .navbar.is-white .navbar-end > a.navbar-item:focus, - .navbar.is-white .navbar-end > a.navbar-item:hover, - .navbar.is-white .navbar-end > a.navbar-item.is-active, - .navbar.is-white .navbar-end .navbar-link:focus, - .navbar.is-white .navbar-end .navbar-link:hover, - .navbar.is-white .navbar-end .navbar-link.is-active { - background-color: #f2f2f2; - color: hsl(0deg, 0%, 4%); - } - .navbar.is-white .navbar-start .navbar-link::after, - .navbar.is-white .navbar-end .navbar-link::after { - border-color: hsl(0deg, 0%, 4%); - } - .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #f2f2f2; - color: hsl(0deg, 0%, 4%); - } - .navbar.is-white .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); - } -} -.navbar.is-black { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.navbar.is-black .navbar-brand > .navbar-item, -.navbar.is-black .navbar-brand .navbar-link { - color: hsl(0deg, 0%, 100%); -} -.navbar.is-black .navbar-brand > a.navbar-item:focus, .navbar.is-black .navbar-brand > a.navbar-item:hover, .navbar.is-black .navbar-brand > a.navbar-item.is-active, -.navbar.is-black .navbar-brand .navbar-link:focus, -.navbar.is-black .navbar-brand .navbar-link:hover, -.navbar.is-black .navbar-brand .navbar-link.is-active { - background-color: black; - color: hsl(0deg, 0%, 100%); -} -.navbar.is-black .navbar-brand .navbar-link::after { - border-color: hsl(0deg, 0%, 100%); -} -.navbar.is-black .navbar-burger { - color: hsl(0deg, 0%, 100%); -} -@media screen and (min-width: 1024px) { - .navbar.is-black .navbar-start > .navbar-item, - .navbar.is-black .navbar-start .navbar-link, - .navbar.is-black .navbar-end > .navbar-item, - .navbar.is-black .navbar-end .navbar-link { - color: hsl(0deg, 0%, 100%); - } - .navbar.is-black .navbar-start > a.navbar-item:focus, .navbar.is-black .navbar-start > a.navbar-item:hover, .navbar.is-black .navbar-start > a.navbar-item.is-active, - .navbar.is-black .navbar-start .navbar-link:focus, - .navbar.is-black .navbar-start .navbar-link:hover, - .navbar.is-black .navbar-start .navbar-link.is-active, - .navbar.is-black .navbar-end > a.navbar-item:focus, - .navbar.is-black .navbar-end > a.navbar-item:hover, - .navbar.is-black .navbar-end > a.navbar-item.is-active, - .navbar.is-black .navbar-end .navbar-link:focus, - .navbar.is-black .navbar-end .navbar-link:hover, - .navbar.is-black .navbar-end .navbar-link.is-active { - background-color: black; - color: hsl(0deg, 0%, 100%); - } - .navbar.is-black .navbar-start .navbar-link::after, - .navbar.is-black .navbar-end .navbar-link::after { - border-color: hsl(0deg, 0%, 100%); - } - .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link { - background-color: black; - color: hsl(0deg, 0%, 100%); - } - .navbar.is-black .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); - } -} -.navbar.is-light { - background-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); -} -.navbar.is-light .navbar-brand > .navbar-item, -.navbar.is-light .navbar-brand .navbar-link { - color: rgba(0, 0, 0, 0.7); -} -.navbar.is-light .navbar-brand > a.navbar-item:focus, .navbar.is-light .navbar-brand > a.navbar-item:hover, .navbar.is-light .navbar-brand > a.navbar-item.is-active, -.navbar.is-light .navbar-brand .navbar-link:focus, -.navbar.is-light .navbar-brand .navbar-link:hover, -.navbar.is-light .navbar-brand .navbar-link.is-active { - background-color: #e8e8e8; - color: rgba(0, 0, 0, 0.7); -} -.navbar.is-light .navbar-brand .navbar-link::after { - border-color: rgba(0, 0, 0, 0.7); -} -.navbar.is-light .navbar-burger { - color: rgba(0, 0, 0, 0.7); -} -@media screen and (min-width: 1024px) { - .navbar.is-light .navbar-start > .navbar-item, - .navbar.is-light .navbar-start .navbar-link, - .navbar.is-light .navbar-end > .navbar-item, - .navbar.is-light .navbar-end .navbar-link { - color: rgba(0, 0, 0, 0.7); - } - .navbar.is-light .navbar-start > a.navbar-item:focus, .navbar.is-light .navbar-start > a.navbar-item:hover, .navbar.is-light .navbar-start > a.navbar-item.is-active, - .navbar.is-light .navbar-start .navbar-link:focus, - .navbar.is-light .navbar-start .navbar-link:hover, - .navbar.is-light .navbar-start .navbar-link.is-active, - .navbar.is-light .navbar-end > a.navbar-item:focus, - .navbar.is-light .navbar-end > a.navbar-item:hover, - .navbar.is-light .navbar-end > a.navbar-item.is-active, - .navbar.is-light .navbar-end .navbar-link:focus, - .navbar.is-light .navbar-end .navbar-link:hover, - .navbar.is-light .navbar-end .navbar-link.is-active { - background-color: #e8e8e8; - color: rgba(0, 0, 0, 0.7); - } - .navbar.is-light .navbar-start .navbar-link::after, - .navbar.is-light .navbar-end .navbar-link::after { - border-color: rgba(0, 0, 0, 0.7); - } - .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #e8e8e8; - color: rgba(0, 0, 0, 0.7); - } - .navbar.is-light .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); - } -} -.navbar.is-dark { - background-color: hsl(0deg, 0%, 21%); - color: #fff; -} -.navbar.is-dark .navbar-brand > .navbar-item, -.navbar.is-dark .navbar-brand .navbar-link { - color: #fff; -} -.navbar.is-dark .navbar-brand > a.navbar-item:focus, .navbar.is-dark .navbar-brand > a.navbar-item:hover, .navbar.is-dark .navbar-brand > a.navbar-item.is-active, -.navbar.is-dark .navbar-brand .navbar-link:focus, -.navbar.is-dark .navbar-brand .navbar-link:hover, -.navbar.is-dark .navbar-brand .navbar-link.is-active { - background-color: #292929; - color: #fff; -} -.navbar.is-dark .navbar-brand .navbar-link::after { - border-color: #fff; -} -.navbar.is-dark .navbar-burger { - color: #fff; -} -@media screen and (min-width: 1024px) { - .navbar.is-dark .navbar-start > .navbar-item, - .navbar.is-dark .navbar-start .navbar-link, - .navbar.is-dark .navbar-end > .navbar-item, - .navbar.is-dark .navbar-end .navbar-link { - color: #fff; - } - .navbar.is-dark .navbar-start > a.navbar-item:focus, .navbar.is-dark .navbar-start > a.navbar-item:hover, .navbar.is-dark .navbar-start > a.navbar-item.is-active, - .navbar.is-dark .navbar-start .navbar-link:focus, - .navbar.is-dark .navbar-start .navbar-link:hover, - .navbar.is-dark .navbar-start .navbar-link.is-active, - .navbar.is-dark .navbar-end > a.navbar-item:focus, - .navbar.is-dark .navbar-end > a.navbar-item:hover, - .navbar.is-dark .navbar-end > a.navbar-item.is-active, - .navbar.is-dark .navbar-end .navbar-link:focus, - .navbar.is-dark .navbar-end .navbar-link:hover, - .navbar.is-dark .navbar-end .navbar-link.is-active { - background-color: #292929; - color: #fff; - } - .navbar.is-dark .navbar-start .navbar-link::after, - .navbar.is-dark .navbar-end .navbar-link::after { - border-color: #fff; - } - .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #292929; - color: #fff; - } - .navbar.is-dark .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(0deg, 0%, 21%); - color: #fff; - } -} -.navbar.is-primary { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.navbar.is-primary .navbar-brand > .navbar-item, -.navbar.is-primary .navbar-brand .navbar-link { - color: #fff; -} -.navbar.is-primary .navbar-brand > a.navbar-item:focus, .navbar.is-primary .navbar-brand > a.navbar-item:hover, .navbar.is-primary .navbar-brand > a.navbar-item.is-active, -.navbar.is-primary .navbar-brand .navbar-link:focus, -.navbar.is-primary .navbar-brand .navbar-link:hover, -.navbar.is-primary .navbar-brand .navbar-link.is-active { - background-color: #00b89c; - color: #fff; -} -.navbar.is-primary .navbar-brand .navbar-link::after { - border-color: #fff; -} -.navbar.is-primary .navbar-burger { - color: #fff; -} -@media screen and (min-width: 1024px) { - .navbar.is-primary .navbar-start > .navbar-item, - .navbar.is-primary .navbar-start .navbar-link, - .navbar.is-primary .navbar-end > .navbar-item, - .navbar.is-primary .navbar-end .navbar-link { - color: #fff; - } - .navbar.is-primary .navbar-start > a.navbar-item:focus, .navbar.is-primary .navbar-start > a.navbar-item:hover, .navbar.is-primary .navbar-start > a.navbar-item.is-active, - .navbar.is-primary .navbar-start .navbar-link:focus, - .navbar.is-primary .navbar-start .navbar-link:hover, - .navbar.is-primary .navbar-start .navbar-link.is-active, - .navbar.is-primary .navbar-end > a.navbar-item:focus, - .navbar.is-primary .navbar-end > a.navbar-item:hover, - .navbar.is-primary .navbar-end > a.navbar-item.is-active, - .navbar.is-primary .navbar-end .navbar-link:focus, - .navbar.is-primary .navbar-end .navbar-link:hover, - .navbar.is-primary .navbar-end .navbar-link.is-active { - background-color: #00b89c; - color: #fff; - } - .navbar.is-primary .navbar-start .navbar-link::after, - .navbar.is-primary .navbar-end .navbar-link::after { - border-color: #fff; - } - .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #00b89c; - color: #fff; - } - .navbar.is-primary .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(171deg, 100%, 41%); - color: #fff; - } -} -.navbar.is-link { - background-color: hsl(229deg, 53%, 53%); - color: #fff; -} -.navbar.is-link .navbar-brand > .navbar-item, -.navbar.is-link .navbar-brand .navbar-link { - color: #fff; -} -.navbar.is-link .navbar-brand > a.navbar-item:focus, .navbar.is-link .navbar-brand > a.navbar-item:hover, .navbar.is-link .navbar-brand > a.navbar-item.is-active, -.navbar.is-link .navbar-brand .navbar-link:focus, -.navbar.is-link .navbar-brand .navbar-link:hover, -.navbar.is-link .navbar-brand .navbar-link.is-active { - background-color: #3a51bb; - color: #fff; -} -.navbar.is-link .navbar-brand .navbar-link::after { - border-color: #fff; -} -.navbar.is-link .navbar-burger { - color: #fff; -} -@media screen and (min-width: 1024px) { - .navbar.is-link .navbar-start > .navbar-item, - .navbar.is-link .navbar-start .navbar-link, - .navbar.is-link .navbar-end > .navbar-item, - .navbar.is-link .navbar-end .navbar-link { - color: #fff; - } - .navbar.is-link .navbar-start > a.navbar-item:focus, .navbar.is-link .navbar-start > a.navbar-item:hover, .navbar.is-link .navbar-start > a.navbar-item.is-active, - .navbar.is-link .navbar-start .navbar-link:focus, - .navbar.is-link .navbar-start .navbar-link:hover, - .navbar.is-link .navbar-start .navbar-link.is-active, - .navbar.is-link .navbar-end > a.navbar-item:focus, - .navbar.is-link .navbar-end > a.navbar-item:hover, - .navbar.is-link .navbar-end > a.navbar-item.is-active, - .navbar.is-link .navbar-end .navbar-link:focus, - .navbar.is-link .navbar-end .navbar-link:hover, - .navbar.is-link .navbar-end .navbar-link.is-active { - background-color: #3a51bb; - color: #fff; - } - .navbar.is-link .navbar-start .navbar-link::after, - .navbar.is-link .navbar-end .navbar-link::after { - border-color: #fff; - } - .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #3a51bb; - color: #fff; - } - .navbar.is-link .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(229deg, 53%, 53%); - color: #fff; - } -} -.navbar.is-info { - background-color: hsl(207deg, 61%, 53%); - color: #fff; -} -.navbar.is-info .navbar-brand > .navbar-item, -.navbar.is-info .navbar-brand .navbar-link { - color: #fff; -} -.navbar.is-info .navbar-brand > a.navbar-item:focus, .navbar.is-info .navbar-brand > a.navbar-item:hover, .navbar.is-info .navbar-brand > a.navbar-item.is-active, -.navbar.is-info .navbar-brand .navbar-link:focus, -.navbar.is-info .navbar-brand .navbar-link:hover, -.navbar.is-info .navbar-brand .navbar-link.is-active { - background-color: #3082c5; - color: #fff; -} -.navbar.is-info .navbar-brand .navbar-link::after { - border-color: #fff; -} -.navbar.is-info .navbar-burger { - color: #fff; -} -@media screen and (min-width: 1024px) { - .navbar.is-info .navbar-start > .navbar-item, - .navbar.is-info .navbar-start .navbar-link, - .navbar.is-info .navbar-end > .navbar-item, - .navbar.is-info .navbar-end .navbar-link { - color: #fff; - } - .navbar.is-info .navbar-start > a.navbar-item:focus, .navbar.is-info .navbar-start > a.navbar-item:hover, .navbar.is-info .navbar-start > a.navbar-item.is-active, - .navbar.is-info .navbar-start .navbar-link:focus, - .navbar.is-info .navbar-start .navbar-link:hover, - .navbar.is-info .navbar-start .navbar-link.is-active, - .navbar.is-info .navbar-end > a.navbar-item:focus, - .navbar.is-info .navbar-end > a.navbar-item:hover, - .navbar.is-info .navbar-end > a.navbar-item.is-active, - .navbar.is-info .navbar-end .navbar-link:focus, - .navbar.is-info .navbar-end .navbar-link:hover, - .navbar.is-info .navbar-end .navbar-link.is-active { - background-color: #3082c5; - color: #fff; - } - .navbar.is-info .navbar-start .navbar-link::after, - .navbar.is-info .navbar-end .navbar-link::after { - border-color: #fff; - } - .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #3082c5; - color: #fff; - } - .navbar.is-info .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(207deg, 61%, 53%); - color: #fff; - } -} -.navbar.is-success { - background-color: hsl(153deg, 53%, 53%); - color: #fff; -} -.navbar.is-success .navbar-brand > .navbar-item, -.navbar.is-success .navbar-brand .navbar-link { - color: #fff; -} -.navbar.is-success .navbar-brand > a.navbar-item:focus, .navbar.is-success .navbar-brand > a.navbar-item:hover, .navbar.is-success .navbar-brand > a.navbar-item.is-active, -.navbar.is-success .navbar-brand .navbar-link:focus, -.navbar.is-success .navbar-brand .navbar-link:hover, -.navbar.is-success .navbar-brand .navbar-link.is-active { - background-color: #3abb81; - color: #fff; -} -.navbar.is-success .navbar-brand .navbar-link::after { - border-color: #fff; -} -.navbar.is-success .navbar-burger { - color: #fff; -} -@media screen and (min-width: 1024px) { - .navbar.is-success .navbar-start > .navbar-item, - .navbar.is-success .navbar-start .navbar-link, - .navbar.is-success .navbar-end > .navbar-item, - .navbar.is-success .navbar-end .navbar-link { - color: #fff; - } - .navbar.is-success .navbar-start > a.navbar-item:focus, .navbar.is-success .navbar-start > a.navbar-item:hover, .navbar.is-success .navbar-start > a.navbar-item.is-active, - .navbar.is-success .navbar-start .navbar-link:focus, - .navbar.is-success .navbar-start .navbar-link:hover, - .navbar.is-success .navbar-start .navbar-link.is-active, - .navbar.is-success .navbar-end > a.navbar-item:focus, - .navbar.is-success .navbar-end > a.navbar-item:hover, - .navbar.is-success .navbar-end > a.navbar-item.is-active, - .navbar.is-success .navbar-end .navbar-link:focus, - .navbar.is-success .navbar-end .navbar-link:hover, - .navbar.is-success .navbar-end .navbar-link.is-active { - background-color: #3abb81; - color: #fff; - } - .navbar.is-success .navbar-start .navbar-link::after, - .navbar.is-success .navbar-end .navbar-link::after { - border-color: #fff; - } - .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #3abb81; - color: #fff; - } - .navbar.is-success .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(153deg, 53%, 53%); - color: #fff; - } -} -.navbar.is-warning { - background-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); -} -.navbar.is-warning .navbar-brand > .navbar-item, -.navbar.is-warning .navbar-brand .navbar-link { - color: rgba(0, 0, 0, 0.7); -} -.navbar.is-warning .navbar-brand > a.navbar-item:focus, .navbar.is-warning .navbar-brand > a.navbar-item:hover, .navbar.is-warning .navbar-brand > a.navbar-item.is-active, -.navbar.is-warning .navbar-brand .navbar-link:focus, -.navbar.is-warning .navbar-brand .navbar-link:hover, -.navbar.is-warning .navbar-brand .navbar-link.is-active { - background-color: #ffd970; - color: rgba(0, 0, 0, 0.7); -} -.navbar.is-warning .navbar-brand .navbar-link::after { - border-color: rgba(0, 0, 0, 0.7); -} -.navbar.is-warning .navbar-burger { - color: rgba(0, 0, 0, 0.7); -} -@media screen and (min-width: 1024px) { - .navbar.is-warning .navbar-start > .navbar-item, - .navbar.is-warning .navbar-start .navbar-link, - .navbar.is-warning .navbar-end > .navbar-item, - .navbar.is-warning .navbar-end .navbar-link { - color: rgba(0, 0, 0, 0.7); - } - .navbar.is-warning .navbar-start > a.navbar-item:focus, .navbar.is-warning .navbar-start > a.navbar-item:hover, .navbar.is-warning .navbar-start > a.navbar-item.is-active, - .navbar.is-warning .navbar-start .navbar-link:focus, - .navbar.is-warning .navbar-start .navbar-link:hover, - .navbar.is-warning .navbar-start .navbar-link.is-active, - .navbar.is-warning .navbar-end > a.navbar-item:focus, - .navbar.is-warning .navbar-end > a.navbar-item:hover, - .navbar.is-warning .navbar-end > a.navbar-item.is-active, - .navbar.is-warning .navbar-end .navbar-link:focus, - .navbar.is-warning .navbar-end .navbar-link:hover, - .navbar.is-warning .navbar-end .navbar-link.is-active { - background-color: #ffd970; - color: rgba(0, 0, 0, 0.7); - } - .navbar.is-warning .navbar-start .navbar-link::after, - .navbar.is-warning .navbar-end .navbar-link::after { - border-color: rgba(0, 0, 0, 0.7); - } - .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #ffd970; - color: rgba(0, 0, 0, 0.7); - } - .navbar.is-warning .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); - } -} -.navbar.is-danger { - background-color: hsl(348deg, 86%, 61%); - color: #fff; -} -.navbar.is-danger .navbar-brand > .navbar-item, -.navbar.is-danger .navbar-brand .navbar-link { - color: #fff; -} -.navbar.is-danger .navbar-brand > a.navbar-item:focus, .navbar.is-danger .navbar-brand > a.navbar-item:hover, .navbar.is-danger .navbar-brand > a.navbar-item.is-active, -.navbar.is-danger .navbar-brand .navbar-link:focus, -.navbar.is-danger .navbar-brand .navbar-link:hover, -.navbar.is-danger .navbar-brand .navbar-link.is-active { - background-color: #ef2e55; - color: #fff; -} -.navbar.is-danger .navbar-brand .navbar-link::after { - border-color: #fff; -} -.navbar.is-danger .navbar-burger { - color: #fff; -} -@media screen and (min-width: 1024px) { - .navbar.is-danger .navbar-start > .navbar-item, - .navbar.is-danger .navbar-start .navbar-link, - .navbar.is-danger .navbar-end > .navbar-item, - .navbar.is-danger .navbar-end .navbar-link { - color: #fff; - } - .navbar.is-danger .navbar-start > a.navbar-item:focus, .navbar.is-danger .navbar-start > a.navbar-item:hover, .navbar.is-danger .navbar-start > a.navbar-item.is-active, - .navbar.is-danger .navbar-start .navbar-link:focus, - .navbar.is-danger .navbar-start .navbar-link:hover, - .navbar.is-danger .navbar-start .navbar-link.is-active, - .navbar.is-danger .navbar-end > a.navbar-item:focus, - .navbar.is-danger .navbar-end > a.navbar-item:hover, - .navbar.is-danger .navbar-end > a.navbar-item.is-active, - .navbar.is-danger .navbar-end .navbar-link:focus, - .navbar.is-danger .navbar-end .navbar-link:hover, - .navbar.is-danger .navbar-end .navbar-link.is-active { - background-color: #ef2e55; - color: #fff; - } - .navbar.is-danger .navbar-start .navbar-link::after, - .navbar.is-danger .navbar-end .navbar-link::after { - border-color: #fff; - } - .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link, - .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link, - .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link { - background-color: #ef2e55; - color: #fff; - } - .navbar.is-danger .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(348deg, 86%, 61%); - color: #fff; - } -} -.navbar > .container { - align-items: stretch; - display: flex; - min-height: 3.25rem; - width: 100%; -} -.navbar.has-shadow { - box-shadow: 0 2px 0 0 hsl(0deg, 0%, 96%); -} -.navbar.is-fixed-bottom, .navbar.is-fixed-top { - left: 0; - position: fixed; - right: 0; - z-index: 30; -} -.navbar.is-fixed-bottom { - bottom: 0; -} -.navbar.is-fixed-bottom.has-shadow { - box-shadow: 0 -2px 0 0 hsl(0deg, 0%, 96%); -} -.navbar.is-fixed-top { - top: 0; -} - -html.has-navbar-fixed-top, -body.has-navbar-fixed-top { - padding-top: 3.25rem; -} -html.has-navbar-fixed-bottom, -body.has-navbar-fixed-bottom { - padding-bottom: 3.25rem; -} - -.navbar-brand, -.navbar-tabs { - align-items: stretch; - display: flex; - flex-shrink: 0; - min-height: 3.25rem; -} - -.navbar-brand a.navbar-item:focus, .navbar-brand a.navbar-item:hover { - background-color: transparent; -} - -.navbar-tabs { - -webkit-overflow-scrolling: touch; - max-width: 100vw; - overflow-x: auto; - overflow-y: hidden; -} - -.navbar-burger { - color: hsl(0deg, 0%, 29%); - -moz-appearance: none; - -webkit-appearance: none; - appearance: none; - background: none; - border: none; - cursor: pointer; - display: block; - height: 3.25rem; - position: relative; - width: 3.25rem; - margin-left: auto; -} -.navbar-burger span { - background-color: currentColor; - display: block; - height: 1px; - left: calc(50% - 8px); - position: absolute; - transform-origin: center; - transition-duration: 86ms; - transition-property: background-color, opacity, transform; - transition-timing-function: ease-out; - width: 16px; -} -.navbar-burger span:nth-child(1) { - top: calc(50% - 6px); -} -.navbar-burger span:nth-child(2) { - top: calc(50% - 1px); -} -.navbar-burger span:nth-child(3) { - top: calc(50% + 4px); -} -.navbar-burger:hover { - background-color: rgba(0, 0, 0, 0.05); -} -.navbar-burger.is-active span:nth-child(1) { - transform: translateY(5px) rotate(45deg); -} -.navbar-burger.is-active span:nth-child(2) { - opacity: 0; -} -.navbar-burger.is-active span:nth-child(3) { - transform: translateY(-5px) rotate(-45deg); -} - -.navbar-menu { - display: none; -} - -.navbar-item, -.navbar-link { - color: hsl(0deg, 0%, 29%); - display: block; - line-height: 1.5; - padding: 0.5rem 0.75rem; - position: relative; -} -.navbar-item .icon:only-child, -.navbar-link .icon:only-child { - margin-left: -0.25rem; - margin-right: -0.25rem; -} - -a.navbar-item, -.navbar-link { - cursor: pointer; -} -a.navbar-item:focus, a.navbar-item:focus-within, a.navbar-item:hover, a.navbar-item.is-active, -.navbar-link:focus, -.navbar-link:focus-within, -.navbar-link:hover, -.navbar-link.is-active { - background-color: hsl(0deg, 0%, 98%); - color: hsl(229deg, 53%, 53%); -} - -.navbar-item { - flex-grow: 0; - flex-shrink: 0; -} -.navbar-item img { - max-height: 1.75rem; -} -.navbar-item.has-dropdown { - padding: 0; -} -.navbar-item.is-expanded { - flex-grow: 1; - flex-shrink: 1; -} -.navbar-item.is-tab { - border-bottom: 1px solid transparent; - min-height: 3.25rem; - padding-bottom: calc(0.5rem - 1px); -} -.navbar-item.is-tab:focus, .navbar-item.is-tab:hover { - background-color: transparent; - border-bottom-color: hsl(229deg, 53%, 53%); -} -.navbar-item.is-tab.is-active { - background-color: transparent; - border-bottom-color: hsl(229deg, 53%, 53%); - border-bottom-style: solid; - border-bottom-width: 3px; - color: hsl(229deg, 53%, 53%); - padding-bottom: calc(0.5rem - 3px); -} - -.navbar-content { - flex-grow: 1; - flex-shrink: 1; -} - -.navbar-link:not(.is-arrowless) { - padding-right: 2.5em; -} -.navbar-link:not(.is-arrowless)::after { - border-color: hsl(229deg, 53%, 53%); - margin-top: -0.375em; - right: 1.125em; -} - -.navbar-dropdown { - font-size: 0.875rem; - padding-bottom: 0.5rem; - padding-top: 0.5rem; -} -.navbar-dropdown .navbar-item { - padding-left: 1.5rem; - padding-right: 1.5rem; -} - -.navbar-divider { - background-color: hsl(0deg, 0%, 96%); - border: none; - display: none; - height: 2px; - margin: 0.5rem 0; -} - -@media screen and (max-width: 1023px) { - .navbar > .container { - display: block; - } - .navbar-brand .navbar-item, - .navbar-tabs .navbar-item { - align-items: center; - display: flex; - } - .navbar-link::after { - display: none; - } - .navbar-menu { - background-color: hsl(0deg, 0%, 100%); - box-shadow: 0 8px 16px rgba(10, 10, 10, 0.1); - padding: 0.5rem 0; - } - .navbar-menu.is-active { - display: block; - } - .navbar.is-fixed-bottom-touch, .navbar.is-fixed-top-touch { - left: 0; - position: fixed; - right: 0; - z-index: 30; - } - .navbar.is-fixed-bottom-touch { - bottom: 0; - } - .navbar.is-fixed-bottom-touch.has-shadow { - box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); - } - .navbar.is-fixed-top-touch { - top: 0; - } - .navbar.is-fixed-top .navbar-menu, .navbar.is-fixed-top-touch .navbar-menu { - -webkit-overflow-scrolling: touch; - max-height: calc(100vh - 3.25rem); - overflow: auto; - } - html.has-navbar-fixed-top-touch, - body.has-navbar-fixed-top-touch { - padding-top: 3.25rem; - } - html.has-navbar-fixed-bottom-touch, - body.has-navbar-fixed-bottom-touch { - padding-bottom: 3.25rem; - } -} -@media screen and (min-width: 1024px) { - .navbar, - .navbar-menu, - .navbar-start, - .navbar-end { - align-items: stretch; - display: flex; - } - .navbar { - min-height: 3.25rem; - } - .navbar.is-spaced { - padding: 1rem 2rem; - } - .navbar.is-spaced .navbar-start, - .navbar.is-spaced .navbar-end { - align-items: center; - } - .navbar.is-spaced a.navbar-item, - .navbar.is-spaced .navbar-link { - border-radius: 4px; - } - .navbar.is-transparent a.navbar-item:focus, .navbar.is-transparent a.navbar-item:hover, .navbar.is-transparent a.navbar-item.is-active, - .navbar.is-transparent .navbar-link:focus, - .navbar.is-transparent .navbar-link:hover, - .navbar.is-transparent .navbar-link.is-active { - background-color: transparent !important; - } - .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link { - background-color: transparent !important; - } - .navbar.is-transparent .navbar-dropdown a.navbar-item:focus, .navbar.is-transparent .navbar-dropdown a.navbar-item:hover { - background-color: hsl(0deg, 0%, 96%); - color: hsl(0deg, 0%, 4%); - } - .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(0deg, 0%, 96%); - color: hsl(229deg, 53%, 53%); - } - .navbar-burger { - display: none; - } - .navbar-item, - .navbar-link { - align-items: center; - display: flex; - } - .navbar-item.has-dropdown { - align-items: stretch; - } - .navbar-item.has-dropdown-up .navbar-link::after { - transform: rotate(135deg) translate(0.25em, -0.25em); - } - .navbar-item.has-dropdown-up .navbar-dropdown { - border-bottom: 2px solid hsl(0deg, 0%, 86%); - border-radius: 6px 6px 0 0; - border-top: none; - bottom: 100%; - box-shadow: 0 -8px 8px rgba(10, 10, 10, 0.1); - top: auto; - } - .navbar-item.is-active .navbar-dropdown, .navbar-item.is-hoverable:focus .navbar-dropdown, .navbar-item.is-hoverable:focus-within .navbar-dropdown, .navbar-item.is-hoverable:hover .navbar-dropdown { - display: block; - } - .navbar.is-spaced .navbar-item.is-active .navbar-dropdown, .navbar-item.is-active .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown, .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown, .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown, .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed { - opacity: 1; - pointer-events: auto; - transform: translateY(0); - } - .navbar-menu { - flex-grow: 1; - flex-shrink: 0; - } - .navbar-start { - justify-content: flex-start; - margin-right: auto; - } - .navbar-end { - justify-content: flex-end; - margin-left: auto; - } - .navbar-dropdown { - background-color: hsl(0deg, 0%, 100%); - border-bottom-left-radius: 6px; - border-bottom-right-radius: 6px; - border-top: 2px solid hsl(0deg, 0%, 86%); - box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1); - display: none; - font-size: 0.875rem; - left: 0; - min-width: 100%; - position: absolute; - top: 100%; - z-index: 20; - } - .navbar-dropdown .navbar-item { - padding: 0.375rem 1rem; - white-space: nowrap; - } - .navbar-dropdown a.navbar-item { - padding-right: 3rem; - } - .navbar-dropdown a.navbar-item:focus, .navbar-dropdown a.navbar-item:hover { - background-color: hsl(0deg, 0%, 96%); - color: hsl(0deg, 0%, 4%); - } - .navbar-dropdown a.navbar-item.is-active { - background-color: hsl(0deg, 0%, 96%); - color: hsl(229deg, 53%, 53%); - } - .navbar.is-spaced .navbar-dropdown, .navbar-dropdown.is-boxed { - border-radius: 6px; - border-top: none; - box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); - display: block; - opacity: 0; - pointer-events: none; - top: calc(100% + (-4px)); - transform: translateY(-5px); - transition-duration: 86ms; - transition-property: opacity, transform; - } - .navbar-dropdown.is-right { - left: auto; - right: 0; - } - .navbar-divider { - display: block; - } - .navbar > .container .navbar-brand, - .container > .navbar .navbar-brand { - margin-left: -0.75rem; - } - .navbar > .container .navbar-menu, - .container > .navbar .navbar-menu { - margin-right: -0.75rem; - } - .navbar.is-fixed-bottom-desktop, .navbar.is-fixed-top-desktop { - left: 0; - position: fixed; - right: 0; - z-index: 30; - } - .navbar.is-fixed-bottom-desktop { - bottom: 0; - } - .navbar.is-fixed-bottom-desktop.has-shadow { - box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); - } - .navbar.is-fixed-top-desktop { - top: 0; - } - html.has-navbar-fixed-top-desktop, - body.has-navbar-fixed-top-desktop { - padding-top: 3.25rem; - } - html.has-navbar-fixed-bottom-desktop, - body.has-navbar-fixed-bottom-desktop { - padding-bottom: 3.25rem; - } - html.has-spaced-navbar-fixed-top, - body.has-spaced-navbar-fixed-top { - padding-top: 5.25rem; - } - html.has-spaced-navbar-fixed-bottom, - body.has-spaced-navbar-fixed-bottom { - padding-bottom: 5.25rem; - } - a.navbar-item.is-active, - .navbar-link.is-active { - color: hsl(0deg, 0%, 4%); - } - a.navbar-item.is-active:not(:focus):not(:hover), - .navbar-link.is-active:not(:focus):not(:hover) { - background-color: transparent; - } - .navbar-item.has-dropdown:focus .navbar-link, .navbar-item.has-dropdown:hover .navbar-link, .navbar-item.has-dropdown.is-active .navbar-link { - background-color: hsl(0deg, 0%, 98%); - } -} -.hero.is-fullheight-with-navbar { - min-height: calc(100vh - 3.25rem); -} - -.pagination { - font-size: 1rem; - margin: -0.25rem; -} -.pagination.is-small { - font-size: 0.75rem; -} -.pagination.is-medium { - font-size: 1.25rem; -} -.pagination.is-large { - font-size: 1.5rem; -} -.pagination.is-rounded .pagination-previous, -.pagination.is-rounded .pagination-next { - padding-left: 1em; - padding-right: 1em; - border-radius: 9999px; -} -.pagination.is-rounded .pagination-link { - border-radius: 9999px; -} - -.pagination, -.pagination-list { - align-items: center; - display: flex; - justify-content: center; - text-align: center; -} - -.pagination-previous, -.pagination-next, -.pagination-link, -.pagination-ellipsis { - font-size: 1em; - justify-content: center; - margin: 0.25rem; - padding-left: 0.5em; - padding-right: 0.5em; - text-align: center; -} - -.pagination-previous, -.pagination-next, -.pagination-link { - border-color: hsl(0deg, 0%, 86%); - color: hsl(0deg, 0%, 21%); - min-width: 2.5em; -} -.pagination-previous:hover, -.pagination-next:hover, -.pagination-link:hover { - border-color: hsl(0deg, 0%, 71%); - color: hsl(0deg, 0%, 21%); -} -.pagination-previous:focus, -.pagination-next:focus, -.pagination-link:focus { - border-color: hsl(229deg, 53%, 53%); -} -.pagination-previous:active, -.pagination-next:active, -.pagination-link:active { - box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2); -} -.pagination-previous[disabled], .pagination-previous.is-disabled, -.pagination-next[disabled], -.pagination-next.is-disabled, -.pagination-link[disabled], -.pagination-link.is-disabled { - background-color: hsl(0deg, 0%, 86%); - border-color: hsl(0deg, 0%, 86%); - box-shadow: none; - color: hsl(0deg, 0%, 48%); - opacity: 0.5; -} - -.pagination-previous, -.pagination-next { - padding-left: 0.75em; - padding-right: 0.75em; - white-space: nowrap; -} - -.pagination-link.is-current { - background-color: hsl(229deg, 53%, 53%); - border-color: hsl(229deg, 53%, 53%); - color: #fff; -} - -.pagination-ellipsis { - color: hsl(0deg, 0%, 71%); - pointer-events: none; -} - -.pagination-list { - flex-wrap: wrap; -} -.pagination-list li { - list-style: none; -} - -@media screen and (max-width: 768px) { - .pagination { - flex-wrap: wrap; - } - .pagination-previous, - .pagination-next { - flex-grow: 1; - flex-shrink: 1; - } - .pagination-list li { - flex-grow: 1; - flex-shrink: 1; - } -} -@media screen and (min-width: 769px), print { - .pagination-list { - flex-grow: 1; - flex-shrink: 1; - justify-content: flex-start; - order: 1; - } - .pagination-previous, - .pagination-next, - .pagination-link, - .pagination-ellipsis { - margin-bottom: 0; - margin-top: 0; - } - .pagination-previous { - order: 2; - } - .pagination-next { - order: 3; - } - .pagination { - justify-content: space-between; - margin-bottom: 0; - margin-top: 0; - } - .pagination.is-centered .pagination-previous { - order: 1; - } - .pagination.is-centered .pagination-list { - justify-content: center; - order: 2; - } - .pagination.is-centered .pagination-next { - order: 3; - } - .pagination.is-right .pagination-previous { - order: 1; - } - .pagination.is-right .pagination-next { - order: 2; - } - .pagination.is-right .pagination-list { - justify-content: flex-end; - order: 3; - } -} -.panel { - border-radius: 6px; - box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); - font-size: 1rem; -} -.panel:not(:last-child) { - margin-bottom: 1.5rem; -} -.panel.is-white .panel-heading { - background-color: hsl(0deg, 0%, 100%); - color: hsl(0deg, 0%, 4%); -} -.panel.is-white .panel-tabs a.is-active { - border-bottom-color: hsl(0deg, 0%, 100%); -} -.panel.is-white .panel-block.is-active .panel-icon { - color: hsl(0deg, 0%, 100%); -} -.panel.is-black .panel-heading { - background-color: hsl(0deg, 0%, 4%); - color: hsl(0deg, 0%, 100%); -} -.panel.is-black .panel-tabs a.is-active { - border-bottom-color: hsl(0deg, 0%, 4%); -} -.panel.is-black .panel-block.is-active .panel-icon { - color: hsl(0deg, 0%, 4%); -} -.panel.is-light .panel-heading { - background-color: hsl(0deg, 0%, 96%); - color: rgba(0, 0, 0, 0.7); -} -.panel.is-light .panel-tabs a.is-active { - border-bottom-color: hsl(0deg, 0%, 96%); -} -.panel.is-light .panel-block.is-active .panel-icon { - color: hsl(0deg, 0%, 96%); -} -.panel.is-dark .panel-heading { - background-color: hsl(0deg, 0%, 21%); - color: #fff; -} -.panel.is-dark .panel-tabs a.is-active { - border-bottom-color: hsl(0deg, 0%, 21%); -} -.panel.is-dark .panel-block.is-active .panel-icon { - color: hsl(0deg, 0%, 21%); -} -.panel.is-primary .panel-heading { - background-color: hsl(171deg, 100%, 41%); - color: #fff; -} -.panel.is-primary .panel-tabs a.is-active { - border-bottom-color: hsl(171deg, 100%, 41%); -} -.panel.is-primary .panel-block.is-active .panel-icon { - color: hsl(171deg, 100%, 41%); -} -.panel.is-link .panel-heading { - background-color: hsl(229deg, 53%, 53%); - color: #fff; -} -.panel.is-link .panel-tabs a.is-active { - border-bottom-color: hsl(229deg, 53%, 53%); -} -.panel.is-link .panel-block.is-active .panel-icon { - color: hsl(229deg, 53%, 53%); -} -.panel.is-info .panel-heading { - background-color: hsl(207deg, 61%, 53%); - color: #fff; -} -.panel.is-info .panel-tabs a.is-active { - border-bottom-color: hsl(207deg, 61%, 53%); -} -.panel.is-info .panel-block.is-active .panel-icon { - color: hsl(207deg, 61%, 53%); -} -.panel.is-success .panel-heading { - background-color: hsl(153deg, 53%, 53%); - color: #fff; -} -.panel.is-success .panel-tabs a.is-active { - border-bottom-color: hsl(153deg, 53%, 53%); -} -.panel.is-success .panel-block.is-active .panel-icon { - color: hsl(153deg, 53%, 53%); -} -.panel.is-warning .panel-heading { - background-color: hsl(44deg, 100%, 77%); - color: rgba(0, 0, 0, 0.7); -} -.panel.is-warning .panel-tabs a.is-active { - border-bottom-color: hsl(44deg, 100%, 77%); -} -.panel.is-warning .panel-block.is-active .panel-icon { - color: hsl(44deg, 100%, 77%); -} -.panel.is-danger .panel-heading { - background-color: hsl(348deg, 86%, 61%); - color: #fff; -} -.panel.is-danger .panel-tabs a.is-active { - border-bottom-color: hsl(348deg, 86%, 61%); -} -.panel.is-danger .panel-block.is-active .panel-icon { - color: hsl(348deg, 86%, 61%); -} - -.panel-tabs:not(:last-child), -.panel-block:not(:last-child) { - border-bottom: 1px solid hsl(0deg, 0%, 93%); -} - -.panel-heading { - background-color: hsl(0deg, 0%, 93%); - border-radius: 6px 6px 0 0; - color: hsl(0deg, 0%, 21%); - font-size: 1.25em; - font-weight: 700; - line-height: 1.25; - padding: 0.75em 1em; -} - -.panel-tabs { - align-items: flex-end; - display: flex; - font-size: 0.875em; - justify-content: center; -} -.panel-tabs a { - border-bottom: 1px solid hsl(0deg, 0%, 86%); - margin-bottom: -1px; - padding: 0.5em; -} -.panel-tabs a.is-active { - border-bottom-color: hsl(0deg, 0%, 29%); - color: hsl(0deg, 0%, 21%); -} - -.panel-list a { - color: hsl(0deg, 0%, 29%); -} -.panel-list a:hover { - color: hsl(229deg, 53%, 53%); -} - -.panel-block { - align-items: center; - color: hsl(0deg, 0%, 21%); - display: flex; - justify-content: flex-start; - padding: 0.5em 0.75em; -} -.panel-block input[type=checkbox] { - margin-right: 0.75em; -} -.panel-block > .control { - flex-grow: 1; - flex-shrink: 1; - width: 100%; -} -.panel-block.is-wrapped { - flex-wrap: wrap; -} -.panel-block.is-active { - border-left-color: hsl(229deg, 53%, 53%); - color: hsl(0deg, 0%, 21%); -} -.panel-block.is-active .panel-icon { - color: hsl(229deg, 53%, 53%); -} -.panel-block:last-child { - border-bottom-left-radius: 6px; - border-bottom-right-radius: 6px; -} - -a.panel-block, -label.panel-block { - cursor: pointer; -} -a.panel-block:hover, -label.panel-block:hover { - background-color: hsl(0deg, 0%, 96%); -} - -.panel-icon { - display: inline-block; - font-size: 14px; - height: 1em; - line-height: 1em; - text-align: center; - vertical-align: top; - width: 1em; - color: hsl(0deg, 0%, 48%); - margin-right: 0.75em; -} -.panel-icon .fa { - font-size: inherit; - line-height: inherit; -} - -.tabs { - -webkit-overflow-scrolling: touch; - align-items: stretch; - display: flex; - font-size: 1rem; - justify-content: space-between; - overflow: hidden; - overflow-x: auto; - white-space: nowrap; -} -.tabs a { - align-items: center; - border-bottom-color: hsl(0deg, 0%, 86%); - border-bottom-style: solid; - border-bottom-width: 1px; - color: hsl(0deg, 0%, 29%); - display: flex; - justify-content: center; - margin-bottom: -1px; - padding: 0.5em 1em; - vertical-align: top; -} -.tabs a:hover { - border-bottom-color: hsl(0deg, 0%, 21%); - color: hsl(0deg, 0%, 21%); -} -.tabs li { - display: block; -} -.tabs li.is-active a { - border-bottom-color: hsl(229deg, 53%, 53%); - color: hsl(229deg, 53%, 53%); -} -.tabs ul { - align-items: center; - border-bottom-color: hsl(0deg, 0%, 86%); - border-bottom-style: solid; - border-bottom-width: 1px; - display: flex; - flex-grow: 1; - flex-shrink: 0; - justify-content: flex-start; -} -.tabs ul.is-left { - padding-right: 0.75em; -} -.tabs ul.is-center { - flex: none; - justify-content: center; - padding-left: 0.75em; - padding-right: 0.75em; -} -.tabs ul.is-right { - justify-content: flex-end; - padding-left: 0.75em; -} -.tabs .icon:first-child { - margin-right: 0.5em; -} -.tabs .icon:last-child { - margin-left: 0.5em; -} -.tabs.is-centered ul { - justify-content: center; -} -.tabs.is-right ul { - justify-content: flex-end; -} -.tabs.is-boxed a { - border: 1px solid transparent; - border-radius: 4px 4px 0 0; -} -.tabs.is-boxed a:hover { - background-color: hsl(0deg, 0%, 96%); - border-bottom-color: hsl(0deg, 0%, 86%); -} -.tabs.is-boxed li.is-active a { - background-color: hsl(0deg, 0%, 100%); - border-color: hsl(0deg, 0%, 86%); - border-bottom-color: transparent !important; -} -.tabs.is-fullwidth li { - flex-grow: 1; - flex-shrink: 0; -} -.tabs.is-toggle a { - border-color: hsl(0deg, 0%, 86%); - border-style: solid; - border-width: 1px; - margin-bottom: 0; - position: relative; -} -.tabs.is-toggle a:hover { - background-color: hsl(0deg, 0%, 96%); - border-color: hsl(0deg, 0%, 71%); - z-index: 2; -} -.tabs.is-toggle li + li { - margin-left: -1px; -} -.tabs.is-toggle li:first-child a { - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; -} -.tabs.is-toggle li:last-child a { - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; -} -.tabs.is-toggle li.is-active a { - background-color: hsl(229deg, 53%, 53%); - border-color: hsl(229deg, 53%, 53%); - color: #fff; - z-index: 1; -} -.tabs.is-toggle ul { - border-bottom: none; -} -.tabs.is-toggle.is-toggle-rounded li:first-child a { - border-bottom-left-radius: 9999px; - border-top-left-radius: 9999px; - padding-left: 1.25em; -} -.tabs.is-toggle.is-toggle-rounded li:last-child a { - border-bottom-right-radius: 9999px; - border-top-right-radius: 9999px; - padding-right: 1.25em; -} -.tabs.is-small { - font-size: 0.75rem; -} -.tabs.is-medium { - font-size: 1.25rem; -} -.tabs.is-large { - font-size: 1.5rem; -} - /* Bulma Grid */ .column { display: block; @@ -10569,6 +6184,580 @@ a.has-text-danger-dark:hover, a.has-text-danger-dark:focus { padding: 3rem 1.5rem 6rem; } +.box { + background-color: hsl(0deg, 0%, 100%); + border-radius: 6px; + box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); + color: hsl(0deg, 0%, 29%); + display: block; + padding: 1.25rem; +} + +a.box:hover, a.box:focus { + box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0 0 1px hsl(229deg, 53%, 53%); +} +a.box:active { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px hsl(229deg, 53%, 53%); +} + +.container { + flex-grow: 1; + margin: 0 auto; + position: relative; + width: auto; +} +.container.is-fluid { + max-width: none !important; + padding-left: 32px; + padding-right: 32px; + width: 100%; +} +@media screen and (min-width: 1024px) { + .container { + max-width: 960px; + } +} +@media screen and (max-width: 1215px) { + .container.is-widescreen:not(.is-max-desktop) { + max-width: 1152px; + } +} +@media screen and (max-width: 1407px) { + .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen) { + max-width: 1344px; + } +} +@media screen and (min-width: 1216px) { + .container:not(.is-max-desktop) { + max-width: 1152px; + } +} +@media screen and (min-width: 1408px) { + .container:not(.is-max-desktop):not(.is-max-widescreen) { + max-width: 1344px; + } +} + +.icon { + align-items: center; + display: inline-flex; + justify-content: center; + height: 1.5rem; + width: 1.5rem; +} +.icon.is-small { + height: 1rem; + width: 1rem; +} +.icon.is-medium { + height: 2rem; + width: 2rem; +} +.icon.is-large { + height: 3rem; + width: 3rem; +} + +.icon-text { + align-items: flex-start; + color: inherit; + display: inline-flex; + flex-wrap: wrap; + line-height: 1.5rem; + vertical-align: top; +} +.icon-text .icon { + flex-grow: 0; + flex-shrink: 0; +} +.icon-text .icon:not(:last-child) { + margin-right: 0.25em; +} +.icon-text .icon:not(:first-child) { + margin-left: 0.25em; +} + +div.icon-text { + display: flex; +} + +.table { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 21%); +} +.table td, +.table th { + border: 1px solid hsl(0deg, 0%, 86%); + border-width: 0 0 1px; + padding: 0.5em 0.75em; + vertical-align: top; +} +.table td.is-white, +.table th.is-white { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.table td.is-black, +.table th.is-black { + background-color: hsl(0deg, 0%, 4%); + border-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.table td.is-light, +.table th.is-light { + background-color: hsl(0deg, 0%, 96%); + border-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.table td.is-dark, +.table th.is-dark { + background-color: hsl(0deg, 0%, 21%); + border-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.table td.is-primary, +.table th.is-primary { + background-color: hsl(171deg, 100%, 41%); + border-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.table td.is-link, +.table th.is-link { + background-color: hsl(229deg, 53%, 53%); + border-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.table td.is-info, +.table th.is-info { + background-color: hsl(207deg, 61%, 53%); + border-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.table td.is-success, +.table th.is-success { + background-color: hsl(153deg, 53%, 53%); + border-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.table td.is-warning, +.table th.is-warning { + background-color: hsl(44deg, 100%, 77%); + border-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.table td.is-danger, +.table th.is-danger { + background-color: hsl(348deg, 86%, 61%); + border-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.table td.is-narrow, +.table th.is-narrow { + white-space: nowrap; + width: 1%; +} +.table td.is-selected, +.table th.is-selected { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.table td.is-selected a, +.table td.is-selected strong, +.table th.is-selected a, +.table th.is-selected strong { + color: currentColor; +} +.table td.is-vcentered, +.table th.is-vcentered { + vertical-align: middle; +} +.table th { + color: hsl(0deg, 0%, 21%); +} +.table th:not([align]) { + text-align: left; +} +.table tr.is-selected { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.table tr.is-selected a, +.table tr.is-selected strong { + color: currentColor; +} +.table tr.is-selected td, +.table tr.is-selected th { + border-color: #fff; + color: currentColor; +} +.table thead { + background-color: transparent; +} +.table thead td, +.table thead th { + border-width: 0 0 2px; + color: hsl(0deg, 0%, 21%); +} +.table tfoot { + background-color: transparent; +} +.table tfoot td, +.table tfoot th { + border-width: 2px 0 0; + color: hsl(0deg, 0%, 21%); +} +.table tbody { + background-color: transparent; +} +.table tbody tr:last-child td, +.table tbody tr:last-child th { + border-bottom-width: 0; +} +.table.is-bordered td, +.table.is-bordered th { + border-width: 1px; +} +.table.is-bordered tr:last-child td, +.table.is-bordered tr:last-child th { + border-bottom-width: 1px; +} +.table.is-fullwidth { + width: 100%; +} +.table.is-hoverable tbody tr:not(.is-selected):hover { + background-color: hsl(0deg, 0%, 98%); +} +.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover { + background-color: hsl(0deg, 0%, 98%); +} +.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) { + background-color: hsl(0deg, 0%, 96%); +} +.table.is-narrow td, +.table.is-narrow th { + padding: 0.25em 0.5em; +} +.table.is-striped tbody tr:not(.is-selected):nth-child(even) { + background-color: hsl(0deg, 0%, 98%); +} + +.table-container { + -webkit-overflow-scrolling: touch; + overflow: auto; + overflow-y: hidden; + max-width: 100%; +} + +.tags { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} +.tags .tag { + margin-bottom: 0.5rem; +} +.tags .tag:not(:last-child) { + margin-right: 0.5rem; +} +.tags:last-child { + margin-bottom: -0.5rem; +} +.tags:not(:last-child) { + margin-bottom: 1rem; +} +.tags.are-medium .tag:not(.is-normal):not(.is-large) { + font-size: 1rem; +} +.tags.are-large .tag:not(.is-normal):not(.is-medium) { + font-size: 1.25rem; +} +.tags.is-centered { + justify-content: center; +} +.tags.is-centered .tag { + margin-right: 0.25rem; + margin-left: 0.25rem; +} +.tags.is-right { + justify-content: flex-end; +} +.tags.is-right .tag:not(:first-child) { + margin-left: 0.5rem; +} +.tags.is-right .tag:not(:last-child) { + margin-right: 0; +} +.tags.has-addons .tag { + margin-right: 0; +} +.tags.has-addons .tag:not(:first-child) { + margin-left: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.tags.has-addons .tag:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.tag:not(body) { + align-items: center; + background-color: hsl(0deg, 0%, 96%); + border-radius: 4px; + color: hsl(0deg, 0%, 29%); + display: inline-flex; + font-size: 0.75rem; + height: 2em; + justify-content: center; + line-height: 1.5; + padding-left: 0.75em; + padding-right: 0.75em; + white-space: nowrap; +} +.tag:not(body) .delete { + margin-left: 0.25rem; + margin-right: -0.375rem; +} +.tag:not(body).is-white { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.tag:not(body).is-black { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.tag:not(body).is-light { + background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.tag:not(body).is-dark { + background-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.tag:not(body).is-primary { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.tag:not(body).is-primary.is-light { + background-color: #ebfffc; + color: #00947e; +} +.tag:not(body).is-link { + background-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.tag:not(body).is-link.is-light { + background-color: #eff1fa; + color: #3850b7; +} +.tag:not(body).is-info { + background-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.tag:not(body).is-info.is-light { + background-color: #eff5fb; + color: #296fa8; +} +.tag:not(body).is-success { + background-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.tag:not(body).is-success.is-light { + background-color: #effaf5; + color: #257953; +} +.tag:not(body).is-warning { + background-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.tag:not(body).is-warning.is-light { + background-color: #fffaeb; + color: #946c00; +} +.tag:not(body).is-danger { + background-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.tag:not(body).is-danger.is-light { + background-color: #feecf0; + color: #cc0f35; +} +.tag:not(body).is-normal { + font-size: 0.75rem; +} +.tag:not(body).is-medium { + font-size: 1rem; +} +.tag:not(body).is-large { + font-size: 1.25rem; +} +.tag:not(body) .icon:first-child:not(:last-child) { + margin-left: -0.375em; + margin-right: 0.1875em; +} +.tag:not(body) .icon:last-child:not(:first-child) { + margin-left: 0.1875em; + margin-right: -0.375em; +} +.tag:not(body) .icon:first-child:last-child { + margin-left: -0.375em; + margin-right: -0.375em; +} +.tag:not(body).is-delete { + margin-left: 1px; + padding: 0; + position: relative; + width: 2em; +} +.tag:not(body).is-delete::before, .tag:not(body).is-delete::after { + background-color: currentColor; + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; +} +.tag:not(body).is-delete::before { + height: 1px; + width: 50%; +} +.tag:not(body).is-delete::after { + height: 50%; + width: 1px; +} +.tag:not(body).is-delete:hover, .tag:not(body).is-delete:focus { + background-color: #e8e8e8; +} +.tag:not(body).is-delete:active { + background-color: #dbdbdb; +} +.tag:not(body).is-rounded { + border-radius: 9999px; +} + +a.tag:hover { + text-decoration: underline; +} + +.align-left { + text-align: left; + justify-content: left; +} + +.align-right { + text-align: right; + justify-content: right; +} + +.clear-left { + clear: left !important; +} + +.clear-right { + clear: right !important; +} + +.clear-both { + clear: both !important; +} + +.d-inline { + display: inline !important; +} + +.d-block { + display: block !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.p-relative { + position: relative !important; +} + +.p-absolute { + position: absolute !important; +} + +.p-fixed { + position: fixed !important; +} + +.p-sticky { + position: sticky !important; +} + +.p-static { + position: static !important; +} + +.ws-nowrap { + white-space: nowrap; +} + +.grid { + display: grid; + grid-template-columns: 1fr 1fr; + grid-auto-flow: dense; + gap: 1.2rem; +} + +.grid-1 { + display: grid; + grid-template-columns: 1fr 1fr; + grid-auto-flow: dense; + gap: 1.2rem; + grid-template-columns: 1fr; +} + +.grid-2 { + display: grid; + grid-template-columns: 1fr 1fr; + grid-auto-flow: dense; + gap: 1.2rem; + grid-template-columns: 1fr 1fr; +} + +.grid-3 { + display: grid; + grid-template-columns: 1fr 1fr; + grid-auto-flow: dense; + gap: 1.2rem; + grid-template-columns: 1fr 1fr 1fr; +} + +.flex-row { + display: flex; + flex-direction: row; +} + +.flex-column { + display: flex; + flex-direction: column; +} + +.flex-grow-0 { + flex-grow: 0 !important; +} + +.flex-grow-1 { + flex-grow: 1 !important; +} + +.float-right { + float: right; +} + +.float-left { + float: left; +} + .is-fullwidth { width: 100%; } @@ -10584,31 +6773,8 @@ a.has-text-danger-dark:hover, a.has-text-danger-dark:focus { border-radius: 0; } -.is-borderless { - border: none; -} - -.has-text-nowrap { - white-space: nowrap; -} - -.has-background-transparent { - background-color: transparent; -} - -.is-opacity-light { - opacity: 0.7; -} -.is-opacity-light:hover { - opacity: 1; -} - -.float-right { - float: right; -} - -.float-left { - float: left; +.no-border { + border: 0px !important; } .overflow-hidden { @@ -10619,14 +6785,12 @@ a.has-text-danger-dark:hover, a.has-text-danger-dark:focus { max-width: 100%; } -*[draggable=true] { - cursor: move; +.height-full { + height: 100%; } -input.half-field:not(:active):not(:hover) { - border: none; - background-color: rgba(0, 0, 0, 0); - cursor: pointer; +*[draggable=true] { + cursor: move; } @keyframes blink { @@ -10641,256 +6805,101 @@ input.half-field:not(:active):not(:hover) { animation: 1s ease-in-out 3s infinite alternate blink; } -.navbar + .container { - margin-top: 1em; +.loading { + animation: 1s ease-in-out 1s infinite alternate blink; } -.navbar.has-shadow, .navbar.is-fixed-bottom.has-shadow { - box-shadow: 0em 0em 1em rgba(0, 0, 0, 0.1); +.main-color { + color: var(--main-color); } -a.navbar-item.is-active { - border-bottom: 1px grey solid; +.secondary-color { + color: var(--secondary-color); } -.navbar .navbar-dropdown { - z-index: 2000; -} -.navbar .navbar-split { - margin: 0.2em 0em; - margin-right: 1em; - padding-right: 1em; - border-right: 1px hsl(0deg, 0%, 71%) solid; - display: inline-block; -} -.navbar form { - margin: 0em; - padding: 0em; -} -.navbar.toolbar { - margin: 1em 0em; +.bg-transparent { background-color: transparent; - margin-bottom: 1em; -} -.navbar.toolbar .title { - padding-right: 2em; - margin-right: 1em; - border-right: 1px hsl(0deg, 0%, 71%) solid; - font-size: 1.25rem; - color: hsl(0deg, 0%, 48%); - font-weight: 300; } -.card .title { - padding: 0.2em; - font-size: 1.25rem; - font-weight: 500; -} -.card .title a { - color: hsl(0deg, 0%, 21%); -} -.card.is-primary { - box-shadow: 0em 0em 0.5em hsl(0deg, 0%, 4%); +.is-success { + background-color: #0e0 !important; + border-color: #0b0 !important; } -.card-super-title { - position: absolute; - z-index: 1000; - font-size: 1rem; - font-weight: 700; - padding: 0.2em; - top: 1em; - background-color: rgba(255, 255, 255, 0.7803921569); - max-width: 90%; -} -.card-super-title .fas { - padding: 0.1em; - font-size: 0.8em; +.is-danger { + background-color: #e00 !important; + border-color: #b00 !important; } -.page > .cover { - float: right; - max-width: 45%; -} -.page .header { - margin-bottom: 1.5em; -} -.page .headline { - font-size: 1.4em; - padding: 0.2em 0em; -} -.page p { - padding: 0.4em 0em; -} -.page hr { - background-color: hsl(0deg, 0%, 71%); -} -.page .page-content h1 { - font-size: 3rem; - font-weight: bolder; - margin-top: 0.4em; - margin-bottom: 0.2em; -} -.page .page-content h2 { - font-size: 2rem; - font-weight: bolder; - margin-top: 0.4em; - margin-bottom: 0.2em; -} -.page .page-content h3 { - font-size: 1.5rem; - font-weight: bolder; - margin-top: 0.4em; - margin-bottom: 0.2em; -} -.page .page-content h4 { - font-size: 1.25rem; - font-weight: bolder; - margin-top: 0.4em; - margin-bottom: 0.2em; -} -.page .page-content h5 { - font-size: 1rem; - font-weight: bolder; - margin-top: 0.4em; - margin-bottom: 0.2em; -} -.page .page-content h6 { - font-size: 1rem; - margin-top: 0.4em; - margin-bottom: 0.2em; +input.half-field:not(:active):not(:hover) { + border: none; + background-color: rgba(0, 0, 0, 0); + cursor: pointer; } -.media.item .headline { - line-height: 1.2em; - max-height: 3.6em; - overflow: hidden; -} -.media.item .headline + .headline-overflow { - position: relative; - width: 100%; - height: 2em; - margin-top: -2em; -} -.media.item .headline + .headline-overflow:before { - content: ""; - width: 100%; - height: 100%; - position: absolute; - left: 0; - bottom: 0; - background: linear-gradient(transparent 1em, hsl(0deg, 0%, 96%)); +:root { + --body-bg: #fff; + --text-color: black; + --text-color-light: #555; + --break-color: rgb(225, 225, 225); + --main-color: #EFCA08; + --main-color-light: #F4da51; + --main-color-dark: #F49F0A; + --secondary-color: #00A6A6; + --secondary-color-light: #4cc0c0; + --secondary-color-dark: #007ba8; + --disabled-color: #aaa; + --disabled-bg: #eee; + --link-fg: #00A6A6; + --link-hv-fg: var(--text-color); + --nav-primary-height: 3rem; + --nav-secondary-height: 2.5rem; + --nav-fg: var(--text-color); + --nav-bg: var(--main-color); + --nav-secondary-bg: var(--main-color-light); + --nav-hv-fg: var(--button-hv-fg); + --nav-hv-bg: var(--button-hv-bg); + --nav-active-fg: var(--button-active-fg); + --nav-active-bg: var(--button-active-bg); + --nav-fs: 1rem; + --nav-2-fs: 0.9rem; } -.player { - z-index: 10000; - box-shadow: 0em 1.5em 2.5em rgba(0, 0, 0, 0.6); -} -.player .player-panels { - height: 0%; - transition: height 3s; -} -.player .player-panels.is-open { - height: auto; -} -.player .player-panel { - margin: 0.4em; - max-height: 80%; - overflow-y: auto; -} -.player .progress { - margin: 0em; - padding: 0em; - border-color: hsl(207deg, 61%, 53%); - border-style: "solid"; -} -.player .player-bar { - border-top: 1px hsl(0deg, 0%, 71%) solid; -} -.player .player-bar > div { - height: 3.75em !important; -} -.player .player-bar > .media-left:not(:last-child) { - margin-right: 0em; -} -.player .player-bar > .media-cover { - border-left: 1px black solid; -} -.player .player-bar .cover { - font-size: 1.5rem !important; - height: 2.5em !important; -} -.player .player-bar > .media-content { - padding-top: 0.4em; - padding-left: 0.4em; -} -.player .player-bar .button { - font-size: 1.5rem !important; - height: 100%; - padding: auto 0.2em !important; - min-width: 2.5em; - border-radius: 0px; - transition: background-color 1s; -} -.player .player-bar .title { - margin: 0em; -} - -.media .subtitle { - margin-bottom: 0.4em; -} -.media .media-content .headline { - font-size: 1em; - font-weight: 400; +:root { + font-size: 16px; } body { - background-color: hsl(0deg, 0%, 96%); + font-size: 1rem; + background-color: var(--body-bg); } -section > .toolbar { - background-color: rgba(0, 0, 0, 0.05); - padding: 1em; - margin-bottom: 1.5em; +body.mobile .grid { + grid-template-columns: 1fr; } -main .cover.is-small { - width: 10em; +@media screen and (max-width: 1280px) { + html { + font-size: 18px !important; + } } -main .cover.is-tiny { - height: 2em; +@media screen and (max-width: 1024px) { + html { + font-size: 20px !important; + } + :root { + --header-height: 20rem; + } +} +@media screen and (max-width: 900px) { + .grid { + grid-template-columns: 1fr; + } +} +h1, h2, h3, h4, h5, h6, .heading, .title, .subtitle { + font-family: var(--heading-font-family); } -aside > section { - margin-bottom: 2em; -} -aside .cover.is-small { - width: 10em; -} -aside .cover.is-tiny { - height: 2em; -} -aside .media .subtitle { - font-size: 1em; -} - -.sound-item { - margin-bottom: 0.2em; -} -.sound-item .cover { - height: 5em; -} -.sound-item .media-content a { - padding: 0em; -} - -.sound-item .media-right .button { - margin-right: 0.2em; - min-width: 2.5em; - display: inline-block; -} - -.timetable { - width: 100%; - border: none; +.container:empty { + display: none; } diff --git a/aircox/static/aircox/css/chunk-vendors.css b/aircox/static/aircox/css/chunk-vendors.css index ced33d2..9560e9f 100644 --- a/aircox/static/aircox/css/chunk-vendors.css +++ b/aircox/static/aircox/css/chunk-vendors.css @@ -1,3 +1,1255 @@ +/*!******************************************************************************************************************************************************************************************************************************************************!*\ + !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-24.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-24.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-24.use[3]!./node_modules/v-calendar/dist/style.css ***! + \******************************************************************************************************************************************************************************************************************************************************/ +.vc-popover-content-wrapper { + --popover-horizontal-content-offset: 8px; + --popover-vertical-content-offset: 10px; + --popover-caret-horizontal-offset: 18px; + --popover-caret-vertical-offset: 8px; + position: absolute; + display: block; + outline: none; + z-index: 10; +} + +.vc-popover-content-wrapper:not(.is-interactive) { + pointer-events: none; +} + +.vc-popover-content { + position: relative; + color: var(--vc-popover-content-color); + font-weight: var(--vc-font-medium); + background-color: var(--vc-popover-content-bg); + border: 1px solid; + border-color: var(--vc-popover-content-border); + border-radius: var(--vc-rounded-lg); + padding: 4px; + outline: none; + z-index: 10; + box-shadow: var(--vc-shadow-lg); +} + +.vc-popover-content.direction-bottom { + margin-top: var(--popover-vertical-content-offset); +} + +.vc-popover-content.direction-top { + margin-bottom: var(--popover-vertical-content-offset); +} + +.vc-popover-content.direction-left { + margin-right: var(--popover-horizontal-content-offset); +} + +.vc-popover-content.direction-right { + margin-left: var(--popover-horizontal-content-offset); +} + +.vc-popover-caret { + content: ""; + position: absolute; + display: block; + width: 12px; + height: 12px; + border-top: inherit; + border-left: inherit; + background-color: inherit; + z-index: -1; +} + +.vc-popover-caret.direction-bottom { + top: 0; +} + +.vc-popover-caret.direction-bottom.align-left { + transform: translateY(-50%) rotate(45deg); +} + +.vc-popover-caret.direction-bottom.align-center { + transform: translateX(-50%) translateY(-50%) rotate(45deg); +} + +.vc-popover-caret.direction-bottom.align-right { + transform: translateY(-50%) rotate(45deg); +} + +.vc-popover-caret.direction-top { + top: 100%; +} + +.vc-popover-caret.direction-top.align-left { + transform: translateY(-50%) rotate(-135deg); +} + +.vc-popover-caret.direction-top.align-center { + transform: translateX(-50%) translateY(-50%) rotate(-135deg); +} + +.vc-popover-caret.direction-top.align-right { + transform: translateY(-50%) rotate(-135deg); +} + +.vc-popover-caret.direction-left { + left: 100%; +} + +.vc-popover-caret.direction-left.align-top { + transform: translateX(-50%) rotate(135deg); +} + +.vc-popover-caret.direction-left.align-middle { + transform: translateY(-50%) translateX(-50%) rotate(135deg); +} + +.vc-popover-caret.direction-left.align-bottom { + transform: translateX(-50%) rotate(135deg); +} + +.vc-popover-caret.direction-right { + left: 0; +} + +.vc-popover-caret.direction-right.align-top { + transform: translateX(-50%) rotate(-45deg); +} + +.vc-popover-caret.direction-right.align-middle { + transform: translateY(-50%) translateX(-50%) rotate(-45deg); +} + +.vc-popover-caret.direction-right.align-bottom { + transform: translateX(-50%) rotate(-45deg); +} + +.vc-popover-caret.align-left { + left: var(--popover-caret-horizontal-offset); +} + +.vc-popover-caret.align-center { + left: 50%; +} + +.vc-popover-caret.align-right { + right: var(--popover-caret-horizontal-offset); +} + +.vc-popover-caret.align-top { + top: var(--popover-caret-vertical-offset); +} + +.vc-popover-caret.align-middle { + top: 50%; +} + +.vc-popover-caret.align-bottom { + bottom: var(--popover-caret-vertical-offset); +} + +.vc-day-popover-row { + display: flex; + align-items: center; + transition: var(--vc-day-content-transition); +} + +.vc-day-popover-row-indicator { + display: flex; + justify-content: center; + align-items: center; + flex-grow: 0; + width: 15px; +} + +.vc-day-popover-row-indicator span { + transition: var(--vc-day-content-transition); +} + +.vc-day-popover-row-label { + display: flex; + align-items: center; + flex-wrap: none; + flex-grow: 1; + width: -moz-max-content; + width: max-content; + margin-left: 4px; + margin-right: 4px; + font-size: var(--vc-text-xs); + line-height: var(--vc-leading-normal); +} + +.vc-day-popover-row-highlight { + width: 8px; + height: 5px; + border-radius: 3px; +} + +.vc-day-popover-row-bar { + width: 10px; + height: 3px; +} + +.vc-base-icon { + display: inline-block; + stroke: currentColor; + stroke-width: 2; + fill: none; +} + +.vc-header { + display: grid; + grid-gap: 4px; + align-items: center; + height: 30px; + margin-top: 10px; + padding-left: 10px; + padding-right: 10px; +} + +.vc-header.is-lg { + font-size: var(--vc-text-lg); +} + +.vc-header.is-xl { + font-size: var(--vc-text-xl); +} + +.vc-header.is-2xl { + font-size: var(--vc-text-2xl); +} + +.vc-header .vc-title-wrapper { + grid-row: 1; + grid-column: title; +} + +.vc-header .vc-prev { + grid-row: 1; + grid-column: prev; +} + +.vc-header .vc-next { + grid-row: 1; + grid-column: next; +} + +.vc-header .vc-title, +.vc-header .vc-prev, +.vc-header .vc-next { + display: flex; + align-items: center; + border: 0; + border-radius: var(--vc-rounded); + pointer-events: auto; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + cursor: pointer; +} + +.vc-header .vc-title { + color: var(--vc-header-title-color); + font-weight: var(--vc-font-semibold); + white-space: nowrap; + padding: 0 8px; + margin: 0; + line-height: 30px; +} + +.vc-header .vc-title:hover { + opacity: 0.75; +} + +.vc-header .vc-arrow { + display: flex; + justify-content: center; + align-items: center; + color: var(--vc-header-arrow-color); + width: 28px; + height: 30px; + margin: 0; + padding: 0; +} + +.vc-header .vc-arrow:hover { + background: var(--vc-header-arrow-hover-bg); +} + +.vc-header .vc-arrow:disabled { + opacity: 0.25; + pointer-events: none; +} + +.vc-nav-header { + display: flex; + justify-content: space-between; +} + +.vc-nav-title, +.vc-nav-arrow, +.vc-nav-item { + font-size: var(--vc-text-sm); + margin: 0; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + border: 0; + border-radius: var(--vc-rounded); + white-space: nowrap; +} + +.vc-nav-title:hover, .vc-nav-arrow:hover, .vc-nav-item:hover { + background-color: var(--vc-nav-hover-bg); +} + +.vc-nav-title:disabled, .vc-nav-arrow:disabled, .vc-nav-item:disabled { + opacity: 0.25; + pointer-events: none; +} + +.vc-nav-title { + color: var(--vc-nav-title-color); + font-weight: var(--vc-font-bold); + line-height: var(--vc-leading-snug); + height: 30px; + padding: 0 6px; +} + +.vc-nav-arrow { + display: flex; + justify-content: center; + align-items: center; + color: var(--vc-header-arrow-color); + width: 26px; + height: 30px; + padding: 0; +} + +.vc-nav-items { + display: grid; + grid-template-columns: repeat(3, 1fr); + grid-row-gap: 2px; + grid-column-gap: 5px; + margin-top: 2px; +} + +.vc-nav-item { + width: 48px; + text-align: center; + font-weight: var(--vc-font-semibold); + line-height: var(--vc-leading-snug); + padding: 6px 0; +} + +.vc-nav-item.is-active { + color: var(--vc-nav-item-active-color); + background-color: var(--vc-nav-item-active-bg); + font-weight: var(--vc-font-bold); +} + +.vc-nav-item.is-active:not(:focus) { + box-shadow: var(--vc-nav-item-active-box-shadow); +} + +.vc-nav-item.is-current { + color: var(--vc-nav-item-current-color); +} + +.vc-day { + position: relative; + min-height: 32px; + z-index: 1; + /* &.is-not-in-month * { + opacity: 0; + pointer-events: none; + } */ +} + +.vc-monthly .is-not-in-month * { + opacity: 0; + pointer-events: none; +} + +.vc-day-layer { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + pointer-events: none; +} + +.vc-day-box-center-center { + display: flex; + justify-content: center; + align-items: center; + transform-origin: 50% 50%; +} + +.vc-day-box-left-center { + display: flex; + justify-content: flex-start; + align-items: center; + transform-origin: 0% 50%; +} + +.vc-day-box-right-center { + display: flex; + justify-content: flex-end; + align-items: center; + transform-origin: 100% 50%; +} + +.vc-day-box-center-bottom { + display: flex; + justify-content: center; + align-items: flex-end; +} + +.vc-day-content { + display: flex; + justify-content: center; + align-items: center; + font-size: var(--vc-text-sm); + font-weight: var(--vc-font-medium); + width: 28px; + height: 28px; + line-height: 28px; + border-radius: var(--vc-rounded-full); + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + cursor: pointer; +} + +.vc-day-content:hover { + background-color: var(--vc-day-content-hover-bg); +} + +.vc-day-content.vc-disabled { + color: var(--vc-day-content-disabled-color); +} + +/* ----Content---- */ +.vc-content:not(.vc-base) { + font-weight: var(--vc-font-bold); + color: var(--vc-content-color); +} + +/* ----Highlights---- */ +.vc-highlights { + overflow: hidden; + pointer-events: none; + z-index: -1; +} + +.vc-highlight { + width: 28px; + height: 28px; +} + +.vc-highlight.vc-highlight-base-start { + width: 50% !important; + border-radius: 0 !important; + border-right-width: 0 !important; +} + +.vc-highlight.vc-highlight-base-end { + width: 50% !important; + border-radius: 0 !important; + border-left-width: 0 !important; +} + +.vc-highlight.vc-highlight-base-middle { + width: 100%; + border-radius: 0 !important; + border-left-width: 0 !important; + border-right-width: 0 !important; + margin: 0 -1px; +} + +.vc-highlight-bg-outline, +.vc-highlight-bg-none { + background-color: var(--vc-highlight-outline-bg); + border: 2px solid; + border-color: var(--vc-highlight-outline-border); + border-radius: var(--vc-rounded-full); +} + +.vc-highlight-bg-light { + background-color: var(--vc-highlight-light-bg); + border-radius: var(--vc-rounded-full); +} + +.vc-highlight-bg-solid { + background-color: var(--vc-highlight-solid-bg); + border-radius: var(--vc-rounded-full); +} + +.vc-highlight-content-outline, +.vc-highlight-content-none { + font-weight: var(--vc-font-bold); + color: var(--vc-highlight-outline-content-color); +} + +.vc-highlight-content-light { + font-weight: var(--vc-font-bold); + color: var(--vc-highlight-light-content-color); +} + +.vc-highlight-content-solid { + font-weight: var(--vc-font-bold); + color: var(--vc-highlight-solid-content-color); +} + +/* ----Dots---- */ +.vc-dots { + display: flex; + justify-content: center; + align-items: center; +} + +.vc-dot { + width: 5px; + height: 5px; + border-radius: 9999px; + transition: var(--vc-day-content-transition); +} + +.vc-dot:not(:last-child) { + margin-right: 3px; +} + +/* ----Bars---- */ +.vc-bars { + display: flex; + justify-content: flex-start; + align-items: center; + width: 75%; +} + +.vc-bar { + flex-grow: 1; + height: 3px; + transition: var(--vc-day-content-transition); +} + +.vc-dot { + background-color: var(--vc-dot-bg); +} + +.vc-bar { + background-color: var(--vc-bar-bg); +} + +.vc-pane { + min-width: 250px; +} + +.vc-weeknumber { + display: flex; + justify-content: center; + align-items: center; + position: absolute; +} + +.vc-weeknumber.is-left { + left: calc(var(--vc-weeknumber-offset-inside) * -1); +} + +.vc-weeknumber.is-right { + right: calc(var(--vc-weeknumber-offset-inside) * -1); +} + +.vc-weeknumber.is-left-outside { + left: calc(var(--vc-weeknumber-offset-outside) * -1); +} + +.vc-weeknumber.is-right-outside { + right: calc(var(--vc-weeknumber-offset-outside) * -1); +} + +.vc-weeknumber-content { + display: flex; + justify-content: center; + align-items: center; + font-size: var(--vc-text-xs); + font-weight: var(--vc-font-medium); + font-style: italic; + width: 28px; + height: 28px; + margin-top: 2px; + color: var(--vc-weeknumber-color); + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} + +.vc-weeks { + position: relative; + /* overflow: auto; */ + -webkit-overflow-scrolling: touch; + padding: 6px; + min-width: 232px; +} + +.vc-weeks.vc-show-weeknumbers-left { + margin-left: var(--vc-weeknumber-offset-inside); +} + +.vc-weeks.vc-show-weeknumbers-right { + margin-right: var(--vc-weeknumber-offset-inside); +} + +.vc-weekday { + text-align: center; + color: var(--vc-weekday-color); + font-size: var(--vc-text-sm); + font-weight: var(--vc-font-bold); + line-height: 14px; + padding-top: 4px; + padding-bottom: 8px; + cursor: default; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} + +.vc-week, +.vc-weekdays { + display: grid; + grid-template-columns: repeat(7, 1fr); + position: relative; +} + +.vc-pane-container { + width: 100%; + position: relative; +} + +.vc-pane-container.in-transition { + overflow: hidden; +} + +.vc-pane-layout { + display: grid; +} + +.vc-pane-header-wrapper { + position: absolute; + top: 0; + width: 100%; + pointer-events: none; +} + +.vc-day-popover-container { + font-size: var(--vc-text-xs); + font-weight: var(--vc-font-medium); +} + +.vc-day-popover-header { + font-size: var(--vc-text-xs); + color: var(--vc-day-popover-header-color); + font-weight: var(--vc-font-semibold); + text-align: center; +} + +.vc-base-select { + position: relative; + display: flex; + justify-content: center; + align-items: center; + height: 30px; + font-size: var(--vc-text-base); + font-weight: var(--vc-font-medium); +} + +.vc-base-select.vc-has-icon select { + padding: 0 27px 0 9px; +} + +.vc-base-select.vc-has-icon .vc-base-sizer { + padding: 0 28px 0 10px; +} + +.vc-base-select.vc-fit-content select { + position: absolute; + top: 0; + left: 0; + width: 100%; +} + +.vc-base-select .vc-base-icon { + position: absolute; + top: 6px; + right: 4px; + opacity: 0.6; + pointer-events: none; +} + +.vc-base-select .vc-base-sizer { + font-size: var(--vc-text-base); + font-weight: var(--vc-font-medium); + color: transparent; + padding: 0px 8px; + margin: 0; +} + +.vc-base-select select { + display: inline-flex; + justify-content: center; + color: var(--vc-select-color); + display: block; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + background-color: var(--vc-select-bg); + border-radius: var(--vc-rounded); + height: 30px; + width: -moz-max-content; + width: max-content; + padding: 0px 7px; + margin: 0; + line-height: var(--leading-none); + text-indent: 0px; + background-image: none; + cursor: pointer; + text-align: center; +} + +.vc-base-select select:hover { + background-color: var(--vc-select-hover-bg); +} + +.vc-base-select select.vc-align-left { + text-align: left; +} + +.vc-base-select select.vc-align-right { + text-align: right; +} + +.vc-time-picker { + display: flex; + flex-direction: column; + align-items: center; + padding: 8px 4px; +} + +.vc-time-picker.vc-invalid { + pointer-events: none; + opacity: 0.5; +} + +.vc-time-picker.vc-attached { + border-top: 1px solid var(--vc-time-picker-border); +} + +.vc-time-picker > * + * { + margin-top: 4px; +} + +.vc-time-header { + display: flex; + align-items: center; + font-size: var(--vc-text-sm); + font-weight: var(--vc-font-semibold); + text-transform: uppercase; + margin-top: -4px; + padding-left: 4px; + padding-right: 4px; + line-height: 21px; +} + +.vc-time-select-group { + display: inline-flex; + align-items: center; + padding: 0 4px; + background: var(--vc-time-select-group-bg); + border-radius: var(--vc-rounded-md); + border: 1px solid var(--vc-time-select-group-border); +} + +.vc-time-select-group .vc-base-icon { + margin-right: 4px; + color: var(--vc-time-select-group-icon-color); +} + +.vc-time-select-group select { + background: transparent; + padding: 0px 4px; +} + +.vc-time-weekday { + color: var(--vc-time-weekday-color); + letter-spacing: var(--tracking-wide); +} + +.vc-time-month { + color: var(--vc-time-month-color); + margin-left: 8px; +} + +.vc-time-day { + color: var(--vc-time-day-color); + margin-left: 4px; +} + +.vc-time-year { + color: var(--vc-time-year-color); + margin-left: 8px; +} + +.vc-time-colon { + margin: 0 1px 2px 2px; +} + +.vc-time-decimal { + margin: 0 0 0 1px; +} + +.vc-none-enter-active, +.vc-none-leave-active { + transition-duration: 0s; +} + +.vc-fade-enter-active, +.vc-fade-leave-active, +.vc-slide-left-enter-active, +.vc-slide-left-leave-active, +.vc-slide-right-enter-active, +.vc-slide-right-leave-active, +.vc-slide-up-enter-active, +.vc-slide-up-leave-active, +.vc-slide-down-enter-active, +.vc-slide-down-leave-active, +.vc-slide-fade-enter-active, +.vc-slide-fade-leave-active { + transition: transform var(--vc-slide-duration) var(--vc-slide-timing), opacity var(--vc-slide-duration) var(--vc-slide-timing); + backface-visibility: hidden; + pointer-events: none; +} + +.vc-none-leave-active, +.vc-fade-leave-active, +.vc-slide-left-leave-active, +.vc-slide-right-leave-active, +.vc-slide-up-leave-active, +.vc-slide-down-leave-active { + position: absolute !important; + width: 100%; +} + +.vc-none-enter-from, +.vc-none-leave-to, +.vc-fade-enter-from, +.vc-fade-leave-to, +.vc-slide-left-enter-from, +.vc-slide-left-leave-to, +.vc-slide-right-enter-from, +.vc-slide-right-leave-to, +.vc-slide-up-enter-from, +.vc-slide-up-leave-to, +.vc-slide-down-enter-from, +.vc-slide-down-leave-to, +.vc-slide-fade-enter-from, +.vc-slide-fade-leave-to { + opacity: 0; +} + +.vc-slide-left-enter-from, +.vc-slide-right-leave-to, +.vc-slide-fade-enter-from.direction-left, +.vc-slide-fade-leave-to.direction-left { + transform: translateX(var(--vc-slide-translate)); +} + +.vc-slide-right-enter-from, +.vc-slide-left-leave-to, +.vc-slide-fade-enter-from.direction-right, +.vc-slide-fade-leave-to.direction-right { + transform: translateX(calc(-1 * var(--vc-slide-translate))); +} + +.vc-slide-up-enter-from, +.vc-slide-down-leave-to, +.vc-slide-fade-enter-from.direction-top, +.vc-slide-fade-leave-to.direction-top { + transform: translateY(var(--vc-slide-translate)); +} + +.vc-slide-down-enter-from, +.vc-slide-up-leave-to, +.vc-slide-fade-enter-from.direction-bottom, +.vc-slide-fade-leave-to.direction-bottom { + transform: translateY(calc(-1 * var(--vc-slide-translate))); +} + +:root { + --vc-white: #ffffff; + --vc-black: #000000; + --vc-gray-50: #f8fafc; + --vc-gray-100: #f1f5f9; + --vc-gray-200: #e2e8f0; + --vc-gray-300: #cbd5e1; + --vc-gray-400: #94a3b8; + --vc-gray-500: #64748b; + --vc-gray-600: #475569; + --vc-gray-700: #334155; + --vc-gray-800: #1e293b; + --vc-gray-900: #0f172a; + --vc-font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", + "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", + "Helvetica", "Arial", sans-serif; + --vc-font-normal: 400; + --vc-font-medium: 500; + --vc-font-semibold: 600; + --vc-font-bold: 700; + --vc-text-2xs: 10px; + --vc-text-xs: 12px; + --vc-text-sm: 14px; + --vc-text-base: 16px; + --vc-text-lg: 18px; + --vc-text-xl: 20px; + --vc-text-2xl: 24px; + --vc-leading-none: 1; + --vc-leading-tight: 1.25; + --vc-leading-snug: 1.375; + --vc-leading-normal: 1.5; + --vc-rounded: 0.25rem; + --vc-rounded-md: 0.375rem; + --vc-rounded-lg: 0.5rem; + --vc-rounded-full: 9999px; + --vc-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06); + --vc-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), + 0 4px 6px -2px rgba(0, 0, 0, 0.05); + --vc-shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06); + --vc-slide-translate: 22px; + --vc-slide-duration: 0.15s; + --vc-slide-timing: ease; + --vc-day-content-transition: all 0.13s ease-in; + --vc-weeknumber-offset-inside: 26px; + --vc-weeknumber-offset-outside: 34px; +} + +.vc-gray { + --vc-accent-50: var(--vc-gray-50); + --vc-accent-100: var(--vc-gray-100); + --vc-accent-200: var(--vc-gray-200); + --vc-accent-300: var(--vc-gray-300); + --vc-accent-400: var(--vc-gray-400); + --vc-accent-500: var(--vc-gray-500); + --vc-accent-600: var(--vc-gray-600); + --vc-accent-700: var(--vc-gray-700); + --vc-accent-800: var(--vc-gray-800); + --vc-accent-900: var(--vc-gray-900); +} + +.vc-red { + --vc-accent-50: #fef2f2; + --vc-accent-100: #fee2e2; + --vc-accent-200: #fecaca; + --vc-accent-300: #fca5a5; + --vc-accent-400: #f87171; + --vc-accent-500: #ef4444; + --vc-accent-600: #dc2626; + --vc-accent-700: #b91c1c; + --vc-accent-800: #991b1b; + --vc-accent-900: #7f1d1d; +} + +.vc-orange { + --vc-accent-50: #fff7ed; + --vc-accent-100: #ffedd5; + --vc-accent-200: #fed7aa; + --vc-accent-300: #fdba74; + --vc-accent-400: #fb923c; + --vc-accent-500: #f97316; + --vc-accent-600: #ea580c; + --vc-accent-700: #c2410c; + --vc-accent-800: #9a3412; + --vc-accent-900: #7c2d12; +} + +.vc-yellow { + --vc-accent-50: #fefce8; + --vc-accent-100: #fef9c3; + --vc-accent-200: #fef08a; + --vc-accent-300: #fde047; + --vc-accent-400: #facc15; + --vc-accent-500: #eab308; + --vc-accent-600: #ca8a04; + --vc-accent-700: #a16207; + --vc-accent-800: #854d0e; + --vc-accent-900: #713f12; +} + +.vc-green { + --vc-accent-50: #f0fdf4; + --vc-accent-100: #dcfce7; + --vc-accent-200: #bbf7d0; + --vc-accent-300: #86efac; + --vc-accent-400: #4ade80; + --vc-accent-500: #22c55e; + --vc-accent-600: #16a34a; + --vc-accent-700: #15803d; + --vc-accent-800: #166534; + --vc-accent-900: #14532d; +} + +.vc-teal { + --vc-accent-50: #f0fdfa; + --vc-accent-100: #ccfbf1; + --vc-accent-200: #99f6e4; + --vc-accent-300: #5eead4; + --vc-accent-400: #2dd4bf; + --vc-accent-500: #14b8a6; + --vc-accent-600: #0d9488; + --vc-accent-700: #0f766e; + --vc-accent-800: #115e59; + --vc-accent-900: #134e4a; +} + +.vc-blue { + --vc-accent-50: #eff6ff; + --vc-accent-100: #dbeafe; + --vc-accent-200: #bfdbfe; + --vc-accent-300: #93c5fd; + --vc-accent-400: #60a5fa; + --vc-accent-500: #3b82f6; + --vc-accent-600: #2563eb; + --vc-accent-700: #1d4ed8; + --vc-accent-800: #1e40af; + --vc-accent-900: #1e3a8a; +} + +.vc-indigo { + --vc-accent-50: #eef2ff; + --vc-accent-100: #e0e7ff; + --vc-accent-200: #c7d2fe; + --vc-accent-300: #a5b4fc; + --vc-accent-400: #818cf8; + --vc-accent-500: #6366f1; + --vc-accent-600: #4f46e5; + --vc-accent-700: #4338ca; + --vc-accent-800: #3730a3; + --vc-accent-900: #312e81; +} + +.vc-purple { + --vc-accent-50: #faf5ff; + --vc-accent-100: #f3e8ff; + --vc-accent-200: #e9d5ff; + --vc-accent-300: #d8b4fe; + --vc-accent-400: #c084fc; + --vc-accent-500: #a855f7; + --vc-accent-600: #9333ea; + --vc-accent-700: #7e22ce; + --vc-accent-800: #6b21a8; + --vc-accent-900: #581c87; +} + +.vc-pink { + --vc-accent-50: #fdf2f8; + --vc-accent-100: #fce7f3; + --vc-accent-200: #fbcfe8; + --vc-accent-300: #f9a8d4; + --vc-accent-400: #f472b6; + --vc-accent-500: #ec4899; + --vc-accent-600: #db2777; + --vc-accent-700: #be185d; + --vc-accent-800: #9d174d; + --vc-accent-900: #831843; +} + +.vc-focus:focus-within { + outline: 0; + box-shadow: var(--vc-focus-ring); +} + +.vc-light { + /* Base */ + --vc-color: var(--vc-gray-900); + --vc-bg: var(--vc-white); + --vc-border: var(--vc-gray-300); + --vc-hover-bg: hsla(211, 25%, 84%, 0.3); + --vc-focus-ring: 0 0 0 2px rgb(59, 131, 246, 0.4); + /* Calendar header */ + --vc-header-arrow-color: var(--vc-gray-500); + --vc-header-arrow-hover-bg: var(--vc-gray-200); + --vc-header-title-color: var(--vc-gray-900); + /* Calendar weekdays */ + --vc-weekday-color: var(--vc-gray-500); + /* Calendar weeknumbers */ + --vc-weeknumber-color: var(--vc-gray-400); + /* Calendar nav */ + --vc-nav-hover-bg: var(--vc-gray-200); + --vc-nav-title-color: var(--vc-gray-900); + --vc-nav-item-hover-box-shadow: none; + --vc-nav-item-active-color: var(--vc-white); + --vc-nav-item-active-bg: var(--vc-accent-500); + --vc-nav-item-active-box-shadow: var(--vc-shadow); + --vc-nav-item-current-color: var(--vc-accent-600); + /* Calendar day popover */ + --vc-day-popover-container-color: var(--vc-white); + --vc-day-popover-container-bg: var(--vc-gray-800); + --vc-day-popover-container-border: var(--vc-gray-700); + --vc-day-popover-header-color: var(--vc-gray-700); + /* Popover content */ + --vc-popover-content-color: var(--vc-gray-900); + --vc-popover-content-bg: var(--vc-gray-50); + --vc-popover-content-border: var(--vc-gray-300); + /* Time picker */ + --vc-time-picker-border: var(--vc-gray-300); + --vc-time-weekday-color: var(--vc-gray-700); + --vc-time-month-color: var(--vc-accent-600); + --vc-time-day-color: var(--vc-accent-600); + --vc-time-year-color: var(--vc-gray-500); + /* Time select group */ + --vc-time-select-group-bg: var(--vc-gray-50); + --vc-time-select-group-border: var(--vc-gray-300); + --vc-time-select-group-icon-color: var(--vc-accent-500); + /* Base select */ + --vc-select-color: var(--vc-gray-900); + --vc-select-bg: var(--vc-gray-100); + --vc-select-hover-bg: var(--vc-gray-200); + /* Calendar day */ + --vc-day-content-hover-bg: var(--vc-hover-bg); + --vc-day-content-disabled-color: var(--vc-gray-400); +} + +/* Calendar attributes */ +.vc-light.vc-attr, +.vc-light .vc-attr { + --vc-content-color: var(--vc-accent-600); + --vc-highlight-outline-bg: var(--vc-white); + --vc-highlight-outline-border: var(--vc-accent-600); + --vc-highlight-outline-content-color: var(--vc-accent-700); + --vc-highlight-light-bg: var(--vc-accent-200); + --vc-highlight-light-content-color: var(--vc-accent-900); + --vc-highlight-solid-bg: var(--vc-accent-600); + --vc-highlight-solid-content-color: var(--vc-white); + --vc-dot-bg: var(--vc-accent-600); + --vc-bar-bg: var(--vc-accent-600); +} + +.vc-dark { + /* Base */ + --vc-color: var(--vc-white); + --vc-bg: var(--vc-gray-900); + --vc-border: var(--vc-gray-700); + --vc-hover-bg: hsla(216, 15%, 52%, 0.3); + --vc-focus-ring: 0 0 0 2px rgb(59 130 246 / 0.7); + /* Calendar header */ + --vc-header-arrow-color: var(--vc-gray-300); + --vc-header-arrow-hover-bg: var(--vc-gray-800); + --vc-header-title-color: var(--vc-gray-100); + /* Calendar weekdays */ + --vc-weekday-color: var(--vc-accent-200); + /* Calendar weeknumbers */ + --vc-weeknumber-color: var(--vc-gray-500); + /* Calendar nav */ + --vc-nav-hover-bg: var(--vc-gray-700); + --vc-nav-title-color: var(--vc-gray-100); + --vc-nav-item-hover-box-shadow: none; + --vc-nav-item-active-color: var(--vc-white); + --vc-nav-item-active-bg: var(--vc-accent-500); + --vc-nav-item-active-box-shadow: none; + --vc-nav-item-current-color: var(--vc-accent-400); + /* Calendar day popover */ + --vc-day-popover-container-color: var(--vc-gray-800); + --vc-day-popover-container-bg: var(--vc-white); + --vc-day-popover-container-border: var(--vc-gray-100); + --vc-day-popover-header-color: var(--vc-gray-300); + /* Popover content */ + --vc-popover-content-color: var(--vc-white); + --vc-popover-content-bg: var(--vc-gray-800); + --vc-popover-content-border: var(--vc-gray-700); + /* Time picker */ + --vc-time-picker-border: var(--vc-gray-700); + --vc-time-weekday-color: var(--vc-gray-400); + --vc-time-month-color: var(--vc-accent-400); + --vc-time-day-color: var(--vc-accent-400); + --vc-time-year-color: var(--vc-gray-500); + /* Time select group */ + --vc-time-select-group-bg: var(--vc-gray-700); + --vc-time-select-group-border: var(--vc-gray-500); + --vc-time-select-group-icon-color: var(--vc-accent-400); + /* Base select */ + --vc-select-color: var(--vc-gray-200); + --vc-select-bg: var(--vc-gray-700); + --vc-select-hover-bg: var(--vc-gray-600); + /* Calendar day */ + --vc-day-content-hover-bg: var(--vc-hover-bg); + --vc-day-content-disabled-color: var(--vc-gray-600); +} + +/* Calendar attributes */ +.vc-dark.vc-attr, +.vc-dark .vc-attr { + --vc-content-color: var(--vc-accent-500); + --vc-highlight-outline-bg: var(--vc-gray-900); + --vc-highlight-outline-border: var(--vc-accent-300); + --vc-highlight-outline-content-color: var(--vc-accent-200); + --vc-highlight-light-bg: var(--vc-accent-800); + --vc-highlight-light-content-color: var(--vc-accent-100); + --vc-highlight-solid-bg: var(--vc-accent-500); + --vc-highlight-solid-content-color: var(--vc-white); + --vc-dot-bg: var(--vc-accent-500); + --vc-bar-bg: var(--vc-accent-500); +} + +.vc-container { + position: relative; + display: inline-flex; + width: -moz-max-content; + width: max-content; + height: -moz-max-content; + height: max-content; + font-family: var(--vc-font-family); + color: var(--vc-color); + background-color: var(--vc-bg); + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-tap-hg-color: transparent; +} + +.vc-container, +.vc-container * { + box-sizing: border-box; +} + +.vc-container:focus, .vc-container *:focus { + outline: none; +} + +/* Hides double border within popovers */ +.vc-container .vc-container { + border: none; +} + +.vc-bordered { + border: 1px solid; + border-color: var(--vc-border); + border-radius: var(--vc-rounded-lg); +} + +.vc-expanded { + min-width: 100%; +} + +.vc-transparent { + background-color: transparent; +} + +.vc-date-picker-content { + padding: 0; + background-color: var(--vc-bg); +} + +.vc-date-picker-content .vc-container { + border: 0; +} /*!**********************************************************************************************************************************************************************************************************!*\ !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-14.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-14.use[2]!./node_modules/@fortawesome/fontawesome-free/css/all.min.css ***! \**********************************************************************************************************************************************************************************************************/ diff --git a/aircox/static/aircox/css/public.css b/aircox/static/aircox/css/public.css new file mode 100644 index 0000000..d970bdd --- /dev/null +++ b/aircox/static/aircox/css/public.css @@ -0,0 +1,7569 @@ +/*!**************************************************************************************************************************************************************************************************************************************!*\ + !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-24.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-24.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-24.use[3]!./src/assets/public.scss ***! + \**************************************************************************************************************************************************************************************************************************************/ +:root { + --title-1-sz: 1.6rem; + --title-2-sz: 1.4rem; + --title-3-sz: 1.2rem; + --subtitle-1-sz: 1.6rem; + --subtitle-2-sz: 1.4rem; + --subtitle-3-sz: 1.2rem; + --heading-font-family: default; + --heading-bg: var(--main-color); + --heading-fg: var(--text-color); + --heading-hg-fg: var(--text-color); + --heading-hg-bg: var(--secondary-color); + --heading-link-hv-fg: var(--link-fg); + --cover-w: 14rem; + --cover-h: 14rem; + --cover-small-w: 10rem; + --cover-small-h: 10rem; + --cover-tiny-w: 10rem; + --cover-tiny-h: 10rem; + --card-w: var(--cover-w); + --preview-bg: var(--body-bg); + --preview-title-sz: var(--title-3-sz); + --preview-subtitle-sz: var(--title-3-sz); + --preview-cover-size: 14rem; + --preview-cover-small-size: 10rem; + --preview-cover-tiny-size: 4rem; + --preview-wide-content-sz: 1.2rem; + --preview-heading-bg-color: var(--main-color); + --header-height: var(--cover-h); + --a-carousel-p: 1.4rem; + --a-carousel-ml: calc(1.2rem - 0.5rem); + --a-carousel-gap: 1.2rem; + --a-carousel-nav-x: -0.6em; + --a-carousel-bg: none; + --a-progress-bg: transparent; + --a-progress-bar-bg: var(--secondary-color); + --a-progress-bar-color: var(--text-color); + --a-progress-bar-pd: 0.4rem; + --a-playlist-header-bg: var(--secondary-color); + --a-playlist-header-fg: var(--text-color); + --a-playlist-title-sz: 1rem; + --a-playlist-title-pd: 0.6rem; + --a-playlist-item-border: 1px var(--secondary-color) solid; + --a-sound-bg: var(--main-color); + --a-sound-hv-bg: var(--main-color); + --a-sound-hv-fg: var(--secondary-color); + --a-sound-playing-fg: var(--secondary-color-dark); + --a-sound-text-sz: 1rem; + --a-player-url-fg: var(--text-color); + --a-player-panel-bg: var(--main-color); + --a-player-bar-height: var(--nav-primary-height); + --a-player-bar-bg: var(--main-color); + --a-player-bar-title-alone-sz: 1.4rem; + --a-player-bar-button-fg: var(--button-fg); + --a-player-bar-button-fg: var(--button-bg); + --a-player-bar-button-hv-fg: var(--button-hv-fg); + --a-player-bar-button-hv-bg: var(--button-hv-bg); + --button-fg: var(--text-color); + --button-bg: var(--main-color); + --button-sec-bg: var(--main-color-light); + --button-hv-fg: var(--text-color); + --button-hv-bg: var(--secondary-color-light); + --button-active-fg: var(--text-color); + --button-active-bg: var(--secondary-color); +} + +@media screen and (max-width: 1380px) { + :root { + --cover-w: 10rem; + --cover-h: 10rem; + --cover-small-w: 6rem; + --cover-small-h: 6rem; + --cover-tiny-w: 4rem; + --cover-tiny-h: 4rem; + --section-content-sz: 1rem; + } +} +.title.is-1, .header.preview .title.is-1 { + font-size: var(--title-1-sz); +} +.title.is-2, .header.preview .title.is-2 { + font-size: var(--title-2-sz); +} +.title.is-3, .header.preview .title.is-3 { + font-size: var(--title-3-sz); +} + +.subtitle, .header.preview .subtitle { + color: var(--text-color-light); +} +.subtitle.is-1, .header.preview .subtitle.is-1 { + font-size: var(--subtitle-1-sz); +} +.subtitle.is-2, .header.preview .subtitle.is-2 { + font-size: var(--subtitle-2-sz); +} +.subtitle.is-3, .header.preview .subtitle.is-3 { + font-size: var(--subtitle-3-sz); +} + +.title + .subtitle { + padding-top: 0em !important; +} + +.headings a, a.heading, a.subtitle { + text-decoration: none !important; +} + +.heading { + display: inline-block; +} +.heading:not(:empty) { + padding: 0.4rem; + margin-top: 0em !important; + vertical-align: top; +} +.heading:not(:empty).highlight, .heading:not(:empty).active, .preview.active .heading:not(:empty) { + color: var(--heading-hg-fg); +} + +.preview { + position: relative; + background-size: cover; + background-color: var(--preview-bg) !important; +} +.preview.preview-item { + width: 100%; +} +.preview.columns, .preview .headings.columns { + margin-left: 0em; + margin-right: 0em; +} +.preview.columns .column, .preview .headings.columns .column { + padding: 0em; +} +.preview .title, .preview .title:not(:last-child) { + font-weight: 700; + font-size: var(--preview-title-sz); + margin-bottom: unset; +} +.preview .subtitle { + font-weight: 500; + font-size: var(--preview-subtitle-sz); + margin-bottom: unset; +} +.preview .headings { + background-size: cover; +} +.preview .headings > * { + margin: 0em; +} +.preview .headings .column { + padding: 0em; +} +.preview .headings a { + color: var(--text-color); +} +.preview .headings a:hover { + color: var(--heading-link-hv-fg) !important; +} +.preview.tiny .content { + font-size: 1rem; +} + +.preview-cover { + background: var(--preview-bg); + background-size: cover; + background-repeat: no-repeat; + height: var(--cover-h); + max-width: calc(var(--cover-w) * 1.5); + min-width: var(--cover-w); + overflow: hidden; + border: 1px #c4c4c4 solid; +} +.preview-cover img { + height: var(--cover-h); + max-width: calc(var(--cover-w) * 1.5); + min-width: var(--cover-w); +} +.preview-cover img.hide { + visibility: hidden; +} +.preview-cover.small, .preview.small .preview-cover { + min-width: unset; + height: var(--preview-cover-small-size); + width: var(--preview-cover-small-size) !important; + min-width: var(--preview-cover-small-size); +} +.preview-cover.tiny, .preview.tiny .preview-cover { + min-width: unset; + height: var(--preview-cover-tiny-size); + width: var(--preview-cover-tiny-size) !important; + min-width: var(--preview-cover-tiny-size); +} + +.preview-header { + width: 100%; +} +.preview-header:not(.no-cover) { + min-height: var(--header-height); +} +.preview-header.no-cover { + height: unset; +} +.preview-header .headings { + padding-top: 2rem; +} +.preview-header .headings, .preview-header > .container { + width: 100%; +} +.preview-header > .container { + height: 100%; +} + +.list-item { + display: flex; + flex-direction: column; + width: 100%; +} +.list-item .headings { + display: flex; + flex-direction: row; + padding: 0em; + margin-bottom: 0.4rem !important; +} +.list-item .headings .heading { + padding: 0rem; +} +.list-item .title { + flex-grow: 1; +} +.list-item .subtitle { + font-size: var(--preview-title-sz); + text-align: right; +} +.list-item .subtitle:not(:empty) { + min-width: 9rem; +} +.list-item .media-content { + height: 100%; + margin-bottom: unset; +} +.list-item:not(.no-cover) .list-item .media-content { + min-height: var(--preview-cover-small-size); +} +.list-item .actions { + text-align: right; +} +.list-item:not(.wide) .media { + padding: 0.6rem; + border: 1px solid var(--break-color) !important; +} + +@media screen and (max-width: 400px) { + .list-item .headings { + flex-direction: column; + } + .list-item .headings .heading { + display: inline; + text-align: left; + } + .list-item .headings .subtitle { + color: unset !important; + background: none !important; + } +} +.list-item.wide .preview-cover { + box-shadow: 0em 0em 1em rgba(0, 0, 0, 0.2); +} +.list-item.wide .content { + font-size: var(--preview-wide-content-sz); + flex-grow: 1; +} + +.preview-card { + display: flex; + flex-direction: column; + width: var(--card-w); + padding: 0rem !important; + margin-bottom: auto; + background-color: var(--preview-bg) !important; + transition: box-shadow 0.2s; +} +.preview-card:hover figure { + box-shadow: 0em 0em 1em rgba(0, 0, 0, 0.2); +} +.preview-card:hover a { + color: var(--heading-link-hv-fg); +} +.preview-card .headings { + margin-top: 0.4rem; +} +.preview-card .headings .heading { + display: block !important; +} +.preview-card .headings .subtitle { + font-size: 1.2rem; +} +.preview-card .card-content { + flex-grow: 1; + position: relative; +} +.preview-card .card-content figure { + height: var(--cover-h); + width: var(--cover-w); +} +.preview-card .card-content .actions { + position: absolute; + padding: 0.4rem; + bottom: 0rem; + right: 0rem; +} + +.a-carousel .a-carousel-viewport { + box-shadow: inset 0em 0em 20rem var(--a-carousel-bg); + padding: 0rem; + padding-top: var(--a-carousel-p); + margin-top: calc(0rem - var(--a-carousel-p)); +} + +.a-carousel-container { + width: 100%; + gap: var(--a-carousel-gap); + transition: margin-left 1s; +} +.a-carousel-container > * { + flex-shrink: 0; +} + +.a-carousel-bullets-container { + padding-left: var(--a-carousel-ml); +} +.a-carousel-bullets-container .bullet { + margin: 0.2rem; + cursor: pointer; +} +.a-carousel-bullets-container .bullet:hover { + color: var(--link-fg); +} + +.a-progress { + display: flex; + flex-direction: row; + margin: 0em; + padding: 0em; +} +.a-progress:hover { + background-color: var(--a-progress-bg); +} +.a-progress .a-progress-bar-container { + flex-grow: 1; + margin: 0em; +} +.a-progress > time, .a-progress .a-progress-bar { + height: 100%; + padding: var(--a-progress-bar-pd); +} +.a-progress .a-progress-bar { + background-color: var(--a-progress-bar-bg); + color: var(--a-progress-bar-color); +} + +.playlist .header, .a-playlist .header { + display: flex; + flex-direction: row; +} +.playlist .header .title, .playlist .header .button, .a-playlist .header .title, .a-playlist .header .button { + background-color: var(--a-playlist-header-bg); + color: var(--a-playlist-header-fg); +} +.playlist .header .title, .a-playlist .header .title { + font-size: var(--a-playlist-title-sz); + margin: 0; + padding: var(--a-playlist-title-pd); +} +.playlist li, .a-playlist li { + list-style: none; + border-bottom: var(--a-playlist-item-border); +} +.playlist li:last-child, .a-playlist li:last-child { + border-bottom: 0px; +} + +.a-sound-item { + display: flex; + align-items: center; + flex-direction: row; + height: 3rem; + background-color: var(--a-sound-bg); +} +.a-sound-item.playing .label { + color: var(--a-sound-playing-fg) !important; +} +.a-sound-item:hover { + background-color: var(--a-sound-hv-bg); +} +.a-sound-item:hover .label { + color: var(--a-sound-hv-fg) !important; +} +.a-sound-item .label:hover::before, .a-sound-item.playing .label::before { + content: "\f04b"; + font-family: "Font Awesome 6 Free"; + margin-right: 0.6em; +} +.a-sound-item.playing .label:hover::before { + content: ""; + margin: 0; +} +.a-sound-item .label { + cursor: pointer; + margin: 0em !important; + padding: 0.6em; + font-size: var(--a-sound-text-sz); + font-family: var(--heading-font-family); +} +.a-sound-item .label .icon { + padding: 0em 0.6rem; +} +.a-sound-item .button { + width: 3em; + font-size: var(--a-sound-text-sz); +} +.a-sound-item .button:hover { + color: var(--a-sound-hv-fg) !important; + background-color: unset; +} + +.player-container { + z-index: 1000000; +} + +.a-player { + box-shadow: 0em -0.5em 0.5em rgba(0, 0, 0, 0.05); +} +.a-player a { + color: var(--a-player-url-fg); +} +.a-player .button { + color: var(--text-black); +} +.a-player .button:hover { + color: var(--button-fg); +} + +.a-player-panels { + background: var(--a-player-panel-bg); + height: 0%; + transition: height 1s; +} + +.a-player-panels.is-open { + height: auto; +} + +.a-player-panel { + padding-bottom: 0.6rem; + max-height: 80%; + overflow-y: auto; +} +.a-player-panel .a-sound-item:not(:hover) { + background-color: transparent; +} + +.a-player-progress { + height: 0.4em; + overflow: hidden; +} +.a-player-progress time { + display: none; +} +.a-player-progress:hover, .a-player-panels.is-open + .a-player-progress { + background: var(--a-player-bar-bg); + height: 2em; +} +.a-player-progress:hover time, .a-player-panels.is-open + .a-player-progress time { + display: unset; +} + +.a-player-bar { + display: flex; + flex-direction: row; + justify-content: center; + height: var(--a-player-bar-height); + border-top: 1px #ddd solid; + background: var(--a-player-bar-bg); +} +.a-player-bar > * { + height: 100%; +} +.a-player-bar .cover { + height: 100%; +} +.a-player-bar .title { + font-size: 1rem; + margin: 0em; +} +.a-player-bar .title:last-child { + font-size: var(--a-player-bar-title-alone-sz); +} +.a-player-bar .button { + font-size: 1.4rem; + height: 100%; + padding: 0.4rem !important; + min-width: calc(var(--a-player-bar-height) + 0.8rem); + border-radius: 0px; +} +.a-player-bar .button.open { + background-color: var(--button-active-bg); + color: var(--button-active-fg); +} + +.a-player-bar-content { + display: flex; + flex-direction: vertical; + align-items: center; + flex-grow: 1; + padding: 0 0.6rem; + border-right: 1px black solid; +} +.a-player-bar-content .title { + max-height: calc(var(--a-player-bar-height) - 0.6rem); + overflow: hidden; +} + +/* Bulma Utilities */ +.file-cta, +.file-name, .select select, .textarea, .input { + -moz-appearance: none; + -webkit-appearance: none; + align-items: center; + border: 1px solid transparent; + border-radius: 4px; + box-shadow: none; + display: inline-flex; + font-size: 1rem; + height: 2.5em; + justify-content: flex-start; + line-height: 1.5; + padding-bottom: calc(0.5em - 1px); + padding-left: calc(0.75em - 1px); + padding-right: calc(0.75em - 1px); + padding-top: calc(0.5em - 1px); + position: relative; + vertical-align: top; +} +.file-cta:focus, +.file-name:focus, .select select:focus, .textarea:focus, .input:focus, .is-focused.file-cta, +.is-focused.file-name, .select select.is-focused, .is-focused.textarea, .is-focused.input, .file-cta:active, +.file-name:active, .select select:active, .textarea:active, .input:active, .is-active.file-cta, +.is-active.file-name, .select select.is-active, .is-active.textarea, .is-active.input { + outline: none; +} +[disabled].file-cta, +[disabled].file-name, .select select[disabled], [disabled].textarea, [disabled].input, fieldset[disabled] .file-cta, +fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input { + cursor: not-allowed; +} + +.is-unselectable, .file { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} + +.select:not(.is-multiple):not(.is-loading)::after { + border: 3px solid transparent; + border-radius: 2px; + border-right: 0; + border-top: 0; + content: " "; + display: block; + height: 0.625em; + margin-top: -0.4375em; + pointer-events: none; + position: absolute; + top: 50%; + transform: rotate(-45deg); + transform-origin: center; + width: 0.625em; +} + +.table-container:not(:last-child), .table:not(:last-child), .box:not(:last-child), .message:not(:last-child) { + margin-bottom: 1.5rem; +} + +.modal-close { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + -moz-appearance: none; + -webkit-appearance: none; + background-color: rgba(10, 10, 10, 0.2); + border: none; + border-radius: 9999px; + cursor: pointer; + pointer-events: auto; + display: inline-block; + flex-grow: 0; + flex-shrink: 0; + font-size: 0; + height: 20px; + max-height: 20px; + max-width: 20px; + min-height: 20px; + min-width: 20px; + outline: none; + position: relative; + vertical-align: top; + width: 20px; +} +.modal-close::before, .modal-close::after { + background-color: hsl(0deg, 0%, 100%); + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; +} +.modal-close::before { + height: 2px; + width: 50%; +} +.modal-close::after { + height: 50%; + width: 2px; +} +.modal-close:hover, .modal-close:focus { + background-color: rgba(10, 10, 10, 0.3); +} +.modal-close:active { + background-color: rgba(10, 10, 10, 0.4); +} +.is-small.modal-close { + height: 16px; + max-height: 16px; + max-width: 16px; + min-height: 16px; + min-width: 16px; + width: 16px; +} +.is-medium.modal-close { + height: 24px; + max-height: 24px; + max-width: 24px; + min-height: 24px; + min-width: 24px; + width: 24px; +} +.is-large.modal-close { + height: 32px; + max-height: 32px; + max-width: 32px; + min-height: 32px; + min-width: 32px; + width: 32px; +} + +.control.is-loading::after, .select.is-loading::after { + animation: spinAround 500ms infinite linear; + border: 2px solid hsl(0deg, 0%, 86%); + border-radius: 9999px; + border-right-color: transparent; + border-top-color: transparent; + content: ""; + display: block; + height: 1em; + position: relative; + width: 1em; +} + +.hero-video, .is-overlay, .modal-background, .modal { + bottom: 0; + left: 0; + position: absolute; + right: 0; + top: 0; +} + +/* Bulma Base */ /*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */ +html, +body, +p, +ol, +ul, +li, +dl, +dt, +dd, +blockquote, +figure, +fieldset, +legend, +textarea, +pre, +iframe, +hr, +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 0; + padding: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 100%; + font-weight: normal; +} + +ul { + list-style: none; +} + +button, +input, +select, +textarea { + margin: 0; +} + +html { + box-sizing: border-box; +} + +*, *::before, *::after { + box-sizing: inherit; +} + +img, +video { + height: auto; + max-width: 100%; +} + +iframe { + border: 0; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +td, +th { + padding: 0; +} +td:not([align]), +th:not([align]) { + text-align: inherit; +} + +html { + background-color: hsl(0deg, 0%, 100%); + font-size: 16px; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + min-width: 300px; + overflow-x: hidden; + overflow-y: scroll; + text-rendering: optimizeLegibility; + -webkit-text-size-adjust: 100%; + -moz-text-size-adjust: 100%; + text-size-adjust: 100%; +} + +article, +aside, +figure, +footer, +header, +hgroup, +section { + display: block; +} + +body, +button, +input, +optgroup, +select, +textarea { + font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif; +} + +code, +pre { + -moz-osx-font-smoothing: auto; + -webkit-font-smoothing: auto; + font-family: monospace; +} + +body { + color: #000; + font-size: 1em; + font-weight: 400; + line-height: 1.5; +} + +a { + color: hsl(229deg, 53%, 53%); + cursor: pointer; + text-decoration: none; +} +a strong { + color: currentColor; +} +a:hover { + color: hsl(0deg, 0%, 21%); +} + +code { + background-color: hsl(0deg, 0%, 96%); + color: #da1039; + font-size: 0.875em; + font-weight: normal; + padding: 0.25em 0.5em 0.25em; +} + +hr { + background-color: hsl(0deg, 0%, 96%); + border: none; + display: block; + height: 2px; + margin: 1.5rem 0; +} + +img { + height: auto; + max-width: 100%; +} + +input[type=checkbox], +input[type=radio] { + vertical-align: baseline; +} + +small { + font-size: 0.875em; +} + +span { + font-style: inherit; + font-weight: inherit; +} + +strong { + color: hsl(0deg, 0%, 21%); + font-weight: 700; +} + +fieldset { + border: none; +} + +pre { + -webkit-overflow-scrolling: touch; + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 29%); + font-size: 0.875em; + overflow-x: auto; + padding: 1.25rem 1.5rem; + white-space: pre; + word-wrap: normal; +} +pre code { + background-color: transparent; + color: currentColor; + font-size: 1em; + padding: 0; +} + +table td, +table th { + vertical-align: top; +} +table td:not([align]), +table th:not([align]) { + text-align: inherit; +} +table th { + color: hsl(0deg, 0%, 21%); +} + +@keyframes spinAround { + from { + transform: rotate(0deg); + } + to { + transform: rotate(359deg); + } +} +.dropdown { + display: inline-flex; + position: relative; + vertical-align: top; +} +.dropdown.is-active .dropdown-menu, .dropdown.is-hoverable:hover .dropdown-menu { + display: block; +} +.dropdown.is-right .dropdown-menu { + left: auto; + right: 0; +} +.dropdown.is-up .dropdown-menu { + bottom: 100%; + padding-bottom: 4px; + padding-top: initial; + top: auto; +} + +.dropdown-menu { + display: none; + left: 0; + min-width: 12rem; + padding-top: 4px; + position: absolute; + top: 100%; + z-index: 20; +} + +.dropdown-content { + background-color: hsl(0deg, 0%, 100%); + border-radius: 4px; + box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); + padding-bottom: 0.5rem; + padding-top: 0.5rem; +} + +.dropdown-item { + color: hsl(0deg, 0%, 29%); + display: block; + font-size: 0.875rem; + line-height: 1.5; + padding: 0.375rem 1rem; + position: relative; +} + +a.dropdown-item, +button.dropdown-item { + padding-right: 3rem; + text-align: inherit; + white-space: nowrap; + width: 100%; +} +a.dropdown-item:hover, +button.dropdown-item:hover { + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 4%); +} +a.dropdown-item.is-active, +button.dropdown-item.is-active { + background-color: hsl(229deg, 53%, 53%); + color: #fff; +} + +.dropdown-divider { + background-color: hsl(0deg, 0%, 93%); + border: none; + display: block; + height: 1px; + margin: 0.5rem 0; +} + +.media { + align-items: flex-start; + display: flex; + text-align: inherit; +} +.media .content:not(:last-child) { + margin-bottom: 0.75rem; +} +.media .media { + border-top: 1px solid rgba(219, 219, 219, 0.5); + display: flex; + padding-top: 0.75rem; +} +.media .media .content:not(:last-child), +.media .media .control:not(:last-child) { + margin-bottom: 0.5rem; +} +.media .media .media { + padding-top: 0.5rem; +} +.media .media .media + .media { + margin-top: 0.5rem; +} +.media + .media { + border-top: 1px solid rgba(219, 219, 219, 0.5); + margin-top: 1rem; + padding-top: 1rem; +} +.media.is-large + .media { + margin-top: 1.5rem; + padding-top: 1.5rem; +} + +.media-left, +.media-right { + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; +} + +.media-left { + margin-right: 1rem; +} + +.media-right { + margin-left: 1rem; +} + +.media-content { + flex-basis: auto; + flex-grow: 1; + flex-shrink: 1; + text-align: inherit; +} + +@media screen and (max-width: 768px) { + .media-content { + overflow-x: auto; + } +} +.message { + background-color: hsl(0deg, 0%, 96%); + border-radius: 4px; + font-size: 1rem; +} +.message strong { + color: currentColor; +} +.message a:not(.button):not(.tag):not(.dropdown-item) { + color: currentColor; + text-decoration: underline; +} +.message.is-small { + font-size: 0.75rem; +} +.message.is-medium { + font-size: 1.25rem; +} +.message.is-large { + font-size: 1.5rem; +} +.message.is-white { + background-color: white; +} +.message.is-white .message-header { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.message.is-white .message-body { + border-color: hsl(0deg, 0%, 100%); +} +.message.is-black { + background-color: #fafafa; +} +.message.is-black .message-header { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.message.is-black .message-body { + border-color: hsl(0deg, 0%, 4%); +} +.message.is-light { + background-color: #fafafa; +} +.message.is-light .message-header { + background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.message.is-light .message-body { + border-color: hsl(0deg, 0%, 96%); +} +.message.is-dark { + background-color: #fafafa; +} +.message.is-dark .message-header { + background-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.message.is-dark .message-body { + border-color: hsl(0deg, 0%, 21%); +} +.message.is-primary { + background-color: #ebfffc; +} +.message.is-primary .message-header { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.message.is-primary .message-body { + border-color: hsl(171deg, 100%, 41%); + color: #00947e; +} +.message.is-link { + background-color: #eff1fa; +} +.message.is-link .message-header { + background-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.message.is-link .message-body { + border-color: hsl(229deg, 53%, 53%); + color: #3850b7; +} +.message.is-info { + background-color: #eff5fb; +} +.message.is-info .message-header { + background-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.message.is-info .message-body { + border-color: hsl(207deg, 61%, 53%); + color: #296fa8; +} +.message.is-success { + background-color: #effaf5; +} +.message.is-success .message-header { + background-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.message.is-success .message-body { + border-color: hsl(153deg, 53%, 53%); + color: #257953; +} +.message.is-warning { + background-color: #fffaeb; +} +.message.is-warning .message-header { + background-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.message.is-warning .message-body { + border-color: hsl(44deg, 100%, 77%); + color: #946c00; +} +.message.is-danger { + background-color: #feecf0; +} +.message.is-danger .message-header { + background-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.message.is-danger .message-body { + border-color: hsl(348deg, 86%, 61%); + color: #cc0f35; +} + +.message-header { + align-items: center; + background-color: hsl(0deg, 0%, 29%); + border-radius: 4px 4px 0 0; + color: #fff; + display: flex; + font-weight: 700; + justify-content: space-between; + line-height: 1.25; + padding: 0.75em 1em; + position: relative; +} +.message-header .delete { + flex-grow: 0; + flex-shrink: 0; + margin-left: 0.75em; +} +.message-header + .message-body { + border-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.message-body { + border-color: hsl(0deg, 0%, 86%); + border-radius: 4px; + border-style: solid; + border-width: 0 0 0 4px; + color: hsl(0deg, 0%, 29%); + padding: 1.25em 1.5em; +} +.message-body code, +.message-body pre { + background-color: hsl(0deg, 0%, 100%); +} +.message-body pre code { + background-color: transparent; +} + +.modal { + align-items: center; + display: none; + flex-direction: column; + justify-content: center; + overflow: hidden; + position: fixed; + z-index: 40; +} +.modal.is-active { + display: flex; +} + +.modal-background { + background-color: rgba(10, 10, 10, 0.86); +} + +.modal-content, +.modal-card { + margin: 0 20px; + max-height: calc(100vh - 160px); + overflow: auto; + position: relative; + width: 100%; +} +@media screen and (min-width: 769px) { + .modal-content, + .modal-card { + margin: 0 auto; + max-height: calc(100vh - 40px); + width: 640px; + } +} + +.modal-close { + background: none; + height: 40px; + position: fixed; + right: 20px; + top: 20px; + width: 40px; +} + +.modal-card { + display: flex; + flex-direction: column; + max-height: calc(100vh - 40px); + overflow: hidden; + -ms-overflow-y: visible; +} + +.modal-card-head, +.modal-card-foot { + align-items: center; + background-color: hsl(0deg, 0%, 96%); + display: flex; + flex-shrink: 0; + justify-content: flex-start; + padding: 20px; + position: relative; +} + +.modal-card-head { + border-bottom: 1px solid hsl(0deg, 0%, 86%); + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.modal-card-title { + color: hsl(0deg, 0%, 21%); + flex-grow: 1; + flex-shrink: 0; + font-size: 1.5rem; + line-height: 1; +} + +.modal-card-foot { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-top: 1px solid hsl(0deg, 0%, 86%); +} +.modal-card-foot .button:not(:last-child) { + margin-right: 0.5em; +} + +.modal-card-body { + -webkit-overflow-scrolling: touch; + background-color: hsl(0deg, 0%, 100%); + flex-grow: 1; + flex-shrink: 1; + overflow: auto; + padding: 20px; +} + +/* Bulma Form */ +.select select, .textarea, .input { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 86%); + border-radius: 4px; + color: hsl(0deg, 0%, 21%); +} +.select select::-moz-placeholder, .textarea::-moz-placeholder, .input::-moz-placeholder { + color: rgba(54, 54, 54, 0.3); +} +.select select::-webkit-input-placeholder, .textarea::-webkit-input-placeholder, .input::-webkit-input-placeholder { + color: rgba(54, 54, 54, 0.3); +} +.select select:-moz-placeholder, .textarea:-moz-placeholder, .input:-moz-placeholder { + color: rgba(54, 54, 54, 0.3); +} +.select select:-ms-input-placeholder, .textarea:-ms-input-placeholder, .input:-ms-input-placeholder { + color: rgba(54, 54, 54, 0.3); +} +.select select:hover, .textarea:hover, .input:hover, .select select.is-hovered, .is-hovered.textarea, .is-hovered.input { + border-color: hsl(0deg, 0%, 71%); +} +.select select:focus, .textarea:focus, .input:focus, .select select.is-focused, .is-focused.textarea, .is-focused.input, .select select:active, .textarea:active, .input:active, .select select.is-active, .is-active.textarea, .is-active.input { + border-color: hsl(229deg, 53%, 53%); + box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); +} +.select select[disabled], [disabled].textarea, [disabled].input, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input { + background-color: hsl(0deg, 0%, 96%); + border-color: hsl(0deg, 0%, 96%); + box-shadow: none; + color: hsl(0deg, 0%, 48%); +} +.select select[disabled]::-moz-placeholder, [disabled].textarea::-moz-placeholder, [disabled].input::-moz-placeholder, fieldset[disabled] .select select::-moz-placeholder, .select fieldset[disabled] select::-moz-placeholder, fieldset[disabled] .textarea::-moz-placeholder, fieldset[disabled] .input::-moz-placeholder { + color: rgba(122, 122, 122, 0.3); +} +.select select[disabled]::-webkit-input-placeholder, [disabled].textarea::-webkit-input-placeholder, [disabled].input::-webkit-input-placeholder, fieldset[disabled] .select select::-webkit-input-placeholder, .select fieldset[disabled] select::-webkit-input-placeholder, fieldset[disabled] .textarea::-webkit-input-placeholder, fieldset[disabled] .input::-webkit-input-placeholder { + color: rgba(122, 122, 122, 0.3); +} +.select select[disabled]:-moz-placeholder, [disabled].textarea:-moz-placeholder, [disabled].input:-moz-placeholder, fieldset[disabled] .select select:-moz-placeholder, .select fieldset[disabled] select:-moz-placeholder, fieldset[disabled] .textarea:-moz-placeholder, fieldset[disabled] .input:-moz-placeholder { + color: rgba(122, 122, 122, 0.3); +} +.select select[disabled]:-ms-input-placeholder, [disabled].textarea:-ms-input-placeholder, [disabled].input:-ms-input-placeholder, fieldset[disabled] .select select:-ms-input-placeholder, .select fieldset[disabled] select:-ms-input-placeholder, fieldset[disabled] .textarea:-ms-input-placeholder, fieldset[disabled] .input:-ms-input-placeholder { + color: rgba(122, 122, 122, 0.3); +} + +.textarea, .input { + box-shadow: inset 0 0.0625em 0.125em rgba(10, 10, 10, 0.05); + max-width: 100%; + width: 100%; +} +[readonly].textarea, [readonly].input { + box-shadow: none; +} +.is-white.textarea, .is-white.input { + border-color: hsl(0deg, 0%, 100%); +} +.is-white.textarea:focus, .is-white.input:focus, .is-white.is-focused.textarea, .is-white.is-focused.input, .is-white.textarea:active, .is-white.input:active, .is-white.is-active.textarea, .is-white.is-active.input { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); +} +.is-black.textarea, .is-black.input { + border-color: hsl(0deg, 0%, 4%); +} +.is-black.textarea:focus, .is-black.input:focus, .is-black.is-focused.textarea, .is-black.is-focused.input, .is-black.textarea:active, .is-black.input:active, .is-black.is-active.textarea, .is-black.is-active.input { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); +} +.is-light.textarea, .is-light.input { + border-color: hsl(0deg, 0%, 96%); +} +.is-light.textarea:focus, .is-light.input:focus, .is-light.is-focused.textarea, .is-light.is-focused.input, .is-light.textarea:active, .is-light.input:active, .is-light.is-active.textarea, .is-light.is-active.input { + box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); +} +.is-dark.textarea, .is-dark.input { + border-color: hsl(0deg, 0%, 21%); +} +.is-dark.textarea:focus, .is-dark.input:focus, .is-dark.is-focused.textarea, .is-dark.is-focused.input, .is-dark.textarea:active, .is-dark.input:active, .is-dark.is-active.textarea, .is-dark.is-active.input { + box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); +} +.is-primary.textarea, .is-primary.input { + border-color: hsl(171deg, 100%, 41%); +} +.is-primary.textarea:focus, .is-primary.input:focus, .is-primary.is-focused.textarea, .is-primary.is-focused.input, .is-primary.textarea:active, .is-primary.input:active, .is-primary.is-active.textarea, .is-primary.is-active.input { + box-shadow: 0 0 0 0.125em rgba(0, 209, 178, 0.25); +} +.is-link.textarea, .is-link.input { + border-color: hsl(229deg, 53%, 53%); +} +.is-link.textarea:focus, .is-link.input:focus, .is-link.is-focused.textarea, .is-link.is-focused.input, .is-link.textarea:active, .is-link.input:active, .is-link.is-active.textarea, .is-link.is-active.input { + box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); +} +.is-info.textarea, .is-info.input { + border-color: hsl(207deg, 61%, 53%); +} +.is-info.textarea:focus, .is-info.input:focus, .is-info.is-focused.textarea, .is-info.is-focused.input, .is-info.textarea:active, .is-info.input:active, .is-info.is-active.textarea, .is-info.is-active.input { + box-shadow: 0 0 0 0.125em rgba(62, 142, 208, 0.25); +} +.is-success.textarea, .is-success.input { + border-color: hsl(153deg, 53%, 53%); +} +.is-success.textarea:focus, .is-success.input:focus, .is-success.is-focused.textarea, .is-success.is-focused.input, .is-success.textarea:active, .is-success.input:active, .is-success.is-active.textarea, .is-success.is-active.input { + box-shadow: 0 0 0 0.125em rgba(72, 199, 142, 0.25); +} +.is-warning.textarea, .is-warning.input { + border-color: hsl(44deg, 100%, 77%); +} +.is-warning.textarea:focus, .is-warning.input:focus, .is-warning.is-focused.textarea, .is-warning.is-focused.input, .is-warning.textarea:active, .is-warning.input:active, .is-warning.is-active.textarea, .is-warning.is-active.input { + box-shadow: 0 0 0 0.125em rgba(255, 224, 138, 0.25); +} +.is-danger.textarea, .is-danger.input { + border-color: hsl(348deg, 86%, 61%); +} +.is-danger.textarea:focus, .is-danger.input:focus, .is-danger.is-focused.textarea, .is-danger.is-focused.input, .is-danger.textarea:active, .is-danger.input:active, .is-danger.is-active.textarea, .is-danger.is-active.input { + box-shadow: 0 0 0 0.125em rgba(241, 70, 104, 0.25); +} +.is-small.textarea, .is-small.input { + border-radius: 2px; + font-size: 0.75rem; +} +.is-medium.textarea, .is-medium.input { + font-size: 1.25rem; +} +.is-large.textarea, .is-large.input { + font-size: 1.5rem; +} +.is-fullwidth.textarea, .is-fullwidth.input { + display: block; + width: 100%; +} +.is-inline.textarea, .is-inline.input { + display: inline; + width: auto; +} + +.input.is-rounded { + border-radius: 9999px; + padding-left: calc(calc(0.75em - 1px) + 0.375em); + padding-right: calc(calc(0.75em - 1px) + 0.375em); +} +.input.is-static { + background-color: transparent; + border-color: transparent; + box-shadow: none; + padding-left: 0; + padding-right: 0; +} + +.textarea { + display: block; + max-width: 100%; + min-width: 100%; + padding: calc(0.75em - 1px); + resize: vertical; +} +.textarea:not([rows]) { + max-height: 40em; + min-height: 8em; +} +.textarea[rows] { + height: initial; +} +.textarea.has-fixed-size { + resize: none; +} + +.radio, .checkbox { + cursor: pointer; + display: inline-block; + line-height: 1.25; + position: relative; +} +.radio input, .checkbox input { + cursor: pointer; +} +.radio:hover, .checkbox:hover { + color: hsl(0deg, 0%, 21%); +} +[disabled].radio, [disabled].checkbox, fieldset[disabled] .radio, fieldset[disabled] .checkbox, +.radio input[disabled], +.checkbox input[disabled] { + color: hsl(0deg, 0%, 48%); + cursor: not-allowed; +} + +.radio + .radio { + margin-left: 0.5em; +} + +.select { + display: inline-block; + max-width: 100%; + position: relative; + vertical-align: top; +} +.select:not(.is-multiple) { + height: 2.5em; +} +.select:not(.is-multiple):not(.is-loading)::after { + border-color: hsl(229deg, 53%, 53%); + right: 1.125em; + z-index: 4; +} +.select.is-rounded select { + border-radius: 9999px; + padding-left: 1em; +} +.select select { + cursor: pointer; + display: block; + font-size: 1em; + max-width: 100%; + outline: none; +} +.select select::-ms-expand { + display: none; +} +.select select[disabled]:hover, fieldset[disabled] .select select:hover { + border-color: hsl(0deg, 0%, 96%); +} +.select select:not([multiple]) { + padding-right: 2.5em; +} +.select select[multiple] { + height: auto; + padding: 0; +} +.select select[multiple] option { + padding: 0.5em 1em; +} +.select:not(.is-multiple):not(.is-loading):hover::after { + border-color: hsl(0deg, 0%, 21%); +} +.select.is-white:not(:hover)::after { + border-color: hsl(0deg, 0%, 100%); +} +.select.is-white select { + border-color: hsl(0deg, 0%, 100%); +} +.select.is-white select:hover, .select.is-white select.is-hovered { + border-color: #f2f2f2; +} +.select.is-white select:focus, .select.is-white select.is-focused, .select.is-white select:active, .select.is-white select.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); +} +.select.is-black:not(:hover)::after { + border-color: hsl(0deg, 0%, 4%); +} +.select.is-black select { + border-color: hsl(0deg, 0%, 4%); +} +.select.is-black select:hover, .select.is-black select.is-hovered { + border-color: black; +} +.select.is-black select:focus, .select.is-black select.is-focused, .select.is-black select:active, .select.is-black select.is-active { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); +} +.select.is-light:not(:hover)::after { + border-color: hsl(0deg, 0%, 96%); +} +.select.is-light select { + border-color: hsl(0deg, 0%, 96%); +} +.select.is-light select:hover, .select.is-light select.is-hovered { + border-color: #e8e8e8; +} +.select.is-light select:focus, .select.is-light select.is-focused, .select.is-light select:active, .select.is-light select.is-active { + box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); +} +.select.is-dark:not(:hover)::after { + border-color: hsl(0deg, 0%, 21%); +} +.select.is-dark select { + border-color: hsl(0deg, 0%, 21%); +} +.select.is-dark select:hover, .select.is-dark select.is-hovered { + border-color: #292929; +} +.select.is-dark select:focus, .select.is-dark select.is-focused, .select.is-dark select:active, .select.is-dark select.is-active { + box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); +} +.select.is-primary:not(:hover)::after { + border-color: hsl(171deg, 100%, 41%); +} +.select.is-primary select { + border-color: hsl(171deg, 100%, 41%); +} +.select.is-primary select:hover, .select.is-primary select.is-hovered { + border-color: #00b89c; +} +.select.is-primary select:focus, .select.is-primary select.is-focused, .select.is-primary select:active, .select.is-primary select.is-active { + box-shadow: 0 0 0 0.125em rgba(0, 209, 178, 0.25); +} +.select.is-link:not(:hover)::after { + border-color: hsl(229deg, 53%, 53%); +} +.select.is-link select { + border-color: hsl(229deg, 53%, 53%); +} +.select.is-link select:hover, .select.is-link select.is-hovered { + border-color: #3a51bb; +} +.select.is-link select:focus, .select.is-link select.is-focused, .select.is-link select:active, .select.is-link select.is-active { + box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.25); +} +.select.is-info:not(:hover)::after { + border-color: hsl(207deg, 61%, 53%); +} +.select.is-info select { + border-color: hsl(207deg, 61%, 53%); +} +.select.is-info select:hover, .select.is-info select.is-hovered { + border-color: #3082c5; +} +.select.is-info select:focus, .select.is-info select.is-focused, .select.is-info select:active, .select.is-info select.is-active { + box-shadow: 0 0 0 0.125em rgba(62, 142, 208, 0.25); +} +.select.is-success:not(:hover)::after { + border-color: hsl(153deg, 53%, 53%); +} +.select.is-success select { + border-color: hsl(153deg, 53%, 53%); +} +.select.is-success select:hover, .select.is-success select.is-hovered { + border-color: #3abb81; +} +.select.is-success select:focus, .select.is-success select.is-focused, .select.is-success select:active, .select.is-success select.is-active { + box-shadow: 0 0 0 0.125em rgba(72, 199, 142, 0.25); +} +.select.is-warning:not(:hover)::after { + border-color: hsl(44deg, 100%, 77%); +} +.select.is-warning select { + border-color: hsl(44deg, 100%, 77%); +} +.select.is-warning select:hover, .select.is-warning select.is-hovered { + border-color: #ffd970; +} +.select.is-warning select:focus, .select.is-warning select.is-focused, .select.is-warning select:active, .select.is-warning select.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 224, 138, 0.25); +} +.select.is-danger:not(:hover)::after { + border-color: hsl(348deg, 86%, 61%); +} +.select.is-danger select { + border-color: hsl(348deg, 86%, 61%); +} +.select.is-danger select:hover, .select.is-danger select.is-hovered { + border-color: #ef2e55; +} +.select.is-danger select:focus, .select.is-danger select.is-focused, .select.is-danger select:active, .select.is-danger select.is-active { + box-shadow: 0 0 0 0.125em rgba(241, 70, 104, 0.25); +} +.select.is-small { + border-radius: 2px; + font-size: 0.75rem; +} +.select.is-medium { + font-size: 1.25rem; +} +.select.is-large { + font-size: 1.5rem; +} +.select.is-disabled::after { + border-color: hsl(0deg, 0%, 48%) !important; + opacity: 0.5; +} +.select.is-fullwidth { + width: 100%; +} +.select.is-fullwidth select { + width: 100%; +} +.select.is-loading::after { + margin-top: 0; + position: absolute; + right: 0.625em; + top: 0.625em; + transform: none; +} +.select.is-loading.is-small:after { + font-size: 0.75rem; +} +.select.is-loading.is-medium:after { + font-size: 1.25rem; +} +.select.is-loading.is-large:after { + font-size: 1.5rem; +} + +.file { + align-items: stretch; + display: flex; + justify-content: flex-start; + position: relative; +} +.file.is-white .file-cta { + background-color: hsl(0deg, 0%, 100%); + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.file.is-white:hover .file-cta, .file.is-white.is-hovered .file-cta { + background-color: #f9f9f9; + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.file.is-white:focus .file-cta, .file.is-white.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.25); + color: hsl(0deg, 0%, 4%); +} +.file.is-white:active .file-cta, .file.is-white.is-active .file-cta { + background-color: #f2f2f2; + border-color: transparent; + color: hsl(0deg, 0%, 4%); +} +.file.is-black .file-cta { + background-color: hsl(0deg, 0%, 4%); + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.file.is-black:hover .file-cta, .file.is-black.is-hovered .file-cta { + background-color: #040404; + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.file.is-black:focus .file-cta, .file.is-black.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(10, 10, 10, 0.25); + color: hsl(0deg, 0%, 100%); +} +.file.is-black:active .file-cta, .file.is-black.is-active .file-cta { + background-color: black; + border-color: transparent; + color: hsl(0deg, 0%, 100%); +} +.file.is-light .file-cta { + background-color: hsl(0deg, 0%, 96%); + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.file.is-light:hover .file-cta, .file.is-light.is-hovered .file-cta { + background-color: #eeeeee; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.file.is-light:focus .file-cta, .file.is-light.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(245, 245, 245, 0.25); + color: rgba(0, 0, 0, 0.7); +} +.file.is-light:active .file-cta, .file.is-light.is-active .file-cta { + background-color: #e8e8e8; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.file.is-dark .file-cta { + background-color: hsl(0deg, 0%, 21%); + border-color: transparent; + color: #fff; +} +.file.is-dark:hover .file-cta, .file.is-dark.is-hovered .file-cta { + background-color: #2f2f2f; + border-color: transparent; + color: #fff; +} +.file.is-dark:focus .file-cta, .file.is-dark.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(54, 54, 54, 0.25); + color: #fff; +} +.file.is-dark:active .file-cta, .file.is-dark.is-active .file-cta { + background-color: #292929; + border-color: transparent; + color: #fff; +} +.file.is-primary .file-cta { + background-color: hsl(171deg, 100%, 41%); + border-color: transparent; + color: #fff; +} +.file.is-primary:hover .file-cta, .file.is-primary.is-hovered .file-cta { + background-color: #00c4a7; + border-color: transparent; + color: #fff; +} +.file.is-primary:focus .file-cta, .file.is-primary.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(0, 209, 178, 0.25); + color: #fff; +} +.file.is-primary:active .file-cta, .file.is-primary.is-active .file-cta { + background-color: #00b89c; + border-color: transparent; + color: #fff; +} +.file.is-link .file-cta { + background-color: hsl(229deg, 53%, 53%); + border-color: transparent; + color: #fff; +} +.file.is-link:hover .file-cta, .file.is-link.is-hovered .file-cta { + background-color: #3e56c4; + border-color: transparent; + color: #fff; +} +.file.is-link:focus .file-cta, .file.is-link.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(72, 95, 199, 0.25); + color: #fff; +} +.file.is-link:active .file-cta, .file.is-link.is-active .file-cta { + background-color: #3a51bb; + border-color: transparent; + color: #fff; +} +.file.is-info .file-cta { + background-color: hsl(207deg, 61%, 53%); + border-color: transparent; + color: #fff; +} +.file.is-info:hover .file-cta, .file.is-info.is-hovered .file-cta { + background-color: #3488ce; + border-color: transparent; + color: #fff; +} +.file.is-info:focus .file-cta, .file.is-info.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(62, 142, 208, 0.25); + color: #fff; +} +.file.is-info:active .file-cta, .file.is-info.is-active .file-cta { + background-color: #3082c5; + border-color: transparent; + color: #fff; +} +.file.is-success .file-cta { + background-color: hsl(153deg, 53%, 53%); + border-color: transparent; + color: #fff; +} +.file.is-success:hover .file-cta, .file.is-success.is-hovered .file-cta { + background-color: #3ec487; + border-color: transparent; + color: #fff; +} +.file.is-success:focus .file-cta, .file.is-success.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(72, 199, 142, 0.25); + color: #fff; +} +.file.is-success:active .file-cta, .file.is-success.is-active .file-cta { + background-color: #3abb81; + border-color: transparent; + color: #fff; +} +.file.is-warning .file-cta { + background-color: hsl(44deg, 100%, 77%); + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.file.is-warning:hover .file-cta, .file.is-warning.is-hovered .file-cta { + background-color: #ffdc7d; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.file.is-warning:focus .file-cta, .file.is-warning.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(255, 224, 138, 0.25); + color: rgba(0, 0, 0, 0.7); +} +.file.is-warning:active .file-cta, .file.is-warning.is-active .file-cta { + background-color: #ffd970; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +.file.is-danger .file-cta { + background-color: hsl(348deg, 86%, 61%); + border-color: transparent; + color: #fff; +} +.file.is-danger:hover .file-cta, .file.is-danger.is-hovered .file-cta { + background-color: #f03a5f; + border-color: transparent; + color: #fff; +} +.file.is-danger:focus .file-cta, .file.is-danger.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(241, 70, 104, 0.25); + color: #fff; +} +.file.is-danger:active .file-cta, .file.is-danger.is-active .file-cta { + background-color: #ef2e55; + border-color: transparent; + color: #fff; +} +.file.is-small { + font-size: 0.75rem; +} +.file.is-normal { + font-size: 1rem; +} +.file.is-medium { + font-size: 1.25rem; +} +.file.is-medium .file-icon .fa { + font-size: 21px; +} +.file.is-large { + font-size: 1.5rem; +} +.file.is-large .file-icon .fa { + font-size: 28px; +} +.file.has-name .file-cta { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.file.has-name .file-name { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.file.has-name.is-empty .file-cta { + border-radius: 4px; +} +.file.has-name.is-empty .file-name { + display: none; +} +.file.is-boxed .file-label { + flex-direction: column; +} +.file.is-boxed .file-cta { + flex-direction: column; + height: auto; + padding: 1em 3em; +} +.file.is-boxed .file-name { + border-width: 0 1px 1px; +} +.file.is-boxed .file-icon { + height: 1.5em; + width: 1.5em; +} +.file.is-boxed .file-icon .fa { + font-size: 21px; +} +.file.is-boxed.is-small .file-icon .fa { + font-size: 14px; +} +.file.is-boxed.is-medium .file-icon .fa { + font-size: 28px; +} +.file.is-boxed.is-large .file-icon .fa { + font-size: 35px; +} +.file.is-boxed.has-name .file-cta { + border-radius: 4px 4px 0 0; +} +.file.is-boxed.has-name .file-name { + border-radius: 0 0 4px 4px; + border-width: 0 1px 1px; +} +.file.is-centered { + justify-content: center; +} +.file.is-fullwidth .file-label { + width: 100%; +} +.file.is-fullwidth .file-name { + flex-grow: 1; + max-width: none; +} +.file.is-right { + justify-content: flex-end; +} +.file.is-right .file-cta { + border-radius: 0 4px 4px 0; +} +.file.is-right .file-name { + border-radius: 4px 0 0 4px; + border-width: 1px 0 1px 1px; + order: -1; +} + +.file-label { + align-items: stretch; + display: flex; + cursor: pointer; + justify-content: flex-start; + overflow: hidden; + position: relative; +} +.file-label:hover .file-cta { + background-color: #eeeeee; + color: hsl(0deg, 0%, 21%); +} +.file-label:hover .file-name { + border-color: #d5d5d5; +} +.file-label:active .file-cta { + background-color: #e8e8e8; + color: hsl(0deg, 0%, 21%); +} +.file-label:active .file-name { + border-color: #cfcfcf; +} + +.file-input { + height: 100%; + left: 0; + opacity: 0; + outline: none; + position: absolute; + top: 0; + width: 100%; +} + +.file-cta, +.file-name { + border-color: hsl(0deg, 0%, 86%); + border-radius: 4px; + font-size: 1em; + padding-left: 1em; + padding-right: 1em; + white-space: nowrap; +} + +.file-cta { + background-color: hsl(0deg, 0%, 96%); + color: hsl(0deg, 0%, 29%); +} + +.file-name { + border-color: hsl(0deg, 0%, 86%); + border-style: solid; + border-width: 1px 1px 1px 0; + display: block; + max-width: 16em; + overflow: hidden; + text-align: inherit; + text-overflow: ellipsis; +} + +.file-icon { + align-items: center; + display: flex; + height: 1em; + justify-content: center; + margin-right: 0.5em; + width: 1em; +} +.file-icon .fa { + font-size: 14px; +} + +.label { + color: hsl(0deg, 0%, 21%); + display: block; + font-size: 1rem; + font-weight: 700; +} +.label:not(:last-child) { + margin-bottom: 0.5em; +} +.label.is-small { + font-size: 0.75rem; +} +.label.is-medium { + font-size: 1.25rem; +} +.label.is-large { + font-size: 1.5rem; +} + +.help { + display: block; + font-size: 0.75rem; + margin-top: 0.25rem; +} +.help.is-white { + color: hsl(0deg, 0%, 100%); +} +.help.is-black { + color: hsl(0deg, 0%, 4%); +} +.help.is-light { + color: hsl(0deg, 0%, 96%); +} +.help.is-dark { + color: hsl(0deg, 0%, 21%); +} +.help.is-primary { + color: hsl(171deg, 100%, 41%); +} +.help.is-link { + color: hsl(229deg, 53%, 53%); +} +.help.is-info { + color: hsl(207deg, 61%, 53%); +} +.help.is-success { + color: hsl(153deg, 53%, 53%); +} +.help.is-warning { + color: hsl(44deg, 100%, 77%); +} +.help.is-danger { + color: hsl(348deg, 86%, 61%); +} + +.field:not(:last-child) { + margin-bottom: 0.75rem; +} +.field.has-addons { + display: flex; + justify-content: flex-start; +} +.field.has-addons .control:not(:last-child) { + margin-right: -1px; +} +.field.has-addons .control:not(:first-child):not(:last-child) .button, +.field.has-addons .control:not(:first-child):not(:last-child) .input, +.field.has-addons .control:not(:first-child):not(:last-child) .select select { + border-radius: 0; +} +.field.has-addons .control:first-child:not(:only-child) .button, +.field.has-addons .control:first-child:not(:only-child) .input, +.field.has-addons .control:first-child:not(:only-child) .select select { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.field.has-addons .control:last-child:not(:only-child) .button, +.field.has-addons .control:last-child:not(:only-child) .input, +.field.has-addons .control:last-child:not(:only-child) .select select { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.field.has-addons .control .button:not([disabled]):hover, .field.has-addons .control .button:not([disabled]).is-hovered, +.field.has-addons .control .input:not([disabled]):hover, +.field.has-addons .control .input:not([disabled]).is-hovered, +.field.has-addons .control .select select:not([disabled]):hover, +.field.has-addons .control .select select:not([disabled]).is-hovered { + z-index: 2; +} +.field.has-addons .control .button:not([disabled]):focus, .field.has-addons .control .button:not([disabled]).is-focused, .field.has-addons .control .button:not([disabled]):active, .field.has-addons .control .button:not([disabled]).is-active, +.field.has-addons .control .input:not([disabled]):focus, +.field.has-addons .control .input:not([disabled]).is-focused, +.field.has-addons .control .input:not([disabled]):active, +.field.has-addons .control .input:not([disabled]).is-active, +.field.has-addons .control .select select:not([disabled]):focus, +.field.has-addons .control .select select:not([disabled]).is-focused, +.field.has-addons .control .select select:not([disabled]):active, +.field.has-addons .control .select select:not([disabled]).is-active { + z-index: 3; +} +.field.has-addons .control .button:not([disabled]):focus:hover, .field.has-addons .control .button:not([disabled]).is-focused:hover, .field.has-addons .control .button:not([disabled]):active:hover, .field.has-addons .control .button:not([disabled]).is-active:hover, +.field.has-addons .control .input:not([disabled]):focus:hover, +.field.has-addons .control .input:not([disabled]).is-focused:hover, +.field.has-addons .control .input:not([disabled]):active:hover, +.field.has-addons .control .input:not([disabled]).is-active:hover, +.field.has-addons .control .select select:not([disabled]):focus:hover, +.field.has-addons .control .select select:not([disabled]).is-focused:hover, +.field.has-addons .control .select select:not([disabled]):active:hover, +.field.has-addons .control .select select:not([disabled]).is-active:hover { + z-index: 4; +} +.field.has-addons .control.is-expanded { + flex-grow: 1; + flex-shrink: 1; +} +.field.has-addons.has-addons-centered { + justify-content: center; +} +.field.has-addons.has-addons-right { + justify-content: flex-end; +} +.field.has-addons.has-addons-fullwidth .control { + flex-grow: 1; + flex-shrink: 0; +} +.field.is-grouped { + display: flex; + justify-content: flex-start; +} +.field.is-grouped > .control { + flex-shrink: 0; +} +.field.is-grouped > .control:not(:last-child) { + margin-bottom: 0; + margin-right: 0.75rem; +} +.field.is-grouped > .control.is-expanded { + flex-grow: 1; + flex-shrink: 1; +} +.field.is-grouped.is-grouped-centered { + justify-content: center; +} +.field.is-grouped.is-grouped-right { + justify-content: flex-end; +} +.field.is-grouped.is-grouped-multiline { + flex-wrap: wrap; +} +.field.is-grouped.is-grouped-multiline > .control:last-child, .field.is-grouped.is-grouped-multiline > .control:not(:last-child) { + margin-bottom: 0.75rem; +} +.field.is-grouped.is-grouped-multiline:last-child { + margin-bottom: -0.75rem; +} +.field.is-grouped.is-grouped-multiline:not(:last-child) { + margin-bottom: 0; +} +@media screen and (min-width: 769px), print { + .field.is-horizontal { + display: flex; + } +} + +.field-label .label { + font-size: inherit; +} +@media screen and (max-width: 768px) { + .field-label { + margin-bottom: 0.5rem; + } +} +@media screen and (min-width: 769px), print { + .field-label { + flex-basis: 0; + flex-grow: 1; + flex-shrink: 0; + margin-right: 1.5rem; + text-align: right; + } + .field-label.is-small { + font-size: 0.75rem; + padding-top: 0.375em; + } + .field-label.is-normal { + padding-top: 0.375em; + } + .field-label.is-medium { + font-size: 1.25rem; + padding-top: 0.375em; + } + .field-label.is-large { + font-size: 1.5rem; + padding-top: 0.375em; + } +} + +.field-body .field .field { + margin-bottom: 0; +} +@media screen and (min-width: 769px), print { + .field-body { + display: flex; + flex-basis: 0; + flex-grow: 5; + flex-shrink: 1; + } + .field-body .field { + margin-bottom: 0; + } + .field-body > .field { + flex-shrink: 1; + } + .field-body > .field:not(.is-narrow) { + flex-grow: 1; + } + .field-body > .field:not(:last-child) { + margin-right: 0.75rem; + } +} + +.control { + box-sizing: border-box; + clear: both; + font-size: 1rem; + position: relative; + text-align: inherit; +} +.control.has-icons-left .input:focus ~ .icon, +.control.has-icons-left .select:focus ~ .icon, .control.has-icons-right .input:focus ~ .icon, +.control.has-icons-right .select:focus ~ .icon { + color: hsl(0deg, 0%, 29%); +} +.control.has-icons-left .input.is-small ~ .icon, +.control.has-icons-left .select.is-small ~ .icon, .control.has-icons-right .input.is-small ~ .icon, +.control.has-icons-right .select.is-small ~ .icon { + font-size: 0.75rem; +} +.control.has-icons-left .input.is-medium ~ .icon, +.control.has-icons-left .select.is-medium ~ .icon, .control.has-icons-right .input.is-medium ~ .icon, +.control.has-icons-right .select.is-medium ~ .icon { + font-size: 1.25rem; +} +.control.has-icons-left .input.is-large ~ .icon, +.control.has-icons-left .select.is-large ~ .icon, .control.has-icons-right .input.is-large ~ .icon, +.control.has-icons-right .select.is-large ~ .icon { + font-size: 1.5rem; +} +.control.has-icons-left .icon, .control.has-icons-right .icon { + color: hsl(0deg, 0%, 86%); + height: 2.5em; + pointer-events: none; + position: absolute; + top: 0; + width: 2.5em; + z-index: 4; +} +.control.has-icons-left .input, +.control.has-icons-left .select select { + padding-left: 2.5em; +} +.control.has-icons-left .icon.is-left { + left: 0; +} +.control.has-icons-right .input, +.control.has-icons-right .select select { + padding-right: 2.5em; +} +.control.has-icons-right .icon.is-right { + right: 0; +} +.control.is-loading::after { + position: absolute !important; + right: 0.625em; + top: 0.625em; + z-index: 4; +} +.control.is-loading.is-small:after { + font-size: 0.75rem; +} +.control.is-loading.is-medium:after { + font-size: 1.25rem; +} +.control.is-loading.is-large:after { + font-size: 1.5rem; +} + +/* Bulma Grid */ +.column { + display: block; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 1; + padding: 0.75rem; +} +.columns.is-mobile > .column.is-narrow { + flex: none; + width: unset; +} +.columns.is-mobile > .column.is-full { + flex: none; + width: 100%; +} +.columns.is-mobile > .column.is-three-quarters { + flex: none; + width: 75%; +} +.columns.is-mobile > .column.is-two-thirds { + flex: none; + width: 66.6666%; +} +.columns.is-mobile > .column.is-half { + flex: none; + width: 50%; +} +.columns.is-mobile > .column.is-one-third { + flex: none; + width: 33.3333%; +} +.columns.is-mobile > .column.is-one-quarter { + flex: none; + width: 25%; +} +.columns.is-mobile > .column.is-one-fifth { + flex: none; + width: 20%; +} +.columns.is-mobile > .column.is-two-fifths { + flex: none; + width: 40%; +} +.columns.is-mobile > .column.is-three-fifths { + flex: none; + width: 60%; +} +.columns.is-mobile > .column.is-four-fifths { + flex: none; + width: 80%; +} +.columns.is-mobile > .column.is-offset-three-quarters { + margin-left: 75%; +} +.columns.is-mobile > .column.is-offset-two-thirds { + margin-left: 66.6666%; +} +.columns.is-mobile > .column.is-offset-half { + margin-left: 50%; +} +.columns.is-mobile > .column.is-offset-one-third { + margin-left: 33.3333%; +} +.columns.is-mobile > .column.is-offset-one-quarter { + margin-left: 25%; +} +.columns.is-mobile > .column.is-offset-one-fifth { + margin-left: 20%; +} +.columns.is-mobile > .column.is-offset-two-fifths { + margin-left: 40%; +} +.columns.is-mobile > .column.is-offset-three-fifths { + margin-left: 60%; +} +.columns.is-mobile > .column.is-offset-four-fifths { + margin-left: 80%; +} +.columns.is-mobile > .column.is-0 { + flex: none; + width: 0%; +} +.columns.is-mobile > .column.is-offset-0 { + margin-left: 0%; +} +.columns.is-mobile > .column.is-1 { + flex: none; + width: 8.33333337%; +} +.columns.is-mobile > .column.is-offset-1 { + margin-left: 8.33333337%; +} +.columns.is-mobile > .column.is-2 { + flex: none; + width: 16.66666674%; +} +.columns.is-mobile > .column.is-offset-2 { + margin-left: 16.66666674%; +} +.columns.is-mobile > .column.is-3 { + flex: none; + width: 25%; +} +.columns.is-mobile > .column.is-offset-3 { + margin-left: 25%; +} +.columns.is-mobile > .column.is-4 { + flex: none; + width: 33.33333337%; +} +.columns.is-mobile > .column.is-offset-4 { + margin-left: 33.33333337%; +} +.columns.is-mobile > .column.is-5 { + flex: none; + width: 41.66666674%; +} +.columns.is-mobile > .column.is-offset-5 { + margin-left: 41.66666674%; +} +.columns.is-mobile > .column.is-6 { + flex: none; + width: 50%; +} +.columns.is-mobile > .column.is-offset-6 { + margin-left: 50%; +} +.columns.is-mobile > .column.is-7 { + flex: none; + width: 58.33333337%; +} +.columns.is-mobile > .column.is-offset-7 { + margin-left: 58.33333337%; +} +.columns.is-mobile > .column.is-8 { + flex: none; + width: 66.66666674%; +} +.columns.is-mobile > .column.is-offset-8 { + margin-left: 66.66666674%; +} +.columns.is-mobile > .column.is-9 { + flex: none; + width: 75%; +} +.columns.is-mobile > .column.is-offset-9 { + margin-left: 75%; +} +.columns.is-mobile > .column.is-10 { + flex: none; + width: 83.33333337%; +} +.columns.is-mobile > .column.is-offset-10 { + margin-left: 83.33333337%; +} +.columns.is-mobile > .column.is-11 { + flex: none; + width: 91.66666674%; +} +.columns.is-mobile > .column.is-offset-11 { + margin-left: 91.66666674%; +} +.columns.is-mobile > .column.is-12 { + flex: none; + width: 100%; +} +.columns.is-mobile > .column.is-offset-12 { + margin-left: 100%; +} +@media screen and (max-width: 768px) { + .column.is-narrow-mobile { + flex: none; + width: unset; + } + .column.is-full-mobile { + flex: none; + width: 100%; + } + .column.is-three-quarters-mobile { + flex: none; + width: 75%; + } + .column.is-two-thirds-mobile { + flex: none; + width: 66.6666%; + } + .column.is-half-mobile { + flex: none; + width: 50%; + } + .column.is-one-third-mobile { + flex: none; + width: 33.3333%; + } + .column.is-one-quarter-mobile { + flex: none; + width: 25%; + } + .column.is-one-fifth-mobile { + flex: none; + width: 20%; + } + .column.is-two-fifths-mobile { + flex: none; + width: 40%; + } + .column.is-three-fifths-mobile { + flex: none; + width: 60%; + } + .column.is-four-fifths-mobile { + flex: none; + width: 80%; + } + .column.is-offset-three-quarters-mobile { + margin-left: 75%; + } + .column.is-offset-two-thirds-mobile { + margin-left: 66.6666%; + } + .column.is-offset-half-mobile { + margin-left: 50%; + } + .column.is-offset-one-third-mobile { + margin-left: 33.3333%; + } + .column.is-offset-one-quarter-mobile { + margin-left: 25%; + } + .column.is-offset-one-fifth-mobile { + margin-left: 20%; + } + .column.is-offset-two-fifths-mobile { + margin-left: 40%; + } + .column.is-offset-three-fifths-mobile { + margin-left: 60%; + } + .column.is-offset-four-fifths-mobile { + margin-left: 80%; + } + .column.is-0-mobile { + flex: none; + width: 0%; + } + .column.is-offset-0-mobile { + margin-left: 0%; + } + .column.is-1-mobile { + flex: none; + width: 8.33333337%; + } + .column.is-offset-1-mobile { + margin-left: 8.33333337%; + } + .column.is-2-mobile { + flex: none; + width: 16.66666674%; + } + .column.is-offset-2-mobile { + margin-left: 16.66666674%; + } + .column.is-3-mobile { + flex: none; + width: 25%; + } + .column.is-offset-3-mobile { + margin-left: 25%; + } + .column.is-4-mobile { + flex: none; + width: 33.33333337%; + } + .column.is-offset-4-mobile { + margin-left: 33.33333337%; + } + .column.is-5-mobile { + flex: none; + width: 41.66666674%; + } + .column.is-offset-5-mobile { + margin-left: 41.66666674%; + } + .column.is-6-mobile { + flex: none; + width: 50%; + } + .column.is-offset-6-mobile { + margin-left: 50%; + } + .column.is-7-mobile { + flex: none; + width: 58.33333337%; + } + .column.is-offset-7-mobile { + margin-left: 58.33333337%; + } + .column.is-8-mobile { + flex: none; + width: 66.66666674%; + } + .column.is-offset-8-mobile { + margin-left: 66.66666674%; + } + .column.is-9-mobile { + flex: none; + width: 75%; + } + .column.is-offset-9-mobile { + margin-left: 75%; + } + .column.is-10-mobile { + flex: none; + width: 83.33333337%; + } + .column.is-offset-10-mobile { + margin-left: 83.33333337%; + } + .column.is-11-mobile { + flex: none; + width: 91.66666674%; + } + .column.is-offset-11-mobile { + margin-left: 91.66666674%; + } + .column.is-12-mobile { + flex: none; + width: 100%; + } + .column.is-offset-12-mobile { + margin-left: 100%; + } +} +@media screen and (min-width: 769px), print { + .column.is-narrow, .column.is-narrow-tablet { + flex: none; + width: unset; + } + .column.is-full, .column.is-full-tablet { + flex: none; + width: 100%; + } + .column.is-three-quarters, .column.is-three-quarters-tablet { + flex: none; + width: 75%; + } + .column.is-two-thirds, .column.is-two-thirds-tablet { + flex: none; + width: 66.6666%; + } + .column.is-half, .column.is-half-tablet { + flex: none; + width: 50%; + } + .column.is-one-third, .column.is-one-third-tablet { + flex: none; + width: 33.3333%; + } + .column.is-one-quarter, .column.is-one-quarter-tablet { + flex: none; + width: 25%; + } + .column.is-one-fifth, .column.is-one-fifth-tablet { + flex: none; + width: 20%; + } + .column.is-two-fifths, .column.is-two-fifths-tablet { + flex: none; + width: 40%; + } + .column.is-three-fifths, .column.is-three-fifths-tablet { + flex: none; + width: 60%; + } + .column.is-four-fifths, .column.is-four-fifths-tablet { + flex: none; + width: 80%; + } + .column.is-offset-three-quarters, .column.is-offset-three-quarters-tablet { + margin-left: 75%; + } + .column.is-offset-two-thirds, .column.is-offset-two-thirds-tablet { + margin-left: 66.6666%; + } + .column.is-offset-half, .column.is-offset-half-tablet { + margin-left: 50%; + } + .column.is-offset-one-third, .column.is-offset-one-third-tablet { + margin-left: 33.3333%; + } + .column.is-offset-one-quarter, .column.is-offset-one-quarter-tablet { + margin-left: 25%; + } + .column.is-offset-one-fifth, .column.is-offset-one-fifth-tablet { + margin-left: 20%; + } + .column.is-offset-two-fifths, .column.is-offset-two-fifths-tablet { + margin-left: 40%; + } + .column.is-offset-three-fifths, .column.is-offset-three-fifths-tablet { + margin-left: 60%; + } + .column.is-offset-four-fifths, .column.is-offset-four-fifths-tablet { + margin-left: 80%; + } + .column.is-0, .column.is-0-tablet { + flex: none; + width: 0%; + } + .column.is-offset-0, .column.is-offset-0-tablet { + margin-left: 0%; + } + .column.is-1, .column.is-1-tablet { + flex: none; + width: 8.33333337%; + } + .column.is-offset-1, .column.is-offset-1-tablet { + margin-left: 8.33333337%; + } + .column.is-2, .column.is-2-tablet { + flex: none; + width: 16.66666674%; + } + .column.is-offset-2, .column.is-offset-2-tablet { + margin-left: 16.66666674%; + } + .column.is-3, .column.is-3-tablet { + flex: none; + width: 25%; + } + .column.is-offset-3, .column.is-offset-3-tablet { + margin-left: 25%; + } + .column.is-4, .column.is-4-tablet { + flex: none; + width: 33.33333337%; + } + .column.is-offset-4, .column.is-offset-4-tablet { + margin-left: 33.33333337%; + } + .column.is-5, .column.is-5-tablet { + flex: none; + width: 41.66666674%; + } + .column.is-offset-5, .column.is-offset-5-tablet { + margin-left: 41.66666674%; + } + .column.is-6, .column.is-6-tablet { + flex: none; + width: 50%; + } + .column.is-offset-6, .column.is-offset-6-tablet { + margin-left: 50%; + } + .column.is-7, .column.is-7-tablet { + flex: none; + width: 58.33333337%; + } + .column.is-offset-7, .column.is-offset-7-tablet { + margin-left: 58.33333337%; + } + .column.is-8, .column.is-8-tablet { + flex: none; + width: 66.66666674%; + } + .column.is-offset-8, .column.is-offset-8-tablet { + margin-left: 66.66666674%; + } + .column.is-9, .column.is-9-tablet { + flex: none; + width: 75%; + } + .column.is-offset-9, .column.is-offset-9-tablet { + margin-left: 75%; + } + .column.is-10, .column.is-10-tablet { + flex: none; + width: 83.33333337%; + } + .column.is-offset-10, .column.is-offset-10-tablet { + margin-left: 83.33333337%; + } + .column.is-11, .column.is-11-tablet { + flex: none; + width: 91.66666674%; + } + .column.is-offset-11, .column.is-offset-11-tablet { + margin-left: 91.66666674%; + } + .column.is-12, .column.is-12-tablet { + flex: none; + width: 100%; + } + .column.is-offset-12, .column.is-offset-12-tablet { + margin-left: 100%; + } +} +@media screen and (max-width: 1023px) { + .column.is-narrow-touch { + flex: none; + width: unset; + } + .column.is-full-touch { + flex: none; + width: 100%; + } + .column.is-three-quarters-touch { + flex: none; + width: 75%; + } + .column.is-two-thirds-touch { + flex: none; + width: 66.6666%; + } + .column.is-half-touch { + flex: none; + width: 50%; + } + .column.is-one-third-touch { + flex: none; + width: 33.3333%; + } + .column.is-one-quarter-touch { + flex: none; + width: 25%; + } + .column.is-one-fifth-touch { + flex: none; + width: 20%; + } + .column.is-two-fifths-touch { + flex: none; + width: 40%; + } + .column.is-three-fifths-touch { + flex: none; + width: 60%; + } + .column.is-four-fifths-touch { + flex: none; + width: 80%; + } + .column.is-offset-three-quarters-touch { + margin-left: 75%; + } + .column.is-offset-two-thirds-touch { + margin-left: 66.6666%; + } + .column.is-offset-half-touch { + margin-left: 50%; + } + .column.is-offset-one-third-touch { + margin-left: 33.3333%; + } + .column.is-offset-one-quarter-touch { + margin-left: 25%; + } + .column.is-offset-one-fifth-touch { + margin-left: 20%; + } + .column.is-offset-two-fifths-touch { + margin-left: 40%; + } + .column.is-offset-three-fifths-touch { + margin-left: 60%; + } + .column.is-offset-four-fifths-touch { + margin-left: 80%; + } + .column.is-0-touch { + flex: none; + width: 0%; + } + .column.is-offset-0-touch { + margin-left: 0%; + } + .column.is-1-touch { + flex: none; + width: 8.33333337%; + } + .column.is-offset-1-touch { + margin-left: 8.33333337%; + } + .column.is-2-touch { + flex: none; + width: 16.66666674%; + } + .column.is-offset-2-touch { + margin-left: 16.66666674%; + } + .column.is-3-touch { + flex: none; + width: 25%; + } + .column.is-offset-3-touch { + margin-left: 25%; + } + .column.is-4-touch { + flex: none; + width: 33.33333337%; + } + .column.is-offset-4-touch { + margin-left: 33.33333337%; + } + .column.is-5-touch { + flex: none; + width: 41.66666674%; + } + .column.is-offset-5-touch { + margin-left: 41.66666674%; + } + .column.is-6-touch { + flex: none; + width: 50%; + } + .column.is-offset-6-touch { + margin-left: 50%; + } + .column.is-7-touch { + flex: none; + width: 58.33333337%; + } + .column.is-offset-7-touch { + margin-left: 58.33333337%; + } + .column.is-8-touch { + flex: none; + width: 66.66666674%; + } + .column.is-offset-8-touch { + margin-left: 66.66666674%; + } + .column.is-9-touch { + flex: none; + width: 75%; + } + .column.is-offset-9-touch { + margin-left: 75%; + } + .column.is-10-touch { + flex: none; + width: 83.33333337%; + } + .column.is-offset-10-touch { + margin-left: 83.33333337%; + } + .column.is-11-touch { + flex: none; + width: 91.66666674%; + } + .column.is-offset-11-touch { + margin-left: 91.66666674%; + } + .column.is-12-touch { + flex: none; + width: 100%; + } + .column.is-offset-12-touch { + margin-left: 100%; + } +} +@media screen and (min-width: 1024px) { + .column.is-narrow-desktop { + flex: none; + width: unset; + } + .column.is-full-desktop { + flex: none; + width: 100%; + } + .column.is-three-quarters-desktop { + flex: none; + width: 75%; + } + .column.is-two-thirds-desktop { + flex: none; + width: 66.6666%; + } + .column.is-half-desktop { + flex: none; + width: 50%; + } + .column.is-one-third-desktop { + flex: none; + width: 33.3333%; + } + .column.is-one-quarter-desktop { + flex: none; + width: 25%; + } + .column.is-one-fifth-desktop { + flex: none; + width: 20%; + } + .column.is-two-fifths-desktop { + flex: none; + width: 40%; + } + .column.is-three-fifths-desktop { + flex: none; + width: 60%; + } + .column.is-four-fifths-desktop { + flex: none; + width: 80%; + } + .column.is-offset-three-quarters-desktop { + margin-left: 75%; + } + .column.is-offset-two-thirds-desktop { + margin-left: 66.6666%; + } + .column.is-offset-half-desktop { + margin-left: 50%; + } + .column.is-offset-one-third-desktop { + margin-left: 33.3333%; + } + .column.is-offset-one-quarter-desktop { + margin-left: 25%; + } + .column.is-offset-one-fifth-desktop { + margin-left: 20%; + } + .column.is-offset-two-fifths-desktop { + margin-left: 40%; + } + .column.is-offset-three-fifths-desktop { + margin-left: 60%; + } + .column.is-offset-four-fifths-desktop { + margin-left: 80%; + } + .column.is-0-desktop { + flex: none; + width: 0%; + } + .column.is-offset-0-desktop { + margin-left: 0%; + } + .column.is-1-desktop { + flex: none; + width: 8.33333337%; + } + .column.is-offset-1-desktop { + margin-left: 8.33333337%; + } + .column.is-2-desktop { + flex: none; + width: 16.66666674%; + } + .column.is-offset-2-desktop { + margin-left: 16.66666674%; + } + .column.is-3-desktop { + flex: none; + width: 25%; + } + .column.is-offset-3-desktop { + margin-left: 25%; + } + .column.is-4-desktop { + flex: none; + width: 33.33333337%; + } + .column.is-offset-4-desktop { + margin-left: 33.33333337%; + } + .column.is-5-desktop { + flex: none; + width: 41.66666674%; + } + .column.is-offset-5-desktop { + margin-left: 41.66666674%; + } + .column.is-6-desktop { + flex: none; + width: 50%; + } + .column.is-offset-6-desktop { + margin-left: 50%; + } + .column.is-7-desktop { + flex: none; + width: 58.33333337%; + } + .column.is-offset-7-desktop { + margin-left: 58.33333337%; + } + .column.is-8-desktop { + flex: none; + width: 66.66666674%; + } + .column.is-offset-8-desktop { + margin-left: 66.66666674%; + } + .column.is-9-desktop { + flex: none; + width: 75%; + } + .column.is-offset-9-desktop { + margin-left: 75%; + } + .column.is-10-desktop { + flex: none; + width: 83.33333337%; + } + .column.is-offset-10-desktop { + margin-left: 83.33333337%; + } + .column.is-11-desktop { + flex: none; + width: 91.66666674%; + } + .column.is-offset-11-desktop { + margin-left: 91.66666674%; + } + .column.is-12-desktop { + flex: none; + width: 100%; + } + .column.is-offset-12-desktop { + margin-left: 100%; + } +} +@media screen and (min-width: 1216px) { + .column.is-narrow-widescreen { + flex: none; + width: unset; + } + .column.is-full-widescreen { + flex: none; + width: 100%; + } + .column.is-three-quarters-widescreen { + flex: none; + width: 75%; + } + .column.is-two-thirds-widescreen { + flex: none; + width: 66.6666%; + } + .column.is-half-widescreen { + flex: none; + width: 50%; + } + .column.is-one-third-widescreen { + flex: none; + width: 33.3333%; + } + .column.is-one-quarter-widescreen { + flex: none; + width: 25%; + } + .column.is-one-fifth-widescreen { + flex: none; + width: 20%; + } + .column.is-two-fifths-widescreen { + flex: none; + width: 40%; + } + .column.is-three-fifths-widescreen { + flex: none; + width: 60%; + } + .column.is-four-fifths-widescreen { + flex: none; + width: 80%; + } + .column.is-offset-three-quarters-widescreen { + margin-left: 75%; + } + .column.is-offset-two-thirds-widescreen { + margin-left: 66.6666%; + } + .column.is-offset-half-widescreen { + margin-left: 50%; + } + .column.is-offset-one-third-widescreen { + margin-left: 33.3333%; + } + .column.is-offset-one-quarter-widescreen { + margin-left: 25%; + } + .column.is-offset-one-fifth-widescreen { + margin-left: 20%; + } + .column.is-offset-two-fifths-widescreen { + margin-left: 40%; + } + .column.is-offset-three-fifths-widescreen { + margin-left: 60%; + } + .column.is-offset-four-fifths-widescreen { + margin-left: 80%; + } + .column.is-0-widescreen { + flex: none; + width: 0%; + } + .column.is-offset-0-widescreen { + margin-left: 0%; + } + .column.is-1-widescreen { + flex: none; + width: 8.33333337%; + } + .column.is-offset-1-widescreen { + margin-left: 8.33333337%; + } + .column.is-2-widescreen { + flex: none; + width: 16.66666674%; + } + .column.is-offset-2-widescreen { + margin-left: 16.66666674%; + } + .column.is-3-widescreen { + flex: none; + width: 25%; + } + .column.is-offset-3-widescreen { + margin-left: 25%; + } + .column.is-4-widescreen { + flex: none; + width: 33.33333337%; + } + .column.is-offset-4-widescreen { + margin-left: 33.33333337%; + } + .column.is-5-widescreen { + flex: none; + width: 41.66666674%; + } + .column.is-offset-5-widescreen { + margin-left: 41.66666674%; + } + .column.is-6-widescreen { + flex: none; + width: 50%; + } + .column.is-offset-6-widescreen { + margin-left: 50%; + } + .column.is-7-widescreen { + flex: none; + width: 58.33333337%; + } + .column.is-offset-7-widescreen { + margin-left: 58.33333337%; + } + .column.is-8-widescreen { + flex: none; + width: 66.66666674%; + } + .column.is-offset-8-widescreen { + margin-left: 66.66666674%; + } + .column.is-9-widescreen { + flex: none; + width: 75%; + } + .column.is-offset-9-widescreen { + margin-left: 75%; + } + .column.is-10-widescreen { + flex: none; + width: 83.33333337%; + } + .column.is-offset-10-widescreen { + margin-left: 83.33333337%; + } + .column.is-11-widescreen { + flex: none; + width: 91.66666674%; + } + .column.is-offset-11-widescreen { + margin-left: 91.66666674%; + } + .column.is-12-widescreen { + flex: none; + width: 100%; + } + .column.is-offset-12-widescreen { + margin-left: 100%; + } +} +@media screen and (min-width: 1408px) { + .column.is-narrow-fullhd { + flex: none; + width: unset; + } + .column.is-full-fullhd { + flex: none; + width: 100%; + } + .column.is-three-quarters-fullhd { + flex: none; + width: 75%; + } + .column.is-two-thirds-fullhd { + flex: none; + width: 66.6666%; + } + .column.is-half-fullhd { + flex: none; + width: 50%; + } + .column.is-one-third-fullhd { + flex: none; + width: 33.3333%; + } + .column.is-one-quarter-fullhd { + flex: none; + width: 25%; + } + .column.is-one-fifth-fullhd { + flex: none; + width: 20%; + } + .column.is-two-fifths-fullhd { + flex: none; + width: 40%; + } + .column.is-three-fifths-fullhd { + flex: none; + width: 60%; + } + .column.is-four-fifths-fullhd { + flex: none; + width: 80%; + } + .column.is-offset-three-quarters-fullhd { + margin-left: 75%; + } + .column.is-offset-two-thirds-fullhd { + margin-left: 66.6666%; + } + .column.is-offset-half-fullhd { + margin-left: 50%; + } + .column.is-offset-one-third-fullhd { + margin-left: 33.3333%; + } + .column.is-offset-one-quarter-fullhd { + margin-left: 25%; + } + .column.is-offset-one-fifth-fullhd { + margin-left: 20%; + } + .column.is-offset-two-fifths-fullhd { + margin-left: 40%; + } + .column.is-offset-three-fifths-fullhd { + margin-left: 60%; + } + .column.is-offset-four-fifths-fullhd { + margin-left: 80%; + } + .column.is-0-fullhd { + flex: none; + width: 0%; + } + .column.is-offset-0-fullhd { + margin-left: 0%; + } + .column.is-1-fullhd { + flex: none; + width: 8.33333337%; + } + .column.is-offset-1-fullhd { + margin-left: 8.33333337%; + } + .column.is-2-fullhd { + flex: none; + width: 16.66666674%; + } + .column.is-offset-2-fullhd { + margin-left: 16.66666674%; + } + .column.is-3-fullhd { + flex: none; + width: 25%; + } + .column.is-offset-3-fullhd { + margin-left: 25%; + } + .column.is-4-fullhd { + flex: none; + width: 33.33333337%; + } + .column.is-offset-4-fullhd { + margin-left: 33.33333337%; + } + .column.is-5-fullhd { + flex: none; + width: 41.66666674%; + } + .column.is-offset-5-fullhd { + margin-left: 41.66666674%; + } + .column.is-6-fullhd { + flex: none; + width: 50%; + } + .column.is-offset-6-fullhd { + margin-left: 50%; + } + .column.is-7-fullhd { + flex: none; + width: 58.33333337%; + } + .column.is-offset-7-fullhd { + margin-left: 58.33333337%; + } + .column.is-8-fullhd { + flex: none; + width: 66.66666674%; + } + .column.is-offset-8-fullhd { + margin-left: 66.66666674%; + } + .column.is-9-fullhd { + flex: none; + width: 75%; + } + .column.is-offset-9-fullhd { + margin-left: 75%; + } + .column.is-10-fullhd { + flex: none; + width: 83.33333337%; + } + .column.is-offset-10-fullhd { + margin-left: 83.33333337%; + } + .column.is-11-fullhd { + flex: none; + width: 91.66666674%; + } + .column.is-offset-11-fullhd { + margin-left: 91.66666674%; + } + .column.is-12-fullhd { + flex: none; + width: 100%; + } + .column.is-offset-12-fullhd { + margin-left: 100%; + } +} + +.columns { + margin-left: -0.75rem; + margin-right: -0.75rem; + margin-top: -0.75rem; +} +.columns:last-child { + margin-bottom: -0.75rem; +} +.columns:not(:last-child) { + margin-bottom: calc(1.5rem - 0.75rem); +} +.columns.is-centered { + justify-content: center; +} +.columns.is-gapless { + margin-left: 0; + margin-right: 0; + margin-top: 0; +} +.columns.is-gapless > .column { + margin: 0; + padding: 0 !important; +} +.columns.is-gapless:not(:last-child) { + margin-bottom: 1.5rem; +} +.columns.is-gapless:last-child { + margin-bottom: 0; +} +.columns.is-mobile { + display: flex; +} +.columns.is-multiline { + flex-wrap: wrap; +} +.columns.is-vcentered { + align-items: center; +} +@media screen and (min-width: 769px), print { + .columns:not(.is-desktop) { + display: flex; + } +} +@media screen and (min-width: 1024px) { + .columns.is-desktop { + display: flex; + } +} + +.columns.is-variable { + --columnGap: 0.75rem; + margin-left: calc(-1 * var(--columnGap)); + margin-right: calc(-1 * var(--columnGap)); +} +.columns.is-variable > .column { + padding-left: var(--columnGap); + padding-right: var(--columnGap); +} +.columns.is-variable.is-0 { + --columnGap: 0rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-0-mobile { + --columnGap: 0rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-0-tablet { + --columnGap: 0rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-0-tablet-only { + --columnGap: 0rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-0-touch { + --columnGap: 0rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-0-desktop { + --columnGap: 0rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-0-desktop-only { + --columnGap: 0rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-0-widescreen { + --columnGap: 0rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-0-widescreen-only { + --columnGap: 0rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-0-fullhd { + --columnGap: 0rem; + } +} +.columns.is-variable.is-1 { + --columnGap: 0.25rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-1-mobile { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-1-tablet { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-1-tablet-only { + --columnGap: 0.25rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-1-touch { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-1-desktop { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-1-desktop-only { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-1-widescreen { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-1-widescreen-only { + --columnGap: 0.25rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-1-fullhd { + --columnGap: 0.25rem; + } +} +.columns.is-variable.is-2 { + --columnGap: 0.5rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-2-mobile { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-2-tablet { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-2-tablet-only { + --columnGap: 0.5rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-2-touch { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-2-desktop { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-2-desktop-only { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-2-widescreen { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-2-widescreen-only { + --columnGap: 0.5rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-2-fullhd { + --columnGap: 0.5rem; + } +} +.columns.is-variable.is-3 { + --columnGap: 0.75rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-3-mobile { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-3-tablet { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-3-tablet-only { + --columnGap: 0.75rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-3-touch { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-3-desktop { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-3-desktop-only { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-3-widescreen { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-3-widescreen-only { + --columnGap: 0.75rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-3-fullhd { + --columnGap: 0.75rem; + } +} +.columns.is-variable.is-4 { + --columnGap: 1rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-4-mobile { + --columnGap: 1rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-4-tablet { + --columnGap: 1rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-4-tablet-only { + --columnGap: 1rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-4-touch { + --columnGap: 1rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-4-desktop { + --columnGap: 1rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-4-desktop-only { + --columnGap: 1rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-4-widescreen { + --columnGap: 1rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-4-widescreen-only { + --columnGap: 1rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-4-fullhd { + --columnGap: 1rem; + } +} +.columns.is-variable.is-5 { + --columnGap: 1.25rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-5-mobile { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-5-tablet { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-5-tablet-only { + --columnGap: 1.25rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-5-touch { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-5-desktop { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-5-desktop-only { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-5-widescreen { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-5-widescreen-only { + --columnGap: 1.25rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-5-fullhd { + --columnGap: 1.25rem; + } +} +.columns.is-variable.is-6 { + --columnGap: 1.5rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-6-mobile { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-6-tablet { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-6-tablet-only { + --columnGap: 1.5rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-6-touch { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-6-desktop { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-6-desktop-only { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-6-widescreen { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-6-widescreen-only { + --columnGap: 1.5rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-6-fullhd { + --columnGap: 1.5rem; + } +} +.columns.is-variable.is-7 { + --columnGap: 1.75rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-7-mobile { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-7-tablet { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-7-tablet-only { + --columnGap: 1.75rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-7-touch { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-7-desktop { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-7-desktop-only { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-7-widescreen { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-7-widescreen-only { + --columnGap: 1.75rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-7-fullhd { + --columnGap: 1.75rem; + } +} +.columns.is-variable.is-8 { + --columnGap: 2rem; +} +@media screen and (max-width: 768px) { + .columns.is-variable.is-8-mobile { + --columnGap: 2rem; + } +} +@media screen and (min-width: 769px), print { + .columns.is-variable.is-8-tablet { + --columnGap: 2rem; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .columns.is-variable.is-8-tablet-only { + --columnGap: 2rem; + } +} +@media screen and (max-width: 1023px) { + .columns.is-variable.is-8-touch { + --columnGap: 2rem; + } +} +@media screen and (min-width: 1024px) { + .columns.is-variable.is-8-desktop { + --columnGap: 2rem; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .columns.is-variable.is-8-desktop-only { + --columnGap: 2rem; + } +} +@media screen and (min-width: 1216px) { + .columns.is-variable.is-8-widescreen { + --columnGap: 2rem; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-8-widescreen-only { + --columnGap: 2rem; + } +} +@media screen and (min-width: 1408px) { + .columns.is-variable.is-8-fullhd { + --columnGap: 2rem; + } +} + +.tile { + align-items: stretch; + display: block; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 1; + min-height: -moz-min-content; + min-height: min-content; +} +.tile.is-ancestor { + margin-left: -0.75rem; + margin-right: -0.75rem; + margin-top: -0.75rem; +} +.tile.is-ancestor:last-child { + margin-bottom: -0.75rem; +} +.tile.is-ancestor:not(:last-child) { + margin-bottom: 0.75rem; +} +.tile.is-child { + margin: 0 !important; +} +.tile.is-parent { + padding: 0.75rem; +} +.tile.is-vertical { + flex-direction: column; +} +.tile.is-vertical > .tile.is-child:not(:last-child) { + margin-bottom: 1.5rem !important; +} +@media screen and (min-width: 769px), print { + .tile:not(.is-child) { + display: flex; + } + .tile.is-1 { + flex: none; + width: 8.33333337%; + } + .tile.is-2 { + flex: none; + width: 16.66666674%; + } + .tile.is-3 { + flex: none; + width: 25%; + } + .tile.is-4 { + flex: none; + width: 33.33333337%; + } + .tile.is-5 { + flex: none; + width: 41.66666674%; + } + .tile.is-6 { + flex: none; + width: 50%; + } + .tile.is-7 { + flex: none; + width: 58.33333337%; + } + .tile.is-8 { + flex: none; + width: 66.66666674%; + } + .tile.is-9 { + flex: none; + width: 75%; + } + .tile.is-10 { + flex: none; + width: 83.33333337%; + } + .tile.is-11 { + flex: none; + width: 91.66666674%; + } + .tile.is-12 { + flex: none; + width: 100%; + } +} + +/* Bulma Helpers */ +.has-text-white { + color: hsl(0deg, 0%, 100%) !important; +} + +a.has-text-white:hover, a.has-text-white:focus { + color: #e6e6e6 !important; +} + +.has-background-white { + background-color: hsl(0deg, 0%, 100%) !important; +} + +.has-text-black { + color: hsl(0deg, 0%, 4%) !important; +} + +a.has-text-black:hover, a.has-text-black:focus { + color: black !important; +} + +.has-background-black { + background-color: hsl(0deg, 0%, 4%) !important; +} + +.has-text-light { + color: hsl(0deg, 0%, 96%) !important; +} + +a.has-text-light:hover, a.has-text-light:focus { + color: #dbdbdb !important; +} + +.has-background-light { + background-color: hsl(0deg, 0%, 96%) !important; +} + +.has-text-dark { + color: hsl(0deg, 0%, 21%) !important; +} + +a.has-text-dark:hover, a.has-text-dark:focus { + color: #1c1c1c !important; +} + +.has-background-dark { + background-color: hsl(0deg, 0%, 21%) !important; +} + +.has-text-primary { + color: hsl(171deg, 100%, 41%) !important; +} + +a.has-text-primary:hover, a.has-text-primary:focus { + color: #009e86 !important; +} + +.has-background-primary { + background-color: hsl(171deg, 100%, 41%) !important; +} + +.has-text-primary-light { + color: #ebfffc !important; +} + +a.has-text-primary-light:hover, a.has-text-primary-light:focus { + color: #b8fff4 !important; +} + +.has-background-primary-light { + background-color: #ebfffc !important; +} + +.has-text-primary-dark { + color: #00947e !important; +} + +a.has-text-primary-dark:hover, a.has-text-primary-dark:focus { + color: #00c7a9 !important; +} + +.has-background-primary-dark { + background-color: #00947e !important; +} + +.has-text-link { + color: hsl(229deg, 53%, 53%) !important; +} + +a.has-text-link:hover, a.has-text-link:focus { + color: #3449a8 !important; +} + +.has-background-link { + background-color: hsl(229deg, 53%, 53%) !important; +} + +.has-text-link-light { + color: #eff1fa !important; +} + +a.has-text-link-light:hover, a.has-text-link-light:focus { + color: #c8cfee !important; +} + +.has-background-link-light { + background-color: #eff1fa !important; +} + +.has-text-link-dark { + color: #3850b7 !important; +} + +a.has-text-link-dark:hover, a.has-text-link-dark:focus { + color: #576dcb !important; +} + +.has-background-link-dark { + background-color: #3850b7 !important; +} + +.has-text-info { + color: hsl(207deg, 61%, 53%) !important; +} + +a.has-text-info:hover, a.has-text-info:focus { + color: #2b74b1 !important; +} + +.has-background-info { + background-color: hsl(207deg, 61%, 53%) !important; +} + +.has-text-info-light { + color: #eff5fb !important; +} + +a.has-text-info-light:hover, a.has-text-info-light:focus { + color: #c6ddf1 !important; +} + +.has-background-info-light { + background-color: #eff5fb !important; +} + +.has-text-info-dark { + color: #296fa8 !important; +} + +a.has-text-info-dark:hover, a.has-text-info-dark:focus { + color: #368ace !important; +} + +.has-background-info-dark { + background-color: #296fa8 !important; +} + +.has-text-success { + color: hsl(153deg, 53%, 53%) !important; +} + +a.has-text-success:hover, a.has-text-success:focus { + color: #34a873 !important; +} + +.has-background-success { + background-color: hsl(153deg, 53%, 53%) !important; +} + +.has-text-success-light { + color: #effaf5 !important; +} + +a.has-text-success-light:hover, a.has-text-success-light:focus { + color: #c8eedd !important; +} + +.has-background-success-light { + background-color: #effaf5 !important; +} + +.has-text-success-dark { + color: #257953 !important; +} + +a.has-text-success-dark:hover, a.has-text-success-dark:focus { + color: #31a06e !important; +} + +.has-background-success-dark { + background-color: #257953 !important; +} + +.has-text-warning { + color: hsl(44deg, 100%, 77%) !important; +} + +a.has-text-warning:hover, a.has-text-warning:focus { + color: #ffd257 !important; +} + +.has-background-warning { + background-color: hsl(44deg, 100%, 77%) !important; +} + +.has-text-warning-light { + color: #fffaeb !important; +} + +a.has-text-warning-light:hover, a.has-text-warning-light:focus { + color: #ffecb8 !important; +} + +.has-background-warning-light { + background-color: #fffaeb !important; +} + +.has-text-warning-dark { + color: #946c00 !important; +} + +a.has-text-warning-dark:hover, a.has-text-warning-dark:focus { + color: #c79200 !important; +} + +.has-background-warning-dark { + background-color: #946c00 !important; +} + +.has-text-danger { + color: hsl(348deg, 86%, 61%) !important; +} + +a.has-text-danger:hover, a.has-text-danger:focus { + color: #ee1742 !important; +} + +.has-background-danger { + background-color: hsl(348deg, 86%, 61%) !important; +} + +.has-text-danger-light { + color: #feecf0 !important; +} + +a.has-text-danger-light:hover, a.has-text-danger-light:focus { + color: #fabdc9 !important; +} + +.has-background-danger-light { + background-color: #feecf0 !important; +} + +.has-text-danger-dark { + color: #cc0f35 !important; +} + +a.has-text-danger-dark:hover, a.has-text-danger-dark:focus { + color: #ee2049 !important; +} + +.has-background-danger-dark { + background-color: #cc0f35 !important; +} + +.has-text-black-bis { + color: hsl(0deg, 0%, 7%) !important; +} + +.has-background-black-bis { + background-color: hsl(0deg, 0%, 7%) !important; +} + +.has-text-black-ter { + color: hsl(0deg, 0%, 14%) !important; +} + +.has-background-black-ter { + background-color: hsl(0deg, 0%, 14%) !important; +} + +.has-text-grey-darker { + color: hsl(0deg, 0%, 21%) !important; +} + +.has-background-grey-darker { + background-color: hsl(0deg, 0%, 21%) !important; +} + +.has-text-grey-dark { + color: hsl(0deg, 0%, 29%) !important; +} + +.has-background-grey-dark { + background-color: hsl(0deg, 0%, 29%) !important; +} + +.has-text-grey { + color: hsl(0deg, 0%, 48%) !important; +} + +.has-background-grey { + background-color: hsl(0deg, 0%, 48%) !important; +} + +.has-text-grey-light { + color: hsl(0deg, 0%, 71%) !important; +} + +.has-background-grey-light { + background-color: hsl(0deg, 0%, 71%) !important; +} + +.has-text-grey-lighter { + color: hsl(0deg, 0%, 86%) !important; +} + +.has-background-grey-lighter { + background-color: hsl(0deg, 0%, 86%) !important; +} + +.has-text-white-ter { + color: hsl(0deg, 0%, 96%) !important; +} + +.has-background-white-ter { + background-color: hsl(0deg, 0%, 96%) !important; +} + +.has-text-white-bis { + color: hsl(0deg, 0%, 98%) !important; +} + +.has-background-white-bis { + background-color: hsl(0deg, 0%, 98%) !important; +} + +.is-flex-direction-row { + flex-direction: row !important; +} + +.is-flex-direction-row-reverse { + flex-direction: row-reverse !important; +} + +.is-flex-direction-column { + flex-direction: column !important; +} + +.is-flex-direction-column-reverse { + flex-direction: column-reverse !important; +} + +.is-flex-wrap-nowrap { + flex-wrap: nowrap !important; +} + +.is-flex-wrap-wrap { + flex-wrap: wrap !important; +} + +.is-flex-wrap-wrap-reverse { + flex-wrap: wrap-reverse !important; +} + +.is-justify-content-flex-start { + justify-content: flex-start !important; +} + +.is-justify-content-flex-end { + justify-content: flex-end !important; +} + +.is-justify-content-center { + justify-content: center !important; +} + +.is-justify-content-space-between { + justify-content: space-between !important; +} + +.is-justify-content-space-around { + justify-content: space-around !important; +} + +.is-justify-content-space-evenly { + justify-content: space-evenly !important; +} + +.is-justify-content-start { + justify-content: start !important; +} + +.is-justify-content-end { + justify-content: end !important; +} + +.is-justify-content-left { + justify-content: left !important; +} + +.is-justify-content-right { + justify-content: right !important; +} + +.is-align-content-flex-start { + align-content: flex-start !important; +} + +.is-align-content-flex-end { + align-content: flex-end !important; +} + +.is-align-content-center { + align-content: center !important; +} + +.is-align-content-space-between { + align-content: space-between !important; +} + +.is-align-content-space-around { + align-content: space-around !important; +} + +.is-align-content-space-evenly { + align-content: space-evenly !important; +} + +.is-align-content-stretch { + align-content: stretch !important; +} + +.is-align-content-start { + align-content: start !important; +} + +.is-align-content-end { + align-content: end !important; +} + +.is-align-content-baseline { + align-content: baseline !important; +} + +.is-align-items-stretch { + align-items: stretch !important; +} + +.is-align-items-flex-start { + align-items: flex-start !important; +} + +.is-align-items-flex-end { + align-items: flex-end !important; +} + +.is-align-items-center { + align-items: center !important; +} + +.is-align-items-baseline { + align-items: baseline !important; +} + +.is-align-items-start { + align-items: start !important; +} + +.is-align-items-end { + align-items: end !important; +} + +.is-align-items-self-start { + align-items: self-start !important; +} + +.is-align-items-self-end { + align-items: self-end !important; +} + +.is-align-self-auto { + align-self: auto !important; +} + +.is-align-self-flex-start { + align-self: flex-start !important; +} + +.is-align-self-flex-end { + align-self: flex-end !important; +} + +.is-align-self-center { + align-self: center !important; +} + +.is-align-self-baseline { + align-self: baseline !important; +} + +.is-align-self-stretch { + align-self: stretch !important; +} + +.is-flex-grow-0 { + flex-grow: 0 !important; +} + +.is-flex-grow-1 { + flex-grow: 1 !important; +} + +.is-flex-grow-2 { + flex-grow: 2 !important; +} + +.is-flex-grow-3 { + flex-grow: 3 !important; +} + +.is-flex-grow-4 { + flex-grow: 4 !important; +} + +.is-flex-grow-5 { + flex-grow: 5 !important; +} + +.is-flex-shrink-0 { + flex-shrink: 0 !important; +} + +.is-flex-shrink-1 { + flex-shrink: 1 !important; +} + +.is-flex-shrink-2 { + flex-shrink: 2 !important; +} + +.is-flex-shrink-3 { + flex-shrink: 3 !important; +} + +.is-flex-shrink-4 { + flex-shrink: 4 !important; +} + +.is-flex-shrink-5 { + flex-shrink: 5 !important; +} + +.is-clearfix::after { + clear: both; + content: " "; + display: table; +} + +.is-pulled-left { + float: left !important; +} + +.is-pulled-right { + float: right !important; +} + +.is-radiusless { + border-radius: 0 !important; +} + +.is-shadowless { + box-shadow: none !important; +} + +.is-clickable { + cursor: pointer !important; + pointer-events: all !important; +} + +.is-clipped { + overflow: hidden !important; +} + +.is-relative { + position: relative !important; +} + +.is-marginless { + margin: 0 !important; +} + +.is-paddingless { + padding: 0 !important; +} + +.m-0 { + margin: 0 !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mr-0 { + margin-right: 0 !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.ml-0 { + margin-left: 0 !important; +} + +.mx-0 { + margin-left: 0 !important; + margin-right: 0 !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.mt-1 { + margin-top: 0.25rem !important; +} + +.mr-1 { + margin-right: 0.25rem !important; +} + +.mb-1 { + margin-bottom: 0.25rem !important; +} + +.ml-1 { + margin-left: 0.25rem !important; +} + +.mx-1 { + margin-left: 0.25rem !important; + margin-right: 0.25rem !important; +} + +.my-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.mt-2 { + margin-top: 0.5rem !important; +} + +.mr-2 { + margin-right: 0.5rem !important; +} + +.mb-2 { + margin-bottom: 0.5rem !important; +} + +.ml-2 { + margin-left: 0.5rem !important; +} + +.mx-2 { + margin-left: 0.5rem !important; + margin-right: 0.5rem !important; +} + +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; +} + +.m-3 { + margin: 0.75rem !important; +} + +.mt-3 { + margin-top: 0.75rem !important; +} + +.mr-3 { + margin-right: 0.75rem !important; +} + +.mb-3 { + margin-bottom: 0.75rem !important; +} + +.ml-3 { + margin-left: 0.75rem !important; +} + +.mx-3 { + margin-left: 0.75rem !important; + margin-right: 0.75rem !important; +} + +.my-3 { + margin-top: 0.75rem !important; + margin-bottom: 0.75rem !important; +} + +.m-4 { + margin: 1rem !important; +} + +.mt-4 { + margin-top: 1rem !important; +} + +.mr-4 { + margin-right: 1rem !important; +} + +.mb-4 { + margin-bottom: 1rem !important; +} + +.ml-4 { + margin-left: 1rem !important; +} + +.mx-4 { + margin-left: 1rem !important; + margin-right: 1rem !important; +} + +.my-4 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; +} + +.m-5 { + margin: 1.5rem !important; +} + +.mt-5 { + margin-top: 1.5rem !important; +} + +.mr-5 { + margin-right: 1.5rem !important; +} + +.mb-5 { + margin-bottom: 1.5rem !important; +} + +.ml-5 { + margin-left: 1.5rem !important; +} + +.mx-5 { + margin-left: 1.5rem !important; + margin-right: 1.5rem !important; +} + +.my-5 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; +} + +.m-6 { + margin: 3rem !important; +} + +.mt-6 { + margin-top: 3rem !important; +} + +.mr-6 { + margin-right: 3rem !important; +} + +.mb-6 { + margin-bottom: 3rem !important; +} + +.ml-6 { + margin-left: 3rem !important; +} + +.mx-6 { + margin-left: 3rem !important; + margin-right: 3rem !important; +} + +.my-6 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.mr-auto { + margin-right: auto !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.ml-auto { + margin-left: auto !important; +} + +.mx-auto { + margin-left: auto !important; + margin-right: auto !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.p-0 { + padding: 0 !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pr-0 { + padding-right: 0 !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pl-0 { + padding-left: 0 !important; +} + +.px-0 { + padding-left: 0 !important; + padding-right: 0 !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.pt-1 { + padding-top: 0.25rem !important; +} + +.pr-1 { + padding-right: 0.25rem !important; +} + +.pb-1 { + padding-bottom: 0.25rem !important; +} + +.pl-1 { + padding-left: 0.25rem !important; +} + +.px-1 { + padding-left: 0.25rem !important; + padding-right: 0.25rem !important; +} + +.py-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.pt-2 { + padding-top: 0.5rem !important; +} + +.pr-2 { + padding-right: 0.5rem !important; +} + +.pb-2 { + padding-bottom: 0.5rem !important; +} + +.pl-2 { + padding-left: 0.5rem !important; +} + +.px-2 { + padding-left: 0.5rem !important; + padding-right: 0.5rem !important; +} + +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; +} + +.p-3 { + padding: 0.75rem !important; +} + +.pt-3 { + padding-top: 0.75rem !important; +} + +.pr-3 { + padding-right: 0.75rem !important; +} + +.pb-3 { + padding-bottom: 0.75rem !important; +} + +.pl-3 { + padding-left: 0.75rem !important; +} + +.px-3 { + padding-left: 0.75rem !important; + padding-right: 0.75rem !important; +} + +.py-3 { + padding-top: 0.75rem !important; + padding-bottom: 0.75rem !important; +} + +.p-4 { + padding: 1rem !important; +} + +.pt-4 { + padding-top: 1rem !important; +} + +.pr-4 { + padding-right: 1rem !important; +} + +.pb-4 { + padding-bottom: 1rem !important; +} + +.pl-4 { + padding-left: 1rem !important; +} + +.px-4 { + padding-left: 1rem !important; + padding-right: 1rem !important; +} + +.py-4 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; +} + +.p-5 { + padding: 1.5rem !important; +} + +.pt-5 { + padding-top: 1.5rem !important; +} + +.pr-5 { + padding-right: 1.5rem !important; +} + +.pb-5 { + padding-bottom: 1.5rem !important; +} + +.pl-5 { + padding-left: 1.5rem !important; +} + +.px-5 { + padding-left: 1.5rem !important; + padding-right: 1.5rem !important; +} + +.py-5 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; +} + +.p-6 { + padding: 3rem !important; +} + +.pt-6 { + padding-top: 3rem !important; +} + +.pr-6 { + padding-right: 3rem !important; +} + +.pb-6 { + padding-bottom: 3rem !important; +} + +.pl-6 { + padding-left: 3rem !important; +} + +.px-6 { + padding-left: 3rem !important; + padding-right: 3rem !important; +} + +.py-6 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; +} + +.p-auto { + padding: auto !important; +} + +.pt-auto { + padding-top: auto !important; +} + +.pr-auto { + padding-right: auto !important; +} + +.pb-auto { + padding-bottom: auto !important; +} + +.pl-auto { + padding-left: auto !important; +} + +.px-auto { + padding-left: auto !important; + padding-right: auto !important; +} + +.py-auto { + padding-top: auto !important; + padding-bottom: auto !important; +} + +.is-size-1 { + font-size: 3rem !important; +} + +.is-size-2 { + font-size: 2.5rem !important; +} + +.is-size-3 { + font-size: 2rem !important; +} + +.is-size-4 { + font-size: 1.5rem !important; +} + +.is-size-5 { + font-size: 1.25rem !important; +} + +.is-size-6 { + font-size: 1rem !important; +} + +.is-size-7 { + font-size: 0.75rem !important; +} + +@media screen and (max-width: 768px) { + .is-size-1-mobile { + font-size: 3rem !important; + } + .is-size-2-mobile { + font-size: 2.5rem !important; + } + .is-size-3-mobile { + font-size: 2rem !important; + } + .is-size-4-mobile { + font-size: 1.5rem !important; + } + .is-size-5-mobile { + font-size: 1.25rem !important; + } + .is-size-6-mobile { + font-size: 1rem !important; + } + .is-size-7-mobile { + font-size: 0.75rem !important; + } +} +@media screen and (min-width: 769px), print { + .is-size-1-tablet { + font-size: 3rem !important; + } + .is-size-2-tablet { + font-size: 2.5rem !important; + } + .is-size-3-tablet { + font-size: 2rem !important; + } + .is-size-4-tablet { + font-size: 1.5rem !important; + } + .is-size-5-tablet { + font-size: 1.25rem !important; + } + .is-size-6-tablet { + font-size: 1rem !important; + } + .is-size-7-tablet { + font-size: 0.75rem !important; + } +} +@media screen and (max-width: 1023px) { + .is-size-1-touch { + font-size: 3rem !important; + } + .is-size-2-touch { + font-size: 2.5rem !important; + } + .is-size-3-touch { + font-size: 2rem !important; + } + .is-size-4-touch { + font-size: 1.5rem !important; + } + .is-size-5-touch { + font-size: 1.25rem !important; + } + .is-size-6-touch { + font-size: 1rem !important; + } + .is-size-7-touch { + font-size: 0.75rem !important; + } +} +@media screen and (min-width: 1024px) { + .is-size-1-desktop { + font-size: 3rem !important; + } + .is-size-2-desktop { + font-size: 2.5rem !important; + } + .is-size-3-desktop { + font-size: 2rem !important; + } + .is-size-4-desktop { + font-size: 1.5rem !important; + } + .is-size-5-desktop { + font-size: 1.25rem !important; + } + .is-size-6-desktop { + font-size: 1rem !important; + } + .is-size-7-desktop { + font-size: 0.75rem !important; + } +} +@media screen and (min-width: 1216px) { + .is-size-1-widescreen { + font-size: 3rem !important; + } + .is-size-2-widescreen { + font-size: 2.5rem !important; + } + .is-size-3-widescreen { + font-size: 2rem !important; + } + .is-size-4-widescreen { + font-size: 1.5rem !important; + } + .is-size-5-widescreen { + font-size: 1.25rem !important; + } + .is-size-6-widescreen { + font-size: 1rem !important; + } + .is-size-7-widescreen { + font-size: 0.75rem !important; + } +} +@media screen and (min-width: 1408px) { + .is-size-1-fullhd { + font-size: 3rem !important; + } + .is-size-2-fullhd { + font-size: 2.5rem !important; + } + .is-size-3-fullhd { + font-size: 2rem !important; + } + .is-size-4-fullhd { + font-size: 1.5rem !important; + } + .is-size-5-fullhd { + font-size: 1.25rem !important; + } + .is-size-6-fullhd { + font-size: 1rem !important; + } + .is-size-7-fullhd { + font-size: 0.75rem !important; + } +} +.has-text-centered { + text-align: center !important; +} + +.has-text-justified { + text-align: justify !important; +} + +.has-text-left { + text-align: left !important; +} + +.has-text-right { + text-align: right !important; +} + +@media screen and (max-width: 768px) { + .has-text-centered-mobile { + text-align: center !important; + } +} +@media screen and (min-width: 769px), print { + .has-text-centered-tablet { + text-align: center !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .has-text-centered-tablet-only { + text-align: center !important; + } +} +@media screen and (max-width: 1023px) { + .has-text-centered-touch { + text-align: center !important; + } +} +@media screen and (min-width: 1024px) { + .has-text-centered-desktop { + text-align: center !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .has-text-centered-desktop-only { + text-align: center !important; + } +} +@media screen and (min-width: 1216px) { + .has-text-centered-widescreen { + text-align: center !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-centered-widescreen-only { + text-align: center !important; + } +} +@media screen and (min-width: 1408px) { + .has-text-centered-fullhd { + text-align: center !important; + } +} +@media screen and (max-width: 768px) { + .has-text-justified-mobile { + text-align: justify !important; + } +} +@media screen and (min-width: 769px), print { + .has-text-justified-tablet { + text-align: justify !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .has-text-justified-tablet-only { + text-align: justify !important; + } +} +@media screen and (max-width: 1023px) { + .has-text-justified-touch { + text-align: justify !important; + } +} +@media screen and (min-width: 1024px) { + .has-text-justified-desktop { + text-align: justify !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .has-text-justified-desktop-only { + text-align: justify !important; + } +} +@media screen and (min-width: 1216px) { + .has-text-justified-widescreen { + text-align: justify !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-justified-widescreen-only { + text-align: justify !important; + } +} +@media screen and (min-width: 1408px) { + .has-text-justified-fullhd { + text-align: justify !important; + } +} +@media screen and (max-width: 768px) { + .has-text-left-mobile { + text-align: left !important; + } +} +@media screen and (min-width: 769px), print { + .has-text-left-tablet { + text-align: left !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .has-text-left-tablet-only { + text-align: left !important; + } +} +@media screen and (max-width: 1023px) { + .has-text-left-touch { + text-align: left !important; + } +} +@media screen and (min-width: 1024px) { + .has-text-left-desktop { + text-align: left !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .has-text-left-desktop-only { + text-align: left !important; + } +} +@media screen and (min-width: 1216px) { + .has-text-left-widescreen { + text-align: left !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-left-widescreen-only { + text-align: left !important; + } +} +@media screen and (min-width: 1408px) { + .has-text-left-fullhd { + text-align: left !important; + } +} +@media screen and (max-width: 768px) { + .has-text-right-mobile { + text-align: right !important; + } +} +@media screen and (min-width: 769px), print { + .has-text-right-tablet { + text-align: right !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .has-text-right-tablet-only { + text-align: right !important; + } +} +@media screen and (max-width: 1023px) { + .has-text-right-touch { + text-align: right !important; + } +} +@media screen and (min-width: 1024px) { + .has-text-right-desktop { + text-align: right !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .has-text-right-desktop-only { + text-align: right !important; + } +} +@media screen and (min-width: 1216px) { + .has-text-right-widescreen { + text-align: right !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-right-widescreen-only { + text-align: right !important; + } +} +@media screen and (min-width: 1408px) { + .has-text-right-fullhd { + text-align: right !important; + } +} +.is-capitalized { + text-transform: capitalize !important; +} + +.is-lowercase { + text-transform: lowercase !important; +} + +.is-uppercase { + text-transform: uppercase !important; +} + +.is-italic { + font-style: italic !important; +} + +.is-underlined { + text-decoration: underline !important; +} + +.has-text-weight-light { + font-weight: 300 !important; +} + +.has-text-weight-normal { + font-weight: 400 !important; +} + +.has-text-weight-medium { + font-weight: 500 !important; +} + +.has-text-weight-semibold { + font-weight: 600 !important; +} + +.has-text-weight-bold { + font-weight: 700 !important; +} + +.is-family-primary { + font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; +} + +.is-family-secondary { + font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; +} + +.is-family-sans-serif { + font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; +} + +.is-family-monospace { + font-family: monospace !important; +} + +.is-family-code { + font-family: monospace !important; +} + +.is-block { + display: block !important; +} + +@media screen and (max-width: 768px) { + .is-block-mobile { + display: block !important; + } +} +@media screen and (min-width: 769px), print { + .is-block-tablet { + display: block !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-block-tablet-only { + display: block !important; + } +} +@media screen and (max-width: 1023px) { + .is-block-touch { + display: block !important; + } +} +@media screen and (min-width: 1024px) { + .is-block-desktop { + display: block !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-block-desktop-only { + display: block !important; + } +} +@media screen and (min-width: 1216px) { + .is-block-widescreen { + display: block !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-block-widescreen-only { + display: block !important; + } +} +@media screen and (min-width: 1408px) { + .is-block-fullhd { + display: block !important; + } +} +.is-flex { + display: flex !important; +} + +@media screen and (max-width: 768px) { + .is-flex-mobile { + display: flex !important; + } +} +@media screen and (min-width: 769px), print { + .is-flex-tablet { + display: flex !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-flex-tablet-only { + display: flex !important; + } +} +@media screen and (max-width: 1023px) { + .is-flex-touch { + display: flex !important; + } +} +@media screen and (min-width: 1024px) { + .is-flex-desktop { + display: flex !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-flex-desktop-only { + display: flex !important; + } +} +@media screen and (min-width: 1216px) { + .is-flex-widescreen { + display: flex !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-flex-widescreen-only { + display: flex !important; + } +} +@media screen and (min-width: 1408px) { + .is-flex-fullhd { + display: flex !important; + } +} +.is-inline { + display: inline !important; +} + +@media screen and (max-width: 768px) { + .is-inline-mobile { + display: inline !important; + } +} +@media screen and (min-width: 769px), print { + .is-inline-tablet { + display: inline !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-inline-tablet-only { + display: inline !important; + } +} +@media screen and (max-width: 1023px) { + .is-inline-touch { + display: inline !important; + } +} +@media screen and (min-width: 1024px) { + .is-inline-desktop { + display: inline !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-inline-desktop-only { + display: inline !important; + } +} +@media screen and (min-width: 1216px) { + .is-inline-widescreen { + display: inline !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-widescreen-only { + display: inline !important; + } +} +@media screen and (min-width: 1408px) { + .is-inline-fullhd { + display: inline !important; + } +} +.is-inline-block { + display: inline-block !important; +} + +@media screen and (max-width: 768px) { + .is-inline-block-mobile { + display: inline-block !important; + } +} +@media screen and (min-width: 769px), print { + .is-inline-block-tablet { + display: inline-block !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-inline-block-tablet-only { + display: inline-block !important; + } +} +@media screen and (max-width: 1023px) { + .is-inline-block-touch { + display: inline-block !important; + } +} +@media screen and (min-width: 1024px) { + .is-inline-block-desktop { + display: inline-block !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-inline-block-desktop-only { + display: inline-block !important; + } +} +@media screen and (min-width: 1216px) { + .is-inline-block-widescreen { + display: inline-block !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-block-widescreen-only { + display: inline-block !important; + } +} +@media screen and (min-width: 1408px) { + .is-inline-block-fullhd { + display: inline-block !important; + } +} +.is-inline-flex { + display: inline-flex !important; +} + +@media screen and (max-width: 768px) { + .is-inline-flex-mobile { + display: inline-flex !important; + } +} +@media screen and (min-width: 769px), print { + .is-inline-flex-tablet { + display: inline-flex !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-inline-flex-tablet-only { + display: inline-flex !important; + } +} +@media screen and (max-width: 1023px) { + .is-inline-flex-touch { + display: inline-flex !important; + } +} +@media screen and (min-width: 1024px) { + .is-inline-flex-desktop { + display: inline-flex !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-inline-flex-desktop-only { + display: inline-flex !important; + } +} +@media screen and (min-width: 1216px) { + .is-inline-flex-widescreen { + display: inline-flex !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-flex-widescreen-only { + display: inline-flex !important; + } +} +@media screen and (min-width: 1408px) { + .is-inline-flex-fullhd { + display: inline-flex !important; + } +} +.is-hidden { + display: none !important; +} + +.is-sr-only { + border: none !important; + clip: rect(0, 0, 0, 0) !important; + height: 0.01em !important; + overflow: hidden !important; + padding: 0 !important; + position: absolute !important; + white-space: nowrap !important; + width: 0.01em !important; +} + +@media screen and (max-width: 768px) { + .is-hidden-mobile { + display: none !important; + } +} +@media screen and (min-width: 769px), print { + .is-hidden-tablet { + display: none !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-hidden-tablet-only { + display: none !important; + } +} +@media screen and (max-width: 1023px) { + .is-hidden-touch { + display: none !important; + } +} +@media screen and (min-width: 1024px) { + .is-hidden-desktop { + display: none !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-hidden-desktop-only { + display: none !important; + } +} +@media screen and (min-width: 1216px) { + .is-hidden-widescreen { + display: none !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-hidden-widescreen-only { + display: none !important; + } +} +@media screen and (min-width: 1408px) { + .is-hidden-fullhd { + display: none !important; + } +} +.is-invisible { + visibility: hidden !important; +} + +@media screen and (max-width: 768px) { + .is-invisible-mobile { + visibility: hidden !important; + } +} +@media screen and (min-width: 769px), print { + .is-invisible-tablet { + visibility: hidden !important; + } +} +@media screen and (min-width: 769px) and (max-width: 1023px) { + .is-invisible-tablet-only { + visibility: hidden !important; + } +} +@media screen and (max-width: 1023px) { + .is-invisible-touch { + visibility: hidden !important; + } +} +@media screen and (min-width: 1024px) { + .is-invisible-desktop { + visibility: hidden !important; + } +} +@media screen and (min-width: 1024px) and (max-width: 1215px) { + .is-invisible-desktop-only { + visibility: hidden !important; + } +} +@media screen and (min-width: 1216px) { + .is-invisible-widescreen { + visibility: hidden !important; + } +} +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-invisible-widescreen-only { + visibility: hidden !important; + } +} +@media screen and (min-width: 1408px) { + .is-invisible-fullhd { + visibility: hidden !important; + } +} +/* Bulma Layout */ +.hero { + align-items: stretch; + display: flex; + flex-direction: column; + justify-content: space-between; +} +.hero .navbar { + background: none; +} +.hero .tabs ul { + border-bottom: none; +} +.hero.is-white { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-white strong { + color: inherit; +} +.hero.is-white .title { + color: hsl(0deg, 0%, 4%); +} +.hero.is-white .subtitle { + color: rgba(10, 10, 10, 0.9); +} +.hero.is-white .subtitle a:not(.button), +.hero.is-white .subtitle strong { + color: hsl(0deg, 0%, 4%); +} +@media screen and (max-width: 1023px) { + .hero.is-white .navbar-menu { + background-color: hsl(0deg, 0%, 100%); + } +} +.hero.is-white .navbar-item, +.hero.is-white .navbar-link { + color: rgba(10, 10, 10, 0.7); +} +.hero.is-white a.navbar-item:hover, .hero.is-white a.navbar-item.is-active, +.hero.is-white .navbar-link:hover, +.hero.is-white .navbar-link.is-active { + background-color: #f2f2f2; + color: hsl(0deg, 0%, 4%); +} +.hero.is-white .tabs a { + color: hsl(0deg, 0%, 4%); + opacity: 0.9; +} +.hero.is-white .tabs a:hover { + opacity: 1; +} +.hero.is-white .tabs li.is-active a { + color: hsl(0deg, 0%, 100%) !important; + opacity: 1; +} +.hero.is-white .tabs.is-boxed a, .hero.is-white .tabs.is-toggle a { + color: hsl(0deg, 0%, 4%); +} +.hero.is-white .tabs.is-boxed a:hover, .hero.is-white .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-white .tabs.is-boxed li.is-active a, .hero.is-white .tabs.is-boxed li.is-active a:hover, .hero.is-white .tabs.is-toggle li.is-active a, .hero.is-white .tabs.is-toggle li.is-active a:hover { + background-color: hsl(0deg, 0%, 4%); + border-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.hero.is-white.is-bold { + background-image: linear-gradient(141deg, #e8e3e4 0%, hsl(0deg, 0%, 100%) 71%, white 100%); +} +@media screen and (max-width: 768px) { + .hero.is-white.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #e8e3e4 0%, hsl(0deg, 0%, 100%) 71%, white 100%); + } +} +.hero.is-black { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-black strong { + color: inherit; +} +.hero.is-black .title { + color: hsl(0deg, 0%, 100%); +} +.hero.is-black .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-black .subtitle a:not(.button), +.hero.is-black .subtitle strong { + color: hsl(0deg, 0%, 100%); +} +@media screen and (max-width: 1023px) { + .hero.is-black .navbar-menu { + background-color: hsl(0deg, 0%, 4%); + } +} +.hero.is-black .navbar-item, +.hero.is-black .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-black a.navbar-item:hover, .hero.is-black a.navbar-item.is-active, +.hero.is-black .navbar-link:hover, +.hero.is-black .navbar-link.is-active { + background-color: black; + color: hsl(0deg, 0%, 100%); +} +.hero.is-black .tabs a { + color: hsl(0deg, 0%, 100%); + opacity: 0.9; +} +.hero.is-black .tabs a:hover { + opacity: 1; +} +.hero.is-black .tabs li.is-active a { + color: hsl(0deg, 0%, 4%) !important; + opacity: 1; +} +.hero.is-black .tabs.is-boxed a, .hero.is-black .tabs.is-toggle a { + color: hsl(0deg, 0%, 100%); +} +.hero.is-black .tabs.is-boxed a:hover, .hero.is-black .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-black .tabs.is-boxed li.is-active a, .hero.is-black .tabs.is-boxed li.is-active a:hover, .hero.is-black .tabs.is-toggle li.is-active a, .hero.is-black .tabs.is-toggle li.is-active a:hover { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.hero.is-black.is-bold { + background-image: linear-gradient(141deg, black 0%, hsl(0deg, 0%, 4%) 71%, #181616 100%); +} +@media screen and (max-width: 768px) { + .hero.is-black.is-bold .navbar-menu { + background-image: linear-gradient(141deg, black 0%, hsl(0deg, 0%, 4%) 71%, #181616 100%); + } +} +.hero.is-light { + background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-light strong { + color: inherit; +} +.hero.is-light .title { + color: rgba(0, 0, 0, 0.7); +} +.hero.is-light .subtitle { + color: rgba(0, 0, 0, 0.9); +} +.hero.is-light .subtitle a:not(.button), +.hero.is-light .subtitle strong { + color: rgba(0, 0, 0, 0.7); +} +@media screen and (max-width: 1023px) { + .hero.is-light .navbar-menu { + background-color: hsl(0deg, 0%, 96%); + } +} +.hero.is-light .navbar-item, +.hero.is-light .navbar-link { + color: rgba(0, 0, 0, 0.7); +} +.hero.is-light a.navbar-item:hover, .hero.is-light a.navbar-item.is-active, +.hero.is-light .navbar-link:hover, +.hero.is-light .navbar-link.is-active { + background-color: #e8e8e8; + color: rgba(0, 0, 0, 0.7); +} +.hero.is-light .tabs a { + color: rgba(0, 0, 0, 0.7); + opacity: 0.9; +} +.hero.is-light .tabs a:hover { + opacity: 1; +} +.hero.is-light .tabs li.is-active a { + color: hsl(0deg, 0%, 96%) !important; + opacity: 1; +} +.hero.is-light .tabs.is-boxed a, .hero.is-light .tabs.is-toggle a { + color: rgba(0, 0, 0, 0.7); +} +.hero.is-light .tabs.is-boxed a:hover, .hero.is-light .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-light .tabs.is-boxed li.is-active a, .hero.is-light .tabs.is-boxed li.is-active a:hover, .hero.is-light .tabs.is-toggle li.is-active a, .hero.is-light .tabs.is-toggle li.is-active a:hover { + background-color: rgba(0, 0, 0, 0.7); + border-color: rgba(0, 0, 0, 0.7); + color: hsl(0deg, 0%, 96%); +} +.hero.is-light.is-bold { + background-image: linear-gradient(141deg, #dfd8d9 0%, hsl(0deg, 0%, 96%) 71%, white 100%); +} +@media screen and (max-width: 768px) { + .hero.is-light.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #dfd8d9 0%, hsl(0deg, 0%, 96%) 71%, white 100%); + } +} +.hero.is-dark { + background-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-dark strong { + color: inherit; +} +.hero.is-dark .title { + color: #fff; +} +.hero.is-dark .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-dark .subtitle a:not(.button), +.hero.is-dark .subtitle strong { + color: #fff; +} +@media screen and (max-width: 1023px) { + .hero.is-dark .navbar-menu { + background-color: hsl(0deg, 0%, 21%); + } +} +.hero.is-dark .navbar-item, +.hero.is-dark .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-dark a.navbar-item:hover, .hero.is-dark a.navbar-item.is-active, +.hero.is-dark .navbar-link:hover, +.hero.is-dark .navbar-link.is-active { + background-color: #292929; + color: #fff; +} +.hero.is-dark .tabs a { + color: #fff; + opacity: 0.9; +} +.hero.is-dark .tabs a:hover { + opacity: 1; +} +.hero.is-dark .tabs li.is-active a { + color: hsl(0deg, 0%, 21%) !important; + opacity: 1; +} +.hero.is-dark .tabs.is-boxed a, .hero.is-dark .tabs.is-toggle a { + color: #fff; +} +.hero.is-dark .tabs.is-boxed a:hover, .hero.is-dark .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-dark .tabs.is-boxed li.is-active a, .hero.is-dark .tabs.is-boxed li.is-active a:hover, .hero.is-dark .tabs.is-toggle li.is-active a, .hero.is-dark .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: hsl(0deg, 0%, 21%); +} +.hero.is-dark.is-bold { + background-image: linear-gradient(141deg, #1f191a 0%, hsl(0deg, 0%, 21%) 71%, #46403f 100%); +} +@media screen and (max-width: 768px) { + .hero.is-dark.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #1f191a 0%, hsl(0deg, 0%, 21%) 71%, #46403f 100%); + } +} +.hero.is-primary { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-primary strong { + color: inherit; +} +.hero.is-primary .title { + color: #fff; +} +.hero.is-primary .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-primary .subtitle a:not(.button), +.hero.is-primary .subtitle strong { + color: #fff; +} +@media screen and (max-width: 1023px) { + .hero.is-primary .navbar-menu { + background-color: hsl(171deg, 100%, 41%); + } +} +.hero.is-primary .navbar-item, +.hero.is-primary .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-primary a.navbar-item:hover, .hero.is-primary a.navbar-item.is-active, +.hero.is-primary .navbar-link:hover, +.hero.is-primary .navbar-link.is-active { + background-color: #00b89c; + color: #fff; +} +.hero.is-primary .tabs a { + color: #fff; + opacity: 0.9; +} +.hero.is-primary .tabs a:hover { + opacity: 1; +} +.hero.is-primary .tabs li.is-active a { + color: hsl(171deg, 100%, 41%) !important; + opacity: 1; +} +.hero.is-primary .tabs.is-boxed a, .hero.is-primary .tabs.is-toggle a { + color: #fff; +} +.hero.is-primary .tabs.is-boxed a:hover, .hero.is-primary .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-primary .tabs.is-boxed li.is-active a, .hero.is-primary .tabs.is-boxed li.is-active a:hover, .hero.is-primary .tabs.is-toggle li.is-active a, .hero.is-primary .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: hsl(171deg, 100%, 41%); +} +.hero.is-primary.is-bold { + background-image: linear-gradient(141deg, #009e6c 0%, hsl(171deg, 100%, 41%) 71%, #00e7eb 100%); +} +@media screen and (max-width: 768px) { + .hero.is-primary.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #009e6c 0%, hsl(171deg, 100%, 41%) 71%, #00e7eb 100%); + } +} +.hero.is-link { + background-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-link strong { + color: inherit; +} +.hero.is-link .title { + color: #fff; +} +.hero.is-link .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-link .subtitle a:not(.button), +.hero.is-link .subtitle strong { + color: #fff; +} +@media screen and (max-width: 1023px) { + .hero.is-link .navbar-menu { + background-color: hsl(229deg, 53%, 53%); + } +} +.hero.is-link .navbar-item, +.hero.is-link .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-link a.navbar-item:hover, .hero.is-link a.navbar-item.is-active, +.hero.is-link .navbar-link:hover, +.hero.is-link .navbar-link.is-active { + background-color: #3a51bb; + color: #fff; +} +.hero.is-link .tabs a { + color: #fff; + opacity: 0.9; +} +.hero.is-link .tabs a:hover { + opacity: 1; +} +.hero.is-link .tabs li.is-active a { + color: hsl(229deg, 53%, 53%) !important; + opacity: 1; +} +.hero.is-link .tabs.is-boxed a, .hero.is-link .tabs.is-toggle a { + color: #fff; +} +.hero.is-link .tabs.is-boxed a:hover, .hero.is-link .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-link .tabs.is-boxed li.is-active a, .hero.is-link .tabs.is-boxed li.is-active a:hover, .hero.is-link .tabs.is-toggle li.is-active a, .hero.is-link .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: hsl(229deg, 53%, 53%); +} +.hero.is-link.is-bold { + background-image: linear-gradient(141deg, #2959b3 0%, hsl(229deg, 53%, 53%) 71%, #5658d2 100%); +} +@media screen and (max-width: 768px) { + .hero.is-link.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #2959b3 0%, hsl(229deg, 53%, 53%) 71%, #5658d2 100%); + } +} +.hero.is-info { + background-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-info strong { + color: inherit; +} +.hero.is-info .title { + color: #fff; +} +.hero.is-info .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-info .subtitle a:not(.button), +.hero.is-info .subtitle strong { + color: #fff; +} +@media screen and (max-width: 1023px) { + .hero.is-info .navbar-menu { + background-color: hsl(207deg, 61%, 53%); + } +} +.hero.is-info .navbar-item, +.hero.is-info .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-info a.navbar-item:hover, .hero.is-info a.navbar-item.is-active, +.hero.is-info .navbar-link:hover, +.hero.is-info .navbar-link.is-active { + background-color: #3082c5; + color: #fff; +} +.hero.is-info .tabs a { + color: #fff; + opacity: 0.9; +} +.hero.is-info .tabs a:hover { + opacity: 1; +} +.hero.is-info .tabs li.is-active a { + color: hsl(207deg, 61%, 53%) !important; + opacity: 1; +} +.hero.is-info .tabs.is-boxed a, .hero.is-info .tabs.is-toggle a { + color: #fff; +} +.hero.is-info .tabs.is-boxed a:hover, .hero.is-info .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-info .tabs.is-boxed li.is-active a, .hero.is-info .tabs.is-boxed li.is-active a:hover, .hero.is-info .tabs.is-toggle li.is-active a, .hero.is-info .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: hsl(207deg, 61%, 53%); +} +.hero.is-info.is-bold { + background-image: linear-gradient(141deg, #208fbc 0%, hsl(207deg, 61%, 53%) 71%, #4d83db 100%); +} +@media screen and (max-width: 768px) { + .hero.is-info.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #208fbc 0%, hsl(207deg, 61%, 53%) 71%, #4d83db 100%); + } +} +.hero.is-success { + background-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-success strong { + color: inherit; +} +.hero.is-success .title { + color: #fff; +} +.hero.is-success .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-success .subtitle a:not(.button), +.hero.is-success .subtitle strong { + color: #fff; +} +@media screen and (max-width: 1023px) { + .hero.is-success .navbar-menu { + background-color: hsl(153deg, 53%, 53%); + } +} +.hero.is-success .navbar-item, +.hero.is-success .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-success a.navbar-item:hover, .hero.is-success a.navbar-item.is-active, +.hero.is-success .navbar-link:hover, +.hero.is-success .navbar-link.is-active { + background-color: #3abb81; + color: #fff; +} +.hero.is-success .tabs a { + color: #fff; + opacity: 0.9; +} +.hero.is-success .tabs a:hover { + opacity: 1; +} +.hero.is-success .tabs li.is-active a { + color: hsl(153deg, 53%, 53%) !important; + opacity: 1; +} +.hero.is-success .tabs.is-boxed a, .hero.is-success .tabs.is-toggle a { + color: #fff; +} +.hero.is-success .tabs.is-boxed a:hover, .hero.is-success .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-success .tabs.is-boxed li.is-active a, .hero.is-success .tabs.is-boxed li.is-active a:hover, .hero.is-success .tabs.is-toggle li.is-active a, .hero.is-success .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: hsl(153deg, 53%, 53%); +} +.hero.is-success.is-bold { + background-image: linear-gradient(141deg, #29b35e 0%, hsl(153deg, 53%, 53%) 71%, #56d2af 100%); +} +@media screen and (max-width: 768px) { + .hero.is-success.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #29b35e 0%, hsl(153deg, 53%, 53%) 71%, #56d2af 100%); + } +} +.hero.is-warning { + background-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-warning strong { + color: inherit; +} +.hero.is-warning .title { + color: rgba(0, 0, 0, 0.7); +} +.hero.is-warning .subtitle { + color: rgba(0, 0, 0, 0.9); +} +.hero.is-warning .subtitle a:not(.button), +.hero.is-warning .subtitle strong { + color: rgba(0, 0, 0, 0.7); +} +@media screen and (max-width: 1023px) { + .hero.is-warning .navbar-menu { + background-color: hsl(44deg, 100%, 77%); + } +} +.hero.is-warning .navbar-item, +.hero.is-warning .navbar-link { + color: rgba(0, 0, 0, 0.7); +} +.hero.is-warning a.navbar-item:hover, .hero.is-warning a.navbar-item.is-active, +.hero.is-warning .navbar-link:hover, +.hero.is-warning .navbar-link.is-active { + background-color: #ffd970; + color: rgba(0, 0, 0, 0.7); +} +.hero.is-warning .tabs a { + color: rgba(0, 0, 0, 0.7); + opacity: 0.9; +} +.hero.is-warning .tabs a:hover { + opacity: 1; +} +.hero.is-warning .tabs li.is-active a { + color: hsl(44deg, 100%, 77%) !important; + opacity: 1; +} +.hero.is-warning .tabs.is-boxed a, .hero.is-warning .tabs.is-toggle a { + color: rgba(0, 0, 0, 0.7); +} +.hero.is-warning .tabs.is-boxed a:hover, .hero.is-warning .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-warning .tabs.is-boxed li.is-active a, .hero.is-warning .tabs.is-boxed li.is-active a:hover, .hero.is-warning .tabs.is-toggle li.is-active a, .hero.is-warning .tabs.is-toggle li.is-active a:hover { + background-color: rgba(0, 0, 0, 0.7); + border-color: rgba(0, 0, 0, 0.7); + color: hsl(44deg, 100%, 77%); +} +.hero.is-warning.is-bold { + background-image: linear-gradient(141deg, #ffb657 0%, hsl(44deg, 100%, 77%) 71%, #fff6a3 100%); +} +@media screen and (max-width: 768px) { + .hero.is-warning.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #ffb657 0%, hsl(44deg, 100%, 77%) 71%, #fff6a3 100%); + } +} +.hero.is-danger { + background-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), +.hero.is-danger strong { + color: inherit; +} +.hero.is-danger .title { + color: #fff; +} +.hero.is-danger .subtitle { + color: rgba(255, 255, 255, 0.9); +} +.hero.is-danger .subtitle a:not(.button), +.hero.is-danger .subtitle strong { + color: #fff; +} +@media screen and (max-width: 1023px) { + .hero.is-danger .navbar-menu { + background-color: hsl(348deg, 86%, 61%); + } +} +.hero.is-danger .navbar-item, +.hero.is-danger .navbar-link { + color: rgba(255, 255, 255, 0.7); +} +.hero.is-danger a.navbar-item:hover, .hero.is-danger a.navbar-item.is-active, +.hero.is-danger .navbar-link:hover, +.hero.is-danger .navbar-link.is-active { + background-color: #ef2e55; + color: #fff; +} +.hero.is-danger .tabs a { + color: #fff; + opacity: 0.9; +} +.hero.is-danger .tabs a:hover { + opacity: 1; +} +.hero.is-danger .tabs li.is-active a { + color: hsl(348deg, 86%, 61%) !important; + opacity: 1; +} +.hero.is-danger .tabs.is-boxed a, .hero.is-danger .tabs.is-toggle a { + color: #fff; +} +.hero.is-danger .tabs.is-boxed a:hover, .hero.is-danger .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); +} +.hero.is-danger .tabs.is-boxed li.is-active a, .hero.is-danger .tabs.is-boxed li.is-active a:hover, .hero.is-danger .tabs.is-toggle li.is-active a, .hero.is-danger .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: hsl(348deg, 86%, 61%); +} +.hero.is-danger.is-bold { + background-image: linear-gradient(141deg, #fa0a62 0%, hsl(348deg, 86%, 61%) 71%, #f7595f 100%); +} +@media screen and (max-width: 768px) { + .hero.is-danger.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #fa0a62 0%, hsl(348deg, 86%, 61%) 71%, #f7595f 100%); + } +} +.hero.is-small .hero-body { + padding: 1.5rem; +} +@media screen and (min-width: 769px), print { + .hero.is-medium .hero-body { + padding: 9rem 4.5rem; + } +} +@media screen and (min-width: 769px), print { + .hero.is-large .hero-body { + padding: 18rem 6rem; + } +} +.hero.is-halfheight .hero-body, .hero.is-fullheight .hero-body, .hero.is-fullheight-with-navbar .hero-body { + align-items: center; + display: flex; +} +.hero.is-halfheight .hero-body > .container, .hero.is-fullheight .hero-body > .container, .hero.is-fullheight-with-navbar .hero-body > .container { + flex-grow: 1; + flex-shrink: 1; +} +.hero.is-halfheight { + min-height: 50vh; +} +.hero.is-fullheight { + min-height: 100vh; +} + +.hero-video { + overflow: hidden; +} +.hero-video video { + left: 50%; + min-height: 100%; + min-width: 100%; + position: absolute; + top: 50%; + transform: translate3d(-50%, -50%, 0); +} +.hero-video.is-transparent { + opacity: 0.3; +} +@media screen and (max-width: 768px) { + .hero-video { + display: none; + } +} + +.hero-buttons { + margin-top: 1.5rem; +} +@media screen and (max-width: 768px) { + .hero-buttons .button { + display: flex; + } + .hero-buttons .button:not(:last-child) { + margin-bottom: 0.75rem; + } +} +@media screen and (min-width: 769px), print { + .hero-buttons { + display: flex; + justify-content: center; + } + .hero-buttons .button:not(:last-child) { + margin-right: 1.5rem; + } +} + +.hero-head, +.hero-foot { + flex-grow: 0; + flex-shrink: 0; +} + +.hero-body { + flex-grow: 1; + flex-shrink: 0; + padding: 3rem 1.5rem; +} +@media screen and (min-width: 769px), print { + .hero-body { + padding: 3rem 3rem; + } +} + +.section { + padding: 3rem 1.5rem; +} +@media screen and (min-width: 1024px) { + .section { + padding: 3rem 3rem; + } + .section.is-medium { + padding: 9rem 4.5rem; + } + .section.is-large { + padding: 18rem 6rem; + } +} + +.footer { + background-color: hsl(0deg, 0%, 98%); + padding: 3rem 1.5rem 6rem; +} + +.box { + background-color: hsl(0deg, 0%, 100%); + border-radius: 6px; + box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02); + color: hsl(0deg, 0%, 29%); + display: block; + padding: 1.25rem; +} + +a.box:hover, a.box:focus { + box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0 0 1px hsl(229deg, 53%, 53%); +} +a.box:active { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px hsl(229deg, 53%, 53%); +} + +.container { + flex-grow: 1; + margin: 0 auto; + position: relative; + width: auto; +} +.container.is-fluid { + max-width: none !important; + padding-left: 32px; + padding-right: 32px; + width: 100%; +} +@media screen and (min-width: 1024px) { + .container { + max-width: 960px; + } +} +@media screen and (max-width: 1215px) { + .container.is-widescreen:not(.is-max-desktop) { + max-width: 1152px; + } +} +@media screen and (max-width: 1407px) { + .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen) { + max-width: 1344px; + } +} +@media screen and (min-width: 1216px) { + .container:not(.is-max-desktop) { + max-width: 1152px; + } +} +@media screen and (min-width: 1408px) { + .container:not(.is-max-desktop):not(.is-max-widescreen) { + max-width: 1344px; + } +} + +.icon { + align-items: center; + display: inline-flex; + justify-content: center; + height: 1.5rem; + width: 1.5rem; +} +.icon.is-small { + height: 1rem; + width: 1rem; +} +.icon.is-medium { + height: 2rem; + width: 2rem; +} +.icon.is-large { + height: 3rem; + width: 3rem; +} + +.icon-text { + align-items: flex-start; + color: inherit; + display: inline-flex; + flex-wrap: wrap; + line-height: 1.5rem; + vertical-align: top; +} +.icon-text .icon { + flex-grow: 0; + flex-shrink: 0; +} +.icon-text .icon:not(:last-child) { + margin-right: 0.25em; +} +.icon-text .icon:not(:first-child) { + margin-left: 0.25em; +} + +div.icon-text { + display: flex; +} + +.table { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 21%); +} +.table td, +.table th { + border: 1px solid hsl(0deg, 0%, 86%); + border-width: 0 0 1px; + padding: 0.5em 0.75em; + vertical-align: top; +} +.table td.is-white, +.table th.is-white { + background-color: hsl(0deg, 0%, 100%); + border-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.table td.is-black, +.table th.is-black { + background-color: hsl(0deg, 0%, 4%); + border-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.table td.is-light, +.table th.is-light { + background-color: hsl(0deg, 0%, 96%); + border-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.table td.is-dark, +.table th.is-dark { + background-color: hsl(0deg, 0%, 21%); + border-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.table td.is-primary, +.table th.is-primary { + background-color: hsl(171deg, 100%, 41%); + border-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.table td.is-link, +.table th.is-link { + background-color: hsl(229deg, 53%, 53%); + border-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.table td.is-info, +.table th.is-info { + background-color: hsl(207deg, 61%, 53%); + border-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.table td.is-success, +.table th.is-success { + background-color: hsl(153deg, 53%, 53%); + border-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.table td.is-warning, +.table th.is-warning { + background-color: hsl(44deg, 100%, 77%); + border-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.table td.is-danger, +.table th.is-danger { + background-color: hsl(348deg, 86%, 61%); + border-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.table td.is-narrow, +.table th.is-narrow { + white-space: nowrap; + width: 1%; +} +.table td.is-selected, +.table th.is-selected { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.table td.is-selected a, +.table td.is-selected strong, +.table th.is-selected a, +.table th.is-selected strong { + color: currentColor; +} +.table td.is-vcentered, +.table th.is-vcentered { + vertical-align: middle; +} +.table th { + color: hsl(0deg, 0%, 21%); +} +.table th:not([align]) { + text-align: left; +} +.table tr.is-selected { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.table tr.is-selected a, +.table tr.is-selected strong { + color: currentColor; +} +.table tr.is-selected td, +.table tr.is-selected th { + border-color: #fff; + color: currentColor; +} +.table thead { + background-color: transparent; +} +.table thead td, +.table thead th { + border-width: 0 0 2px; + color: hsl(0deg, 0%, 21%); +} +.table tfoot { + background-color: transparent; +} +.table tfoot td, +.table tfoot th { + border-width: 2px 0 0; + color: hsl(0deg, 0%, 21%); +} +.table tbody { + background-color: transparent; +} +.table tbody tr:last-child td, +.table tbody tr:last-child th { + border-bottom-width: 0; +} +.table.is-bordered td, +.table.is-bordered th { + border-width: 1px; +} +.table.is-bordered tr:last-child td, +.table.is-bordered tr:last-child th { + border-bottom-width: 1px; +} +.table.is-fullwidth { + width: 100%; +} +.table.is-hoverable tbody tr:not(.is-selected):hover { + background-color: hsl(0deg, 0%, 98%); +} +.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover { + background-color: hsl(0deg, 0%, 98%); +} +.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) { + background-color: hsl(0deg, 0%, 96%); +} +.table.is-narrow td, +.table.is-narrow th { + padding: 0.25em 0.5em; +} +.table.is-striped tbody tr:not(.is-selected):nth-child(even) { + background-color: hsl(0deg, 0%, 98%); +} + +.table-container { + -webkit-overflow-scrolling: touch; + overflow: auto; + overflow-y: hidden; + max-width: 100%; +} + +.tags { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} +.tags .tag { + margin-bottom: 0.5rem; +} +.tags .tag:not(:last-child) { + margin-right: 0.5rem; +} +.tags:last-child { + margin-bottom: -0.5rem; +} +.tags:not(:last-child) { + margin-bottom: 1rem; +} +.tags.are-medium .tag:not(.is-normal):not(.is-large) { + font-size: 1rem; +} +.tags.are-large .tag:not(.is-normal):not(.is-medium) { + font-size: 1.25rem; +} +.tags.is-centered { + justify-content: center; +} +.tags.is-centered .tag { + margin-right: 0.25rem; + margin-left: 0.25rem; +} +.tags.is-right { + justify-content: flex-end; +} +.tags.is-right .tag:not(:first-child) { + margin-left: 0.5rem; +} +.tags.is-right .tag:not(:last-child) { + margin-right: 0; +} +.tags.has-addons .tag { + margin-right: 0; +} +.tags.has-addons .tag:not(:first-child) { + margin-left: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.tags.has-addons .tag:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.tag:not(body) { + align-items: center; + background-color: hsl(0deg, 0%, 96%); + border-radius: 4px; + color: hsl(0deg, 0%, 29%); + display: inline-flex; + font-size: 0.75rem; + height: 2em; + justify-content: center; + line-height: 1.5; + padding-left: 0.75em; + padding-right: 0.75em; + white-space: nowrap; +} +.tag:not(body) .delete { + margin-left: 0.25rem; + margin-right: -0.375rem; +} +.tag:not(body).is-white { + background-color: hsl(0deg, 0%, 100%); + color: hsl(0deg, 0%, 4%); +} +.tag:not(body).is-black { + background-color: hsl(0deg, 0%, 4%); + color: hsl(0deg, 0%, 100%); +} +.tag:not(body).is-light { + background-color: hsl(0deg, 0%, 96%); + color: rgba(0, 0, 0, 0.7); +} +.tag:not(body).is-dark { + background-color: hsl(0deg, 0%, 21%); + color: #fff; +} +.tag:not(body).is-primary { + background-color: hsl(171deg, 100%, 41%); + color: #fff; +} +.tag:not(body).is-primary.is-light { + background-color: #ebfffc; + color: #00947e; +} +.tag:not(body).is-link { + background-color: hsl(229deg, 53%, 53%); + color: #fff; +} +.tag:not(body).is-link.is-light { + background-color: #eff1fa; + color: #3850b7; +} +.tag:not(body).is-info { + background-color: hsl(207deg, 61%, 53%); + color: #fff; +} +.tag:not(body).is-info.is-light { + background-color: #eff5fb; + color: #296fa8; +} +.tag:not(body).is-success { + background-color: hsl(153deg, 53%, 53%); + color: #fff; +} +.tag:not(body).is-success.is-light { + background-color: #effaf5; + color: #257953; +} +.tag:not(body).is-warning { + background-color: hsl(44deg, 100%, 77%); + color: rgba(0, 0, 0, 0.7); +} +.tag:not(body).is-warning.is-light { + background-color: #fffaeb; + color: #946c00; +} +.tag:not(body).is-danger { + background-color: hsl(348deg, 86%, 61%); + color: #fff; +} +.tag:not(body).is-danger.is-light { + background-color: #feecf0; + color: #cc0f35; +} +.tag:not(body).is-normal { + font-size: 0.75rem; +} +.tag:not(body).is-medium { + font-size: 1rem; +} +.tag:not(body).is-large { + font-size: 1.25rem; +} +.tag:not(body) .icon:first-child:not(:last-child) { + margin-left: -0.375em; + margin-right: 0.1875em; +} +.tag:not(body) .icon:last-child:not(:first-child) { + margin-left: 0.1875em; + margin-right: -0.375em; +} +.tag:not(body) .icon:first-child:last-child { + margin-left: -0.375em; + margin-right: -0.375em; +} +.tag:not(body).is-delete { + margin-left: 1px; + padding: 0; + position: relative; + width: 2em; +} +.tag:not(body).is-delete::before, .tag:not(body).is-delete::after { + background-color: currentColor; + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; +} +.tag:not(body).is-delete::before { + height: 1px; + width: 50%; +} +.tag:not(body).is-delete::after { + height: 50%; + width: 1px; +} +.tag:not(body).is-delete:hover, .tag:not(body).is-delete:focus { + background-color: #e8e8e8; +} +.tag:not(body).is-delete:active { + background-color: #dbdbdb; +} +.tag:not(body).is-rounded { + border-radius: 9999px; +} + +a.tag:hover { + text-decoration: underline; +} + +.page { + padding-bottom: 5rem; +} +.page a { + color: var(--link-fg); + text-decoration: underline; +} +.page a:hover { + color: var(--link-hv-fg); +} +.page section.container { + margin-top: 0.6rem; + margin-bottom: 1.2rem; +} +.page section.container:not(:last-child) { + padding-bottom: 0.6rem; + border-bottom: 2px var(--break-color) solid; +} +.page section.container > .title { + font-size: var(--title-2-sz); + clear: both; + margin: 0.6rem 0; +} +.page *[data-oembed-url] { + clear: both; +} + +.dropdown-item { + font-size: unset !important; +} + +.vc-weekday-1, .vc-weekday-7 { + color: var(--secondary-color) !important; +} + +.schedules { + padding-top: 0; + margin-bottom: -0.6rem !important; +} + +.schedule { + display: inline-block; + margin: 0.6rem; + margin-left: 0rem; + padding: 0.4rem; + border-bottom: 1px var(--main-color) solid; +} +.schedule .heading { + padding: 0em; +} +.schedule .day { + font-weight: 700; + margin-right: 0.6rem; +} + +.button, a.button, button.button { + font-size: 1rem; + display: inline-block; + padding: 0.4rem; + border: none; + justify-content: center; + text-align: center; + cursor: pointer; + text-decoration: none; + color: var(--button-fg); + background-color: var(--button-bg); +} +.button.secondary, a.button.secondary, button.button.secondary { + background-color: var(--button-sec-bg); +} +.button .label, .button label, a.button .label, a.button label, button.button .label, button.button label { + cursor: pointer; +} +.button .icon, a.button .icon, button.button .icon { + vertical-align: middle; +} +.button .icon:not(:only-child):first-child, a.button .icon:not(:only-child):first-child, button.button .icon:not(:only-child):first-child { + margin-right: 0.6rem; +} +.button .icon:not(:only-child):last-child, a.button .icon:not(:only-child):last-child, button.button .icon:not(:only-child):last-child { + margin-left: 0.6rem; +} +.button:hover, a.button:hover, button.button:hover { + color: var(--button-hv-fg); + background-color: var(--button-hv-bg); + opacity: 1 !important; +} +.button.active:not(:hover), a.button.active:not(:hover), button.button.active:not(:hover) { + color: var(--button-active-fg); + background-color: var(--button-active-bg); +} +.button:not([disabled]), .button:not(.disabled), a.button:not([disabled]), a.button:not(.disabled), button.button:not([disabled]), button.button:not(.disabled) { + cursor: pointer; +} +.button[disabled], .button.disabled, a.button[disabled], a.button.disabled, button.button[disabled], button.button.disabled { + background-color: var(--text-color-light); + color: var(--secondary-color); + border-color: var(--secondary-color-light); +} +.button .dropdown-trigger, a.button .dropdown-trigger, button.button .dropdown-trigger { + border-radius: 1.5em; +} + +.button-group .button, .nav .button { + border-radius: 0px; + background-color: transparent; + border-top: 0px; + border-bottom: 0px; + height: 100%; +} +.button-group .button:not(:first-child), .nav .button:not(:first-child) { + border-left: 0px; +} +.button-group .button:last-child, .nav .button:last-child { + border-right: 0px; +} + +.actions { + display: flex; + flex-direction: row; + gap: 0.6rem; + justify-content: right; +} +.actions.no-label label { + display: none; +} +.actions button, .actions .action, .actions a { + justify-content: center; + min-width: 2rem; + padding: 0.4rem; +} +.actions button .not-selected, .actions .action .not-selected, .actions a .not-selected { + opacity: 0.6; +} +.actions button .icon, .actions .action .icon, .actions a .icon { + margin: 0em !important; +} +.actions button label, .actions .action label, .actions a label { + margin-left: 0.4rem; +} + +.label, .textarea, .input, .select { + font-size: 1rem; +} + +.field.is-horizontal { + display: flex; + flex-direction: horizontal; +} +.field.is-horizontal .label { + min-width: 7rem; +} +.field.is-horizontal .control { + flex: 1; +} +.field.is-horizontal .control > * { + width: 100%; +} + +@media screen and (min-width: 600px) { + textarea { + height: 7rem !important; + } +} +.navbar-item.active, .table tr.is-selected { + color: var(--secondary-color); + background-color: var(--main-color); +} + +.title { + text-transform: uppercase; +} +.title.is-3 { + margin-top: 0.6rem; +} + +.navs { + position: relative; +} + +.nav { + display: flex; + background-color: var(--nav-bg); +} +.nav:empty { + display: none; +} +.nav .burger { + display: none; + background-color: var(--nav-bg); +} +.nav .nav-item { + padding: 0.4rem; + flex-grow: 1; + flex-shrink: 1; + text-align: center; + font-family: var(--heading-font-family); + text-transform: uppercase; + color: var(--nav-fg) !important; +} +.nav .nav-item .icon:first-child, .nav .nav-item .icon + span { + text-align: center; + vertical-align: top; + display: inline-block; +} +.nav .nav-item:hover { + background-color: var(--nav-hv-bg); + color: var(--nav-hv-fg); +} +.nav .nav-item.active { + background-color: var(--nav-active-bg); + color: var(--nav-active-fg) !important; +} +.nav .nav-menu { + display: flex; + flex-grow: 1; +} +.nav .nav-menu .dropdown-content { + font-size: 1rem; + min-width: 15rem; +} +.nav.primary { + height: var(--nav-primary-height); +} +.nav.primary .nav-menu { + flex-grow: 1; +} +.nav.primary .nav-brand { + display: inline-block; + padding: 0.6rem; + flex-grow: 0; + flex-shrink: 1; +} +.nav.primary .nav-brand img { + height: 100%; +} +.nav.primary .nav-item { + font-size: var(--nav-fs); + font-weight: 700; + white-space: nowrap; +} +.nav.secondary { + background-color: var(--nav-secondary-bg); + justify-content: right; +} +.nav.primary:hover + .nav.secondary, .nav.secondary:hover { + display: flex; + top: var(--nav-primary-height); + left: 0rem; +} +.nav.secondary .nav-item { + font-size: var(--nav-2-fs); +} + +.breadcrumbs { + text-align: right; + padding: 0.6rem 0rem; + font-size: 0.8rem; + padding-bottom: 0; + margin-bottom: 0; +} +.breadcrumbs:empty { + display: none; +} +.breadcrumbs a + a { + padding-left: 0; +} +.breadcrumbs a + a:before { + content: "/"; + margin: 0 0.4rem; +} + +@media screen and (max-width: 1024px) { + .page { + margin-top: var(--nav-primary-height); + } + .navs { + z-index: 100000; + position: fixed; + display: flex; + left: 0; + right: 0; + top: 0; + } + .navs .nav:first-child { + flex-grow: 1; + } + .navs .nav + .nav { + flex-grow: 0 !important; + } + .nav { + justify-content: space-between; + } + .nav .burger { + display: unset; + margin-left: auto; + } + .nav .nav-menu { + display: block; + position: absolute; + background-color: var(--nav-secondary-bg); + left: 0; + top: 100%; + width: 100%; + box-shadow: 0em 0.5em 0.5em rgba(0, 0, 0, 0.05); + } + .nav .nav-menu .nav-item { + display: block; + font-weight: 400; + font-size: var(--nav-fs); + } + .nav .nav-menu:not(.active) { + display: none !important; + } +} +nav li { + list-style: none; +} +nav li a, nav li .button { + font-size: 1.4rem; +} + +.nav-urls { + display: flex; + flex-direction: row; + margin-top: 0.6rem; + text-align: right; +} +.nav-urls > a:only-child { + margin-left: auto; +} +.nav-urls li { + list-style: none; +} +.nav-urls .urls { + flex-grow: 1; + display: flex; + flex-direction: row; + gap: 0.6rem; + justify-content: center; +} +.nav-urls .urls a:not(:last-child) { + margin-right: 0.6rem; +} +.nav-urls .left { + flex-grow: 0; + text-align: left; +} +.nav-urls .right { + flex-grow: 0; + text-align: right; +} + +.header.preview-header { + align-items: start; + gap: 0.6rem; + min-height: unset; + padding-top: 0.6rem !important; +} +.header .headings { + width: unset; + flex-grow: 1; + padding-top: 0 !important; + display: flex; + flex-direction: column; +} +.header.has-cover { + min-height: calc(var(--header-height) / 3); +} + +.header-cover:not(:only-child) { + float: right; + position: relative; + z-index: 1000; + background-color: var(--body-bg); + margin: 0 0 1.2rem 1.2rem; +} +.header-cover:not(:only-child) .cover { + max-width: calc(var(--header-height) * 2); + height: var(--header-height); +} + +.header-cover:only-child { + with: 100%; +} + +@media screen and (max-width: 600px) { + .container.header { + width: calc(100% - 0.4rem); + } + .container.header .headings { + width: 100%; + clear: both; + } + .container.header .header-cover { + float: none; + margin: 0; + text-align: center; + } + .container.header .cover { + margin-left: auto; + margin-right: auto; + max-height: calc(var(--cover-h) * 1); + max-width: calc(var(--cover-w) * 2); + } +} +.page-content { + margin-top: 2rem; +} +.page-content:not(:last-child) { + margin-bottom: 2rem; +} + +.list-item.logs .track { + margin-right: 0.6rem; +} +.list-item.logs .track .icon { + margin-right: 0.4rem; + color: var(--secondary-color-dark); +} +.list-item:nth-child(3n):not(.wide) .media { + border-color: var(--main-color-dark) !important; +} +.list-item:nth-child(3n+1):not(.wide) .media { + border-color: var(--secondary-color-dark) !important; +} + +@media screen and (max-width: 1024px) { + .page .container { + margin-left: 1.2rem; + margin-right: 1.2rem; + } +} +@media screen and (max-width: 600px) { + .page .container { + margin-left: 0.4rem; + margin-right: 0.4rem; + } +} diff --git a/aircox/static/aircox/js/admin.js b/aircox/static/aircox/js/admin.js index 93c61c8..5e0d398 100644 --- a/aircox/static/aircox/js/admin.js +++ b/aircox/static/aircox/js/admin.js @@ -16,7 +16,7 @@ \**********************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _assets_styles_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./assets/styles.scss */ \"./src/assets/styles.scss\");\n/* harmony import */ var _assets_admin_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assets/admin.scss */ \"./src/assets/admin.scss\");\n/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.js */ \"./src/index.js\");\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./app */ \"./src/app.js\");\n/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components */ \"./src/components/index.js\");\n/* harmony import */ var _track__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./track */ \"./src/track.js\");\n\n\n\n\n\n\nconst AdminApp = {\n ..._app__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n components: {\n ..._app__WEBPACK_IMPORTED_MODULE_3__[\"default\"].components,\n ..._components__WEBPACK_IMPORTED_MODULE_4__.admin\n },\n data() {\n return {\n ...super.data,\n Track: _track__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n };\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (AdminApp);\nwindow.App = AdminApp;\n\n//# sourceURL=webpack://aircox-assets/./src/admin.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _assets_admin_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./assets/admin.scss */ \"./src/assets/admin.scss\");\n/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.js */ \"./src/index.js\");\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app */ \"./src/app.js\");\n/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components */ \"./src/components/index.js\");\n/* harmony import */ var _track__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./track */ \"./src/track.js\");\n\n\n\n\n\nconst AdminApp = {\n ..._app__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n components: {\n ..._app__WEBPACK_IMPORTED_MODULE_2__[\"default\"].components,\n ..._components__WEBPACK_IMPORTED_MODULE_3__.admin\n },\n data() {\n return {\n ...super.data,\n Track: _track__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n };\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (AdminApp);\nwindow.App = AdminApp;\n\n//# sourceURL=webpack://aircox-assets/./src/admin.js?"); /***/ }), diff --git a/aircox/static/aircox/js/chunk-common.js b/aircox/static/aircox/js/chunk-common.js index 66de28d..4abb345 100644 --- a/aircox/static/aircox/js/chunk-common.js +++ b/aircox/static/aircox/js/chunk-common.js @@ -29,6 +29,26 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _mod /***/ }), +/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=script&lang=js": +/*!*******************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=script&lang=js ***! + \*******************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\n\nclass Offset {\n constructor(el, min = null, max = null) {\n this.el = el;\n this.rect = el.getBoundingClientRect();\n ({\n min,\n max\n } = this.minmax(min, max));\n this.min = min;\n this.max = max;\n this.size = max - min;\n }\n minmax(min = null, max = null) {\n min = min === null ? this.rect.left : min;\n max = max === null ? this.rect.right : max;\n return {\n min,\n max\n };\n }\n relative(to) {\n return new Offset(this.el, this.min - to.min, this.max - to.min);\n }\n}\nclass Card extends Offset {\n constructor(el, index) {\n super(el);\n this.index = index;\n }\n visible(viewportOffset) {\n return viewportOffset.min <= this.min && viewportOffset.max >= this.max;\n }\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n setup() {\n return {\n viewport: (0,vue__WEBPACK_IMPORTED_MODULE_1__.ref)(null),\n container: (0,vue__WEBPACK_IMPORTED_MODULE_1__.ref)(null)\n };\n },\n data() {\n return {\n cards: [],\n index: 0,\n refresh_: 0\n };\n },\n props: {\n cardSelector: {\n type: String,\n default: ''\n },\n containerClass: {\n type: String,\n default: ''\n },\n buttonClass: {\n type: String,\n default: 'button'\n },\n leftButtonIcon: {\n type: String,\n default: \"fas fa-chevron-left\"\n },\n rightButtonIcon: {\n type: String,\n default: \"fas fa-chevron-right\"\n }\n },\n computed: {\n card() {\n return this.cards()[this.index];\n },\n showPrev() {\n return this.index > 0;\n },\n showNext() {\n if (!this.cards || this.cards.length <= 1) return false;\n let last = this.bullets[this.bullets.length - 1];\n return this.index != last;\n },\n bullets() {\n if (!this.cards || !this.$refs.viewport) return [];\n let contOff = new Offset(this.$refs.container);\n let viewMax = new Offset(this.$refs.viewport).size;\n let bullets = [];\n let i = 0;\n let max = viewMax;\n bullets.push(i);\n while (i < this.cards.length) {\n // skip until next view\n for (; i < this.cards.length; i++) {\n let card = this.cards[i].relative(contOff);\n if (card.max > max) {\n max = card.min + viewMax;\n bullets.push(i);\n i++;\n break;\n }\n }\n }\n return bullets;\n }\n },\n methods: {\n getCards() {\n if (!this.$refs.container) return [];\n let nodes = !this.cardSelector ? [...this.$refs.container.children] : [...this.$refs.container.querySelectorAll(this.cardSelector)];\n return nodes.map((el, index) => new Card(el, index));\n },\n select(index, relative = false) {\n if (relative) index = this.index + index;\n index = Math.min(index, this.cards.length);\n index = Math.max(index, 0);\n let card = this.cards[index];\n if (!card) return null;\n card = new Card(card.el);\n const cont = new Offset(this.$refs.container);\n const rel = card.relative(cont);\n this.$refs.container.style.marginLeft = `-${rel.min}px`;\n this.index = index;\n return card.el;\n },\n next() {\n let n = this.bullets.indexOf(this.index);\n let index = this.bullets[n + 1];\n this.select(index);\n },\n prev() {\n let n = this.bullets.indexOf(this.index);\n let index = this.bullets[n - 1];\n this.select(index);\n },\n refresh() {\n this.cards = this.getCards();\n this.select(this.index);\n this.refresh_++;\n }\n },\n mounted() {\n this.observers = [new MutationObserver(() => this.refresh()), new ResizeObserver(() => this.refresh())];\n this.observers[0].observe(this.$refs.container, {\n \"childList\": true\n });\n this.observers[1].observe(this.$refs.container);\n this.refresh();\n },\n unmounted() {\n for (var observer of this.observers) observer.disconnect();\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ADropdown.vue?vue&type=script&lang=js": +/*!*******************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ADropdown.vue?vue&type=script&lang=js ***! + \*******************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n data() {\n return {\n active: this.open\n };\n },\n props: {\n tag: {\n type: String,\n default: \"div\"\n },\n label: {\n type: String,\n default: \"\"\n },\n labelIcon: {\n type: String,\n default: \"\"\n },\n buttonTag: {\n type: String,\n default: \"button\"\n },\n activeClass: {\n type: String,\n default: \"is-active\"\n },\n buttonClass: {\n type: String,\n default: \"button\"\n },\n buttonIcon: {\n type: String,\n default: \"fa fa-angle-down\"\n },\n buttonIconClose: {\n type: String,\n default: \"fa fa-angle-up\"\n },\n contentClass: String,\n open: {\n type: Boolean,\n default: false\n },\n noButton: {\n type: Boolean,\n default: false\n }\n },\n methods: {\n toggle() {\n this.active = !this.active;\n }\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/ADropdown.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AEpisode.vue?vue&type=script&lang=js": /*!******************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AEpisode.vue?vue&type=script&lang=js ***! @@ -65,7 +85,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ \*****************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"State\": function() { return /* binding */ State; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n/* harmony import */ var _live__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../live */ \"./src/live.js\");\n/* harmony import */ var _sound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../sound */ \"./src/sound.js\");\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../model */ \"./src/model.js\");\n/* harmony import */ var _APlaylist__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./APlaylist */ \"./src/components/APlaylist.vue\");\n/* harmony import */ var _AProgress__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AProgress */ \"./src/components/AProgress.vue\");\n\n\n\n\n\n\n\nconst State = {\n paused: 0,\n playing: 1,\n loading: 2\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n APlaylist: _APlaylist__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n AProgress: _AProgress__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n },\n data() {\n let audio = new Audio();\n audio.addEventListener('ended', e => this.onState(e));\n audio.addEventListener('pause', e => this.onState(e));\n audio.addEventListener('playing', e => this.onState(e));\n audio.addEventListener('timeupdate', () => {\n this.currentTime = this.audio.currentTime;\n });\n audio.addEventListener('durationchange', () => {\n this.duration = Number.isFinite(this.audio.duration) ? this.audio.duration : null;\n });\n let live = this.liveArgs ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.reactive)(new _live__WEBPACK_IMPORTED_MODULE_2__[\"default\"](this.liveArgs)) : null;\n live && live.refresh();\n return {\n audio,\n duration: 0,\n currentTime: 0,\n state: State.paused,\n live,\n /// Loaded item\n loaded: null,\n //! Active panel name\n panel: null,\n //! current playing playlist name\n playlistName: null,\n //! players' playlists' sets\n sets: {\n queue: _model__WEBPACK_IMPORTED_MODULE_4__.Set.storeLoad(_sound__WEBPACK_IMPORTED_MODULE_3__[\"default\"], \"playlist.queue\", {\n max: 30,\n unique: true\n }),\n pin: _model__WEBPACK_IMPORTED_MODULE_4__.Set.storeLoad(_sound__WEBPACK_IMPORTED_MODULE_3__[\"default\"], \"player.pin\", {\n max: 30,\n unique: true\n })\n }\n };\n },\n props: {\n buttonTitle: String,\n liveArgs: Object\n },\n computed: {\n self() {\n return this;\n },\n paused() {\n return this.state == State.paused;\n },\n playing() {\n return this.state == State.playing;\n },\n loading() {\n return this.state == State.loading;\n },\n playlist() {\n return this.playlistName ? this.$refs[this.playlistName] : null;\n },\n current() {\n return this.loaded ? this.loaded : this.live && this.live.current;\n }\n },\n methods: {\n displayTime(seconds) {\n seconds = parseInt(seconds);\n let s = seconds % 60;\n seconds = (seconds - s) / 60;\n let m = seconds % 60;\n let h = (seconds - m) / 60;\n let [ss, mm, hh] = [s.toString().padStart(2, '0'), m.toString().padStart(2, '0'), h.toString().padStart(2, '0')];\n return h ? `${hh}:${mm}:${ss}` : `${mm}:${ss}`;\n },\n playlistButtonClass(name) {\n let set = this.sets[name];\n return (set ? (set.length ? \"\" : \"has-text-grey-light \") + (this.panel == name ? \"is-info \" : this.playlistName == name ? 'is-primary ' : '') : '') + \"button has-text-weight-bold\";\n },\n /// Show/hide panel\n togglePanel(panel) {\n this.panel = this.panel == panel ? null : panel;\n },\n /// Return True if item is loaded\n isLoaded(item) {\n return this.loaded && this.loaded.id == item.id;\n },\n /// Return True if item is loaded\n isPlaying(item) {\n return this.isLoaded(item) && !this.paused;\n },\n _setPlaylist(playlist) {\n this.playlistName = playlist;\n for (var p in this.sets) if (p != playlist) this.$refs[p].unselect();\n },\n /// Load a sound from playlist or live\n load(playlist = null, index = 0) {\n let src = null;\n\n // from playlist\n if (playlist !== null && index != -1) {\n let item = this.$refs[playlist].get(index);\n if (!item) throw `No sound at index ${index} for playlist ${playlist}`;\n this.loaded = item;\n src = item.src;\n }\n // from live\n else {\n this.loaded = null;\n src = this.live.src;\n }\n this._setPlaylist(playlist);\n\n // load sources\n const audio = this.audio;\n if (src instanceof Array) {\n audio.innerHTML = '';\n audio.removeAttribute('src');\n for (var s of src) {\n let source = document.createElement('source');\n source.setAttribute('src', s);\n audio.appendChild(source);\n }\n } else {\n audio.src = src;\n }\n audio.load();\n },\n play(playlist = null, index = 0) {\n this.load(playlist, index);\n this.audio.play().catch(e => console.error(e));\n },\n /// Push items to playlist (by name)\n push(playlist, ...items) {\n return this.sets[playlist].push(...items);\n },\n /// Push and play items\n playItems(playlist, ...items) {\n let index = this.push(playlist, ...items);\n this.$refs[playlist].selectedIndex = index;\n this.play(playlist, index);\n },\n /// Handle click event that plays multiple items (from `data-sounds` attribute)\n playButtonClick(event) {\n var items = JSON.parse(event.currentTarget.dataset.sounds);\n this.playItems('queue', ...items);\n },\n /// Pause\n pause() {\n this.audio.pause();\n },\n //! Play/pause\n togglePlay(playlist = null, index = 0) {\n if (playlist !== null) {\n let item = this.sets[playlist].get(index);\n if (!this.playlist || this.playlistName !== playlist || this.loaded != item) {\n this.play(playlist, index);\n return;\n }\n }\n if (this.paused) this.audio.play().catch(e => console.error(e));else this.audio.pause();\n },\n //! Pin/Unpin an item\n togglePin(item) {\n let index = this.sets.pin.findIndex(item);\n if (index > -1) this.sets.pin.remove(index);else {\n this.sets.pin.push(item);\n this.$refs.pinPlaylistButton.focus();\n }\n },\n /// Audio player state change event\n onState(event) {\n const audio = this.audio;\n this.state = audio.paused ? State.paused : State.playing;\n if (event.type == 'ended' && (!this.playlist || this.playlist.selectNext() == -1)) this.play();\n }\n },\n mounted() {\n this.load();\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ State: function() { return /* binding */ State; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n/* harmony import */ var _live__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../live */ \"./src/live.js\");\n/* harmony import */ var _sound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../sound */ \"./src/sound.js\");\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../model */ \"./src/model.js\");\n/* harmony import */ var _APlaylist__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./APlaylist */ \"./src/components/APlaylist.vue\");\n/* harmony import */ var _AProgress__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./AProgress */ \"./src/components/AProgress.vue\");\n\n\n\n\n\n\n\nconst State = {\n paused: 0,\n playing: 1,\n loading: 2\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n APlaylist: _APlaylist__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n AProgress: _AProgress__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n },\n data() {\n let audio = new Audio();\n audio.addEventListener('ended', e => this.onState(e));\n audio.addEventListener('pause', e => this.onState(e));\n audio.addEventListener('playing', e => this.onState(e));\n audio.addEventListener('timeupdate', () => {\n this.currentTime = this.audio.currentTime;\n });\n audio.addEventListener('durationchange', () => {\n this.duration = Number.isFinite(this.audio.duration) ? this.audio.duration : null;\n });\n let live = this.liveArgs ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.reactive)(new _live__WEBPACK_IMPORTED_MODULE_2__[\"default\"](this.liveArgs)) : null;\n live && live.refresh();\n return {\n audio,\n duration: 0,\n currentTime: 0,\n state: State.paused,\n live,\n /// Loaded item\n loaded: null,\n //! Active panel name\n panel: null,\n //! current playing playlist name\n playlistName: null,\n //! players' playlists' sets\n sets: {\n queue: _model__WEBPACK_IMPORTED_MODULE_4__.Set.storeLoad(_sound__WEBPACK_IMPORTED_MODULE_3__[\"default\"], \"playlist.queue\", {\n max: 30,\n unique: true\n }),\n pin: _model__WEBPACK_IMPORTED_MODULE_4__.Set.storeLoad(_sound__WEBPACK_IMPORTED_MODULE_3__[\"default\"], \"player.pin\", {\n max: 30,\n unique: true\n })\n }\n };\n },\n props: {\n buttonTitle: String,\n liveArgs: Object\n },\n computed: {\n self() {\n return this;\n },\n paused() {\n return this.state == State.paused;\n },\n playing() {\n return this.state == State.playing;\n },\n loading() {\n return this.state == State.loading;\n },\n playlist() {\n return this.playlistName ? this.$refs[this.playlistName] : null;\n },\n current() {\n return this.loaded ? this.loaded : this.live && this.live.current;\n }\n },\n methods: {\n displayTime(seconds) {\n seconds = parseInt(seconds);\n let s = seconds % 60;\n seconds = (seconds - s) / 60;\n let m = seconds % 60;\n let h = (seconds - m) / 60;\n let [ss, mm, hh] = [s.toString().padStart(2, '0'), m.toString().padStart(2, '0'), h.toString().padStart(2, '0')];\n return h ? `${hh}:${mm}:${ss}` : `${mm}:${ss}`;\n },\n playlistButtonClass(name) {\n let set = this.sets[name];\n return (set ? (set.length ? \"\" : \"has-text-grey-light \") + (this.panel == name ? \"open\" : this.playlistName == name ? 'active' : '') : '') + \" button\";\n },\n /// Show/hide panel\n togglePanel(panel) {\n this.panel = this.panel == panel ? null : panel;\n },\n /// Return True if item is loaded\n isLoaded(item) {\n return this.loaded && this.loaded.id == item.id;\n },\n /// Return True if item is loaded\n isPlaying(item) {\n return this.isLoaded(item) && !this.paused;\n },\n _setPlaylist(playlist) {\n this.playlistName = playlist;\n for (var p in this.sets) if (p != playlist) this.$refs[p].unselect();\n },\n /// Load a sound from playlist or live\n load(playlist = null, index = 0) {\n let src = null;\n\n // from playlist\n if (playlist !== null && index != -1) {\n let item = this.$refs[playlist].get(index);\n if (!item) throw `No sound at index ${index} for playlist ${playlist}`;\n this.loaded = item;\n src = item.src;\n }\n // from live\n else {\n this.loaded = null;\n src = this.live.src;\n }\n this._setPlaylist(playlist);\n\n // load sources\n const audio = this.audio;\n if (src instanceof Array) {\n audio.innerHTML = '';\n audio.removeAttribute('src');\n for (var s of src) {\n let source = document.createElement('source');\n source.setAttribute('src', s);\n audio.appendChild(source);\n }\n } else {\n audio.src = src;\n }\n audio.load();\n },\n play(playlist = null, index = 0) {\n this.load(playlist, index);\n this.audio.play().catch(e => console.error(e));\n },\n /// Push items to playlist (by name)\n push(playlist, ...items) {\n return this.sets[playlist].push(...items);\n },\n /// Push and play items\n playItems(playlist, ...items) {\n let index = this.push(playlist, ...items);\n this.$refs[playlist].selectedIndex = index;\n this.play(playlist, index);\n },\n /// Handle click event that plays multiple items (from `data-sounds` attribute)\n playButtonClick(event) {\n var items = JSON.parse(event.currentTarget.dataset.sounds);\n this.playItems('queue', ...items);\n },\n /// Pause\n pause() {\n this.audio.pause();\n },\n //! Play/pause\n togglePlay(playlist = null, index = 0) {\n if (playlist !== null) {\n this.panel = null;\n let item = this.sets[playlist].get(index);\n if (!this.playlist || this.playlistName !== playlist || this.loaded != item) {\n this.play(playlist, index);\n return;\n }\n }\n if (this.paused) this.audio.play().catch(e => console.error(e));else this.audio.pause();\n },\n //! Pin/Unpin an item\n togglePin(item) {\n let index = this.sets.pin.findIndex(item);\n if (index > -1) this.sets.pin.remove(index);else {\n this.sets.pin.push(item);\n this.$refs.pinPlaylistButton.focus();\n }\n },\n /// Audio player state change event\n onState(event) {\n const audio = this.audio;\n this.state = audio.paused ? State.paused : State.playing;\n if (event.type == 'ended' && (!this.playlist || this.playlist.selectNext() == -1)) this.play();\n }\n },\n mounted() {\n this.load();\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -75,7 +95,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*******************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _AList__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AList */ \"./src/components/AList.vue\");\n/* harmony import */ var _ASoundItem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ASoundItem */ \"./src/components/ASoundItem.vue\");\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n extends: _AList__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n emits: [..._AList__WEBPACK_IMPORTED_MODULE_0__[\"default\"].emits, 'remove'],\n components: {\n ASoundItem: _ASoundItem__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n },\n props: {\n actions: Array,\n name: String,\n player: Object,\n editable: Boolean\n },\n computed: {\n self() {\n return this;\n },\n player_() {\n return this.player || window.aircox.player;\n }\n },\n methods: {\n hasAction(action) {\n return this.actions && this.actions.indexOf(action) != -1;\n },\n selectNext() {\n let index = this.selectedIndex + 1;\n return this.select(index >= this.items.length ? -1 : index);\n },\n togglePlay(index) {\n if (this.player_.isPlaying(this.set.get(index))) this.player_.pause();else this.select(index);\n }\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylist.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _AList__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AList */ \"./src/components/AList.vue\");\n/* harmony import */ var _ASoundItem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ASoundItem */ \"./src/components/ASoundItem.vue\");\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n extends: _AList__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n emits: [..._AList__WEBPACK_IMPORTED_MODULE_0__[\"default\"].emits, 'remove'],\n components: {\n ASoundItem: _ASoundItem__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n },\n props: {\n actions: Array,\n name: String,\n player: Object,\n editable: Boolean,\n withLink: Boolean\n },\n computed: {\n self() {\n return this;\n },\n player_() {\n return this.player || window.aircox.player;\n }\n },\n methods: {\n hasAction(action) {\n return this.actions && this.actions.indexOf(action) != -1;\n },\n selectNext() {\n let index = this.selectedIndex + 1;\n return this.select(index >= this.items.length ? -1 : index);\n },\n togglePlay(index) {\n if (this.player_.isPlaying(this.set.get(index))) this.player_.pause();else this.select(index);\n }\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylist.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -85,7 +105,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ALi \*************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Page\": function() { return /* binding */ Page; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../model */ \"./src/model.js\");\n/* harmony import */ var _track__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../track */ \"./src/track.js\");\n/* harmony import */ var _AActionButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AActionButton */ \"./src/components/AActionButton.vue\");\n/* harmony import */ var _ARow_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ARow.vue */ \"./src/components/ARow.vue\");\n/* harmony import */ var _ARows_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./ARows.vue */ \"./src/components/ARows.vue\");\n\n\n\n\n\n\n\n\n/// Page display\nconst Page = {\n Text: 0,\n List: 1,\n Settings: 2\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n AActionButton: _AActionButton__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n ARow: _ARow_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n ARows: _ARows_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n },\n props: {\n initData: Object,\n dataPrefix: String,\n labels: Object,\n settingsUrl: String,\n defaultColumns: {\n type: Array,\n default: () => ['artist', 'title', 'tags', 'album', 'year', 'timestamp']\n }\n },\n data() {\n const settings = {\n playlist_editor_columns: this.defaultColumns,\n playlist_editor_sep: ' -- '\n };\n return {\n Page: Page,\n page: Page.Text,\n set: new _model__WEBPACK_IMPORTED_MODULE_2__.Set(_track__WEBPACK_IMPORTED_MODULE_3__[\"default\"]),\n extraData: {},\n settings,\n savedSettings: (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(settings)\n };\n },\n computed: {\n settingsChanged() {\n var k = Object.keys(this.savedSettings).findIndex(k => !(0,lodash__WEBPACK_IMPORTED_MODULE_1__.isEqual)(this.settings[k], this.savedSettings[k]));\n return k != -1;\n },\n separator: {\n set(value) {\n this.settings.playlist_editor_sep = value;\n if (this.page == Page.List) this.updateInput();\n },\n get() {\n return this.settings.playlist_editor_sep;\n }\n },\n columns: {\n set(value) {\n var cols = value.filter(x => x in this.defaultColumns);\n var left = this.defaultColumns.filter(x => !(x in cols));\n value = cols.concat(left);\n this.settings.playlist_editor_columns = value;\n },\n get() {\n return this.settings.playlist_editor_columns;\n }\n },\n items() {\n return this.set.items;\n },\n rowsSlots() {\n return Object.keys(this.$slots).filter(x => x.startsWith('row-') || x.startsWith('rows-')).map(x => [x, x.startsWith('rows-') ? x.slice(5) : x]);\n }\n },\n methods: {\n onCellEvent(event) {\n switch (event.name) {\n case 'change':\n this.updateInput();\n break;\n }\n },\n formatMove({\n from,\n to\n }) {\n const value = this.columns[from];\n this.settings.playlist_editor_columns.splice(from, 1);\n this.settings.playlist_editor_columns.splice(to, 0, value);\n if (this.page == Page.Text) this.updateList();else this.updateInput();\n },\n columnMove({\n from,\n to\n }) {\n const value = this.columns[from];\n this.columns.splice(from, 1);\n this.columns.splice(to, 0, value);\n this.updateInput();\n },\n listItemMove({\n from,\n to,\n set\n }) {\n set.move(from, to);\n this.updateInput();\n },\n updateList() {\n const items = this.toList(this.$refs.textarea.value);\n this.set.reset(items);\n },\n updateInput() {\n const input = this.toText(this.items);\n this.$refs.textarea.value = input;\n },\n /**\n * From input and separator, return list of items.\n */\n toList(input) {\n var lines = input.split('\\n');\n var items = [];\n for (let line of lines) {\n line = line.trimLeft();\n if (!line) continue;\n var lineBits = line.split(this.separator);\n var item = {};\n for (var col in this.columns) {\n if (col >= lineBits.length) break;\n const attr = this.columns[col];\n item[attr] = lineBits[col].trim();\n }\n item && items.push(item);\n }\n return items;\n },\n /**\n * From items and separator return a string\n */\n toText(items) {\n const sep = ` ${this.separator.trim()} `;\n const lines = [];\n for (let item of items) {\n if (!item) continue;\n var line = [];\n for (var col of this.columns) line.push(item.data[col] || '');\n line = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.dropRightWhile)(line, x => !x || !('' + x).trim());\n line = line.join(sep).trimRight();\n lines.push(line);\n }\n return lines.join('\\n');\n },\n _data_key(key) {\n key = key.slice(this.dataPrefix.length);\n try {\n var [index, attr] = key.split('-', 1);\n return [Number(index), attr];\n } catch (err) {\n return [null, key];\n }\n },\n //! Update saved settings from this.settings\n settingsSaved(settings = null) {\n if (settings !== null) this.settings = settings;\n this.savedSettings = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(this.settings);\n },\n /**\n * Load initial data\n */\n loadData({\n items = [],\n settings = null\n }, reset = false) {\n if (reset) {\n this.set.items = [];\n }\n for (var index in items) this.set.push((0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(items[index]));\n if (settings) this.settingsSaved(settings);\n this.updateInput();\n }\n },\n watch: {\n initData(val) {\n this.loadData(val);\n }\n },\n mounted() {\n this.initData && this.loadData(this.initData);\n this.page = this.items.length ? Page.List : Page.Text;\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Page: function() { return /* binding */ Page; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../model */ \"./src/model.js\");\n/* harmony import */ var _track__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../track */ \"./src/track.js\");\n/* harmony import */ var _AActionButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AActionButton */ \"./src/components/AActionButton.vue\");\n/* harmony import */ var _ARow_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ARow.vue */ \"./src/components/ARow.vue\");\n/* harmony import */ var _ARows_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./ARows.vue */ \"./src/components/ARows.vue\");\n\n\n\n\n\n\n\n\n/// Page display\nconst Page = {\n Text: 0,\n List: 1,\n Settings: 2\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n AActionButton: _AActionButton__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n ARow: _ARow_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n ARows: _ARows_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n },\n props: {\n initData: Object,\n dataPrefix: String,\n labels: Object,\n settingsUrl: String,\n defaultColumns: {\n type: Array,\n default: () => ['artist', 'title', 'tags', 'album', 'year', 'timestamp']\n }\n },\n data() {\n const settings = {\n playlist_editor_columns: this.defaultColumns,\n playlist_editor_sep: ' -- '\n };\n return {\n Page: Page,\n page: Page.Text,\n set: new _model__WEBPACK_IMPORTED_MODULE_2__.Set(_track__WEBPACK_IMPORTED_MODULE_3__[\"default\"]),\n extraData: {},\n settings,\n savedSettings: (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(settings)\n };\n },\n computed: {\n settingsChanged() {\n var k = Object.keys(this.savedSettings).findIndex(k => !(0,lodash__WEBPACK_IMPORTED_MODULE_1__.isEqual)(this.settings[k], this.savedSettings[k]));\n return k != -1;\n },\n separator: {\n set(value) {\n this.settings.playlist_editor_sep = value;\n if (this.page == Page.List) this.updateInput();\n },\n get() {\n return this.settings.playlist_editor_sep;\n }\n },\n columns: {\n set(value) {\n var cols = value.filter(x => x in this.defaultColumns);\n var left = this.defaultColumns.filter(x => !(x in cols));\n value = cols.concat(left);\n this.settings.playlist_editor_columns = value;\n },\n get() {\n return this.settings.playlist_editor_columns;\n }\n },\n items() {\n return this.set.items;\n },\n rowsSlots() {\n return Object.keys(this.$slots).filter(x => x.startsWith('row-') || x.startsWith('rows-')).map(x => [x, x.startsWith('rows-') ? x.slice(5) : x]);\n }\n },\n methods: {\n onCellEvent(event) {\n switch (event.name) {\n case 'change':\n this.updateInput();\n break;\n }\n },\n formatMove({\n from,\n to\n }) {\n const value = this.columns[from];\n this.settings.playlist_editor_columns.splice(from, 1);\n this.settings.playlist_editor_columns.splice(to, 0, value);\n if (this.page == Page.Text) this.updateList();else this.updateInput();\n },\n columnMove({\n from,\n to\n }) {\n const value = this.columns[from];\n this.columns.splice(from, 1);\n this.columns.splice(to, 0, value);\n this.updateInput();\n },\n listItemMove({\n from,\n to,\n set\n }) {\n set.move(from, to);\n this.updateInput();\n },\n updateList() {\n const items = this.toList(this.$refs.textarea.value);\n this.set.reset(items);\n },\n updateInput() {\n const input = this.toText(this.items);\n this.$refs.textarea.value = input;\n },\n /**\n * From input and separator, return list of items.\n */\n toList(input) {\n var lines = input.split('\\n');\n var items = [];\n for (let line of lines) {\n line = line.trimLeft();\n if (!line) continue;\n var lineBits = line.split(this.separator);\n var item = {};\n for (var col in this.columns) {\n if (col >= lineBits.length) break;\n const attr = this.columns[col];\n item[attr] = lineBits[col].trim();\n }\n item && items.push(item);\n }\n return items;\n },\n /**\n * From items and separator return a string\n */\n toText(items) {\n const sep = ` ${this.separator.trim()} `;\n const lines = [];\n for (let item of items) {\n if (!item) continue;\n var line = [];\n for (var col of this.columns) line.push(item.data[col] || '');\n line = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.dropRightWhile)(line, x => !x || !('' + x).trim());\n line = line.join(sep).trimRight();\n lines.push(line);\n }\n return lines.join('\\n');\n },\n _data_key(key) {\n key = key.slice(this.dataPrefix.length);\n try {\n var [index, attr] = key.split('-', 1);\n return [Number(index), attr];\n } catch (err) {\n return [null, key];\n }\n },\n //! Update saved settings from this.settings\n settingsSaved(settings = null) {\n if (settings !== null) this.settings = settings;\n this.savedSettings = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(this.settings);\n },\n /**\n * Load initial data\n */\n loadData({\n items = [],\n settings = null\n }, reset = false) {\n if (reset) {\n this.set.items = [];\n }\n for (var index in items) this.set.push((0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(items[index]));\n if (settings) this.settingsSaved(settings);\n this.updateInput();\n }\n },\n watch: {\n initData(val) {\n this.loadData(val);\n }\n },\n mounted() {\n this.initData && this.loadData(this.initData);\n this.page = this.items.length ? Page.List : Page.Text;\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -95,7 +115,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*******************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n data() {\n return {\n hoverValue: null\n };\n },\n props: {\n value: Number,\n max: Number,\n format: {\n type: Function,\n default: x => x\n },\n progressClass: {\n default: 'has-background-primary'\n },\n vertical: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n valueDisplay() {\n return this.hoverValue === null ? this.value : this.hoverValue;\n },\n progressStyle() {\n if (!this.max) return null;\n let value = this.max ? this.valueDisplay * 100 / this.max : 0;\n return this.vertical ? {\n height: `${value}%`\n } : {\n width: `${value}%`\n };\n }\n },\n methods: {\n xToValue(x) {\n return x * this.max / this.$refs.bar.getBoundingClientRect().width;\n },\n yToValue(y) {\n return y * this.max / this.$refs.bar.getBoundingClientRect().height;\n },\n valueFromEvent(event) {\n let rect = event.currentTarget.getBoundingClientRect();\n return this.vertical ? this.yToValue(event.clientY - rect.y) : this.xToValue(event.clientX - rect.x);\n },\n onClick(event) {\n this.$emit('select', this.valueFromEvent(event));\n },\n onMouseMove(event) {\n if (event.type == 'mouseleave') this.hoverValue = null;else {\n this.hoverValue = this.valueFromEvent(event);\n }\n }\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/AProgress.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n data() {\n return {\n hoverValue: null\n };\n },\n props: {\n value: Number,\n max: Number,\n format: {\n type: Function,\n default: x => x\n },\n progressClass: {\n default: 'a-progress-bar'\n },\n vertical: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n valueDisplay() {\n return this.hoverValue === null ? this.value : this.hoverValue;\n },\n progressStyle() {\n if (!this.max) return null;\n let value = this.max ? this.valueDisplay * 100 / this.max : 0;\n return this.vertical ? {\n height: `${value}%`\n } : {\n width: `${value}%`\n };\n }\n },\n methods: {\n xToValue(x) {\n return x * this.max / this.$refs.bar.getBoundingClientRect().width;\n },\n yToValue(y) {\n return y * this.max / this.$refs.bar.getBoundingClientRect().height;\n },\n valueFromEvent(event) {\n let rect = event.currentTarget.getBoundingClientRect();\n return this.vertical ? this.yToValue(event.clientY - rect.y) : this.xToValue(event.clientX - rect.x);\n },\n onClick(event) {\n this.$emit('select', this.valueFromEvent(event));\n },\n onMouseMove(event) {\n if (event.type == 'mouseleave') this.hoverValue = null;else {\n this.hoverValue = this.valueFromEvent(event);\n }\n }\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/AProgress.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -149,13 +169,23 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _sou /***/ }), +/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASwitch.vue?vue&type=script&lang=js": +/*!*****************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASwitch.vue?vue&type=script&lang=js ***! + \*****************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n props: {\n initialActive: {\n type: Boolean,\n default: null\n },\n el: {\n type: String,\n default: \"\"\n },\n label: {\n type: String,\n default: \"\"\n },\n icon: {\n type: String,\n default: \"fa fa-bars\"\n },\n ariaLabel: {\n type: String,\n default: \"\"\n },\n ariaDescription: {\n type: String,\n default: \"\"\n },\n activeClass: {\n type: String,\n default: \"active\"\n },\n /// switch toggle of all items of this group.\n group: {\n type: String,\n default: \"\"\n }\n },\n data() {\n return {\n active: this.initialActive\n };\n },\n computed: {\n groupClass() {\n return this.group && \"a-switch-\" + this.group || '';\n },\n buttonClass() {\n return [this.active && 'active' || '', this.groupClass];\n }\n },\n methods: {\n toggle() {\n this.set(!this.active);\n },\n set(active) {\n const el = document.querySelector(this.el);\n if (active) el.classList.add(this.activeClass);else el.classList.remove(this.activeClass);\n this.active = active;\n if (active) this.resetGroup();\n },\n resetGroup() {\n const els = document.querySelectorAll(\".\" + this.groupClass);\n for (var el of els) if (el != this.$el) el.__vnode.ctx.ctx.set(false);\n }\n },\n mounted() {\n if (this.initialActive !== null) this.set(this.initialActive);\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASwitch.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AActionButton.vue?vue&type=template&id=3f443389": /*!***************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AActionButton.vue?vue&type=template&id=3f443389 ***! \***************************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n key: 0\n};\nconst _hoisted_2 = {\n key: 1,\n class: \"icon\"\n};\nconst _hoisted_3 = {\n key: 2\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.tag), {\n onClick: $options.call,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.buttonClass)\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [$data.promise && $props.runIcon ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.runIcon)\n }, null, 2 /* CLASS */)])) : $props.icon ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.icon)\n }, null, 2 /* CLASS */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), _ctx.$slots.default ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\")])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 3 /* FORWARDED */\n }, 8 /* PROPS */, [\"onClick\", \"class\"]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AActionButton.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n key: 0\n};\nconst _hoisted_2 = {\n key: 1,\n class: \"icon\"\n};\nconst _hoisted_3 = {\n key: 2\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.tag), {\n onClick: $options.call,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.buttonClass)\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [$data.promise && $props.runIcon ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.runIcon)\n }, null, 2 /* CLASS */)])) : $props.icon ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.icon)\n }, null, 2 /* CLASS */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), _ctx.$slots.default ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\")])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 3 /* FORWARDED */\n }, 8 /* PROPS */, [\"onClick\", \"class\"]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AActionButton.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -165,7 +195,27 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \***************************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"control\"\n};\nconst _hoisted_2 = [\"name\", \"value\"];\nconst _hoisted_3 = [\"placeholder\"];\nconst _hoisted_4 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small ml-1\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: \"fa fa-pen\"\n})], -1 /* HOISTED */);\nconst _hoisted_5 = {\n key: 0,\n class: \"is-inline-block\"\n};\nconst _hoisted_6 = {\n class: \"dropdown-menu is-fullwidth\"\n};\nconst _hoisted_7 = {\n class: \"dropdown-content\",\n style: {\n \"overflow\": \"hidden\"\n }\n};\nconst _hoisted_8 = [\"data-autocomplete-index\", \"onClick\", \"title\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"input\", {\n type: \"hidden\",\n name: $props.name,\n value: $options.selectedValue,\n onChange: _cache[0] || (_cache[0] = $event => _ctx.$emit('change', $event))\n }, null, 40 /* PROPS, HYDRATE_EVENTS */, _hoisted_2), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"input\", {\n type: \"text\",\n ref: \"input\",\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)([\"input is-fullwidth\", $props.inputClass]),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => $data.inputValue = $event),\n placeholder: $props.placeholder,\n onKeydownCapture: _cache[2] || (_cache[2] = (...args) => $options.onKeyDown && $options.onKeyDown(...args)),\n onKeyup: _cache[3] || (_cache[3] = $event => {\n $options.onKeyUp($event);\n _ctx.$emit('keyup', $event);\n }),\n onKeydown: _cache[4] || (_cache[4] = $event => _ctx.$emit('keydown', $event)),\n onKeypress: _cache[5] || (_cache[5] = $event => _ctx.$emit('keypress', $event)),\n onFocus: _cache[6] || (_cache[6] = (...args) => $options.onInputFocus && $options.onInputFocus(...args)),\n onBlur: _cache[7] || (_cache[7] = (...args) => $options.onBlur && $options.onBlur(...args))\n }, null, 42 /* CLASS, PROPS, HYDRATE_EVENTS */, _hoisted_3), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, !$props.button || !$options.selected], [vue__WEBPACK_IMPORTED_MODULE_0__.vModelText, $data.inputValue]]), $options.selected && $props.button ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: 0,\n class: \"button is-normal is-fullwidth has-text-left is-inline-block overflow-hidden\",\n onClick: _cache[8] || (_cache[8] = $event => $options.select(-1, false, true))\n }, [_hoisted_4, $options.selected ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"button\", {\n index: $data.selectedIndex,\n item: $options.selected,\n valueField: $props.valueField,\n labelField: $props.labelField\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.labelField && $options.selected.data[$props.labelField] || $options.selected), 1 /* TEXT */)])])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.dropdownClass)\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_7, [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($data.items, (item, index) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: item.id,\n href: \"#\",\n \"data-autocomplete-index\": index,\n onClick: $event => $options.select(index, false, false),\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['dropdown-item', index == this.cursor ? 'is-active' : '']),\n title: $props.labelField && item.data[$props.labelField] || item,\n tabindex: \"-1\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"item\", {\n index: index,\n item: item,\n valueField: $props.valueField,\n labelField: $props.labelField\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.labelField && item.data[$props.labelField] || item), 1 /* TEXT */)])], 10 /* CLASS, PROPS */, _hoisted_8);\n }), 128 /* KEYED_FRAGMENT */))])])], 2 /* CLASS */)]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AAutocomplete.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"control\"\n};\nconst _hoisted_2 = [\"name\", \"value\"];\nconst _hoisted_3 = [\"placeholder\"];\nconst _hoisted_4 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small ml-1\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: \"fa fa-pen\"\n})], -1 /* HOISTED */);\nconst _hoisted_5 = {\n key: 0,\n class: \"is-inline-block\"\n};\nconst _hoisted_6 = {\n class: \"dropdown-menu is-fullwidth\"\n};\nconst _hoisted_7 = {\n class: \"dropdown-content\",\n style: {\n \"overflow\": \"hidden\"\n }\n};\nconst _hoisted_8 = [\"data-autocomplete-index\", \"onClick\", \"title\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"input\", {\n type: \"hidden\",\n name: $props.name,\n value: $options.selectedValue,\n onChange: _cache[0] || (_cache[0] = $event => _ctx.$emit('change', $event))\n }, null, 40 /* PROPS, HYDRATE_EVENTS */, _hoisted_2), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"input\", {\n type: \"text\",\n ref: \"input\",\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)([\"input is-fullwidth\", $props.inputClass]),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => $data.inputValue = $event),\n placeholder: $props.placeholder,\n onKeydownCapture: _cache[2] || (_cache[2] = (...args) => $options.onKeyDown && $options.onKeyDown(...args)),\n onKeyup: _cache[3] || (_cache[3] = $event => {\n $options.onKeyUp($event);\n _ctx.$emit('keyup', $event);\n }),\n onKeydown: _cache[4] || (_cache[4] = $event => _ctx.$emit('keydown', $event)),\n onKeypress: _cache[5] || (_cache[5] = $event => _ctx.$emit('keypress', $event)),\n onFocus: _cache[6] || (_cache[6] = (...args) => $options.onInputFocus && $options.onInputFocus(...args)),\n onBlur: _cache[7] || (_cache[7] = (...args) => $options.onBlur && $options.onBlur(...args))\n }, null, 42 /* CLASS, PROPS, HYDRATE_EVENTS */, _hoisted_3), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, !$props.button || !$options.selected], [vue__WEBPACK_IMPORTED_MODULE_0__.vModelText, $data.inputValue]]), $options.selected && $props.button ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: 0,\n class: \"button is-normal is-fullwidth has-text-left is-inline-block overflow-hidden\",\n onClick: _cache[8] || (_cache[8] = $event => $options.select(-1, false, true))\n }, [_hoisted_4, $options.selected ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"button\", {\n index: $data.selectedIndex,\n item: $options.selected,\n valueField: $props.valueField,\n labelField: $props.labelField\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.labelField && $options.selected.data[$props.labelField] || $options.selected), 1 /* TEXT */)])])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.dropdownClass)\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_7, [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($data.items, (item, index) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: item.id,\n href: \"#\",\n \"data-autocomplete-index\": index,\n onClick: $event => $options.select(index, false, false),\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['dropdown-item', index == this.cursor ? 'is-active' : '']),\n title: $props.labelField && item.data[$props.labelField] || item,\n tabindex: \"-1\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"item\", {\n index: index,\n item: item,\n valueField: $props.valueField,\n labelField: $props.labelField\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.labelField && item.data[$props.labelField] || item), 1 /* TEXT */)])], 10 /* CLASS, PROPS */, _hoisted_8);\n }), 128 /* KEYED_FRAGMENT */))])])], 2 /* CLASS */)]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AAutocomplete.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=template&id=b79f173e&scoped=true": +/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=template&id=b79f173e&scoped=true ***! + \***********************************************************************************************************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _withScopeId = n => ((0,vue__WEBPACK_IMPORTED_MODULE_0__.pushScopeId)(\"data-v-b79f173e\"), n = n(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.popScopeId)(), n);\nconst _hoisted_1 = {\n class: \"a-carousel\"\n};\nconst _hoisted_2 = {\n ref: \"viewport\",\n class: \"a-carousel-viewport\"\n};\nconst _hoisted_3 = {\n class: \"a-carousel-bullets-container\"\n};\nconst _hoisted_4 = {\n class: \"left\"\n};\nconst _hoisted_5 = [\"onClick\"];\nconst _hoisted_6 = {\n key: 0,\n class: \"fa fa-circle\"\n};\nconst _hoisted_7 = {\n key: 1,\n class: \"far fa-circle\"\n};\nconst _hoisted_8 = {\n class: \"right\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"section\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"nav\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"section\", {\n ref: \"container\",\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['a-carousel-container', $props.containerClass])\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {}, undefined, true)], 2 /* CLASS */)], 512 /* NEED_PATCH */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"nav\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", _hoisted_4, [$options.showPrev ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", {\n key: 0,\n class: \"icon bullet\",\n onClick: _cache[0] || (_cache[0] = $event => $options.prev())\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.leftButtonIcon)\n }, null, 2 /* CLASS */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]), $options.bullets.length > 1 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n key: 0\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($options.bullets, bullet => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", {\n class: \"icon bullet\",\n key: bullet,\n onClick: $event => $options.select(bullet)\n }, [bullet == $data.index ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"i\", _hoisted_6)) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"i\", _hoisted_7))], 8 /* PROPS */, _hoisted_5);\n }), 128 /* KEYED_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", _hoisted_8, [$options.showNext ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", {\n key: 0,\n class: \"icon bullet\",\n onClick: _cache[1] || (_cache[1] = $event => $options.next())\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.rightButtonIcon)\n }, null, 2 /* CLASS */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"bullets-right\", {\n vBind: this\n }, undefined, true)])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ADropdown.vue?vue&type=template&id=a87ed2dc": +/*!***********************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ADropdown.vue?vue&type=template&id=a87ed2dc ***! + \***********************************************************************************************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n key: 0,\n class: \"icon\"\n};\nconst _hoisted_2 = {\n class: \"icon\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.tag), {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)([_ctx.itemClass, $data.active ? $props.activeClass : ''])\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"before-button\", {\n toggle: $options.toggle,\n active: $data.active\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"button\", {\n toggle: $options.toggle,\n active: $data.active\n }, () => [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.buttonTag), {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.buttonClass),\n onClick: _cache[0] || (_cache[0] = $event => $options.toggle())\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [$props.labelIcon ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.labelIcon)\n }, null, 2 /* CLASS */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.label), 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", _hoisted_2, [!$data.active ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"i\", {\n key: 0,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.buttonIcon)\n }, null, 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $data.active ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"i\", {\n key: 1,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.buttonIconClose)\n }, null, 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"class\"]))]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.contentClass)\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\")], 2 /* CLASS */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.active]])]),\n _: 3 /* FORWARDED */\n }, 8 /* PROPS */, [\"class\"]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ADropdown.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -175,7 +225,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \**********************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n page: _ctx.page,\n podcasts: $data.podcasts\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AEpisode.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n page: _ctx.page,\n podcasts: $data.podcasts\n });\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AEpisode.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -185,7 +235,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*******************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" FIXME: header and footer should be inside list tags \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header\"), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.listTag), {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.listClass)\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($options.items, (item, index) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.itemTag), {\n key: index,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.itemClass),\n onClick: $event => $options.select(index),\n draggable: $props.orderable,\n \"data-index\": index,\n onDragstart: $options.onDragStart,\n onDragover: $options.onDragOver,\n onDrop: $options.onDrop\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"item\", {\n selected: index == $data.selectedIndex,\n set: $props.set,\n index: index,\n item: item\n })]),\n _: 2 /* DYNAMIC */\n }, 1064 /* PROPS, HYDRATE_EVENTS, DYNAMIC_SLOTS */, [\"class\", \"onClick\", \"draggable\", \"data-index\", \"onDragstart\", \"onDragover\", \"onDrop\"]);\n }), 128 /* KEYED_FRAGMENT */))]),\n\n _: 3 /* FORWARDED */\n }, 8 /* PROPS */, [\"class\"])), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"footer\")]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AList.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" FIXME: header and footer should be inside list tags \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header\"), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.listTag), {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.listClass)\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($options.items, (item, index) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.itemTag), {\n key: index,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.itemClass),\n onClick: $event => $options.select(index),\n draggable: $props.orderable,\n \"data-index\": index,\n onDragstart: $options.onDragStart,\n onDragover: $options.onDragOver,\n onDrop: $options.onDrop\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"item\", {\n selected: index == $data.selectedIndex,\n set: $props.set,\n index: index,\n item: item\n })]),\n _: 2 /* DYNAMIC */\n }, 1064 /* PROPS, HYDRATE_EVENTS, DYNAMIC_SLOTS */, [\"class\", \"onClick\", \"draggable\", \"data-index\", \"onDragstart\", \"onDragover\", \"onDrop\"]);\n }), 128 /* KEYED_FRAGMENT */))]),\n\n _: 3 /* FORWARDED */\n }, 8 /* PROPS */, [\"class\"])), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"footer\")]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AList.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -195,7 +245,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*******************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\")]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APage.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\")]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APage.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -205,7 +255,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*********************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"player\"\n};\nconst _hoisted_2 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"p\", {\n class: \"menu-label\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-thumbtack\"\n})]), /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\" Pinned \")], -1 /* HOISTED */);\nconst _hoisted_3 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"p\", {\n class: \"menu-label\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-list\"\n})]), /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\" Playlist \")], -1 /* HOISTED */);\nconst _hoisted_4 = {\n class: \"player-bar media\"\n};\nconst _hoisted_5 = {\n class: \"media-left\"\n};\nconst _hoisted_6 = [\"title\", \"aria-label\"];\nconst _hoisted_7 = {\n key: 0,\n class: \"fas fa-pause\"\n};\nconst _hoisted_8 = {\n key: 1,\n class: \"fas fa-play\"\n};\nconst _hoisted_9 = {\n key: 0,\n class: \"media-left media-cover\"\n};\nconst _hoisted_10 = [\"src\"];\nconst _hoisted_11 = {\n class: \"media-content\"\n};\nconst _hoisted_12 = {\n class: \"media-right\"\n};\nconst _hoisted_13 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-size-6 has-text-danger\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-circle\"\n})], -1 /* HOISTED */);\nconst _hoisted_14 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", null, \"Live\", -1 /* HOISTED */);\nconst _hoisted_15 = [_hoisted_13, _hoisted_14];\nconst _hoisted_16 = {\n key: 0,\n class: \"is-size-6\"\n};\nconst _hoisted_17 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-thumbtack\"\n})], -1 /* HOISTED */);\nconst _hoisted_18 = {\n key: 0,\n class: \"is-size-6\"\n};\nconst _hoisted_19 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-list\"\n})], -1 /* HOISTED */);\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_APlaylist = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"APlaylist\");\n const _component_AProgress = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"AProgress\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['player-panels', $data.panel ? 'is-open' : ''])\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_APlaylist, {\n ref: \"pin\",\n class: \"player-panel menu\",\n name: \"Pinned\",\n actions: ['page'],\n editable: true,\n player: $options.self,\n set: $data.sets.pin,\n onSelect: _cache[0] || (_cache[0] = $event => $options.togglePlay('pin', $event.index)),\n listClass: \"menu-list\",\n itemClass: \"menu-item\"\n }, {\n header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [_hoisted_2]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"player\", \"set\"]), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.panel == 'pin' && $data.sets.pin.length]]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_APlaylist, {\n ref: \"queue\",\n class: \"player-panel menu\",\n actions: ['page'],\n editable: true,\n player: $options.self,\n set: $data.sets.queue,\n onSelect: _cache[1] || (_cache[1] = $event => $options.togglePlay('queue', $event.index)),\n listClass: \"menu-list\",\n itemClass: \"menu-item\"\n }, {\n header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [_hoisted_3]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"player\", \"set\"]), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.panel == 'queue' && $data.sets.queue.length]])], 2 /* CLASS */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", {\n class: \"button\",\n onClick: _cache[2] || (_cache[2] = $event => $options.togglePlay()),\n title: $props.buttonTitle,\n \"aria-label\": $props.buttonTitle\n }, [$options.playing ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_7)) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_8))], 8 /* PROPS */, _hoisted_6)]), $options.current && $options.current.data.cover ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_9, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"img\", {\n src: $options.current.data.cover,\n class: \"cover\"\n }, null, 8 /* PROPS */, _hoisted_10)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_11, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"content\", {\n loaded: $data.loaded,\n live: $data.live,\n current: $options.current\n }), $data.loaded && $data.duration ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_AProgress, {\n key: 0,\n value: $data.currentTime,\n max: this.duration,\n format: $options.displayTime,\n class: \"pt-1 is-size-7\",\n onSelect: _cache[3] || (_cache[3] = $event => $data.audio.currentTime = $event)\n }, null, 8 /* PROPS */, [\"value\", \"max\", \"format\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_12, [$data.loaded ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n key: 0,\n class: \"button has-text-weight-bold\",\n onClick: _cache[4] || (_cache[4] = $event => $options.play())\n }, _hoisted_15)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", {\n ref: \"pinPlaylistButton\",\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.playlistButtonClass('pin')),\n onClick: _cache[5] || (_cache[5] = $event => $options.togglePanel('pin'))\n }, [$data.sets.pin.length ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_16, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($data.sets.pin.length), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), _hoisted_17], 2 /* CLASS */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.sets.pin.length]]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.playlistButtonClass('queue')),\n onClick: _cache[6] || (_cache[6] = $event => $options.togglePanel('queue'))\n }, [$data.sets.queue.length ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_18, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($data.sets.queue.length), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), _hoisted_19], 2 /* CLASS */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.sets.queue.length]])])])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"a-player\"\n};\nconst _hoisted_2 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: \"title is-flex-grow-1\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-star\"\n})]), /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\" Pinned \")], -1 /* HOISTED */);\nconst _hoisted_3 = {\n class: \"action button no-border\"\n};\nconst _hoisted_4 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: \"fa fa-close\"\n}, null, -1 /* HOISTED */);\nconst _hoisted_5 = [_hoisted_4];\nconst _hoisted_6 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: \"title is-flex-grow-1\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-list\"\n})]), /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\" Playlist \")], -1 /* HOISTED */);\nconst _hoisted_7 = {\n class: \"action button no-border\"\n};\nconst _hoisted_8 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: \"fa fa-close\"\n}, null, -1 /* HOISTED */);\nconst _hoisted_9 = [_hoisted_8];\nconst _hoisted_10 = {\n key: 0,\n class: \"a-player-progress\"\n};\nconst _hoisted_11 = {\n class: \"a-player-bar button-group\"\n};\nconst _hoisted_12 = [\"title\", \"aria-label\"];\nconst _hoisted_13 = {\n key: 0,\n class: \"fas fa-pause\"\n};\nconst _hoisted_14 = {\n key: 1,\n class: \"fas fa-play\"\n};\nconst _hoisted_15 = {\n key: 0,\n class: \"media-cover\"\n};\nconst _hoisted_16 = [\"src\"];\nconst _hoisted_17 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-size-6 has-text-danger\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-circle\"\n})], -1 /* HOISTED */);\nconst _hoisted_18 = [_hoisted_17];\nconst _hoisted_19 = {\n key: 0,\n class: \"is-size-6\"\n};\nconst _hoisted_20 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-star\"\n})], -1 /* HOISTED */);\nconst _hoisted_21 = {\n key: 0,\n class: \"is-size-6\"\n};\nconst _hoisted_22 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-list\"\n})], -1 /* HOISTED */);\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_APlaylist = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"APlaylist\");\n const _component_AProgress = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"AProgress\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['a-player-panels', $data.panel ? 'is-open' : ''])\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_APlaylist, {\n ref: \"pin\",\n class: \"a-player-panel a-playlist\",\n name: \"Pinned\",\n actions: ['page'],\n editable: true,\n player: $options.self,\n set: $data.sets.pin,\n onSelect: _cache[1] || (_cache[1] = $event => $options.togglePlay('pin', $event.index)),\n listClass: \"menu-list\",\n itemClass: \"menu-item\"\n }, {\n header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [_hoisted_2, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\",\n onClick: _cache[0] || (_cache[0] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => $options.togglePanel(), [\"stop\"]))\n }, _hoisted_5)])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"player\", \"set\"]), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.panel == 'pin' && $data.sets.pin.length]]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_APlaylist, {\n ref: \"queue\",\n class: \"a-player-panel a-playlist\",\n actions: ['page'],\n editable: true,\n player: $options.self,\n set: $data.sets.queue,\n onSelect: _cache[3] || (_cache[3] = $event => $options.togglePlay('queue', $event.index)),\n listClass: \"menu-list\",\n itemClass: \"menu-item\"\n }, {\n header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [_hoisted_6, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", _hoisted_7, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon\",\n onClick: _cache[2] || (_cache[2] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => $options.togglePanel(), [\"stop\"]))\n }, _hoisted_9)])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"player\", \"set\"]), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.panel == 'queue' && $data.sets.queue.length]])], 2 /* CLASS */), $data.loaded && $data.duration ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_10, [$data.loaded && $data.duration ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_AProgress, {\n key: 0,\n value: $data.currentTime,\n max: this.duration,\n format: $options.displayTime,\n onSelect: _cache[4] || (_cache[4] = $event => $data.audio.currentTime = $event)\n }, null, 8 /* PROPS */, [\"value\", \"max\", \"format\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_11, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", {\n class: \"button\",\n onClick: _cache[5] || (_cache[5] = $event => $options.togglePlay()),\n title: $props.buttonTitle,\n \"aria-label\": $props.buttonTitle\n }, [$options.playing ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_13)) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_14))], 8 /* PROPS */, _hoisted_12), $options.current && $options.current.data.cover ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_15, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"img\", {\n src: $options.current.data.cover,\n class: \"cover\"\n }, null, 8 /* PROPS */, _hoisted_16)])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['a-player-bar-content', $data.loaded && $data.duration ? 'has-progress' : ''])\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"content\", {\n loaded: $data.loaded,\n live: $data.live,\n current: $options.current\n })], 2 /* CLASS */), $data.loaded ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n key: 1,\n class: \"button has-text-weight-bold\",\n onClick: _cache[6] || (_cache[6] = $event => $options.play()),\n title: \"Live\"\n }, _hoisted_18)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", {\n ref: \"pinPlaylistButton\",\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.playlistButtonClass('pin')),\n onClick: _cache[7] || (_cache[7] = $event => $options.togglePanel('pin'))\n }, [$data.sets.pin.length ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_19, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($data.sets.pin.length), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), _hoisted_20], 2 /* CLASS */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.sets.pin.length]]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"button\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.playlistButtonClass('queue')),\n onClick: _cache[8] || (_cache[8] = $event => $options.togglePanel('queue'))\n }, [$data.sets.queue.length ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_21, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($data.sets.queue.length), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), _hoisted_22], 2 /* CLASS */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.sets.queue.length]])])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -215,7 +265,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \***********************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"playlist\"\n};\nconst _hoisted_2 = [\"onClick\"];\nconst _hoisted_3 = [\"onClick\"];\nconst _hoisted_4 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-close\"\n})], -1 /* HOISTED */);\nconst _hoisted_5 = [_hoisted_4];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ASoundItem = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"ASoundItem\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header\"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"ul\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(_ctx.listClass)\n }, [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.items, (item, index) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"li\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(_ctx.itemClass),\n onClick: $event => !$options.hasAction('play') && _ctx.select(index),\n key: index\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"a\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.player.isPlaying(item) ? 'is-active' : '')\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_ASoundItem, {\n data: item,\n index: index,\n set: _ctx.set,\n player: $options.player_,\n onTogglePlay: $event => $options.togglePlay(index),\n actions: $props.actions\n }, {\n \"extra-right\": (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({}) => [$props.editable ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n key: 0,\n class: \"button\",\n onClick: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => _ctx.remove(index, true), [\"stop\"])\n }, _hoisted_5, 8 /* PROPS */, _hoisted_3)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 2 /* DYNAMIC */\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"data\", \"index\", \"set\", \"player\", \"onTogglePlay\", \"actions\"])], 2 /* CLASS */)], 10 /* CLASS, PROPS */, _hoisted_2);\n }), 128 /* KEYED_FRAGMENT */))], 2 /* CLASS */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"footer\")]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylist.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"a-playlist\"\n};\nconst _hoisted_2 = {\n class: \"header\"\n};\nconst _hoisted_3 = [\"onClick\"];\nconst _hoisted_4 = [\"onClick\"];\nconst _hoisted_5 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-close\"\n})], -1 /* HOISTED */);\nconst _hoisted_6 = [_hoisted_5];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ASoundItem = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"ASoundItem\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header\")]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"ul\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(_ctx.listClass)\n }, [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.items, (item, index) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"li\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)([_ctx.itemClass, $props.player.isPlaying(item) ? 'is-active' : '']),\n onClick: $event => !$options.hasAction('play') && _ctx.select(index),\n key: index\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_ASoundItem, {\n data: item,\n index: index,\n set: _ctx.set,\n player: $options.player_,\n onTogglePlay: $event => $options.togglePlay(index),\n actions: $props.actions\n }, {\n actions: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({}) => [$props.editable ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n key: 0,\n class: \"button\",\n onClick: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => _ctx.remove(index, true), [\"stop\"])\n }, _hoisted_6, 8 /* PROPS */, _hoisted_4)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 2 /* DYNAMIC */\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"data\", \"index\", \"set\", \"player\", \"onTogglePlay\", \"actions\"])], 10 /* CLASS, PROPS */, _hoisted_3);\n }), 128 /* KEYED_FRAGMENT */))], 2 /* CLASS */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"footer\")]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylist.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -225,7 +275,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*****************************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\n\nconst _hoisted_1 = {\n class: \"playlist-editor\"\n};\nconst _hoisted_2 = {\n class: \"columns\"\n};\nconst _hoisted_3 = {\n class: \"column\"\n};\nconst _hoisted_4 = {\n class: \"column has-text-right\"\n};\nconst _hoisted_5 = {\n class: \"float-right field has-addons\"\n};\nconst _hoisted_6 = {\n class: \"control\"\n};\nconst _hoisted_7 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-pencil\"\n})], -1 /* HOISTED */);\nconst _hoisted_8 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, \"Texte\", -1 /* HOISTED */);\nconst _hoisted_9 = [_hoisted_7, _hoisted_8];\nconst _hoisted_10 = {\n class: \"control\"\n};\nconst _hoisted_11 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-list\"\n})], -1 /* HOISTED */);\nconst _hoisted_12 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, \"Liste\", -1 /* HOISTED */);\nconst _hoisted_13 = [_hoisted_11, _hoisted_12];\nconst _hoisted_14 = {\n class: \"page\"\n};\nconst _hoisted_15 = {\n class: \"page\"\n};\nconst _hoisted_16 = [\"onClick\", \"title\", \"aria-label\"];\nconst _hoisted_17 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-trash\"\n})], -1 /* HOISTED */);\nconst _hoisted_18 = [_hoisted_17];\nconst _hoisted_19 = {\n class: \"mt-2\"\n};\nconst _hoisted_20 = {\n class: \"float-right\"\n};\nconst _hoisted_21 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-rotate\"\n})], -1 /* HOISTED */);\nconst _hoisted_22 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-plus\"\n})], -1 /* HOISTED */);\nconst _hoisted_23 = {\n class: \"field is-inline-block is-vcentered mr-3\"\n};\nconst _hoisted_24 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"label\", {\n class: \"label is-inline mr-2\",\n style: {\n \"vertical-align\": \"middle\"\n }\n}, \" Séparateur\", -1 /* HOISTED */);\nconst _hoisted_25 = {\n class: \"control is-inline-block\",\n style: {\n \"vertical-align\": \"middle\"\n }\n};\nconst _hoisted_26 = {\n class: \"field is-inline-block is-vcentered mr-3\"\n};\nconst _hoisted_27 = {\n class: \"label is-inline mr-2\",\n style: {\n \"vertical-align\": \"middle\"\n }\n};\nconst _hoisted_28 = {\n class: \"table is-bordered is-inline-block\",\n style: {\n \"vertical-align\": \"middle\"\n }\n};\nconst _hoisted_29 = {\n key: 0,\n style: {\n \"cursor\": \"pointer\"\n }\n};\nconst _hoisted_30 = [\"onClick\"];\nconst _hoisted_31 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-left-right\"\n}, null, -1 /* HOISTED */);\nconst _hoisted_32 = [_hoisted_31];\nconst _hoisted_33 = {\n key: 0,\n class: \"field is-vcentered is-inline-block\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_a_rows = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"a-rows\");\n const _component_a_row = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"a-row\");\n const _component_a_action_button = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"a-action-button\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, \"title\")]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"p\", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeClass)(['button', 'p-2', $data.page == $data.Page.Text ? 'is-primary' : 'is-light']),\n onClick: _cache[0] || (_cache[0] = $event => $data.page = $data.Page.Text)\n }, _hoisted_9, 2 /* CLASS */)]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"p\", _hoisted_10, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeClass)(['button', 'p-2', $data.page == $data.Page.List ? 'is-primary' : 'is-light']),\n onClick: _cache[1] || (_cache[1] = $event => $data.page = $data.Page.List)\n }, _hoisted_13, 2 /* CLASS */)])])])]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, \"top\", {\n set: $data.set,\n columns: $options.columns,\n items: $options.items\n }), (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"section\", _hoisted_14, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"textarea\", {\n ref: \"textarea\",\n class: \"is-fullwidth is-size-6\",\n rows: \"20\",\n onChange: _cache[2] || (_cache[2] = (...args) => $options.updateList && $options.updateList(...args))\n }, null, 544 /* HYDRATE_EVENTS, NEED_PATCH */)], 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, $data.page == $data.Page.Text]]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"section\", _hoisted_15, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_a_rows, {\n set: $data.set,\n columns: $options.columns,\n labels: $props.labels,\n \"allow-create\": true,\n orderable: true,\n onMove: $options.listItemMove,\n onColmove: $options.columnMove,\n onCell: $options.onCellEvent\n }, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createSlots)({\n \"row-tail\": (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(data => [_ctx.$slots['row-tail'] ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, _ctx.row - _ctx.tail, (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_1__.mergeProps)({\n key: 0\n }, data))) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"td\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: \"button is-danger is-outlined p-3 is-size-6\",\n onClick: $event => $options.items.splice(data.row, 1),\n title: $props.labels.remove_track,\n \"aria-label\": $props.labels.remove_track\n }, _hoisted_18, 8 /* PROPS */, _hoisted_16)])]),\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.renderList)($options.rowsSlots, ([name, slot]) => {\n return {\n name: slot,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(data => [name != 'row-tail' ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, name, (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_1__.mergeProps)({\n key: 0\n }, data))) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"set\", \"columns\", \"labels\", \"onMove\", \"onColmove\", \"onCell\"])], 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, $data.page == $data.Page.List]]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_19, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_20, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: \"button is-warning p-2 ml-2\",\n onClick: _cache[3] || (_cache[3] = $event => $options.loadData({\n items: this.initData.items\n }, true))\n }, [_hoisted_21, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.discard_changes), 1 /* TEXT */)]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: \"button is-primary p-2 ml-2\",\n \"t-if\": \"page == page.List\",\n onClick: _cache[4] || (_cache[4] = $event => this.set.push(new this.set.model()))\n }, [_hoisted_22, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.add_track), 1 /* TEXT */)])]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_23, [_hoisted_24, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_25, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"input\", {\n type: \"text\",\n ref: \"sep\",\n class: \"input is-inline is-text-centered is-small\",\n style: {\n \"max-width\": \"5em\"\n },\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => $options.separator = $event),\n onChange: _cache[6] || (_cache[6] = $event => $options.updateList())\n }, null, 544 /* HYDRATE_EVENTS, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vModelText, $options.separator]])])]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_26, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"label\", _hoisted_27, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.columns), 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"table\", _hoisted_28, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"tr\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_a_row, {\n columns: $options.columns,\n item: $props.labels,\n onMove: $options.formatMove,\n orderable: true\n }, {\n \"cell-after\": (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(({\n cell\n }) => [cell.col < $options.columns.length - 1 ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"td\", _hoisted_29, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\",\n onClick: $event => $options.formatMove({\n from: cell.col,\n to: cell.col + 1\n })\n }, _hoisted_32, 8 /* PROPS */, _hoisted_30)])) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"columns\", \"item\", \"onMove\"])])])]), $options.settingsChanged ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", _hoisted_33, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_a_action_button, {\n icon: \"fa fa-floppy-disk\",\n class: \"button control p-3 is-info\",\n \"run-class\": \"blink\",\n url: $props.settingsUrl,\n method: \"POST\",\n data: $data.settings,\n \"aria-label\": $props.labels.save_settings,\n onDone: _cache[7] || (_cache[7] = $event => $options.settingsSaved())\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.save_settings), 1 /* TEXT */)]),\n\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"url\", \"data\", \"aria-label\"])])) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, \"bottom\", {\n set: $data.set,\n columns: $options.columns,\n items: $options.items\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\n\nconst _hoisted_1 = {\n class: \"playlist-editor\"\n};\nconst _hoisted_2 = {\n class: \"columns\"\n};\nconst _hoisted_3 = {\n class: \"column\"\n};\nconst _hoisted_4 = {\n class: \"column has-text-right\"\n};\nconst _hoisted_5 = {\n class: \"float-right field has-addons\"\n};\nconst _hoisted_6 = {\n class: \"control\"\n};\nconst _hoisted_7 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-pencil\"\n})], -1 /* HOISTED */);\nconst _hoisted_8 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, \"Texte\", -1 /* HOISTED */);\nconst _hoisted_9 = [_hoisted_7, _hoisted_8];\nconst _hoisted_10 = {\n class: \"control\"\n};\nconst _hoisted_11 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-list\"\n})], -1 /* HOISTED */);\nconst _hoisted_12 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, \"Liste\", -1 /* HOISTED */);\nconst _hoisted_13 = [_hoisted_11, _hoisted_12];\nconst _hoisted_14 = {\n class: \"page\"\n};\nconst _hoisted_15 = {\n class: \"page\"\n};\nconst _hoisted_16 = [\"onClick\", \"title\", \"aria-label\"];\nconst _hoisted_17 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-trash\"\n})], -1 /* HOISTED */);\nconst _hoisted_18 = [_hoisted_17];\nconst _hoisted_19 = {\n class: \"mt-2\"\n};\nconst _hoisted_20 = {\n class: \"float-right\"\n};\nconst _hoisted_21 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-rotate\"\n})], -1 /* HOISTED */);\nconst _hoisted_22 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-plus\"\n})], -1 /* HOISTED */);\nconst _hoisted_23 = {\n class: \"field is-inline-block is-vcentered mr-3\"\n};\nconst _hoisted_24 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"label\", {\n class: \"label is-inline mr-2\",\n style: {\n \"vertical-align\": \"middle\"\n }\n}, \" Séparateur\", -1 /* HOISTED */);\nconst _hoisted_25 = {\n class: \"control is-inline-block\",\n style: {\n \"vertical-align\": \"middle\"\n }\n};\nconst _hoisted_26 = {\n class: \"field is-inline-block is-vcentered mr-3\"\n};\nconst _hoisted_27 = {\n class: \"label is-inline mr-2\",\n style: {\n \"vertical-align\": \"middle\"\n }\n};\nconst _hoisted_28 = {\n class: \"table is-bordered is-inline-block\",\n style: {\n \"vertical-align\": \"middle\"\n }\n};\nconst _hoisted_29 = {\n key: 0,\n style: {\n \"cursor\": \"pointer\"\n }\n};\nconst _hoisted_30 = [\"onClick\"];\nconst _hoisted_31 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"i\", {\n class: \"fa fa-left-right\"\n}, null, -1 /* HOISTED */);\nconst _hoisted_32 = [_hoisted_31];\nconst _hoisted_33 = {\n key: 0,\n class: \"field is-vcentered is-inline-block\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_a_rows = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"a-rows\");\n const _component_a_row = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"a-row\");\n const _component_a_action_button = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"a-action-button\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, \"title\")]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"p\", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeClass)(['button', 'p-2', $data.page == $data.Page.Text ? 'is-primary' : 'is-light']),\n onClick: _cache[0] || (_cache[0] = $event => $data.page = $data.Page.Text)\n }, _hoisted_9, 2 /* CLASS */)]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"p\", _hoisted_10, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeClass)(['button', 'p-2', $data.page == $data.Page.List ? 'is-primary' : 'is-light']),\n onClick: _cache[1] || (_cache[1] = $event => $data.page = $data.Page.List)\n }, _hoisted_13, 2 /* CLASS */)])])])]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, \"top\", {\n set: $data.set,\n columns: $options.columns,\n items: $options.items\n }), (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"section\", _hoisted_14, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"textarea\", {\n ref: \"textarea\",\n class: \"is-fullwidth is-size-6\",\n rows: \"20\",\n onChange: _cache[2] || (_cache[2] = (...args) => $options.updateList && $options.updateList(...args))\n }, null, 544 /* HYDRATE_EVENTS, NEED_PATCH */)], 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, $data.page == $data.Page.Text]]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"section\", _hoisted_15, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_a_rows, {\n set: $data.set,\n columns: $options.columns,\n labels: $props.labels,\n \"allow-create\": true,\n orderable: true,\n onMove: $options.listItemMove,\n onColmove: $options.columnMove,\n onCell: $options.onCellEvent\n }, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createSlots)({\n \"row-tail\": (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(data => [_ctx.$slots['row-tail'] ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, _ctx.row - _ctx.tail, (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_1__.mergeProps)({\n key: 0\n }, data))) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"td\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: \"button is-danger is-outlined p-3 is-size-6\",\n onClick: $event => $options.items.splice(data.row, 1),\n title: $props.labels.remove_track,\n \"aria-label\": $props.labels.remove_track\n }, _hoisted_18, 8 /* PROPS */, _hoisted_16)])]),\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.renderList)($options.rowsSlots, ([name, slot]) => {\n return {\n name: slot,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(data => [name != 'row-tail' ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, name, (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_1__.mergeProps)({\n key: 0\n }, data))) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"set\", \"columns\", \"labels\", \"onMove\", \"onColmove\", \"onCell\"])], 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, $data.page == $data.Page.List]]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_19, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_20, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: \"button is-warning p-2 ml-2\",\n onClick: _cache[3] || (_cache[3] = $event => $options.loadData({\n items: this.initData.items\n }, true))\n }, [_hoisted_21, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.discard_changes), 1 /* TEXT */)]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"a\", {\n class: \"button is-primary p-2 ml-2\",\n \"t-if\": \"page == page.List\",\n onClick: _cache[4] || (_cache[4] = $event => this.set.push(new this.set.model()))\n }, [_hoisted_22, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.add_track), 1 /* TEXT */)])]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_23, [_hoisted_24, (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_25, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"input\", {\n type: \"text\",\n ref: \"sep\",\n class: \"input is-inline is-text-centered is-small\",\n style: {\n \"max-width\": \"5em\"\n },\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => $options.separator = $event),\n onChange: _cache[6] || (_cache[6] = $event => $options.updateList())\n }, null, 544 /* HYDRATE_EVENTS, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vModelText, $options.separator]])])]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_26, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"label\", _hoisted_27, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.columns), 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"table\", _hoisted_28, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"tr\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_a_row, {\n columns: $options.columns,\n item: $props.labels,\n onMove: $options.formatMove,\n orderable: true\n }, {\n \"cell-after\": (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(({\n cell\n }) => [cell.col < $options.columns.length - 1 ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"td\", _hoisted_29, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"span\", {\n class: \"icon\",\n onClick: $event => $options.formatMove({\n from: cell.col,\n to: cell.col + 1\n })\n }, _hoisted_32, 8 /* PROPS */, _hoisted_30)])) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"columns\", \"item\", \"onMove\"])])])]), $options.settingsChanged ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", _hoisted_33, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_a_action_button, {\n icon: \"fa fa-floppy-disk\",\n class: \"button control p-3 is-info\",\n \"run-class\": \"blink\",\n url: $props.settingsUrl,\n method: \"POST\",\n data: $data.settings,\n \"aria-label\": $props.labels.save_settings,\n onDone: _cache[7] || (_cache[7] = $event => $options.settingsSaved())\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_1__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)($props.labels.save_settings), 1 /* TEXT */)]),\n\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"url\", \"data\", \"aria-label\"])])) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderSlot)(_ctx.$slots, \"bottom\", {\n set: $data.set,\n columns: $options.columns,\n items: $options.items\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -235,7 +285,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \***********************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"media\"\n};\nconst _hoisted_2 = {\n class: \"media-left\"\n};\nconst _hoisted_3 = {\n class: \"media-right\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"value\", {\n value: $options.valueDisplay,\n max: $props.max\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.format($options.valueDisplay)), 1 /* TEXT */)])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n ref: \"bar\",\n class: \"media-content\",\n onClick: _cache[0] || (_cache[0] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)((...args) => $options.onClick && $options.onClick(...args), [\"stop\"])),\n onMouseleave: _cache[1] || (_cache[1] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)((...args) => $options.onMouseMove && $options.onMouseMove(...args), [\"stop\"])),\n onMousemove: _cache[2] || (_cache[2] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)((...args) => $options.onMouseMove && $options.onMouseMove(...args), [\"stop\"]))\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.progressClass),\n style: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeStyle)($options.progressStyle)\n }, \" \", 6 /* CLASS, STYLE */)], 544 /* HYDRATE_EVENTS, NEED_PATCH */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"value\", {\n value: $options.valueDisplay,\n max: $props.max\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.format($props.max)), 1 /* TEXT */)])])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AProgress.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"a-progress m-0\"\n};\nconst _hoisted_2 = {\n class: \"time-now\"\n};\nconst _hoisted_3 = {\n key: 0\n};\nconst _hoisted_4 = {\n class: \"time-total\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"time\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"value\", {\n value: $props.value,\n max: $props.max\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.format($props.value)), 1 /* TEXT */)])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n ref: \"bar\",\n class: \"a-progress-bar-container\",\n onClick: _cache[0] || (_cache[0] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)((...args) => $options.onClick && $options.onClick(...args), [\"stop\"])),\n onMouseleave: _cache[1] || (_cache[1] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)((...args) => $options.onMouseMove && $options.onMouseMove(...args), [\"stop\"])),\n onMousemove: _cache[2] || (_cache[2] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)((...args) => $options.onMouseMove && $options.onMouseMove(...args), [\"stop\"]))\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.progressClass),\n style: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeStyle)($options.progressStyle)\n }, [$data.hoverValue ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"time\", _hoisted_3, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.format($data.hoverValue)), 1 /* TEXT */)) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n key: 1\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\" \")], 64 /* STABLE_FRAGMENT */))], 6 /* CLASS, STYLE */)], 544 /* HYDRATE_EVENTS, NEED_PATCH */), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"time\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"value\", {\n value: $options.valueDisplay,\n max: $props.max\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.format($props.max)), 1 /* TEXT */)])])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AProgress.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -245,7 +295,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \******************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"tr\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"head\", {\n item: $props.item,\n row: $options.row\n }), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($props.columns, (attr, col) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n key: col\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"cell-before\", {\n item: $props.item,\n cell: $options.cells[col],\n attr: attr\n }), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.cellTag), {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['cell', 'cell-' + attr]),\n \"data-col\": col,\n draggable: $props.orderable,\n onDragstart: $options.onDragStart,\n onDragover: $options.onDragOver,\n onDrop: $options.onDrop\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, attr, {\n item: $props.item,\n cell: $options.cells[col],\n data: $options.itemData,\n attr: attr,\n emit: $options.cellEmit,\n value: $options.itemData && $options.itemData[attr]\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($options.itemData && $options.itemData[attr]), 1 /* TEXT */)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"cell\", {\n item: $props.item,\n cell: $options.cells[col],\n data: $options.itemData,\n attr: attr,\n emit: $options.cellEmit,\n value: $options.itemData && $options.itemData[attr]\n })]),\n _: 2 /* DYNAMIC */\n }, 1064 /* PROPS, HYDRATE_EVENTS, DYNAMIC_SLOTS */, [\"class\", \"data-col\", \"draggable\", \"onDragstart\", \"onDragover\", \"onDrop\"])), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"cell-after\", {\n item: $props.item,\n col: col,\n cell: $options.cells[col],\n attr: attr\n })], 64 /* STABLE_FRAGMENT */);\n }), 128 /* KEYED_FRAGMENT */)), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"tail\", {\n item: $props.item,\n row: $options.row\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARow.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"tr\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"head\", {\n item: $props.item,\n row: $options.row\n }), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($props.columns, (attr, col) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n key: col\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"cell-before\", {\n item: $props.item,\n cell: $options.cells[col],\n attr: attr\n }), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDynamicComponent)($props.cellTag), {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['cell', 'cell-' + attr]),\n \"data-col\": col,\n draggable: $props.orderable,\n onDragstart: $options.onDragStart,\n onDragover: $options.onDragOver,\n onDrop: $options.onDrop\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, attr, {\n item: $props.item,\n cell: $options.cells[col],\n data: $options.itemData,\n attr: attr,\n emit: $options.cellEmit,\n value: $options.itemData && $options.itemData[attr]\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($options.itemData && $options.itemData[attr]), 1 /* TEXT */)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"cell\", {\n item: $props.item,\n cell: $options.cells[col],\n data: $options.itemData,\n attr: attr,\n emit: $options.cellEmit,\n value: $options.itemData && $options.itemData[attr]\n })]),\n _: 2 /* DYNAMIC */\n }, 1064 /* PROPS, HYDRATE_EVENTS, DYNAMIC_SLOTS */, [\"class\", \"data-col\", \"draggable\", \"onDragstart\", \"onDragover\", \"onDrop\"])), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"cell-after\", {\n item: $props.item,\n col: col,\n cell: $options.cells[col],\n attr: attr\n })], 64 /* STABLE_FRAGMENT */);\n }), 128 /* KEYED_FRAGMENT */)), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"tail\", {\n item: $props.item,\n row: $options.row\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARow.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -255,7 +305,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*******************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"table is-stripped is-fullwidth\"\n};\nconst _hoisted_2 = {\n key: 1\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_a_row = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"a-row\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"table\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"thead\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_a_row, {\n item: _ctx.labels,\n columns: _ctx.columns,\n orderable: _ctx.orderable,\n onMove: _cache[0] || (_cache[0] = $event => _ctx.$emit('colmove', $event))\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [_ctx.$slots['header-head'] ? {\n name: \"head\",\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(data => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header-head\", (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.guardReactiveProps)(data)))]),\n key: \"0\"\n } : undefined, _ctx.$slots['header-tail'] ? {\n name: \"tail\",\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(data => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header-tail\", (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.guardReactiveProps)(data)))]),\n key: \"1\"\n } : undefined]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"item\", \"columns\", \"orderable\"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"tbody\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"head\"), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.items, (item, row) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n key: row\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" data-index comes from AList component drag & drop \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_a_row, {\n item: item,\n cell: {\n row\n },\n columns: _ctx.columns,\n \"data-index\": row,\n \"data-row\": row,\n draggable: _ctx.orderable,\n onDragstart: _ctx.onDragStart,\n onDragover: _ctx.onDragOver,\n onDrop: _ctx.onDrop,\n onCell: $event => _ctx.onCellEvent(row, $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.rowSlots, ([name, slot]) => {\n return {\n name: slot,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(data => [slot == 'head' || slot == 'tail' ? (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, name, (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.mergeProps)({\n key: 0\n }, data))) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, name, (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.guardReactiveProps)(data)))]))])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"item\", \"cell\", \"columns\", \"data-index\", \"data-row\", \"draggable\", \"onDragstart\", \"onDragover\", \"onDrop\", \"onCell\"])], 64 /* STABLE_FRAGMENT */);\n }), 128 /* KEYED_FRAGMENT */)), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"tail\")])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARows.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"table is-stripped is-fullwidth\"\n};\nconst _hoisted_2 = {\n key: 1\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_a_row = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"a-row\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"table\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"thead\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_a_row, {\n item: _ctx.labels,\n columns: _ctx.columns,\n orderable: _ctx.orderable,\n onMove: _cache[0] || (_cache[0] = $event => _ctx.$emit('colmove', $event))\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [_ctx.$slots['header-head'] ? {\n name: \"head\",\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(data => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header-head\", (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.guardReactiveProps)(data)))]),\n key: \"0\"\n } : undefined, _ctx.$slots['header-tail'] ? {\n name: \"tail\",\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(data => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"header-tail\", (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.guardReactiveProps)(data)))]),\n key: \"1\"\n } : undefined]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"item\", \"columns\", \"orderable\"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"tbody\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"head\"), ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.items, (item, row) => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n key: row\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" data-index comes from AList component drag & drop \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_a_row, {\n item: item,\n cell: {\n row\n },\n columns: _ctx.columns,\n \"data-index\": row,\n \"data-row\": row,\n draggable: _ctx.orderable,\n onDragstart: _ctx.onDragStart,\n onDragover: _ctx.onDragOver,\n onDrop: _ctx.onDrop,\n onCell: $event => _ctx.onCellEvent(row, $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.rowSlots, ([name, slot]) => {\n return {\n name: slot,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(data => [slot == 'head' || slot == 'tail' ? (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, name, (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.mergeProps)({\n key: 0\n }, data))) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, name, (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeProps)((0,vue__WEBPACK_IMPORTED_MODULE_0__.guardReactiveProps)(data)))]))])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"item\", \"cell\", \"columns\", \"data-index\", \"data-row\", \"draggable\", \"onDragstart\", \"onDragover\", \"onDrop\", \"onCell\"])], 64 /* STABLE_FRAGMENT */);\n }), 128 /* KEYED_FRAGMENT */)), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"tail\")])]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARows.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -265,7 +315,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \************************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"media sound-item\"\n};\nconst _hoisted_2 = [\"src\"];\nconst _hoisted_3 = {\n class: \"media-content\"\n};\nconst _hoisted_4 = {\n key: 0,\n class: \"icon is-small is-size-7 blink\"\n};\nconst _hoisted_5 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-play\"\n}, null, -1 /* HOISTED */);\nconst _hoisted_6 = [_hoisted_5];\nconst _hoisted_7 = [\"href\"];\nconst _hoisted_8 = {\n class: \"media-right\"\n};\nconst _hoisted_9 = [\"href\"];\nconst _hoisted_10 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-download\"\n})], -1 /* HOISTED */);\nconst _hoisted_11 = [_hoisted_10];\nconst _hoisted_12 = {\n class: \"icon is-small\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", {\n class: \"media-left\",\n onClick: _cache[0] || (_cache[0] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => _ctx.$emit('togglePlay'), [\"stop\"]))\n }, [$options.item.data.cover ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"img\", {\n key: 0,\n class: \"cover is-tiny\",\n src: $options.item.data.cover\n }, null, 8 /* PROPS */, _hoisted_2)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"content\", {\n player: $props.player,\n item: $options.item,\n loaded: $options.loaded\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"h4\", {\n class: \"title is-5\",\n onClick: _cache[1] || (_cache[1] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => _ctx.$emit('togglePlay'), [\"stop\"]))\n }, [$options.playing ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_4, _hoisted_6)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\" \" + (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.name || $options.item.name), 1 /* TEXT */)]), $options.hasAction('page') && $options.item.data.page_url ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: 0,\n class: \"subtitle is-6 is-inline-block\",\n href: $options.item.data.page_url\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($options.item.data.page_title), 9 /* TEXT, PROPS */, _hoisted_7)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_8, [$options.item.data.is_downloadable ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: 0,\n class: \"button\",\n href: $options.item.data.url,\n target: \"_blank\"\n }, _hoisted_11, 8 /* PROPS */, _hoisted_9)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $props.player && $props.player.sets.pin != _ctx.$parent.set ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n key: 1,\n class: \"button\",\n onClick: _cache[2] || (_cache[2] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => $props.player.togglePin($options.item), [\"stop\"]))\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", _hoisted_12, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(($options.pinned ? '' : 'has-text-grey-light ') + 'fa fa-thumbtack')\n }, null, 2 /* CLASS */)])])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"actions\", {\n player: $props.player,\n item: $options.item,\n loaded: $options.loaded\n })]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"extra-right\", {\n player: $props.player,\n item: $options.item,\n loaded: $options.loaded\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASoundItem.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n class: \"button-group actions\"\n};\nconst _hoisted_2 = [\"href\"];\nconst _hoisted_3 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: \"fa fa-external-link\"\n})], -1 /* HOISTED */);\nconst _hoisted_4 = [_hoisted_3];\nconst _hoisted_5 = [\"href\"];\nconst _hoisted_6 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-download\"\n})], -1 /* HOISTED */);\nconst _hoisted_7 = [_hoisted_6];\nconst _hoisted_8 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"icon is-small\"\n}, [/*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: \"fa fa-star\"\n})], -1 /* HOISTED */);\nconst _hoisted_9 = [_hoisted_8];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['a-sound-item m-0 button-group', $options.playing && 'playing' || ''])\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"title\", {\n player: $props.player,\n item: $options.item,\n loaded: $options.loaded\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['label is-flex-grow-1 align-left', $options.playing && 'blink' || '']),\n onClick: _cache[0] || (_cache[0] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => _ctx.$emit('togglePlay'), [\"stop\"]))\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.name || $options.item.name), 3 /* TEXT, CLASS */)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_1, [$options.hasAction('page') ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: 0,\n class: \"button action\",\n href: $options.item.data.page_url\n }, _hoisted_4, 8 /* PROPS */, _hoisted_2)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $options.item.data.is_downloadable ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"a\", {\n key: 1,\n class: \"button action\",\n href: $options.item.data.url,\n target: \"_blank\"\n }, _hoisted_7, 8 /* PROPS */, _hoisted_5)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $props.player && $props.player.sets.pin != _ctx.$parent.set ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n key: 2,\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(['button action', $options.pinned ? 'selected' : 'not-selected']),\n onClick: _cache[1] || (_cache[1] = (0,vue__WEBPACK_IMPORTED_MODULE_0__.withModifiers)($event => $props.player.togglePin($options.item), [\"stop\"]))\n }, _hoisted_9, 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"actions\", {\n player: $props.player,\n item: $options.item,\n loaded: $options.loaded\n })]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"extra-right\", {\n player: $props.player,\n item: $options.item,\n loaded: $options.loaded\n })], 2 /* CLASS */);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASoundItem.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -275,7 +325,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*************************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n ref: \"form\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"form\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n counts: $data.counts\n })], 512 /* NEED_PATCH */);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStatistics.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = {\n ref: \"form\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"form\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n counts: $data.counts\n })], 512 /* NEED_PATCH */);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStatistics.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -285,7 +335,17 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \***********************************************************************************************************************************************************************************************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n streamer: $data.streamer,\n streamers: $data.streamers,\n Sound: $data.Sound,\n sources: $options.sources,\n fetchStreamers: $options.fetchStreamers\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStreamer.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n streamer: $data.streamer,\n streamers: $data.streamers,\n Sound: $data.Sound,\n sources: $options.sources,\n fetchStreamers: $options.fetchStreamers\n })]);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStreamer.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASwitch.vue?vue&type=template&id=62a3c675": +/*!*********************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASwitch.vue?vue&type=template&id=62a3c675 ***! + \*********************************************************************************************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\nconst _hoisted_1 = [\"title\", \"aria-label\", \"aria-description\"];\nconst _hoisted_2 = {\n class: \"icon\"\n};\nconst _hoisted_3 = {\n key: 0\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"button\", {\n title: $props.ariaLabel,\n \"aria-label\": $props.ariaLabel || $props.label,\n \"aria-description\": $props.ariaDescription,\n onClick: _cache[0] || (_cache[0] = (...args) => $options.toggle && $options.toggle(...args)),\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($options.buttonClass)\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, \"default\", {\n active: $data.active\n }, () => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"i\", {\n class: (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)($props.icon)\n }, null, 2 /* CLASS */)]), $props.label ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"label\", _hoisted_3, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.label), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])], 10 /* CLASS, PROPS */, _hoisted_1);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASwitch.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -295,17 +355,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \********************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"PlayerApp\": function() { return /* binding */ PlayerApp; }\n/* harmony export */ });\n/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components */ \"./src/components/index.js\");\n\nconst App = {\n el: '#app',\n delimiters: ['[[', ']]'],\n components: {\n ..._components__WEBPACK_IMPORTED_MODULE_0__[\"default\"]\n },\n computed: {\n player() {\n return window.aircox.player;\n }\n }\n};\nconst PlayerApp = {\n el: '#player',\n delimiters: ['[[', ']]'],\n components: {\n ..._components__WEBPACK_IMPORTED_MODULE_0__[\"default\"]\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (App);\n\n//# sourceURL=webpack://aircox-assets/./src/app.js?"); - -/***/ }), - -/***/ "./src/appBuilder.js": -/*!***************************!*\ - !*** ./src/appBuilder.js ***! - \***************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ Builder; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n\n\n/**\n * Utility class used to handle Vue applications. It provides way to load\n * remote application and update history.\n */\nclass Builder {\n constructor(config = {}) {\n this.config = config;\n this.title = null;\n this.app = null;\n this.vm = null;\n }\n\n /**\n * Fetch app from remote and mount application.\n */\n fetch(url, {\n el = '#app',\n ...options\n } = {}) {\n return fetch(url, options).then(response => response.text()).then(content => {\n let doc = new DOMParser().parseFromString(content, 'text/html');\n let app = doc.querySelector(el);\n content = app ? app.innerHTML : content;\n return this.mount({\n content,\n title: doc.title,\n reset: true,\n url\n });\n });\n }\n\n /**\n * Mount application, using `create_app` if required.\n *\n * @param {String} options.content: replace app container content with it\n * @param {String} options.title: set DOM document title.\n * @param {String} [options.el=this.config.el]: mount application on this element (querySelector argument)\n * @param {Boolean} [reset=False]: if True, force application recreation.\n * @return `app.mount`'s result.\n */\n mount({\n content = null,\n title = null,\n el = null,\n reset = false,\n props = null\n } = {}) {\n try {\n this.unmount();\n let config = this.config;\n if (el === null) el = config.el;\n if (reset || !this.app) this.app = this.createApp({\n title,\n content,\n el,\n ...config\n }, props);\n this.vm = this.app.mount(el);\n window.scroll(0, 0);\n return this.vm;\n } catch (error) {\n this.unmount();\n throw error;\n }\n }\n createApp({\n el,\n title = null,\n content = null,\n ...config\n }, props) {\n const container = document.querySelector(el);\n if (!container) return;\n if (content) container.innerHTML = content;\n if (title) document.title = title;\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.createApp)(config, props);\n }\n unmount() {\n this.app && this.app.unmount();\n this.app = null;\n this.vm = null;\n }\n\n /**\n * Enable hot reload: catch page change in order to fetch them and\n * load page without actually leaving current one.\n */\n enableHotReload(node = null, historySave = true) {\n if (historySave) this.historySave(document.location, true);\n node.addEventListener('click', event => this._onPageChange(event), true);\n node.addEventListener('submit', event => this._onPageChange(event), true);\n node.addEventListener('popstate', event => this._onPopState(event), true);\n }\n _onPageChange(event) {\n let submit = event.type == 'submit';\n let target = submit || event.target.tagName == 'A' ? event.target : event.target.closest('a');\n if (!target || target.hasAttribute('target')) return;\n let url = submit ? target.getAttribute('action') || '' : target.getAttribute('href');\n if (url === null || !(url === '' || url.startsWith('/') || url.startsWith('?'))) return;\n let options = {};\n if (submit) {\n let formData = new FormData(event.target);\n if (target.method == 'get') url += '?' + new URLSearchParams(formData).toString();else options = {\n ...options,\n method: target.method,\n body: formData\n };\n }\n this.fetch(url, options).then(() => this.historySave(url));\n event.preventDefault();\n event.stopPropagation();\n }\n _onPopState(event) {\n if (event.state && event.state.content)\n // document.title = this.title;\n this.historyLoad(event.state);\n }\n\n /// Save application state into browser history\n historySave(url, replace = false) {\n const el = document.querySelector(this.config.el);\n const state = {\n content: el.innerHTML,\n title: document.title\n };\n if (replace) history.replaceState(state, '', url);else history.pushState(state, '', url);\n }\n\n /// Load application from browser history's state\n historyLoad(state) {\n return this.mount({\n content: state.content,\n title: state.title\n });\n }\n}\n\n//# sourceURL=webpack://aircox-assets/./src/appBuilder.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PlayerApp: function() { return /* binding */ PlayerApp; }\n/* harmony export */ });\n/* harmony import */ var v_calendar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! v-calendar */ \"./node_modules/v-calendar/dist/es/index.js\");\n/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components */ \"./src/components/index.js\");\n\n\nconst App = {\n el: '#app',\n delimiters: ['[[', ']]'],\n components: {\n ..._components__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n ...{\n VCalendar: v_calendar__WEBPACK_IMPORTED_MODULE_0__.Calendar,\n VDatepicker: v_calendar__WEBPACK_IMPORTED_MODULE_0__.DatePicker\n }\n },\n computed: {\n player() {\n return window.aircox.player;\n }\n }\n};\nconst PlayerApp = {\n el: '#player',\n delimiters: ['[[', ']]'],\n components: {\n ..._components__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (App);\n\n//# sourceURL=webpack://aircox-assets/./src/app.js?"); /***/ }), @@ -315,7 +365,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*********************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"admin\": function() { return /* binding */ admin; },\n/* harmony export */ \"base\": function() { return /* binding */ base; }\n/* harmony export */ });\n/* harmony import */ var _AAutocomplete_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AAutocomplete.vue */ \"./src/components/AAutocomplete.vue\");\n/* harmony import */ var _AEpisode_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AEpisode.vue */ \"./src/components/AEpisode.vue\");\n/* harmony import */ var _AList_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AList.vue */ \"./src/components/AList.vue\");\n/* harmony import */ var _APage_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./APage.vue */ \"./src/components/APage.vue\");\n/* harmony import */ var _APlayer_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./APlayer.vue */ \"./src/components/APlayer.vue\");\n/* harmony import */ var _APlaylist_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./APlaylist.vue */ \"./src/components/APlaylist.vue\");\n/* harmony import */ var _APlaylistEditor_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./APlaylistEditor.vue */ \"./src/components/APlaylistEditor.vue\");\n/* harmony import */ var _AProgress_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./AProgress.vue */ \"./src/components/AProgress.vue\");\n/* harmony import */ var _ASoundItem_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./ASoundItem.vue */ \"./src/components/ASoundItem.vue\");\n/* harmony import */ var _AStatistics_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./AStatistics.vue */ \"./src/components/AStatistics.vue\");\n/* harmony import */ var _AStreamer_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./AStreamer.vue */ \"./src/components/AStreamer.vue\");\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Core components\n */\nconst base = {\n AAutocomplete: _AAutocomplete_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n AEpisode: _AEpisode_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n AList: _AList_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n APage: _APage_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n APlayer: _APlayer_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n APlaylist: _APlaylist_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n AProgress: _AProgress_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n ASoundItem: _ASoundItem_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"]\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (base);\nconst admin = {\n ...base,\n AStatistics: _AStatistics_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"],\n AStreamer: _AStreamer_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n APlaylistEditor: _APlaylistEditor_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n};\n\n//# sourceURL=webpack://aircox-assets/./src/components/index.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ admin: function() { return /* binding */ admin; },\n/* harmony export */ base: function() { return /* binding */ base; }\n/* harmony export */ });\n/* harmony import */ var _AAutocomplete_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AAutocomplete.vue */ \"./src/components/AAutocomplete.vue\");\n/* harmony import */ var _ACarousel_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ACarousel.vue */ \"./src/components/ACarousel.vue\");\n/* harmony import */ var _ADropdown_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ADropdown.vue */ \"./src/components/ADropdown.vue\");\n/* harmony import */ var _AEpisode_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AEpisode.vue */ \"./src/components/AEpisode.vue\");\n/* harmony import */ var _AList_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AList.vue */ \"./src/components/AList.vue\");\n/* harmony import */ var _APage_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./APage.vue */ \"./src/components/APage.vue\");\n/* harmony import */ var _APlayer_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./APlayer.vue */ \"./src/components/APlayer.vue\");\n/* harmony import */ var _APlaylist_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./APlaylist.vue */ \"./src/components/APlaylist.vue\");\n/* harmony import */ var _APlaylistEditor_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./APlaylistEditor.vue */ \"./src/components/APlaylistEditor.vue\");\n/* harmony import */ var _AProgress_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./AProgress.vue */ \"./src/components/AProgress.vue\");\n/* harmony import */ var _ASoundItem_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./ASoundItem.vue */ \"./src/components/ASoundItem.vue\");\n/* harmony import */ var _ASwitch_vue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./ASwitch.vue */ \"./src/components/ASwitch.vue\");\n/* harmony import */ var _AStatistics_vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./AStatistics.vue */ \"./src/components/AStatistics.vue\");\n/* harmony import */ var _AStreamer_vue__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./AStreamer.vue */ \"./src/components/AStreamer.vue\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Core components\n */\nconst base = {\n AAutocomplete: _AAutocomplete_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n ACarousel: _ACarousel_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n ADropdown: _ADropdown_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n AEpisode: _AEpisode_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n AList: _AList_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n APage: _APage_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n APlayer: _APlayer_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"],\n APlaylist: _APlaylist_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n AProgress: _AProgress_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"],\n ASoundItem: _ASoundItem_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n ASwitch: _ASwitch_vue__WEBPACK_IMPORTED_MODULE_11__[\"default\"]\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (base);\nconst admin = {\n ...base,\n AStatistics: _AStatistics_vue__WEBPACK_IMPORTED_MODULE_12__[\"default\"],\n AStreamer: _AStreamer_vue__WEBPACK_IMPORTED_MODULE_13__[\"default\"],\n APlaylistEditor: _APlaylistEditor_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"]\n};\n\n//# sourceURL=webpack://aircox-assets/./src/components/index.js?"); /***/ }), @@ -325,7 +375,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \**********************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _fortawesome_fontawesome_free_css_all_min_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @fortawesome/fontawesome-free/css/all.min.css */ \"./node_modules/@fortawesome/fontawesome-free/css/all.min.css\");\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app */ \"./src/app.js\");\n/* harmony import */ var _appBuilder__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./appBuilder */ \"./src/appBuilder.js\");\n/* harmony import */ var _sound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sound */ \"./src/sound.js\");\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./model */ \"./src/model.js\");\n/* harmony import */ var _assets_styles_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./assets/styles.scss */ \"./src/assets/styles.scss\");\n/**\n * This module includes code available for both the public website and\n * administration interface)\n */\n//-- vendor\n\n\n//-- aircox\n\n\n\n\n\nwindow.aircox = {\n // main application\n builder: new _appBuilder__WEBPACK_IMPORTED_MODULE_2__[\"default\"](_app__WEBPACK_IMPORTED_MODULE_1__[\"default\"]),\n get app() {\n return this.builder.app;\n },\n // player application\n playerBuilder: new _appBuilder__WEBPACK_IMPORTED_MODULE_2__[\"default\"](_app__WEBPACK_IMPORTED_MODULE_1__.PlayerApp),\n get playerApp() {\n return this.playerBuilder && this.playerBuilder.app;\n },\n get player() {\n return this.playerBuilder.vm && this.playerBuilder.vm.$refs.player;\n },\n Set: _model__WEBPACK_IMPORTED_MODULE_4__.Set,\n Sound: _sound__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n /**\n * Initialize main application and player.\n */\n init(props = null, {\n config = null,\n builder = null,\n initBuilder = true,\n initPlayer = true,\n hotReload = false,\n el = null\n } = {}) {\n if (initPlayer) {\n let playerBuilder = this.playerBuilder;\n playerBuilder.mount();\n }\n if (initBuilder) {\n builder = builder || this.builder;\n this.builder = builder;\n if (config || window.App) builder.config = config || window.App;\n if (el) builder.config.el = el;\n builder.title = document.title;\n builder.mount({\n props\n });\n if (hotReload) builder.enableHotReload(hotReload);\n }\n },\n /**\n * Filter navbar dropdown menu items\n */\n filter_menu(event) {\n var filter = new RegExp(event.target.value, 'gi');\n var container = event.target.closest('.navbar-dropdown');\n if (event.target.value) for (let item of container.querySelectorAll('a.navbar-item')) item.style.display = item.innerHTML.search(filter) == -1 ? 'none' : null;else for (let item of container.querySelectorAll('a.navbar-item')) item.style.display = null;\n }\n};\n\n//# sourceURL=webpack://aircox-assets/./src/index.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _fortawesome_fontawesome_free_css_all_min_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @fortawesome/fontawesome-free/css/all.min.css */ \"./node_modules/@fortawesome/fontawesome-free/css/all.min.css\");\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app */ \"./src/app.js\");\n/* harmony import */ var _vueLoader__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./vueLoader */ \"./src/vueLoader.js\");\n/* harmony import */ var _sound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sound */ \"./src/sound.js\");\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./model */ \"./src/model.js\");\n/* harmony import */ var _assets_common_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./assets/common.scss */ \"./src/assets/common.scss\");\n/**\n * This module includes code available for both the public website and\n * administration interface)\n */\n//-- vendor\n\n\n//-- aircox\n\n\n\n\n\nwindow.aircox = {\n // main application\n loader: null,\n get app() {\n return this.loader.app;\n },\n // player application\n playerLoader: null,\n get playerApp() {\n return this.playerLoader && this.playerLoader.app;\n },\n get player() {\n return this.playerLoader.vm && this.playerLoader.vm.$refs.player;\n },\n Set: _model__WEBPACK_IMPORTED_MODULE_4__.Set,\n Sound: _sound__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n /**\n * Initialize main application and player.\n */\n init(props = null, {\n hotReload = false,\n el = null,\n config = null,\n playerConfig = null,\n initApp = true,\n initPlayer = true,\n loader = null,\n playerLoader = null\n } = {}) {\n if (initPlayer) {\n playerConfig = playerConfig || _app__WEBPACK_IMPORTED_MODULE_1__.PlayerApp;\n playerLoader = playerLoader || new _vueLoader__WEBPACK_IMPORTED_MODULE_2__[\"default\"](playerConfig);\n playerLoader.enable(false);\n this.playerLoader = playerLoader;\n document.addEventListener(\"keyup\", e => this.onKeyPress(e), false);\n }\n if (initApp) {\n config = config || window.App || _app__WEBPACK_IMPORTED_MODULE_1__[\"default\"];\n config.el = el || config.el;\n loader = loader || new _vueLoader__WEBPACK_IMPORTED_MODULE_2__[\"default\"]({\n el,\n props,\n ...config\n });\n loader.enable(hotReload);\n this.loader = loader;\n }\n },\n onKeyPress(event) {\n if (event.key == \" \") {\n this.player.togglePlay();\n event.stopPropagation();\n }\n },\n /**\n * Filter navbar dropdown menu items\n */\n filter_menu(event) {\n var filter = new RegExp(event.target.value, 'gi');\n var container = event.target.closest('.navbar-dropdown');\n if (event.target.value) for (let item of container.querySelectorAll('a.navbar-item')) item.style.display = item.innerHTML.search(filter) == -1 ? 'none' : null;else for (let item of container.querySelectorAll('a.navbar-item')) item.style.display = null;\n },\n pickDate(url, date) {\n url = `${url}?date=${date.id}`;\n this.loader.pageLoad.load(url);\n }\n};\n\n//# sourceURL=webpack://aircox-assets/./src/index.js?"); /***/ }), @@ -345,7 +395,17 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \**********************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Set\": function() { return /* binding */ Set; },\n/* harmony export */ \"default\": function() { return /* binding */ Model; },\n/* harmony export */ \"getCsrf\": function() { return /* binding */ getCsrf; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\n * Return cookie with provided key\n */\nfunction getCookie(key) {\n if (document.cookie && document.cookie !== '') {\n const cookie = document.cookie.split(';').find(c => c.trim().startsWith(key + '='));\n return cookie ? decodeURIComponent(cookie.split('=')[1]) : null;\n }\n return null;\n}\n\n/**\n * CSRF token provided by Django\n */\nvar csrfToken = null;\n\n/**\n * Get CSRF token\n */\nfunction getCsrf() {\n if (csrfToken === null) csrfToken = getCookie('csrftoken');\n return csrfToken;\n}\n\n// TODO: prevent duplicate simple fetch\n/**\n * Provide interface used to fetch and manipulate objects.\n */\nclass Model {\n /**\n * Instanciate model with provided data and options.\n * By default `url` is taken from `data.url_`.\n */\n constructor(data = {}, {\n url = null,\n ...options\n } = {}) {\n this.url = url || data.url_;\n this.options = options;\n this.commit(data);\n }\n get errors() {\n return this.data && this.data.__errors__;\n }\n\n /**\n * Get instance id from its data\n */\n static getId(data) {\n return 'id' in data ? data.id : data.pk;\n }\n\n /**\n * Return fetch options\n */\n static getOptions(options) {\n return {\n headers: {\n 'Content-Type': 'application/json',\n 'Accept': 'application/json',\n 'X-CSRFToken': getCsrf()\n },\n ...options\n };\n }\n\n /**\n * Return model instances for the provided list of model data.\n * @param {Array} items: array of data\n * @param {Object} options: options passed down to all model instances\n */\n static fromList(items, options = {}) {\n return items ? items.map(d => new this(d, options)) : [];\n }\n\n /**\n * Fetch item from server\n */\n static fetch(url, {\n many = false,\n ...options\n } = {}, args = {}) {\n options = this.getOptions(options);\n const request = fetch(url, options).then(response => response.json());\n if (many) return request.then(data => {\n if (!(data instanceof Array)) data = data.results;\n return this.fromList(data, args);\n });else return request.then(data => new this(data, {\n url: url,\n ...args\n }));\n }\n\n /**\n * Fetch data from server.\n */\n fetch(options) {\n options = this.constructor.getOptions(options);\n return fetch(this.url, options).then(response => response.json()).then(data => this.commit(data));\n }\n\n /**\n * Call API action on object.\n */\n action(path, options, commit = false) {\n options = this.constructor.getOptions(options);\n const promise = fetch(this.url + path, options);\n return commit ? promise.then(data => data.json()).then(data => {\n this.commit(data);\n this.data;\n }) : promise;\n }\n\n /**\n * Update instance's data with provided data. Return None\n */\n commit(data) {\n this.data = data;\n this.id = this.constructor.getId(this.data);\n }\n\n /**\n * Update model data, without reset previous value\n */\n update(data) {\n this.data = {\n ...this.data,\n ...data\n };\n this.id = this.constructor.getId(this.data);\n }\n\n /**\n * Save instance into localStorage.\n */\n store(key) {\n window.localStorage.setItem(key, JSON.stringify(this.data));\n }\n\n /**\n * Load model instance from localStorage.\n */\n static storeLoad(key) {\n let item = window.localStorage.getItem(key);\n return item === null ? item : new this(JSON.parse(item));\n }\n\n /**\n * Return true if model instance has no data\n */\n get isEmpty() {\n return !this.data || Object.keys(this.data).findIndex(k => !!this.data[k] && this.data[k] !== 0) == -1;\n }\n\n /**\n * Return error for a specific attribute name if any \n */\n error(attr = null) {\n return attr === null ? this.errors : this.errors && this.errors[attr];\n }\n}\n\n/**\n * List of models\n */\nclass Set {\n constructor(model, {\n items = [],\n url = null,\n args = {},\n unique = null,\n max = null,\n storeKey = null\n } = {}) {\n this.items = [];\n this.model = model;\n this.url = url;\n this.unique = unique;\n this.max = max;\n this.storeKey = storeKey;\n for (var item of items) this.push(item, {\n args: args,\n save: false\n });\n }\n get length() {\n return this.items.length;\n }\n\n /**\n * Fetch multiple items from server\n */\n static fetch(model, url, options = null, args = null) {\n options = model.getOptions(options);\n return fetch(url, options).then(response => response.json()).then(data => (data instanceof Array ? data : data.results).map(d => new model(d, {\n url: url,\n ...args\n })));\n }\n\n /**\n * Load list from localStorage\n */\n static storeLoad(model, key, args = {}) {\n let items = window.localStorage.getItem(key);\n return new this(model, {\n ...args,\n storeKey: key,\n items: items ? JSON.parse(items) : []\n });\n }\n\n /**\n * Store list into localStorage\n */\n store() {\n this.storeKey && window.localStorage.setItem(this.storeKey, JSON.stringify(this.items.map(i => i.data)));\n }\n\n /**\n * Save item\n */\n save() {\n this.storeKey && this.store();\n }\n\n /**\n * Get item at index\n */\n get(index) {\n return this.items[index];\n }\n\n /**\n * Find an item by id or using a predicate function\n */\n find(pred) {\n return pred instanceof Function ? this.items.find(pred) : this.items.find(x => x.id == pred.id);\n }\n\n /**\n * Find item index by id or using a predicate function\n */\n findIndex(pred) {\n return pred instanceof Function ? this.items.findIndex(pred) : this.items.findIndex(x => x.id == pred.id);\n }\n\n /**\n * Add item to set, return index.\n */\n push(item, {\n args = {},\n save = true\n } = {}) {\n item = item instanceof this.model ? item : new this.model(item, args);\n if (this.unique) {\n let index = this.findIndex(item);\n if (index > -1) return index;\n }\n if (this.max && this.items.length >= this.max) this.items.splice(0, this.items.length - this.max);\n this.items.push(item);\n save && this.save();\n return this.items.length - 1;\n }\n\n /**\n * Remove item from set by index\n */\n remove(index, {\n save = true\n } = {}) {\n this.items.splice(index, 1);\n save && this.save();\n }\n\n /**\n * Clear items, assign new ones\n */\n reset(items = []) {\n // TODO: check reactivity\n this.items = [];\n for (var item of items) this.push(item);\n }\n move(from, to) {\n if (from >= this.length || to > this.length) throw \"source or target index is not in range\";\n const value = this.items[from];\n this.items.splice(from, 1);\n this.items.splice(to, 0, value);\n }\n}\nSet[Symbol.iterator] = function () {\n return this.items[Symbol.iterator]();\n};\n\n//# sourceURL=webpack://aircox-assets/./src/model.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Set: function() { return /* binding */ Set; },\n/* harmony export */ \"default\": function() { return /* binding */ Model; },\n/* harmony export */ getCsrf: function() { return /* binding */ getCsrf; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\n * Return cookie with provided key\n */\nfunction getCookie(key) {\n if (document.cookie && document.cookie !== '') {\n const cookie = document.cookie.split(';').find(c => c.trim().startsWith(key + '='));\n return cookie ? decodeURIComponent(cookie.split('=')[1]) : null;\n }\n return null;\n}\n\n/**\n * CSRF token provided by Django\n */\nvar csrfToken = null;\n\n/**\n * Get CSRF token\n */\nfunction getCsrf() {\n if (csrfToken === null) csrfToken = getCookie('csrftoken');\n return csrfToken;\n}\n\n// TODO: prevent duplicate simple fetch\n/**\n * Provide interface used to fetch and manipulate objects.\n */\nclass Model {\n /**\n * Instanciate model with provided data and options.\n * By default `url` is taken from `data.url_`.\n */\n constructor(data = {}, {\n url = null,\n ...options\n } = {}) {\n this.url = url || data.url_;\n this.options = options;\n this.commit(data);\n }\n get errors() {\n return this.data && this.data.__errors__;\n }\n\n /**\n * Get instance id from its data\n */\n static getId(data) {\n return 'id' in data ? data.id : data.pk;\n }\n\n /**\n * Return fetch options\n */\n static getOptions(options) {\n return {\n headers: {\n 'Content-Type': 'application/json',\n 'Accept': 'application/json',\n 'X-CSRFToken': getCsrf()\n },\n ...options\n };\n }\n\n /**\n * Return model instances for the provided list of model data.\n * @param {Array} items: array of data\n * @param {Object} options: options passed down to all model instances\n */\n static fromList(items, options = {}) {\n return items ? items.map(d => new this(d, options)) : [];\n }\n\n /**\n * Fetch item from server\n */\n static fetch(url, {\n many = false,\n ...options\n } = {}, args = {}) {\n options = this.getOptions(options);\n const request = fetch(url, options).then(response => response.json());\n if (many) return request.then(data => {\n if (!(data instanceof Array)) data = data.results;\n return this.fromList(data, args);\n });else return request.then(data => new this(data, {\n url: url,\n ...args\n }));\n }\n\n /**\n * Fetch data from server.\n */\n fetch(options) {\n options = this.constructor.getOptions(options);\n return fetch(this.url, options).then(response => response.json()).then(data => this.commit(data));\n }\n\n /**\n * Call API action on object.\n */\n action(path, options, commit = false) {\n options = this.constructor.getOptions(options);\n const promise = fetch(this.url + path, options);\n return commit ? promise.then(data => data.json()).then(data => {\n this.commit(data);\n this.data;\n }) : promise;\n }\n\n /**\n * Update instance's data with provided data. Return None\n */\n commit(data) {\n this.data = data;\n this.id = this.constructor.getId(this.data);\n }\n\n /**\n * Update model data, without reset previous value\n */\n update(data) {\n this.data = {\n ...this.data,\n ...data\n };\n this.id = this.constructor.getId(this.data);\n }\n\n /**\n * Save instance into localStorage.\n */\n store(key) {\n window.localStorage.setItem(key, JSON.stringify(this.data));\n }\n\n /**\n * Load model instance from localStorage.\n */\n static storeLoad(key) {\n let item = window.localStorage.getItem(key);\n return item === null ? item : new this(JSON.parse(item));\n }\n\n /**\n * Return true if model instance has no data\n */\n get isEmpty() {\n return !this.data || Object.keys(this.data).findIndex(k => !!this.data[k] && this.data[k] !== 0) == -1;\n }\n\n /**\n * Return error for a specific attribute name if any\n */\n error(attr = null) {\n return attr === null ? this.errors : this.errors && this.errors[attr];\n }\n}\n\n/**\n * List of models\n */\nclass Set {\n constructor(model, {\n items = [],\n url = null,\n args = {},\n unique = null,\n max = null,\n storeKey = null\n } = {}) {\n this.items = [];\n this.model = model;\n this.url = url;\n this.unique = unique;\n this.max = max;\n this.storeKey = storeKey;\n for (var item of items) this.push(item, {\n args: args,\n save: false\n });\n }\n get length() {\n return this.items.length;\n }\n\n /**\n * Fetch multiple items from server\n */\n static fetch(model, url, options = null, args = null) {\n options = model.getOptions(options);\n return fetch(url, options).then(response => response.json()).then(data => (data instanceof Array ? data : data.results).map(d => new model(d, {\n url: url,\n ...args\n })));\n }\n\n /**\n * Load list from localStorage\n */\n static storeLoad(model, key, args = {}) {\n let items = window.localStorage.getItem(key);\n return new this(model, {\n ...args,\n storeKey: key,\n items: items ? JSON.parse(items) : []\n });\n }\n\n /**\n * Store list into localStorage\n */\n store() {\n this.storeKey && window.localStorage.setItem(this.storeKey, JSON.stringify(this.items.map(i => i.data)));\n }\n\n /**\n * Save item\n */\n save() {\n this.storeKey && this.store();\n }\n\n /**\n * Get item at index\n */\n get(index) {\n return this.items[index];\n }\n\n /**\n * Find an item by id or using a predicate function\n */\n find(pred) {\n return pred instanceof Function ? this.items.find(pred) : this.items.find(x => x.id == pred.id);\n }\n\n /**\n * Find item index by id or using a predicate function\n */\n findIndex(pred) {\n return pred instanceof Function ? this.items.findIndex(pred) : this.items.findIndex(x => x.id == pred.id);\n }\n\n /**\n * Add item to set, return index.\n */\n push(item, {\n args = {},\n save = true\n } = {}) {\n item = item instanceof this.model ? item : new this.model(item, args);\n if (this.unique) {\n let index = this.findIndex(item);\n if (index > -1) return index;\n }\n if (this.max && this.items.length >= this.max) this.items.splice(0, this.items.length - this.max);\n this.items.push(item);\n save && this.save();\n return this.items.length - 1;\n }\n\n /**\n * Remove item from set by index\n */\n remove(index, {\n save = true\n } = {}) {\n this.items.splice(index, 1);\n save && this.save();\n }\n\n /**\n * Clear items, assign new ones\n */\n reset(items = []) {\n // TODO: check reactivity\n this.items = [];\n for (var item of items) this.push(item);\n }\n move(from, to) {\n if (from >= this.length || to > this.length) throw \"source or target index is not in range\";\n const value = this.items[from];\n this.items.splice(from, 1);\n this.items.splice(to, 0, value);\n }\n}\nSet[Symbol.iterator] = function () {\n return this.items[Symbol.iterator]();\n};\n\n//# sourceURL=webpack://aircox-assets/./src/model.js?"); + +/***/ }), + +/***/ "./src/pageLoad.js": +/*!*************************!*\ + !*** ./src/pageLoad.js ***! + \*************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ PageLoad; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\n * Load page without leaving current one (hot-reload).\n */\nclass PageLoad {\n constructor(el, {\n loadingClass = \"loading\",\n append = false\n } = {}) {\n this.el = el;\n this.append = append;\n this.loadingClass = loadingClass;\n }\n get target() {\n if (!this._target) this._target = document.querySelector(this.el);\n return this._target;\n }\n reset() {\n this._target = null;\n }\n\n /**\n * Enable hot reload: catch page change in order to fetch them and\n * load page without actually leaving current one.\n */\n enable(target = null) {\n if (this._pageChanged) throw \"Already enabled, please disable me\";\n if (!target) target = this.target || document.body;\n this.historySave(document.location, true);\n this._pageChanged = event => this.pageChanged(event);\n this._statePopped = event => this.statePopped(event);\n target.addEventListener('click', this._pageChanged, true);\n target.addEventListener('submit', this._pageChanged, true);\n window.addEventListener('popstate', this._statePopped, true);\n }\n\n /**\n * Disable hot reload, remove listeners.\n */\n disable() {\n this.target.removeEventListener('click', this._pageChanged, true);\n this.target.removeEventListener('submit', this._pageChanged, true);\n window.removeEventListener('popstate', this._statePopped, true);\n this._pageChanged = null;\n this._statePopped = null;\n }\n\n /**\n * Fetch url, return promise, similar to standard Fetch API.\n * Default implementation just forward argument to it.\n */\n fetch(url, options) {\n return fetch(url, options);\n }\n\n /**\n * Fetch app from remote and mount application.\n */\n load(url, {\n mount = true,\n scroll = [0, 0],\n ...options\n } = {}) {\n if (this.loadingClass) this.target.classList.add(this.loadingClass);\n if (this.onLoad) this.onLoad({\n url,\n el: this.el,\n options\n });\n if (scroll) window.scroll(...scroll);\n return this.fetch(url, options).then(response => response.text()).then(content => {\n if (this.loadingClass) this.target.classList.remove(this.loadingClass);\n var doc = new DOMParser().parseFromString(content, 'text/html');\n var dom = doc.querySelectorAll(this.el);\n var result = {\n url,\n content: dom || [document.createTextNode(content)],\n title: doc.title,\n append: this.append\n };\n mount && this.mount(result);\n return result;\n });\n }\n\n /**\n * Mount the page on provided target element\n */\n mount({\n content,\n title = null,\n ...options\n } = {}) {\n if (this.onPreMount) this.onPreMount({\n target: this.target,\n content,\n items,\n title\n });\n var items = null;\n if (content) items = this.mountContent(content, options);\n if (title) document.title = title;\n if (this.onMount) this.onMount({\n target: this.target,\n content,\n items,\n title\n });\n }\n\n /**\n * Mount page content\n */\n mountContent(content, {\n append = false\n } = {}) {\n if (typeof content == \"string\") {\n this.target.innerHTML = append ? this.target.innerHTML + content : content;\n // TODO\n return [];\n }\n if (!append) this.target.innerHTML = \"\";\n var fragment = document.createDocumentFragment();\n var items = [];\n for (var node of content) while (node.firstChild) {\n items.push(node.firstChild);\n fragment.appendChild(node.firstChild);\n }\n this.target.append(fragment);\n return items;\n }\n\n /// Save application state into browser history\n historySave(url, replace = false) {\n const state = {\n content: this.target.innerHTML,\n title: document.title\n };\n if (replace) history.replaceState(state, '', url);else history.pushState(state, '', url);\n }\n\n // --- events\n pageChanged(event) {\n let submit = event.type == 'submit';\n let target = submit || event.target.tagName == 'A' ? event.target : event.target.closest('a');\n if (!target || target.hasAttribute('target')) return;\n let url = submit ? target.getAttribute('action') || '' : target.getAttribute('href');\n let domain = window.location.protocol + '//' + window.location.hostname;\n let stay = (url === '' || url.startsWith('/') || url.startsWith('?') || url.startsWith(domain)) && url.indexOf('wp-admin') == -1;\n if (url === null || !stay) {\n return;\n }\n let options = {};\n if (submit) {\n let formData = new FormData(event.target);\n if (target.method == 'get') url += '?' + new URLSearchParams(formData).toString();else options = {\n ...options,\n method: target.method,\n body: formData\n };\n }\n this.load(url, options).then(() => this.historySave(url));\n event.preventDefault();\n event.stopPropagation();\n }\n statePopped(event) {\n const state = event.state;\n if (state && state.content) this.mount({\n content: state.content,\n title: state.title\n });\n }\n}\n\n//# sourceURL=webpack://aircox-assets/./src/pageLoad.js?"); /***/ }), @@ -365,7 +425,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Playlist\": function() { return /* binding */ Playlist; },\n/* harmony export */ \"Queue\": function() { return /* binding */ Queue; },\n/* harmony export */ \"Request\": function() { return /* binding */ Request; },\n/* harmony export */ \"Source\": function() { return /* binding */ Source; },\n/* harmony export */ \"Streamer\": function() { return /* binding */ Streamer; }\n/* harmony export */ });\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./model */ \"./src/model.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ \"./src/utils.js\");\n\n\nclass Streamer extends _model__WEBPACK_IMPORTED_MODULE_0__[\"default\"] {\n get playlists() {\n return this.data ? this.data.playlists : [];\n }\n get queues() {\n return this.data ? this.data.queues : [];\n }\n get sources() {\n return [...this.queues, ...this.playlists];\n }\n get source() {\n return this.sources.find(o => o.id == this.data.source);\n }\n commit(data) {\n if (!this.data) this.data = {\n id: data.id,\n playlists: [],\n queues: []\n };\n data.playlists = Playlist.fromList(data.playlists, {\n streamer: this\n });\n data.queues = Queue.fromList(data.queues, {\n streamer: this\n });\n super.commit(data);\n }\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (Streamer);\nclass Request extends _model__WEBPACK_IMPORTED_MODULE_0__[\"default\"] {\n static getId(data) {\n return data.rid;\n }\n}\nclass Source extends _model__WEBPACK_IMPORTED_MODULE_0__[\"default\"] {\n constructor(data, {\n streamer = null,\n ...options\n } = {}) {\n super(data, options);\n this.streamer = streamer;\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.setEcoInterval)(() => this.tick(), 1000);\n }\n get isQueue() {\n return false;\n }\n get isPlaylist() {\n return false;\n }\n get isPlaying() {\n return this.data.status == 'playing';\n }\n get isPaused() {\n return this.data.status == 'paused';\n }\n get remainingString() {\n if (!this.remaining) return '00:00';\n const seconds = Math.floor(this.remaining % 60);\n const minutes = Math.floor(this.remaining / 60);\n return String(minutes).padStart(2, '0') + ':' + String(seconds).padStart(2, '0');\n }\n sync() {\n return this.action('sync/', {\n method: 'POST'\n }, true);\n }\n skip() {\n return this.action('skip/', {\n method: 'POST'\n }, true);\n }\n restart() {\n return this.action('restart/', {\n method: 'POST'\n }, true);\n }\n seek(count) {\n return this.action('seek/', {\n method: 'POST',\n body: JSON.stringify({\n count: count\n })\n }, true);\n }\n tick() {\n if (!this.data.remaining || !this.isPlaying) return;\n const delta = (Date.now() - this.commitDate) / 1000;\n this.remaining = this.data.remaining - delta;\n }\n commit(data) {\n if (data.air_time) data.air_time = new Date(data.air_time);\n this.commitDate = Date.now();\n super.commit(data);\n this.remaining = data.remaining;\n }\n}\nclass Playlist extends Source {\n get isPlaylist() {\n return true;\n }\n}\nclass Queue extends Source {\n get isQueue() {\n return true;\n }\n get queue() {\n return this.data && this.data.queue;\n }\n commit(data) {\n data.queue = Request.fromList(data.queue);\n super.commit(data);\n }\n push(soundId) {\n return this.action('push/', {\n method: 'POST',\n body: JSON.stringify({\n 'sound_id': parseInt(soundId)\n })\n }, true);\n }\n}\n\n//# sourceURL=webpack://aircox-assets/./src/streamer.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Playlist: function() { return /* binding */ Playlist; },\n/* harmony export */ Queue: function() { return /* binding */ Queue; },\n/* harmony export */ Request: function() { return /* binding */ Request; },\n/* harmony export */ Source: function() { return /* binding */ Source; },\n/* harmony export */ Streamer: function() { return /* binding */ Streamer; }\n/* harmony export */ });\n/* harmony import */ var _model__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./model */ \"./src/model.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ \"./src/utils.js\");\n\n\nclass Streamer extends _model__WEBPACK_IMPORTED_MODULE_0__[\"default\"] {\n get playlists() {\n return this.data ? this.data.playlists : [];\n }\n get queues() {\n return this.data ? this.data.queues : [];\n }\n get sources() {\n return [...this.queues, ...this.playlists];\n }\n get source() {\n return this.sources.find(o => o.id == this.data.source);\n }\n commit(data) {\n if (!this.data) this.data = {\n id: data.id,\n playlists: [],\n queues: []\n };\n data.playlists = Playlist.fromList(data.playlists, {\n streamer: this\n });\n data.queues = Queue.fromList(data.queues, {\n streamer: this\n });\n super.commit(data);\n }\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (Streamer);\nclass Request extends _model__WEBPACK_IMPORTED_MODULE_0__[\"default\"] {\n static getId(data) {\n return data.rid;\n }\n}\nclass Source extends _model__WEBPACK_IMPORTED_MODULE_0__[\"default\"] {\n constructor(data, {\n streamer = null,\n ...options\n } = {}) {\n super(data, options);\n this.streamer = streamer;\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.setEcoInterval)(() => this.tick(), 1000);\n }\n get isQueue() {\n return false;\n }\n get isPlaylist() {\n return false;\n }\n get isPlaying() {\n return this.data.status == 'playing';\n }\n get isPaused() {\n return this.data.status == 'paused';\n }\n get remainingString() {\n if (!this.remaining) return '00:00';\n const seconds = Math.floor(this.remaining % 60);\n const minutes = Math.floor(this.remaining / 60);\n return String(minutes).padStart(2, '0') + ':' + String(seconds).padStart(2, '0');\n }\n sync() {\n return this.action('sync/', {\n method: 'POST'\n }, true);\n }\n skip() {\n return this.action('skip/', {\n method: 'POST'\n }, true);\n }\n restart() {\n return this.action('restart/', {\n method: 'POST'\n }, true);\n }\n seek(count) {\n return this.action('seek/', {\n method: 'POST',\n body: JSON.stringify({\n count: count\n })\n }, true);\n }\n tick() {\n if (!this.data.remaining || !this.isPlaying) return;\n const delta = (Date.now() - this.commitDate) / 1000;\n this.remaining = this.data.remaining - delta;\n }\n commit(data) {\n if (data.air_time) data.air_time = new Date(data.air_time);\n this.commitDate = Date.now();\n super.commit(data);\n this.remaining = data.remaining;\n }\n}\nclass Playlist extends Source {\n get isPlaylist() {\n return true;\n }\n}\nclass Queue extends Source {\n get isQueue() {\n return true;\n }\n get queue() {\n return this.data && this.data.queue;\n }\n commit(data) {\n data.queue = Request.fromList(data.queue);\n super.commit(data);\n }\n push(soundId) {\n return this.action('push/', {\n method: 'POST',\n body: JSON.stringify({\n 'sound_id': parseInt(soundId)\n })\n }, true);\n }\n}\n\n//# sourceURL=webpack://aircox-assets/./src/streamer.js?"); /***/ }), @@ -385,17 +445,37 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \**********************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"setEcoInterval\": function() { return /* binding */ setEcoInterval; },\n/* harmony export */ \"setEcoTimeout\": function() { return /* binding */ setEcoTimeout; }\n/* harmony export */ });\n/**\n * Run function with provided args only if document is not hidden\n */\nfunction setEcoTimeout(func, ...args) {\n return setTimeout((...args) => {\n !document.hidden && func(...args);\n }, ...args);\n}\n\n/**\n * Run function at specific interval only if document is not hidden\n */\nfunction setEcoInterval(func, ...args) {\n return setInterval((...args) => {\n !document.hidden && func(...args);\n }, ...args);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/utils.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setEcoInterval: function() { return /* binding */ setEcoInterval; },\n/* harmony export */ setEcoTimeout: function() { return /* binding */ setEcoTimeout; }\n/* harmony export */ });\n/**\n * Run function with provided args only if document is not hidden\n */\nfunction setEcoTimeout(func, ...args) {\n return setTimeout((...args) => {\n !document.hidden && func(...args);\n }, ...args);\n}\n\n/**\n * Run function at specific interval only if document is not hidden\n */\nfunction setEcoInterval(func, ...args) {\n return setInterval((...args) => {\n !document.hidden && func(...args);\n }, ...args);\n}\n\n//# sourceURL=webpack://aircox-assets/./src/utils.js?"); /***/ }), -/***/ "./src/assets/styles.scss": +/***/ "./src/vueLoader.js": +/*!**************************!*\ + !*** ./src/vueLoader.js ***! + \**************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ VueLoader; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm-bundler.js\");\n/* harmony import */ var _pageLoad__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./pageLoad */ \"./src/pageLoad.js\");\n\n\n\n/**\n * Handles loading Vue js app on page load.\n */\nclass VueLoader {\n constructor({\n el = null,\n props = {},\n ...appConfig\n } = {}, loaderOptions = {}) {\n this.appConfig = appConfig;\n this.appConfig.el = el;\n this.props = props;\n this.pageLoad = new _pageLoad__WEBPACK_IMPORTED_MODULE_1__[\"default\"](el, loaderOptions);\n this.pageLoad.onPreMount = event => this.onPreMount(event);\n this.pageLoad.onMount = event => this.onMount(event);\n }\n enable(hotReload = true) {\n hotReload && this.pageLoad.enable(document.body);\n this.mount();\n }\n mount() {\n if (this.app) this.unmount();\n const app = (0,vue__WEBPACK_IMPORTED_MODULE_0__.createApp)(this.appConfig, this.props);\n app.config.globalProperties.window = window;\n this.vm = app.mount(this.pageLoad.el);\n this.app = app;\n }\n unmount() {\n if (!this.app) return;\n try {\n this.app.unmount();\n } catch (_) {\n null;\n }\n this.app = null;\n this.vm = null;\n this.pageLoad.reset();\n }\n onPreMount() {\n this.unmount();\n }\n onMount() {\n this.mount();\n }\n}\n\n//# sourceURL=webpack://aircox-assets/./src/vueLoader.js?"); + +/***/ }), + +/***/ "./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css": +/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css ***! + \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n// extracted by mini-css-extract-plugin\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use%5B0%5D!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use%5B2%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + +/***/ "./src/assets/common.scss": /*!********************************!*\ - !*** ./src/assets/styles.scss ***! + !*** ./src/assets/common.scss ***! \********************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n// extracted by mini-css-extract-plugin\n\n\n//# sourceURL=webpack://aircox-assets/./src/assets/styles.scss?"); +eval("__webpack_require__.r(__webpack_exports__);\n// extracted by mini-css-extract-plugin\n\n\n//# sourceURL=webpack://aircox-assets/./src/assets/common.scss?"); /***/ }), @@ -419,6 +499,26 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _AAu /***/ }), +/***/ "./src/components/ACarousel.vue": +/*!**************************************!*\ + !*** ./src/components/ACarousel.vue ***! + \**************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ACarousel_vue_vue_type_template_id_b79f173e_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ACarousel.vue?vue&type=template&id=b79f173e&scoped=true */ \"./src/components/ACarousel.vue?vue&type=template&id=b79f173e&scoped=true\");\n/* harmony import */ var _ACarousel_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ACarousel.vue?vue&type=script&lang=js */ \"./src/components/ACarousel.vue?vue&type=script&lang=js\");\n/* harmony import */ var _ACarousel_vue_vue_type_style_index_0_id_b79f173e_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css */ \"./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\n\n\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ACarousel_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_ACarousel_vue_vue_type_template_id_b79f173e_scoped_true__WEBPACK_IMPORTED_MODULE_0__.render],['__scopeId',\"data-v-b79f173e\"],['__file',\"src/components/ACarousel.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?"); + +/***/ }), + +/***/ "./src/components/ADropdown.vue": +/*!**************************************!*\ + !*** ./src/components/ADropdown.vue ***! + \**************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ADropdown_vue_vue_type_template_id_a87ed2dc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ADropdown.vue?vue&type=template&id=a87ed2dc */ \"./src/components/ADropdown.vue?vue&type=template&id=a87ed2dc\");\n/* harmony import */ var _ADropdown_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ADropdown.vue?vue&type=script&lang=js */ \"./src/components/ADropdown.vue?vue&type=script&lang=js\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ADropdown_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_ADropdown_vue_vue_type_template_id_a87ed2dc__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/ADropdown.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/ADropdown.vue?"); + +/***/ }), + /***/ "./src/components/AEpisode.vue": /*!*************************************!*\ !*** ./src/components/AEpisode.vue ***! @@ -455,7 +555,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _APa \************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"State\": function() { return /* reexport safe */ _APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__.State; }\n/* harmony export */ });\n/* harmony import */ var _APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./APlayer.vue?vue&type=template&id=1779e8bc */ \"./src/components/APlayer.vue?vue&type=template&id=1779e8bc\");\n/* harmony import */ var _APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./APlayer.vue?vue&type=script&lang=js */ \"./src/components/APlayer.vue?vue&type=script&lang=js\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/APlayer.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ State: function() { return /* reexport safe */ _APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__.State; }\n/* harmony export */ });\n/* harmony import */ var _APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./APlayer.vue?vue&type=template&id=1779e8bc */ \"./src/components/APlayer.vue?vue&type=template&id=1779e8bc\");\n/* harmony import */ var _APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./APlayer.vue?vue&type=script&lang=js */ \"./src/components/APlayer.vue?vue&type=script&lang=js\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/APlayer.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?"); /***/ }), @@ -475,7 +575,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _APl \********************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Page\": function() { return /* reexport safe */ _APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__.Page; }\n/* harmony export */ });\n/* harmony import */ var _APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./APlaylistEditor.vue?vue&type=template&id=6e4f72a0 */ \"./src/components/APlaylistEditor.vue?vue&type=template&id=6e4f72a0\");\n/* harmony import */ var _APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./APlaylistEditor.vue?vue&type=script&lang=js */ \"./src/components/APlaylistEditor.vue?vue&type=script&lang=js\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/APlaylistEditor.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Page: function() { return /* reexport safe */ _APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__.Page; }\n/* harmony export */ });\n/* harmony import */ var _APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./APlaylistEditor.vue?vue&type=template&id=6e4f72a0 */ \"./src/components/APlaylistEditor.vue?vue&type=template&id=6e4f72a0\");\n/* harmony import */ var _APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./APlaylistEditor.vue?vue&type=script&lang=js */ \"./src/components/APlaylistEditor.vue?vue&type=script&lang=js\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/APlaylistEditor.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?"); /***/ }), @@ -539,6 +639,16 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ASt /***/ }), +/***/ "./src/components/ASwitch.vue": +/*!************************************!*\ + !*** ./src/components/ASwitch.vue ***! + \************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ASwitch_vue_vue_type_template_id_62a3c675__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ASwitch.vue?vue&type=template&id=62a3c675 */ \"./src/components/ASwitch.vue?vue&type=template&id=62a3c675\");\n/* harmony import */ var _ASwitch_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ASwitch.vue?vue&type=script&lang=js */ \"./src/components/ASwitch.vue?vue&type=script&lang=js\");\n/* harmony import */ var _media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_media_data_code_projets_aircox_assets_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ASwitch_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_ASwitch_vue_vue_type_template_id_62a3c675__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/ASwitch.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASwitch.vue?"); + +/***/ }), + /***/ "./src/components/AActionButton.vue?vue&type=script&lang=js": /*!******************************************************************!*\ !*** ./src/components/AActionButton.vue?vue&type=script&lang=js ***! @@ -559,6 +669,26 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), +/***/ "./src/components/ACarousel.vue?vue&type=script&lang=js": +/*!**************************************************************!*\ + !*** ./src/components/ACarousel.vue?vue&type=script&lang=js ***! + \**************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ACarousel_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ACarousel_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ACarousel.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?"); + +/***/ }), + +/***/ "./src/components/ADropdown.vue?vue&type=script&lang=js": +/*!**************************************************************!*\ + !*** ./src/components/ADropdown.vue?vue&type=script&lang=js ***! + \**************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ADropdown_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ADropdown_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ADropdown.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ADropdown.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/ADropdown.vue?"); + +/***/ }), + /***/ "./src/components/AEpisode.vue?vue&type=script&lang=js": /*!*************************************************************!*\ !*** ./src/components/AEpisode.vue?vue&type=script&lang=js ***! @@ -595,7 +725,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"State\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__.State; },\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlayer.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlayer.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ State: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__.State; },\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlayer.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlayer.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?"); /***/ }), @@ -615,7 +745,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Page\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__.Page; },\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlaylistEditor.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlaylistEditor.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Page: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__.Page; },\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlaylistEditor.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlaylistEditor.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?"); /***/ }), @@ -679,13 +809,23 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), +/***/ "./src/components/ASwitch.vue?vue&type=script&lang=js": +/*!************************************************************!*\ + !*** ./src/components/ASwitch.vue?vue&type=script&lang=js ***! + \************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASwitch_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASwitch_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ASwitch.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASwitch.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://aircox-assets/./src/components/ASwitch.vue?"); + +/***/ }), + /***/ "./src/components/AActionButton.vue?vue&type=template&id=3f443389": /*!************************************************************************!*\ !*** ./src/components/AActionButton.vue?vue&type=template&id=3f443389 ***! \************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AActionButton_vue_vue_type_template_id_3f443389__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AActionButton_vue_vue_type_template_id_3f443389__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AActionButton.vue?vue&type=template&id=3f443389 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AActionButton.vue?vue&type=template&id=3f443389\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AActionButton.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AActionButton_vue_vue_type_template_id_3f443389__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AActionButton_vue_vue_type_template_id_3f443389__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AActionButton.vue?vue&type=template&id=3f443389 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AActionButton.vue?vue&type=template&id=3f443389\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AActionButton.vue?"); /***/ }), @@ -695,7 +835,27 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AAutocomplete_vue_vue_type_template_id_32d72269__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AAutocomplete_vue_vue_type_template_id_32d72269__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AAutocomplete.vue?vue&type=template&id=32d72269 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AAutocomplete.vue?vue&type=template&id=32d72269\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AAutocomplete.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AAutocomplete_vue_vue_type_template_id_32d72269__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AAutocomplete_vue_vue_type_template_id_32d72269__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AAutocomplete.vue?vue&type=template&id=32d72269 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AAutocomplete.vue?vue&type=template&id=32d72269\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AAutocomplete.vue?"); + +/***/ }), + +/***/ "./src/components/ACarousel.vue?vue&type=template&id=b79f173e&scoped=true": +/*!********************************************************************************!*\ + !*** ./src/components/ACarousel.vue?vue&type=template&id=b79f173e&scoped=true ***! + \********************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ACarousel_vue_vue_type_template_id_b79f173e_scoped_true__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ACarousel_vue_vue_type_template_id_b79f173e_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ACarousel.vue?vue&type=template&id=b79f173e&scoped=true */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=template&id=b79f173e&scoped=true\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?"); + +/***/ }), + +/***/ "./src/components/ADropdown.vue?vue&type=template&id=a87ed2dc": +/*!********************************************************************!*\ + !*** ./src/components/ADropdown.vue?vue&type=template&id=a87ed2dc ***! + \********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ADropdown_vue_vue_type_template_id_a87ed2dc__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ADropdown_vue_vue_type_template_id_a87ed2dc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ADropdown.vue?vue&type=template&id=a87ed2dc */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ADropdown.vue?vue&type=template&id=a87ed2dc\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ADropdown.vue?"); /***/ }), @@ -705,7 +865,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*******************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AEpisode_vue_vue_type_template_id_2e4db98a__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AEpisode_vue_vue_type_template_id_2e4db98a__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AEpisode.vue?vue&type=template&id=2e4db98a */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AEpisode.vue?vue&type=template&id=2e4db98a\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AEpisode.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AEpisode_vue_vue_type_template_id_2e4db98a__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AEpisode_vue_vue_type_template_id_2e4db98a__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AEpisode.vue?vue&type=template&id=2e4db98a */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AEpisode.vue?vue&type=template&id=2e4db98a\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AEpisode.vue?"); /***/ }), @@ -715,7 +875,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \****************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AList_vue_vue_type_template_id_70c3911f__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AList_vue_vue_type_template_id_70c3911f__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AList.vue?vue&type=template&id=70c3911f */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AList.vue?vue&type=template&id=70c3911f\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AList.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AList_vue_vue_type_template_id_70c3911f__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AList_vue_vue_type_template_id_70c3911f__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AList.vue?vue&type=template&id=70c3911f */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AList.vue?vue&type=template&id=70c3911f\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AList.vue?"); /***/ }), @@ -725,7 +885,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \****************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APage_vue_vue_type_template_id_53c8e290__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APage_vue_vue_type_template_id_53c8e290__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APage.vue?vue&type=template&id=53c8e290 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APage.vue?vue&type=template&id=53c8e290\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APage.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APage_vue_vue_type_template_id_53c8e290__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APage_vue_vue_type_template_id_53c8e290__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APage.vue?vue&type=template&id=53c8e290 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APage.vue?vue&type=template&id=53c8e290\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APage.vue?"); /***/ }), @@ -735,7 +895,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \******************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlayer.vue?vue&type=template&id=1779e8bc */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlayer.vue?vue&type=template&id=1779e8bc\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlayer_vue_vue_type_template_id_1779e8bc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlayer.vue?vue&type=template&id=1779e8bc */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlayer.vue?vue&type=template&id=1779e8bc\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlayer.vue?"); /***/ }), @@ -745,7 +905,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylist_vue_vue_type_template_id_60410bd3__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylist_vue_vue_type_template_id_60410bd3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlaylist.vue?vue&type=template&id=60410bd3 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlaylist.vue?vue&type=template&id=60410bd3\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylist.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylist_vue_vue_type_template_id_60410bd3__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylist_vue_vue_type_template_id_60410bd3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlaylist.vue?vue&type=template&id=60410bd3 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlaylist.vue?vue&type=template&id=60410bd3\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylist.vue?"); /***/ }), @@ -755,7 +915,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlaylistEditor.vue?vue&type=template&id=6e4f72a0 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlaylistEditor.vue?vue&type=template&id=6e4f72a0\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_APlaylistEditor_vue_vue_type_template_id_6e4f72a0__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./APlaylistEditor.vue?vue&type=template&id=6e4f72a0 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/APlaylistEditor.vue?vue&type=template&id=6e4f72a0\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/APlaylistEditor.vue?"); /***/ }), @@ -765,7 +925,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AProgress_vue_vue_type_template_id_6871a6ae__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AProgress_vue_vue_type_template_id_6871a6ae__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AProgress.vue?vue&type=template&id=6871a6ae */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AProgress.vue?vue&type=template&id=6871a6ae\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AProgress.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AProgress_vue_vue_type_template_id_6871a6ae__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AProgress_vue_vue_type_template_id_6871a6ae__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AProgress.vue?vue&type=template&id=6871a6ae */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AProgress.vue?vue&type=template&id=6871a6ae\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AProgress.vue?"); /***/ }), @@ -775,7 +935,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \***************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARow_vue_vue_type_template_id_2f72fd2e__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARow_vue_vue_type_template_id_2f72fd2e__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ARow.vue?vue&type=template&id=2f72fd2e */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ARow.vue?vue&type=template&id=2f72fd2e\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARow.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARow_vue_vue_type_template_id_2f72fd2e__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARow_vue_vue_type_template_id_2f72fd2e__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ARow.vue?vue&type=template&id=2f72fd2e */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ARow.vue?vue&type=template&id=2f72fd2e\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARow.vue?"); /***/ }), @@ -785,7 +945,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \****************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARows_vue_vue_type_template_id_24354cda__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARows_vue_vue_type_template_id_24354cda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ARows.vue?vue&type=template&id=24354cda */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ARows.vue?vue&type=template&id=24354cda\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARows.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARows_vue_vue_type_template_id_24354cda__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ARows_vue_vue_type_template_id_24354cda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ARows.vue?vue&type=template&id=24354cda */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ARows.vue?vue&type=template&id=24354cda\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ARows.vue?"); /***/ }), @@ -795,7 +955,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \*********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASoundItem_vue_vue_type_template_id_2d901711__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASoundItem_vue_vue_type_template_id_2d901711__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ASoundItem.vue?vue&type=template&id=2d901711 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASoundItem.vue?vue&type=template&id=2d901711\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASoundItem.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASoundItem_vue_vue_type_template_id_2d901711__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASoundItem_vue_vue_type_template_id_2d901711__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ASoundItem.vue?vue&type=template&id=2d901711 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASoundItem.vue?vue&type=template&id=2d901711\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASoundItem.vue?"); /***/ }), @@ -805,7 +965,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \**********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStatistics_vue_vue_type_template_id_214a9738__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStatistics_vue_vue_type_template_id_214a9738__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AStatistics.vue?vue&type=template&id=214a9738 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AStatistics.vue?vue&type=template&id=214a9738\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStatistics.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStatistics_vue_vue_type_template_id_214a9738__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStatistics_vue_vue_type_template_id_214a9738__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AStatistics.vue?vue&type=template&id=214a9738 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AStatistics.vue?vue&type=template&id=214a9738\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStatistics.vue?"); /***/ }), @@ -815,7 +975,27 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStreamer_vue_vue_type_template_id_06ef60ae__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStreamer_vue_vue_type_template_id_06ef60ae__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AStreamer.vue?vue&type=template&id=06ef60ae */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AStreamer.vue?vue&type=template&id=06ef60ae\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStreamer.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStreamer_vue_vue_type_template_id_06ef60ae__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AStreamer_vue_vue_type_template_id_06ef60ae__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AStreamer.vue?vue&type=template&id=06ef60ae */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/AStreamer.vue?vue&type=template&id=06ef60ae\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/AStreamer.vue?"); + +/***/ }), + +/***/ "./src/components/ASwitch.vue?vue&type=template&id=62a3c675": +/*!******************************************************************!*\ + !*** ./src/components/ASwitch.vue?vue&type=template&id=62a3c675 ***! + \******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASwitch_vue_vue_type_template_id_62a3c675__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ASwitch_vue_vue_type_template_id_62a3c675__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ASwitch.vue?vue&type=template&id=62a3c675 */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ASwitch.vue?vue&type=template&id=62a3c675\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ASwitch.vue?"); + +/***/ }), + +/***/ "./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css": +/*!**********************************************************************************************!*\ + !*** ./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css ***! + \**********************************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_clonedRuleSet_12_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_12_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_12_use_2_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ACarousel_vue_vue_type_style_index_0_id_b79f173e_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../node_modules/vue-loader/dist/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css */ \"./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ACarousel.vue?vue&type=style&index=0&id=b79f173e&scoped=true&lang=css\");\n\n\n//# sourceURL=webpack://aircox-assets/./src/components/ACarousel.vue?"); /***/ }) diff --git a/aircox/static/aircox/js/chunk-vendors.js b/aircox/static/aircox/js/chunk-vendors.js index 4dddfab..e198c3a 100644 --- a/aircox/static/aircox/js/chunk-vendors.js +++ b/aircox/static/aircox/js/chunk-vendors.js @@ -8,6 +8,622 @@ */ (self["webpackChunkaircox_assets"] = self["webpackChunkaircox_assets"] || []).push([["chunk-vendors"],{ +/***/ "./node_modules/@popperjs/core/lib/createPopper.js": +/*!*********************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/createPopper.js ***! + \*********************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createPopper: function() { return /* binding */ createPopper; },\n/* harmony export */ detectOverflow: function() { return /* reexport safe */ _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"]; },\n/* harmony export */ popperGenerator: function() { return /* binding */ popperGenerator; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _dom_utils_getCompositeRect_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dom-utils/getCompositeRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js\");\n/* harmony import */ var _dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./dom-utils/getLayoutRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js\");\n/* harmony import */ var _dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dom-utils/listScrollParents.js */ \"./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js\");\n/* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./dom-utils/getOffsetParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js\");\n/* harmony import */ var _utils_orderModifiers_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/orderModifiers.js */ \"./node_modules/@popperjs/core/lib/utils/orderModifiers.js\");\n/* harmony import */ var _utils_debounce_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils/debounce.js */ \"./node_modules/@popperjs/core/lib/utils/debounce.js\");\n/* harmony import */ var _utils_mergeByName_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/mergeByName.js */ \"./node_modules/@popperjs/core/lib/utils/mergeByName.js\");\n/* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils/detectOverflow.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n/* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dom-utils/instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n\n\n\n\n\n\n\n\n\n\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\nfunction popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: (0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isElement)(reference) ? (0,_dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(reference) : reference.contextElement ? (0,_dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(reference.contextElement) : [],\n popper: (0,_dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = (0,_utils_orderModifiers_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])((0,_utils_mergeByName_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n state.rects = {\n reference: (0,_dom_utils_getCompositeRect_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(reference, (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(popper), state.options.strategy === 'fixed'),\n popper: (0,_dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: (0,_utils_debounce_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"])(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n var noopFn = function noopFn() {};\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n return instance;\n };\n}\nvar createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\n\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/createPopper.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/contains.js": +/*!***************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/contains.js ***! + \***************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ contains; }\n/* harmony export */ });\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n\nfunction contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isShadowRoot)(rootNode)) {\n var next = child;\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n return false;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/contains.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js": +/*!****************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js ***! + \****************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getBoundingClientRect; }\n/* harmony export */ });\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n/* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n/* harmony import */ var _isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isLayoutViewport.js */ \"./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js\");\n\n\n\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n if (includeScale && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element)) {\n scaleX = element.offsetWidth > 0 ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_1__.round)(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_1__.round)(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n var _ref = (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isElement)(element) ? (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(element) : window,\n visualViewport = _ref.visualViewport;\n var addVisualOffsets = !(0,_isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getClippingRect; }\n/* harmony export */ });\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _getViewportRect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getViewportRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js\");\n/* harmony import */ var _getDocumentRect_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getDocumentRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js\");\n/* harmony import */ var _listScrollParents_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./listScrollParents.js */ \"./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js\");\n/* harmony import */ var _getOffsetParent_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./getOffsetParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js\");\n/* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./getComputedStyle.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js\");\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n/* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBoundingClientRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js\");\n/* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./getParentNode.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js\");\n/* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./contains.js */ \"./node_modules/@popperjs/core/lib/dom-utils/contains.js\");\n/* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n/* harmony import */ var _utils_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/rectToClientRect.js */ \"./node_modules/@popperjs/core/lib/utils/rectToClientRect.js\");\n/* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../utils/math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === _enums_js__WEBPACK_IMPORTED_MODULE_1__.viewport ? (0,_utils_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_getViewportRect_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(element, strategy)) : (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : (0,_utils_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_getDocumentRect_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])((0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\nfunction getClippingParents(element) {\n var clippingParents = (0,_listScrollParents_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])((0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"])(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf((0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"])(element).position) >= 0;\n var clipperElement = canEscapeClipping && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isHTMLElement)(element) ? (0,_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"])(element) : element;\n if (!(0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n return clippingParents.filter(function (clippingParent) {\n return (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(clippingParent) && (0,_contains_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(clippingParent, clipperElement) && (0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"])(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\nfunction getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.max)(rect.top, accRect.top);\n accRect.right = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.min)(rect.right, accRect.right);\n accRect.bottom = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.min)(rect.bottom, accRect.bottom);\n accRect.left = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.max)(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js": +/*!***********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js ***! + \***********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getCompositeRect; }\n/* harmony export */ });\n/* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getBoundingClientRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js\");\n/* harmony import */ var _getNodeScroll_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getNodeScroll.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js\");\n/* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n/* harmony import */ var _getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getWindowScrollBarX.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js\");\n/* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _isScrollParent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./isScrollParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js\");\n/* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n\n\n\n\n\n\n\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(rect.width) / element.offsetWidth || 1;\n var scaleY = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nfunction getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n var isOffsetParentAnElement = (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(offsetParent);\n var offsetParentIsScaled = (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(offsetParent) && isElementScaled(offsetParent);\n var documentElement = (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(offsetParent);\n var rect = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if ((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(offsetParent) !== 'body' ||\n // https://github.com/popperjs/popper-core/issues/1078\n (0,_isScrollParent_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(documentElement)) {\n scroll = (0,_getNodeScroll_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(offsetParent);\n }\n if ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(offsetParent)) {\n offsets = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = (0,_getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(documentElement);\n }\n }\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js": +/*!***********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js ***! + \***********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getComputedStyle; }\n/* harmony export */ });\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n\nfunction getComputedStyle(element) {\n return (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element).getComputedStyle(element);\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js": +/*!*************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js ***! + \*************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getDocumentElement; }\n/* harmony export */ });\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n\nfunction getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return (((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isElement)(element) ? element.ownerDocument :\n // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getDocumentRect; }\n/* harmony export */ });\n/* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getComputedStyle.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js\");\n/* harmony import */ var _getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getWindowScrollBarX.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js\");\n/* harmony import */ var _getWindowScroll_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getWindowScroll.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js\");\n/* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n\n\n\n\n // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nfunction getDocumentRect(element) {\n var _element$ownerDocumen;\n var html = (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element);\n var winScroll = (0,_getWindowScroll_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_2__.max)(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_2__.max)(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + (0,_getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(element);\n var y = -winScroll.scrollTop;\n if ((0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(body || html).direction === 'rtl') {\n x += (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_2__.max)(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js ***! + \***************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getHTMLElementScroll; }\n/* harmony export */ });\nfunction getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js": +/*!********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js ***! + \********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getLayoutRect; }\n/* harmony export */ });\n/* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBoundingClientRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js\");\n // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nfunction getLayoutRect(element) {\n var clientRect = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js": +/*!******************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js ***! + \******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getNodeName; }\n/* harmony export */ });\nfunction getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js": +/*!********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js ***! + \********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getNodeScroll; }\n/* harmony export */ });\n/* harmony import */ var _getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getWindowScroll.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js\");\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n/* harmony import */ var _getHTMLElementScroll_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getHTMLElementScroll.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js\");\n\n\n\n\nfunction getNodeScroll(node) {\n if (node === (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(node) || !(0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(node)) {\n return (0,_getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(node);\n } else {\n return (0,_getHTMLElementScroll_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(node);\n }\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getOffsetParent; }\n/* harmony export */ });\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n/* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n/* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getComputedStyle.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js\");\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n/* harmony import */ var _isTableElement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isTableElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js\");\n/* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getParentNode.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js\");\n/* harmony import */ var _utils_userAgent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/userAgent.js */ \"./node_modules/@popperjs/core/lib/utils/userAgent.js\");\n\n\n\n\n\n\n\nfunction getTrueOffsetParent(element) {\n if (!(0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) ||\n // https://github.com/popperjs/popper-core/issues/837\n (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element).position === 'fixed') {\n return null;\n }\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test((0,_utils_userAgent_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])());\n var isIE = /Trident/i.test((0,_utils_userAgent_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])());\n if (isIE && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element);\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n var currentNode = (0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(element);\n if ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isShadowRoot)(currentNode)) {\n currentNode = currentNode.host;\n }\n while ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(currentNode) && ['html', 'body'].indexOf((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(currentNode)) < 0) {\n var css = (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\nfunction getOffsetParent(element) {\n var window = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(element);\n var offsetParent = getTrueOffsetParent(element);\n while (offsetParent && (0,_isTableElement_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(offsetParent) && (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n if (offsetParent && ((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(offsetParent) === 'html' || (0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(offsetParent) === 'body' && (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(offsetParent).position === 'static')) {\n return window;\n }\n return offsetParent || getContainingBlock(element) || window;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js": +/*!********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js ***! + \********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getParentNode; }\n/* harmony export */ });\n/* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n/* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n\n\n\nfunction getParentNode(element) {\n if ((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element) === 'html') {\n return element;\n }\n return (\n // this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot ||\n // step into the shadow DOM of the parent of a slotted node\n element.parentNode || (\n // DOM Element detected\n (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isShadowRoot)(element) ? element.host : null) ||\n // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(element) // fallback\n );\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getScrollParent; }\n/* harmony export */ });\n/* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getParentNode.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js\");\n/* harmony import */ var _isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isScrollParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js\");\n/* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n/* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n\n\n\n\nfunction getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n if ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(node) && (0,_isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(node)) {\n return node;\n }\n return getScrollParent((0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(node));\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getViewportRect; }\n/* harmony export */ });\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n/* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getWindowScrollBarX.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js\");\n/* harmony import */ var _isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isLayoutViewport.js */ \"./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js\");\n\n\n\n\nfunction getViewportRect(element, strategy) {\n var win = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element);\n var html = (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = (0,_isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])();\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width: width,\n height: height,\n x: x + (0,_getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(element),\n y: y\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js": +/*!****************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getWindow.js ***! + \****************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getWindow; }\n/* harmony export */ });\nfunction getWindow(node) {\n if (node == null) {\n return window;\n }\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n return node;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getWindow.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getWindowScroll; }\n/* harmony export */ });\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n\nfunction getWindowScroll(node) {\n var win = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js": +/*!**************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js ***! + \**************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getWindowScrollBarX; }\n/* harmony export */ });\n/* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBoundingClientRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js\");\n/* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getWindowScroll.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js\");\n\n\n\nfunction getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])((0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element)).left + (0,_getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(element).scrollLeft;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js ***! + \*****************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isElement: function() { return /* binding */ isElement; },\n/* harmony export */ isHTMLElement: function() { return /* binding */ isHTMLElement; },\n/* harmony export */ isShadowRoot: function() { return /* binding */ isShadowRoot; }\n/* harmony export */ });\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n\nfunction isElement(node) {\n var OwnElement = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\nfunction isHTMLElement(node) {\n var OwnElement = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n var OwnElement = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js": +/*!***********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js ***! + \***********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isLayoutViewport; }\n/* harmony export */ });\n/* harmony import */ var _utils_userAgent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/userAgent.js */ \"./node_modules/@popperjs/core/lib/utils/userAgent.js\");\n\nfunction isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test((0,_utils_userAgent_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])());\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isScrollParent; }\n/* harmony export */ });\n/* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getComputedStyle.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js\");\n\nfunction isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isTableElement; }\n/* harmony export */ });\n/* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].indexOf((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element)) >= 0;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js": +/*!************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js ***! + \************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ listScrollParents; }\n/* harmony export */ });\n/* harmony import */ var _getScrollParent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getScrollParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js\");\n/* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getParentNode.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js\");\n/* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n/* harmony import */ var _isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isScrollParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js\");\n\n\n\n\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nfunction listScrollParents(element, list) {\n var _element$ownerDocumen;\n if (list === void 0) {\n list = [];\n }\n var scrollParent = (0,_getScrollParent_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], (0,_isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList :\n // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents((0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(target)));\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/enums.js": +/*!**************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/enums.js ***! + \**************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ afterMain: function() { return /* binding */ afterMain; },\n/* harmony export */ afterRead: function() { return /* binding */ afterRead; },\n/* harmony export */ afterWrite: function() { return /* binding */ afterWrite; },\n/* harmony export */ auto: function() { return /* binding */ auto; },\n/* harmony export */ basePlacements: function() { return /* binding */ basePlacements; },\n/* harmony export */ beforeMain: function() { return /* binding */ beforeMain; },\n/* harmony export */ beforeRead: function() { return /* binding */ beforeRead; },\n/* harmony export */ beforeWrite: function() { return /* binding */ beforeWrite; },\n/* harmony export */ bottom: function() { return /* binding */ bottom; },\n/* harmony export */ clippingParents: function() { return /* binding */ clippingParents; },\n/* harmony export */ end: function() { return /* binding */ end; },\n/* harmony export */ left: function() { return /* binding */ left; },\n/* harmony export */ main: function() { return /* binding */ main; },\n/* harmony export */ modifierPhases: function() { return /* binding */ modifierPhases; },\n/* harmony export */ placements: function() { return /* binding */ placements; },\n/* harmony export */ popper: function() { return /* binding */ popper; },\n/* harmony export */ read: function() { return /* binding */ read; },\n/* harmony export */ reference: function() { return /* binding */ reference; },\n/* harmony export */ right: function() { return /* binding */ right; },\n/* harmony export */ start: function() { return /* binding */ start; },\n/* harmony export */ top: function() { return /* binding */ top; },\n/* harmony export */ variationPlacements: function() { return /* binding */ variationPlacements; },\n/* harmony export */ viewport: function() { return /* binding */ viewport; },\n/* harmony export */ write: function() { return /* binding */ write; }\n/* harmony export */ });\nvar top = 'top';\nvar bottom = 'bottom';\nvar right = 'right';\nvar left = 'left';\nvar auto = 'auto';\nvar basePlacements = [top, bottom, right, left];\nvar start = 'start';\nvar end = 'end';\nvar clippingParents = 'clippingParents';\nvar viewport = 'viewport';\nvar popper = 'popper';\nvar reference = 'reference';\nvar variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nvar placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nvar beforeRead = 'beforeRead';\nvar read = 'read';\nvar afterRead = 'afterRead'; // pure-logic modifiers\n\nvar beforeMain = 'beforeMain';\nvar main = 'main';\nvar afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nvar beforeWrite = 'beforeWrite';\nvar write = 'write';\nvar afterWrite = 'afterWrite';\nvar modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/enums.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/applyStyles.js": +/*!******************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/applyStyles.js ***! + \******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _dom_utils_getNodeName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../dom-utils/getNodeName.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js\");\n/* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom-utils/instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n\n // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!(0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) || !(0,_dom_utils_getNodeName_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!(0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) || !(0,_dom_utils_getNodeName_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(element)) {\n return;\n }\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/applyStyles.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/arrow.js": +/*!************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/arrow.js ***! + \************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n/* harmony import */ var _dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom-utils/getLayoutRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js\");\n/* harmony import */ var _dom_utils_contains_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../dom-utils/contains.js */ \"./node_modules/@popperjs/core/lib/dom-utils/contains.js\");\n/* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../dom-utils/getOffsetParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js\");\n/* harmony import */ var _utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/getMainAxisFromPlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js\");\n/* harmony import */ var _utils_within_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/within.js */ \"./node_modules/@popperjs/core/lib/utils/within.js\");\n/* harmony import */ var _utils_mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/mergePaddingObject.js */ \"./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js\");\n/* harmony import */ var _utils_expandToHashMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/expandToHashMap.js */ \"./node_modules/@popperjs/core/lib/utils/expandToHashMap.js\");\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n\n\n\n\n\n\n\n\n // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return (0,_utils_mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(typeof padding !== 'number' ? padding : (0,_utils_expandToHashMap_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(padding, _enums_js__WEBPACK_IMPORTED_MODULE_2__.basePlacements));\n};\nfunction arrow(_ref) {\n var _state$modifiersData$;\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(state.placement);\n var axis = (0,_utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(basePlacement);\n var isVertical = [_enums_js__WEBPACK_IMPORTED_MODULE_2__.left, _enums_js__WEBPACK_IMPORTED_MODULE_2__.right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n if (!arrowElement || !popperOffsets) {\n return;\n }\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = (0,_dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(arrowElement);\n var minProp = axis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_2__.top : _enums_js__WEBPACK_IMPORTED_MODULE_2__.left;\n var maxProp = axis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_2__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_2__.right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_7__.within)(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n if (!arrowElement) {\n return;\n }\n }\n if (!(0,_dom_utils_contains_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"])(state.elements.popper, arrowElement)) {\n return;\n }\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/arrow.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/computeStyles.js": +/*!********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/computeStyles.js ***! + \********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ mapToStyles: function() { return /* binding */ mapToStyles; }\n/* harmony export */ });\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../dom-utils/getOffsetParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js\");\n/* harmony import */ var _dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dom-utils/getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n/* harmony import */ var _dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../dom-utils/getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom-utils/getComputedStyle.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js\");\n/* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n/* harmony import */ var _utils_getVariation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/getVariation.js */ \"./node_modules/@popperjs/core/lib/utils/getVariation.js\");\n/* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n\n\n\n\n\n\n\n // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(x * dpr) / dpr || 0,\n y: (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(y * dpr) / dpr || 0\n };\n}\nfunction mapToStyles(_ref2) {\n var _Object$assign2;\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = _enums_js__WEBPACK_IMPORTED_MODULE_1__.left;\n var sideY = _enums_js__WEBPACK_IMPORTED_MODULE_1__.top;\n var win = window;\n if (adaptive) {\n var offsetParent = (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n if (offsetParent === (0,_dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(popper)) {\n offsetParent = (0,_dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(popper);\n if ((0,_dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n offsetParent = offsetParent;\n if (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.top || (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.left || placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.right) && variation === _enums_js__WEBPACK_IMPORTED_MODULE_1__.end) {\n sideY = _enums_js__WEBPACK_IMPORTED_MODULE_1__.bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height :\n // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n if (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.left || (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.top || placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.bottom) && variation === _enums_js__WEBPACK_IMPORTED_MODULE_1__.end) {\n sideX = _enums_js__WEBPACK_IMPORTED_MODULE_1__.right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width :\n // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, (0,_dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(popper)) : {\n x: x,\n y: y\n };\n x = _ref4.x;\n y = _ref4.y;\n if (gpuAcceleration) {\n var _Object$assign;\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(state.placement),\n variation: (0,_utils_getVariation_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/computeStyles.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/eventListeners.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/eventListeners.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom-utils/getWindow.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getWindow.js\");\n // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = (0,_dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/eventListeners.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/flip.js": +/*!***********************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/flip.js ***! + \***********************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/getOppositePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js\");\n/* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n/* harmony import */ var _utils_getOppositeVariationPlacement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/getOppositeVariationPlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js\");\n/* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/detectOverflow.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n/* harmony import */ var _utils_computeAutoPlacement_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/computeAutoPlacement.js */ \"./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js\");\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _utils_getVariation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/getVariation.js */ \"./node_modules/@popperjs/core/lib/utils/getVariation.js\");\n\n\n\n\n\n\n\n // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if ((0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(placement) === _enums_js__WEBPACK_IMPORTED_MODULE_2__.auto) {\n return [];\n }\n var oppositePlacement = (0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(placement);\n return [(0,_utils_getOppositeVariationPlacement_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(placement), oppositePlacement, (0,_utils_getOppositeVariationPlacement_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(oppositePlacement)];\n}\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n if (state.modifiersData[name]._skip) {\n return;\n }\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [(0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat((0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(placement) === _enums_js__WEBPACK_IMPORTED_MODULE_2__.auto ? (0,_utils_computeAutoPlacement_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n var _basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(placement);\n var isStartVariation = (0,_utils_getVariation_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(placement) === _enums_js__WEBPACK_IMPORTED_MODULE_2__.start;\n var isVertical = [_enums_js__WEBPACK_IMPORTED_MODULE_2__.top, _enums_js__WEBPACK_IMPORTED_MODULE_2__.bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? _enums_js__WEBPACK_IMPORTED_MODULE_2__.right : _enums_js__WEBPACK_IMPORTED_MODULE_2__.left : isStartVariation ? _enums_js__WEBPACK_IMPORTED_MODULE_2__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_2__.top;\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = (0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(mainVariationSide);\n }\n var altVariationSide = (0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(mainVariationSide);\n var checks = [];\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n checksMap.set(placement, checks);\n }\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n if (_ret === \"break\") break;\n }\n }\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/flip.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/hide.js": +/*!***********************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/hide.js ***! + \***********************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/detectOverflow.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return [_enums_js__WEBPACK_IMPORTED_MODULE_0__.top, _enums_js__WEBPACK_IMPORTED_MODULE_0__.right, _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom, _enums_js__WEBPACK_IMPORTED_MODULE_0__.left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/hide.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/index.js": +/*!************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/index.js ***! + \************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ applyStyles: function() { return /* reexport safe */ _applyStyles_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; },\n/* harmony export */ arrow: function() { return /* reexport safe */ _arrow_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; },\n/* harmony export */ computeStyles: function() { return /* reexport safe */ _computeStyles_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]; },\n/* harmony export */ eventListeners: function() { return /* reexport safe */ _eventListeners_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"]; },\n/* harmony export */ flip: function() { return /* reexport safe */ _flip_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]; },\n/* harmony export */ hide: function() { return /* reexport safe */ _hide_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"]; },\n/* harmony export */ offset: function() { return /* reexport safe */ _offset_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"]; },\n/* harmony export */ popperOffsets: function() { return /* reexport safe */ _popperOffsets_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]; },\n/* harmony export */ preventOverflow: function() { return /* reexport safe */ _preventOverflow_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _applyStyles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./applyStyles.js */ \"./node_modules/@popperjs/core/lib/modifiers/applyStyles.js\");\n/* harmony import */ var _arrow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./arrow.js */ \"./node_modules/@popperjs/core/lib/modifiers/arrow.js\");\n/* harmony import */ var _computeStyles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./computeStyles.js */ \"./node_modules/@popperjs/core/lib/modifiers/computeStyles.js\");\n/* harmony import */ var _eventListeners_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./eventListeners.js */ \"./node_modules/@popperjs/core/lib/modifiers/eventListeners.js\");\n/* harmony import */ var _flip_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./flip.js */ \"./node_modules/@popperjs/core/lib/modifiers/flip.js\");\n/* harmony import */ var _hide_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./hide.js */ \"./node_modules/@popperjs/core/lib/modifiers/hide.js\");\n/* harmony import */ var _offset_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./offset.js */ \"./node_modules/@popperjs/core/lib/modifiers/offset.js\");\n/* harmony import */ var _popperOffsets_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./popperOffsets.js */ \"./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js\");\n/* harmony import */ var _preventOverflow_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./preventOverflow.js */ \"./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js\");\n\n\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/index.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/offset.js": +/*!*************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/offset.js ***! + \*************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ distanceAndSkiddingToXY: function() { return /* binding */ distanceAndSkiddingToXY; }\n/* harmony export */ });\n/* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n\n // eslint-disable-next-line import/no-unused-modules\n\nfunction distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(placement);\n var invertDistance = [_enums_js__WEBPACK_IMPORTED_MODULE_1__.left, _enums_js__WEBPACK_IMPORTED_MODULE_1__.top].indexOf(basePlacement) >= 0 ? -1 : 1;\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [_enums_js__WEBPACK_IMPORTED_MODULE_1__.left, _enums_js__WEBPACK_IMPORTED_MODULE_1__.right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = _enums_js__WEBPACK_IMPORTED_MODULE_1__.placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/offset.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js": +/*!********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js ***! + \********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_computeOffsets_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/computeOffsets.js */ \"./node_modules/@popperjs/core/lib/utils/computeOffsets.js\");\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = (0,_utils_computeOffsets_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js ***! + \**********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n/* harmony import */ var _utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/getMainAxisFromPlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js\");\n/* harmony import */ var _utils_getAltAxis_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/getAltAxis.js */ \"./node_modules/@popperjs/core/lib/utils/getAltAxis.js\");\n/* harmony import */ var _utils_within_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/within.js */ \"./node_modules/@popperjs/core/lib/utils/within.js\");\n/* harmony import */ var _dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../dom-utils/getLayoutRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js\");\n/* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../dom-utils/getOffsetParent.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js\");\n/* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/detectOverflow.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n/* harmony import */ var _utils_getVariation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/getVariation.js */ \"./node_modules/@popperjs/core/lib/utils/getVariation.js\");\n/* harmony import */ var _utils_getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/getFreshSideObject.js */ \"./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js\");\n/* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../utils/math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n\n\n\n\n\n\n\n\n\n\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(state.placement);\n var variation = (0,_utils_getVariation_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = (0,_utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(basePlacement);\n var altAxis = (0,_utils_getAltAxis_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n if (!popperOffsets) {\n return;\n }\n if (checkMainAxis) {\n var _offsetModifierState$;\n var mainSide = mainAxis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.top : _enums_js__WEBPACK_IMPORTED_MODULE_5__.left;\n var altSide = mainAxis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_5__.right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === _enums_js__WEBPACK_IMPORTED_MODULE_5__.start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === _enums_js__WEBPACK_IMPORTED_MODULE_5__.start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? (0,_dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : (0,_utils_getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.within)(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"])(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.within)(tether ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_10__.min)(min, tetherMin) : min, offset, tether ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_10__.max)(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n if (checkAltAxis) {\n var _offsetModifierState$2;\n var _mainSide = mainAxis === 'x' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.top : _enums_js__WEBPACK_IMPORTED_MODULE_5__.left;\n var _altSide = mainAxis === 'x' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_5__.right;\n var _offset = popperOffsets[altAxis];\n var _len = altAxis === 'y' ? 'height' : 'width';\n var _min = _offset + overflow[_mainSide];\n var _max = _offset - overflow[_altSide];\n var isOriginSide = [_enums_js__WEBPACK_IMPORTED_MODULE_5__.top, _enums_js__WEBPACK_IMPORTED_MODULE_5__.left].indexOf(basePlacement) !== -1;\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n var _preventedOffset = tether && isOriginSide ? (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.withinMaxClamp)(_tetherMin, _offset, _tetherMax) : (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.within)(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n});\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/popper-lite.js": +/*!********************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/popper-lite.js ***! + \********************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createPopper: function() { return /* binding */ createPopper; },\n/* harmony export */ defaultModifiers: function() { return /* binding */ defaultModifiers; },\n/* harmony export */ detectOverflow: function() { return /* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"]; },\n/* harmony export */ popperGenerator: function() { return /* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_4__.popperGenerator; }\n/* harmony export */ });\n/* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createPopper.js */ \"./node_modules/@popperjs/core/lib/createPopper.js\");\n/* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createPopper.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n/* harmony import */ var _modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modifiers/eventListeners.js */ \"./node_modules/@popperjs/core/lib/modifiers/eventListeners.js\");\n/* harmony import */ var _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/popperOffsets.js */ \"./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js\");\n/* harmony import */ var _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modifiers/computeStyles.js */ \"./node_modules/@popperjs/core/lib/modifiers/computeStyles.js\");\n/* harmony import */ var _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modifiers/applyStyles.js */ \"./node_modules/@popperjs/core/lib/modifiers/applyStyles.js\");\n\n\n\n\n\nvar defaultModifiers = [_modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"], _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"], _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"]];\nvar createPopper = /*#__PURE__*/(0,_createPopper_js__WEBPACK_IMPORTED_MODULE_4__.popperGenerator)({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\n\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/popper-lite.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/popper.js": +/*!***************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/popper.js ***! + \***************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ applyStyles: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.applyStyles; },\n/* harmony export */ arrow: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.arrow; },\n/* harmony export */ computeStyles: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.computeStyles; },\n/* harmony export */ createPopper: function() { return /* binding */ createPopper; },\n/* harmony export */ createPopperLite: function() { return /* reexport safe */ _popper_lite_js__WEBPACK_IMPORTED_MODULE_11__.createPopper; },\n/* harmony export */ defaultModifiers: function() { return /* binding */ defaultModifiers; },\n/* harmony export */ detectOverflow: function() { return /* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"]; },\n/* harmony export */ eventListeners: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.eventListeners; },\n/* harmony export */ flip: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.flip; },\n/* harmony export */ hide: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.hide; },\n/* harmony export */ offset: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.offset; },\n/* harmony export */ popperGenerator: function() { return /* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_9__.popperGenerator; },\n/* harmony export */ popperOffsets: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.popperOffsets; },\n/* harmony export */ preventOverflow: function() { return /* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.preventOverflow; }\n/* harmony export */ });\n/* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./createPopper.js */ \"./node_modules/@popperjs/core/lib/createPopper.js\");\n/* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./createPopper.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n/* harmony import */ var _modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modifiers/eventListeners.js */ \"./node_modules/@popperjs/core/lib/modifiers/eventListeners.js\");\n/* harmony import */ var _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/popperOffsets.js */ \"./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js\");\n/* harmony import */ var _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modifiers/computeStyles.js */ \"./node_modules/@popperjs/core/lib/modifiers/computeStyles.js\");\n/* harmony import */ var _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modifiers/applyStyles.js */ \"./node_modules/@popperjs/core/lib/modifiers/applyStyles.js\");\n/* harmony import */ var _modifiers_offset_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./modifiers/offset.js */ \"./node_modules/@popperjs/core/lib/modifiers/offset.js\");\n/* harmony import */ var _modifiers_flip_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./modifiers/flip.js */ \"./node_modules/@popperjs/core/lib/modifiers/flip.js\");\n/* harmony import */ var _modifiers_preventOverflow_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modifiers/preventOverflow.js */ \"./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js\");\n/* harmony import */ var _modifiers_arrow_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modifiers/arrow.js */ \"./node_modules/@popperjs/core/lib/modifiers/arrow.js\");\n/* harmony import */ var _modifiers_hide_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./modifiers/hide.js */ \"./node_modules/@popperjs/core/lib/modifiers/hide.js\");\n/* harmony import */ var _popper_lite_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./popper-lite.js */ \"./node_modules/@popperjs/core/lib/popper-lite.js\");\n/* harmony import */ var _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./modifiers/index.js */ \"./node_modules/@popperjs/core/lib/modifiers/index.js\");\n\n\n\n\n\n\n\n\n\n\nvar defaultModifiers = [_modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"], _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"], _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"], _modifiers_offset_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"], _modifiers_flip_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"], _modifiers_preventOverflow_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"], _modifiers_arrow_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"], _modifiers_hide_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"]];\nvar createPopper = /*#__PURE__*/(0,_createPopper_js__WEBPACK_IMPORTED_MODULE_9__.popperGenerator)({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\n // eslint-disable-next-line import/no-unused-modules\n\n // eslint-disable-next-line import/no-unused-modules\n\n\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/popper.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js": +/*!***********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js ***! + \***********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ computeAutoPlacement; }\n/* harmony export */ });\n/* harmony import */ var _getVariation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getVariation.js */ \"./node_modules/@popperjs/core/lib/utils/getVariation.js\");\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _detectOverflow_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./detectOverflow.js */ \"./node_modules/@popperjs/core/lib/utils/detectOverflow.js\");\n/* harmony import */ var _getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n\n\n\n\nfunction computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.placements : _options$allowedAutoP;\n var variation = (0,_getVariation_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(placement);\n var placements = variation ? flipVariations ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.variationPlacements : _enums_js__WEBPACK_IMPORTED_MODULE_0__.variationPlacements.filter(function (placement) {\n return (0,_getVariation_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(placement) === variation;\n }) : _enums_js__WEBPACK_IMPORTED_MODULE_0__.basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = (0,_detectOverflow_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[(0,_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/computeOffsets.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/computeOffsets.js ***! + \*****************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ computeOffsets; }\n/* harmony export */ });\n/* harmony import */ var _getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBasePlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getBasePlacement.js\");\n/* harmony import */ var _getVariation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getVariation.js */ \"./node_modules/@popperjs/core/lib/utils/getVariation.js\");\n/* harmony import */ var _getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getMainAxisFromPlacement.js */ \"./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js\");\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n\n\n\n\nfunction computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? (0,_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(placement) : null;\n var variation = placement ? (0,_getVariation_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n switch (basePlacement) {\n case _enums_js__WEBPACK_IMPORTED_MODULE_2__.top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n case _enums_js__WEBPACK_IMPORTED_MODULE_2__.bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case _enums_js__WEBPACK_IMPORTED_MODULE_2__.right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case _enums_js__WEBPACK_IMPORTED_MODULE_2__.left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n var mainAxis = basePlacement ? (0,_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(basePlacement) : null;\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n switch (variation) {\n case _enums_js__WEBPACK_IMPORTED_MODULE_2__.start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n case _enums_js__WEBPACK_IMPORTED_MODULE_2__.end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n default:\n }\n }\n return offsets;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/computeOffsets.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/debounce.js": +/*!***********************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/debounce.js ***! + \***********************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ debounce; }\n/* harmony export */ });\nfunction debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n return pending;\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/debounce.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/detectOverflow.js ***! + \*****************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ detectOverflow; }\n/* harmony export */ });\n/* harmony import */ var _dom_utils_getClippingRect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dom-utils/getClippingRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js\");\n/* harmony import */ var _dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom-utils/getDocumentElement.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js\");\n/* harmony import */ var _dom_utils_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../dom-utils/getBoundingClientRect.js */ \"./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js\");\n/* harmony import */ var _computeOffsets_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./computeOffsets.js */ \"./node_modules/@popperjs/core/lib/utils/computeOffsets.js\");\n/* harmony import */ var _rectToClientRect_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./rectToClientRect.js */ \"./node_modules/@popperjs/core/lib/utils/rectToClientRect.js\");\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n/* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../dom-utils/instanceOf.js */ \"./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js\");\n/* harmony import */ var _mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mergePaddingObject.js */ \"./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js\");\n/* harmony import */ var _expandToHashMap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./expandToHashMap.js */ \"./node_modules/@popperjs/core/lib/utils/expandToHashMap.js\");\n\n\n\n\n\n\n\n\n // eslint-disable-next-line import/no-unused-modules\n\nfunction detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = (0,_mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(typeof padding !== 'number' ? padding : (0,_expandToHashMap_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(padding, _enums_js__WEBPACK_IMPORTED_MODULE_0__.basePlacements));\n var altContext = elementContext === _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.reference : _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = (0,_dom_utils_getClippingRect_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])((0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(element) ? element : element.contextElement || (0,_dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = (0,_dom_utils_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(state.elements.reference);\n var popperOffsets = (0,_computeOffsets_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = (0,_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"])(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [_enums_js__WEBPACK_IMPORTED_MODULE_0__.right, _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [_enums_js__WEBPACK_IMPORTED_MODULE_0__.top, _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n return overflowOffsets;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/detectOverflow.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/expandToHashMap.js": +/*!******************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/expandToHashMap.js ***! + \******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ expandToHashMap; }\n/* harmony export */ });\nfunction expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/expandToHashMap.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getAltAxis.js": +/*!*************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getAltAxis.js ***! + \*************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getAltAxis; }\n/* harmony export */ });\nfunction getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getAltAxis.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getBasePlacement.js ***! + \*******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getBasePlacement; }\n/* harmony export */ });\n\nfunction getBasePlacement(placement) {\n return placement.split('-')[0];\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getBasePlacement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getFreshSideObject; }\n/* harmony export */ });\nfunction getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js ***! + \***************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getMainAxisFromPlacement; }\n/* harmony export */ });\nfunction getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js": +/*!***********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js ***! + \***********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getOppositePlacement; }\n/* harmony export */ });\nvar hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js": +/*!********************************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js ***! + \********************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getOppositeVariationPlacement; }\n/* harmony export */ });\nvar hash = {\n start: 'end',\n end: 'start'\n};\nfunction getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/getVariation.js": +/*!***************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/getVariation.js ***! + \***************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getVariation; }\n/* harmony export */ });\nfunction getVariation(placement) {\n return placement.split('-')[1];\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/getVariation.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/math.js": +/*!*******************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/math.js ***! + \*******************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ max: function() { return /* binding */ max; },\n/* harmony export */ min: function() { return /* binding */ min; },\n/* harmony export */ round: function() { return /* binding */ round; }\n/* harmony export */ });\nvar max = Math.max;\nvar min = Math.min;\nvar round = Math.round;\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/math.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/mergeByName.js": +/*!**************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/mergeByName.js ***! + \**************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ mergeByName; }\n/* harmony export */ });\nfunction mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/mergeByName.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ mergePaddingObject; }\n/* harmony export */ });\n/* harmony import */ var _getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getFreshSideObject.js */ \"./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js\");\n\nfunction mergePaddingObject(paddingObject) {\n return Object.assign({}, (0,_getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(), paddingObject);\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/orderModifiers.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/orderModifiers.js ***! + \*****************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ orderModifiers; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ \"./node_modules/@popperjs/core/lib/enums.js\");\n\n // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\nfunction orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return _enums_js__WEBPACK_IMPORTED_MODULE_1__.modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/orderModifiers.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/rectToClientRect.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/rectToClientRect.js ***! + \*******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ rectToClientRect; }\n/* harmony export */ });\nfunction rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/rectToClientRect.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/userAgent.js": +/*!************************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/userAgent.js ***! + \************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getUAString; }\n/* harmony export */ });\nfunction getUAString() {\n var uaData = navigator.userAgentData;\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n return navigator.userAgent;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/userAgent.js?"); + +/***/ }), + +/***/ "./node_modules/@popperjs/core/lib/utils/within.js": +/*!*********************************************************!*\ + !*** ./node_modules/@popperjs/core/lib/utils/within.js ***! + \*********************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ within: function() { return /* binding */ within; },\n/* harmony export */ withinMaxClamp: function() { return /* binding */ withinMaxClamp; }\n/* harmony export */ });\n/* harmony import */ var _math_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./math.js */ \"./node_modules/@popperjs/core/lib/utils/math.js\");\n\nfunction within(min, value, max) {\n return (0,_math_js__WEBPACK_IMPORTED_MODULE_0__.max)(min, (0,_math_js__WEBPACK_IMPORTED_MODULE_0__.min)(value, max));\n}\nfunction withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@popperjs/core/lib/utils/within.js?"); + +/***/ }), + /***/ "./node_modules/@vue/compiler-core/dist/compiler-core.esm-bundler.js": /*!***************************************************************************!*\ !*** ./node_modules/@vue/compiler-core/dist/compiler-core.esm-bundler.js ***! @@ -15,7 +631,7 @@ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BASE_TRANSITION\": function() { return /* binding */ BASE_TRANSITION; },\n/* harmony export */ \"CAMELIZE\": function() { return /* binding */ CAMELIZE; },\n/* harmony export */ \"CAPITALIZE\": function() { return /* binding */ CAPITALIZE; },\n/* harmony export */ \"CREATE_BLOCK\": function() { return /* binding */ CREATE_BLOCK; },\n/* harmony export */ \"CREATE_COMMENT\": function() { return /* binding */ CREATE_COMMENT; },\n/* harmony export */ \"CREATE_ELEMENT_BLOCK\": function() { return /* binding */ CREATE_ELEMENT_BLOCK; },\n/* harmony export */ \"CREATE_ELEMENT_VNODE\": function() { return /* binding */ CREATE_ELEMENT_VNODE; },\n/* harmony export */ \"CREATE_SLOTS\": function() { return /* binding */ CREATE_SLOTS; },\n/* harmony export */ \"CREATE_STATIC\": function() { return /* binding */ CREATE_STATIC; },\n/* harmony export */ \"CREATE_TEXT\": function() { return /* binding */ CREATE_TEXT; },\n/* harmony export */ \"CREATE_VNODE\": function() { return /* binding */ CREATE_VNODE; },\n/* harmony export */ \"FRAGMENT\": function() { return /* binding */ FRAGMENT; },\n/* harmony export */ \"GUARD_REACTIVE_PROPS\": function() { return /* binding */ GUARD_REACTIVE_PROPS; },\n/* harmony export */ \"IS_MEMO_SAME\": function() { return /* binding */ IS_MEMO_SAME; },\n/* harmony export */ \"IS_REF\": function() { return /* binding */ IS_REF; },\n/* harmony export */ \"KEEP_ALIVE\": function() { return /* binding */ KEEP_ALIVE; },\n/* harmony export */ \"MERGE_PROPS\": function() { return /* binding */ MERGE_PROPS; },\n/* harmony export */ \"NORMALIZE_CLASS\": function() { return /* binding */ NORMALIZE_CLASS; },\n/* harmony export */ \"NORMALIZE_PROPS\": function() { return /* binding */ NORMALIZE_PROPS; },\n/* harmony export */ \"NORMALIZE_STYLE\": function() { return /* binding */ NORMALIZE_STYLE; },\n/* harmony export */ \"OPEN_BLOCK\": function() { return /* binding */ OPEN_BLOCK; },\n/* harmony export */ \"POP_SCOPE_ID\": function() { return /* binding */ POP_SCOPE_ID; },\n/* harmony export */ \"PUSH_SCOPE_ID\": function() { return /* binding */ PUSH_SCOPE_ID; },\n/* harmony export */ \"RENDER_LIST\": function() { return /* binding */ RENDER_LIST; },\n/* harmony export */ \"RENDER_SLOT\": function() { return /* binding */ RENDER_SLOT; },\n/* harmony export */ \"RESOLVE_COMPONENT\": function() { return /* binding */ RESOLVE_COMPONENT; },\n/* harmony export */ \"RESOLVE_DIRECTIVE\": function() { return /* binding */ RESOLVE_DIRECTIVE; },\n/* harmony export */ \"RESOLVE_DYNAMIC_COMPONENT\": function() { return /* binding */ RESOLVE_DYNAMIC_COMPONENT; },\n/* harmony export */ \"RESOLVE_FILTER\": function() { return /* binding */ RESOLVE_FILTER; },\n/* harmony export */ \"SET_BLOCK_TRACKING\": function() { return /* binding */ SET_BLOCK_TRACKING; },\n/* harmony export */ \"SUSPENSE\": function() { return /* binding */ SUSPENSE; },\n/* harmony export */ \"TELEPORT\": function() { return /* binding */ TELEPORT; },\n/* harmony export */ \"TO_DISPLAY_STRING\": function() { return /* binding */ TO_DISPLAY_STRING; },\n/* harmony export */ \"TO_HANDLERS\": function() { return /* binding */ TO_HANDLERS; },\n/* harmony export */ \"TO_HANDLER_KEY\": function() { return /* binding */ TO_HANDLER_KEY; },\n/* harmony export */ \"UNREF\": function() { return /* binding */ UNREF; },\n/* harmony export */ \"WITH_CTX\": function() { return /* binding */ WITH_CTX; },\n/* harmony export */ \"WITH_DIRECTIVES\": function() { return /* binding */ WITH_DIRECTIVES; },\n/* harmony export */ \"WITH_MEMO\": function() { return /* binding */ WITH_MEMO; },\n/* harmony export */ \"advancePositionWithClone\": function() { return /* binding */ advancePositionWithClone; },\n/* harmony export */ \"advancePositionWithMutation\": function() { return /* binding */ advancePositionWithMutation; },\n/* harmony export */ \"assert\": function() { return /* binding */ assert; },\n/* harmony export */ \"baseCompile\": function() { return /* binding */ baseCompile; },\n/* harmony export */ \"baseParse\": function() { return /* binding */ baseParse; },\n/* harmony export */ \"buildDirectiveArgs\": function() { return /* binding */ buildDirectiveArgs; },\n/* harmony export */ \"buildProps\": function() { return /* binding */ buildProps; },\n/* harmony export */ \"buildSlots\": function() { return /* binding */ buildSlots; },\n/* harmony export */ \"checkCompatEnabled\": function() { return /* binding */ checkCompatEnabled; },\n/* harmony export */ \"createArrayExpression\": function() { return /* binding */ createArrayExpression; },\n/* harmony export */ \"createAssignmentExpression\": function() { return /* binding */ createAssignmentExpression; },\n/* harmony export */ \"createBlockStatement\": function() { return /* binding */ createBlockStatement; },\n/* harmony export */ \"createCacheExpression\": function() { return /* binding */ createCacheExpression; },\n/* harmony export */ \"createCallExpression\": function() { return /* binding */ createCallExpression; },\n/* harmony export */ \"createCompilerError\": function() { return /* binding */ createCompilerError; },\n/* harmony export */ \"createCompoundExpression\": function() { return /* binding */ createCompoundExpression; },\n/* harmony export */ \"createConditionalExpression\": function() { return /* binding */ createConditionalExpression; },\n/* harmony export */ \"createForLoopParams\": function() { return /* binding */ createForLoopParams; },\n/* harmony export */ \"createFunctionExpression\": function() { return /* binding */ createFunctionExpression; },\n/* harmony export */ \"createIfStatement\": function() { return /* binding */ createIfStatement; },\n/* harmony export */ \"createInterpolation\": function() { return /* binding */ createInterpolation; },\n/* harmony export */ \"createObjectExpression\": function() { return /* binding */ createObjectExpression; },\n/* harmony export */ \"createObjectProperty\": function() { return /* binding */ createObjectProperty; },\n/* harmony export */ \"createReturnStatement\": function() { return /* binding */ createReturnStatement; },\n/* harmony export */ \"createRoot\": function() { return /* binding */ createRoot; },\n/* harmony export */ \"createSequenceExpression\": function() { return /* binding */ createSequenceExpression; },\n/* harmony export */ \"createSimpleExpression\": function() { return /* binding */ createSimpleExpression; },\n/* harmony export */ \"createStructuralDirectiveTransform\": function() { return /* binding */ createStructuralDirectiveTransform; },\n/* harmony export */ \"createTemplateLiteral\": function() { return /* binding */ createTemplateLiteral; },\n/* harmony export */ \"createTransformContext\": function() { return /* binding */ createTransformContext; },\n/* harmony export */ \"createVNodeCall\": function() { return /* binding */ createVNodeCall; },\n/* harmony export */ \"extractIdentifiers\": function() { return /* binding */ extractIdentifiers; },\n/* harmony export */ \"findDir\": function() { return /* binding */ findDir; },\n/* harmony export */ \"findProp\": function() { return /* binding */ findProp; },\n/* harmony export */ \"generate\": function() { return /* binding */ generate; },\n/* harmony export */ \"generateCodeFrame\": function() { return /* reexport safe */ _vue_shared__WEBPACK_IMPORTED_MODULE_2__.generateCodeFrame; },\n/* harmony export */ \"getBaseTransformPreset\": function() { return /* binding */ getBaseTransformPreset; },\n/* harmony export */ \"getConstantType\": function() { return /* binding */ getConstantType; },\n/* harmony export */ \"getInnerRange\": function() { return /* binding */ getInnerRange; },\n/* harmony export */ \"getMemoedVNodeCall\": function() { return /* binding */ getMemoedVNodeCall; },\n/* harmony export */ \"getVNodeBlockHelper\": function() { return /* binding */ getVNodeBlockHelper; },\n/* harmony export */ \"getVNodeHelper\": function() { return /* binding */ getVNodeHelper; },\n/* harmony export */ \"hasDynamicKeyVBind\": function() { return /* binding */ hasDynamicKeyVBind; },\n/* harmony export */ \"hasScopeRef\": function() { return /* binding */ hasScopeRef; },\n/* harmony export */ \"helperNameMap\": function() { return /* binding */ helperNameMap; },\n/* harmony export */ \"injectProp\": function() { return /* binding */ injectProp; },\n/* harmony export */ \"isBuiltInType\": function() { return /* binding */ isBuiltInType; },\n/* harmony export */ \"isCoreComponent\": function() { return /* binding */ isCoreComponent; },\n/* harmony export */ \"isFunctionType\": function() { return /* binding */ isFunctionType; },\n/* harmony export */ \"isInDestructureAssignment\": function() { return /* binding */ isInDestructureAssignment; },\n/* harmony export */ \"isMemberExpression\": function() { return /* binding */ isMemberExpression; },\n/* harmony export */ \"isMemberExpressionBrowser\": function() { return /* binding */ isMemberExpressionBrowser; },\n/* harmony export */ \"isMemberExpressionNode\": function() { return /* binding */ isMemberExpressionNode; },\n/* harmony export */ \"isReferencedIdentifier\": function() { return /* binding */ isReferencedIdentifier; },\n/* harmony export */ \"isSimpleIdentifier\": function() { return /* binding */ isSimpleIdentifier; },\n/* harmony export */ \"isSlotOutlet\": function() { return /* binding */ isSlotOutlet; },\n/* harmony export */ \"isStaticArgOf\": function() { return /* binding */ isStaticArgOf; },\n/* harmony export */ \"isStaticExp\": function() { return /* binding */ isStaticExp; },\n/* harmony export */ \"isStaticProperty\": function() { return /* binding */ isStaticProperty; },\n/* harmony export */ \"isStaticPropertyKey\": function() { return /* binding */ isStaticPropertyKey; },\n/* harmony export */ \"isTemplateNode\": function() { return /* binding */ isTemplateNode; },\n/* harmony export */ \"isText\": function() { return /* binding */ isText; },\n/* harmony export */ \"isVSlot\": function() { return /* binding */ isVSlot; },\n/* harmony export */ \"locStub\": function() { return /* binding */ locStub; },\n/* harmony export */ \"makeBlock\": function() { return /* binding */ makeBlock; },\n/* harmony export */ \"noopDirectiveTransform\": function() { return /* binding */ noopDirectiveTransform; },\n/* harmony export */ \"processExpression\": function() { return /* binding */ processExpression; },\n/* harmony export */ \"processFor\": function() { return /* binding */ processFor; },\n/* harmony export */ \"processIf\": function() { return /* binding */ processIf; },\n/* harmony export */ \"processSlotOutlet\": function() { return /* binding */ processSlotOutlet; },\n/* harmony export */ \"registerRuntimeHelpers\": function() { return /* binding */ registerRuntimeHelpers; },\n/* harmony export */ \"resolveComponentType\": function() { return /* binding */ resolveComponentType; },\n/* harmony export */ \"stringifyExpression\": function() { return /* binding */ stringifyExpression; },\n/* harmony export */ \"toValidAssetId\": function() { return /* binding */ toValidAssetId; },\n/* harmony export */ \"trackSlotScopes\": function() { return /* binding */ trackSlotScopes; },\n/* harmony export */ \"trackVForSlotScopes\": function() { return /* binding */ trackVForSlotScopes; },\n/* harmony export */ \"transform\": function() { return /* binding */ transform; },\n/* harmony export */ \"transformBind\": function() { return /* binding */ transformBind; },\n/* harmony export */ \"transformElement\": function() { return /* binding */ transformElement; },\n/* harmony export */ \"transformExpression\": function() { return /* binding */ transformExpression; },\n/* harmony export */ \"transformModel\": function() { return /* binding */ transformModel; },\n/* harmony export */ \"transformOn\": function() { return /* binding */ transformOn; },\n/* harmony export */ \"traverseNode\": function() { return /* binding */ traverseNode; },\n/* harmony export */ \"walkBlockDeclarations\": function() { return /* binding */ walkBlockDeclarations; },\n/* harmony export */ \"walkFunctionParams\": function() { return /* binding */ walkFunctionParams; },\n/* harmony export */ \"walkIdentifiers\": function() { return /* binding */ walkIdentifiers; },\n/* harmony export */ \"warnDeprecation\": function() { return /* binding */ warnDeprecation; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_unshift_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.unshift.js */ \"./node_modules/core-js/modules/es.array.unshift.js\");\n/* harmony import */ var core_js_modules_es_array_unshift_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_unshift_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _vue_shared__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @vue/shared */ \"./node_modules/@vue/shared/dist/shared.esm-bundler.js\");\n\n\n\n\nfunction defaultOnError(error) {\n throw error;\n}\nfunction defaultOnWarn(msg) {\n true && console.warn(`[Vue warn] ${msg.message}`);\n}\nfunction createCompilerError(code, loc, messages, additionalMessage) {\n const msg = true ? (messages || errorMessages)[code] + (additionalMessage || ``) : 0;\n const error = new SyntaxError(String(msg));\n error.code = code;\n error.loc = loc;\n return error;\n}\nconst errorMessages = {\n // parse errors\n [0 /* ErrorCodes.ABRUPT_CLOSING_OF_EMPTY_COMMENT */]: 'Illegal comment.',\n [1 /* ErrorCodes.CDATA_IN_HTML_CONTENT */]: 'CDATA section is allowed only in XML context.',\n [2 /* ErrorCodes.DUPLICATE_ATTRIBUTE */]: 'Duplicate attribute.',\n [3 /* ErrorCodes.END_TAG_WITH_ATTRIBUTES */]: 'End tag cannot have attributes.',\n [4 /* ErrorCodes.END_TAG_WITH_TRAILING_SOLIDUS */]: \"Illegal '/' in tags.\",\n [5 /* ErrorCodes.EOF_BEFORE_TAG_NAME */]: 'Unexpected EOF in tag.',\n [6 /* ErrorCodes.EOF_IN_CDATA */]: 'Unexpected EOF in CDATA section.',\n [7 /* ErrorCodes.EOF_IN_COMMENT */]: 'Unexpected EOF in comment.',\n [8 /* ErrorCodes.EOF_IN_SCRIPT_HTML_COMMENT_LIKE_TEXT */]: 'Unexpected EOF in script.',\n [9 /* ErrorCodes.EOF_IN_TAG */]: 'Unexpected EOF in tag.',\n [10 /* ErrorCodes.INCORRECTLY_CLOSED_COMMENT */]: 'Incorrectly closed comment.',\n [11 /* ErrorCodes.INCORRECTLY_OPENED_COMMENT */]: 'Incorrectly opened comment.',\n [12 /* ErrorCodes.INVALID_FIRST_CHARACTER_OF_TAG_NAME */]: \"Illegal tag name. Use '<' to print '<'.\",\n [13 /* ErrorCodes.MISSING_ATTRIBUTE_VALUE */]: 'Attribute value was expected.',\n [14 /* ErrorCodes.MISSING_END_TAG_NAME */]: 'End tag name was expected.',\n [15 /* ErrorCodes.MISSING_WHITESPACE_BETWEEN_ATTRIBUTES */]: 'Whitespace was expected.',\n [16 /* ErrorCodes.NESTED_COMMENT */]: \"Unexpected '|--!>| looseEqual(item, val));\n}\n\n/**\n * For converting {{ interpolation }} values to displayed strings.\n * @private\n */\nconst toDisplayString = val => {\n return isString(val) ? val : val == null ? '' : isArray(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? JSON.stringify(val, replacer, 2) : String(val);\n};\nconst replacer = (_key, val) => {\n // can't use isRef here since @vue/shared has no deps\n if (val && val.__v_isRef) {\n return replacer(_key, val.value);\n } else if (isMap(val)) {\n return {\n [`Map(${val.size})`]: [...val.entries()].reduce((entries, [key, val]) => {\n entries[`${key} =>`] = val;\n return entries;\n }, {})\n };\n } else if (isSet(val)) {\n return {\n [`Set(${val.size})`]: [...val.values()]\n };\n } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) {\n return String(val);\n }\n return val;\n};\nconst EMPTY_OBJ = true ? Object.freeze({}) : 0;\nconst EMPTY_ARR = true ? Object.freeze([]) : 0;\nconst NOOP = () => {};\n/**\n * Always return false.\n */\nconst NO = () => false;\nconst onRE = /^on[^a-z]/;\nconst isOn = key => onRE.test(key);\nconst isModelListener = key => key.startsWith('onUpdate:');\nconst extend = Object.assign;\nconst remove = (arr, el) => {\n const i = arr.indexOf(el);\n if (i > -1) {\n arr.splice(i, 1);\n }\n};\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst isArray = Array.isArray;\nconst isMap = val => toTypeString(val) === '[object Map]';\nconst isSet = val => toTypeString(val) === '[object Set]';\nconst isDate = val => toTypeString(val) === '[object Date]';\nconst isFunction = val => typeof val === 'function';\nconst isString = val => typeof val === 'string';\nconst isSymbol = val => typeof val === 'symbol';\nconst isObject = val => val !== null && typeof val === 'object';\nconst isPromise = val => {\n return isObject(val) && isFunction(val.then) && isFunction(val.catch);\n};\nconst objectToString = Object.prototype.toString;\nconst toTypeString = value => objectToString.call(value);\nconst toRawType = value => {\n // extract \"RawType\" from strings like \"[object RawType]\"\n return toTypeString(value).slice(8, -1);\n};\nconst isPlainObject = val => toTypeString(val) === '[object Object]';\nconst isIntegerKey = key => isString(key) && key !== 'NaN' && key[0] !== '-' && '' + parseInt(key, 10) === key;\nconst isReservedProp = /*#__PURE__*/makeMap(\n// the leading comma is intentional so empty string \"\" is also included\n',key,ref,ref_for,ref_key,' + 'onVnodeBeforeMount,onVnodeMounted,' + 'onVnodeBeforeUpdate,onVnodeUpdated,' + 'onVnodeBeforeUnmount,onVnodeUnmounted');\nconst isBuiltInDirective = /*#__PURE__*/makeMap('bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo');\nconst cacheStringFunction = fn => {\n const cache = Object.create(null);\n return str => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n};\nconst camelizeRE = /-(\\w)/g;\n/**\n * @private\n */\nconst camelize = cacheStringFunction(str => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '');\n});\nconst hyphenateRE = /\\B([A-Z])/g;\n/**\n * @private\n */\nconst hyphenate = cacheStringFunction(str => str.replace(hyphenateRE, '-$1').toLowerCase());\n/**\n * @private\n */\nconst capitalize = cacheStringFunction(str => str.charAt(0).toUpperCase() + str.slice(1));\n/**\n * @private\n */\nconst toHandlerKey = cacheStringFunction(str => str ? `on${capitalize(str)}` : ``);\n// compare whether a value has changed, accounting for NaN.\nconst hasChanged = (value, oldValue) => !Object.is(value, oldValue);\nconst invokeArrayFns = (fns, arg) => {\n for (let i = 0; i < fns.length; i++) {\n fns[i](arg);\n }\n};\nconst def = (obj, key, value) => {\n Object.defineProperty(obj, key, {\n configurable: true,\n enumerable: false,\n value\n });\n};\nconst toNumber = val => {\n const n = parseFloat(val);\n return isNaN(n) ? val : n;\n};\nlet _globalThis;\nconst getGlobalThis = () => {\n return _globalThis || (_globalThis = typeof globalThis !== 'undefined' ? globalThis : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof __webpack_require__.g !== 'undefined' ? __webpack_require__.g : {});\n};\nconst identRE = /^[_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*$/;\nfunction genPropsAccessExp(name) {\n return identRE.test(name) ? `__props.${name}` : `__props[${JSON.stringify(name)}]`;\n}\n\n\n//# sourceURL=webpack://aircox-assets/./node_modules/@vue/shared/dist/shared.esm-bundler.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EMPTY_ARR: function() { return /* binding */ EMPTY_ARR; },\n/* harmony export */ EMPTY_OBJ: function() { return /* binding */ EMPTY_OBJ; },\n/* harmony export */ NO: function() { return /* binding */ NO; },\n/* harmony export */ NOOP: function() { return /* binding */ NOOP; },\n/* harmony export */ PatchFlagNames: function() { return /* binding */ PatchFlagNames; },\n/* harmony export */ camelize: function() { return /* binding */ camelize; },\n/* harmony export */ capitalize: function() { return /* binding */ capitalize; },\n/* harmony export */ def: function() { return /* binding */ def; },\n/* harmony export */ escapeHtml: function() { return /* binding */ escapeHtml; },\n/* harmony export */ escapeHtmlComment: function() { return /* binding */ escapeHtmlComment; },\n/* harmony export */ extend: function() { return /* binding */ extend; },\n/* harmony export */ genPropsAccessExp: function() { return /* binding */ genPropsAccessExp; },\n/* harmony export */ generateCodeFrame: function() { return /* binding */ generateCodeFrame; },\n/* harmony export */ getGlobalThis: function() { return /* binding */ getGlobalThis; },\n/* harmony export */ hasChanged: function() { return /* binding */ hasChanged; },\n/* harmony export */ hasOwn: function() { return /* binding */ hasOwn; },\n/* harmony export */ hyphenate: function() { return /* binding */ hyphenate; },\n/* harmony export */ includeBooleanAttr: function() { return /* binding */ includeBooleanAttr; },\n/* harmony export */ invokeArrayFns: function() { return /* binding */ invokeArrayFns; },\n/* harmony export */ isArray: function() { return /* binding */ isArray; },\n/* harmony export */ isBooleanAttr: function() { return /* binding */ isBooleanAttr; },\n/* harmony export */ isBuiltInDirective: function() { return /* binding */ isBuiltInDirective; },\n/* harmony export */ isDate: function() { return /* binding */ isDate; },\n/* harmony export */ isFunction: function() { return /* binding */ isFunction; },\n/* harmony export */ isGloballyWhitelisted: function() { return /* binding */ isGloballyWhitelisted; },\n/* harmony export */ isHTMLTag: function() { return /* binding */ isHTMLTag; },\n/* harmony export */ isIntegerKey: function() { return /* binding */ isIntegerKey; },\n/* harmony export */ isKnownHtmlAttr: function() { return /* binding */ isKnownHtmlAttr; },\n/* harmony export */ isKnownSvgAttr: function() { return /* binding */ isKnownSvgAttr; },\n/* harmony export */ isMap: function() { return /* binding */ isMap; },\n/* harmony export */ isModelListener: function() { return /* binding */ isModelListener; },\n/* harmony export */ isObject: function() { return /* binding */ isObject; },\n/* harmony export */ isOn: function() { return /* binding */ isOn; },\n/* harmony export */ isPlainObject: function() { return /* binding */ isPlainObject; },\n/* harmony export */ isPromise: function() { return /* binding */ isPromise; },\n/* harmony export */ isReservedProp: function() { return /* binding */ isReservedProp; },\n/* harmony export */ isSSRSafeAttrName: function() { return /* binding */ isSSRSafeAttrName; },\n/* harmony export */ isSVGTag: function() { return /* binding */ isSVGTag; },\n/* harmony export */ isSet: function() { return /* binding */ isSet; },\n/* harmony export */ isSpecialBooleanAttr: function() { return /* binding */ isSpecialBooleanAttr; },\n/* harmony export */ isString: function() { return /* binding */ isString; },\n/* harmony export */ isSymbol: function() { return /* binding */ isSymbol; },\n/* harmony export */ isVoidTag: function() { return /* binding */ isVoidTag; },\n/* harmony export */ looseEqual: function() { return /* binding */ looseEqual; },\n/* harmony export */ looseIndexOf: function() { return /* binding */ looseIndexOf; },\n/* harmony export */ makeMap: function() { return /* binding */ makeMap; },\n/* harmony export */ normalizeClass: function() { return /* binding */ normalizeClass; },\n/* harmony export */ normalizeProps: function() { return /* binding */ normalizeProps; },\n/* harmony export */ normalizeStyle: function() { return /* binding */ normalizeStyle; },\n/* harmony export */ objectToString: function() { return /* binding */ objectToString; },\n/* harmony export */ parseStringStyle: function() { return /* binding */ parseStringStyle; },\n/* harmony export */ propsToAttrMap: function() { return /* binding */ propsToAttrMap; },\n/* harmony export */ remove: function() { return /* binding */ remove; },\n/* harmony export */ slotFlagsText: function() { return /* binding */ slotFlagsText; },\n/* harmony export */ stringifyStyle: function() { return /* binding */ stringifyStyle; },\n/* harmony export */ toDisplayString: function() { return /* binding */ toDisplayString; },\n/* harmony export */ toHandlerKey: function() { return /* binding */ toHandlerKey; },\n/* harmony export */ toNumber: function() { return /* binding */ toNumber; },\n/* harmony export */ toRawType: function() { return /* binding */ toRawType; },\n/* harmony export */ toTypeString: function() { return /* binding */ toTypeString; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n * IMPORTANT: all calls of this function must be prefixed with\n * \\/\\*#\\_\\_PURE\\_\\_\\*\\/\n * So that rollup can tree-shake them if necessary.\n */\nfunction makeMap(str, expectsLowerCase) {\n const map = Object.create(null);\n const list = str.split(',');\n for (let i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase ? val => !!map[val.toLowerCase()] : val => !!map[val];\n}\n\n/**\n * dev only flag -> name mapping\n */\nconst PatchFlagNames = {\n [1 /* PatchFlags.TEXT */]: `TEXT`,\n [2 /* PatchFlags.CLASS */]: `CLASS`,\n [4 /* PatchFlags.STYLE */]: `STYLE`,\n [8 /* PatchFlags.PROPS */]: `PROPS`,\n [16 /* PatchFlags.FULL_PROPS */]: `FULL_PROPS`,\n [32 /* PatchFlags.HYDRATE_EVENTS */]: `HYDRATE_EVENTS`,\n [64 /* PatchFlags.STABLE_FRAGMENT */]: `STABLE_FRAGMENT`,\n [128 /* PatchFlags.KEYED_FRAGMENT */]: `KEYED_FRAGMENT`,\n [256 /* PatchFlags.UNKEYED_FRAGMENT */]: `UNKEYED_FRAGMENT`,\n [512 /* PatchFlags.NEED_PATCH */]: `NEED_PATCH`,\n [1024 /* PatchFlags.DYNAMIC_SLOTS */]: `DYNAMIC_SLOTS`,\n [2048 /* PatchFlags.DEV_ROOT_FRAGMENT */]: `DEV_ROOT_FRAGMENT`,\n [-1 /* PatchFlags.HOISTED */]: `HOISTED`,\n [-2 /* PatchFlags.BAIL */]: `BAIL`\n};\n\n/**\n * Dev only\n */\nconst slotFlagsText = {\n [1 /* SlotFlags.STABLE */]: 'STABLE',\n [2 /* SlotFlags.DYNAMIC */]: 'DYNAMIC',\n [3 /* SlotFlags.FORWARDED */]: 'FORWARDED'\n};\nconst GLOBALS_WHITE_LISTED = 'Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,' + 'decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,' + 'Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt';\nconst isGloballyWhitelisted = /*#__PURE__*/makeMap(GLOBALS_WHITE_LISTED);\nconst range = 2;\nfunction generateCodeFrame(source, start = 0, end = source.length) {\n // Split the content into individual lines but capture the newline sequence\n // that separated each line. This is important because the actual sequence is\n // needed to properly take into account the full line length for offset\n // comparison\n let lines = source.split(/(\\r?\\n)/);\n // Separate the lines and newline sequences into separate arrays for easier referencing\n const newlineSequences = lines.filter((_, idx) => idx % 2 === 1);\n lines = lines.filter((_, idx) => idx % 2 === 0);\n let count = 0;\n const res = [];\n for (let i = 0; i < lines.length; i++) {\n count += lines[i].length + (newlineSequences[i] && newlineSequences[i].length || 0);\n if (count >= start) {\n for (let j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length) continue;\n const line = j + 1;\n res.push(`${line}${' '.repeat(Math.max(3 - String(line).length, 0))}| ${lines[j]}`);\n const lineLength = lines[j].length;\n const newLineSeqLength = newlineSequences[j] && newlineSequences[j].length || 0;\n if (j === i) {\n // push underline\n const pad = start - (count - (lineLength + newLineSeqLength));\n const length = Math.max(1, end > count ? lineLength - pad : end - start);\n res.push(` | ` + ' '.repeat(pad) + '^'.repeat(length));\n } else if (j > i) {\n if (end > count) {\n const length = Math.max(Math.min(end - count, lineLength), 1);\n res.push(` | ` + '^'.repeat(length));\n }\n count += lineLength + newLineSeqLength;\n }\n }\n break;\n }\n }\n return res.join('\\n');\n}\nfunction normalizeStyle(value) {\n if (isArray(value)) {\n const res = {};\n for (let i = 0; i < value.length; i++) {\n const item = value[i];\n const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);\n if (normalized) {\n for (const key in normalized) {\n res[key] = normalized[key];\n }\n }\n }\n return res;\n } else if (isString(value)) {\n return value;\n } else if (isObject(value)) {\n return value;\n }\n}\nconst listDelimiterRE = /;(?![^(]*\\))/g;\nconst propertyDelimiterRE = /:([^]+)/;\nconst styleCommentRE = /\\/\\*.*?\\*\\//gs;\nfunction parseStringStyle(cssText) {\n const ret = {};\n cssText.replace(styleCommentRE, '').split(listDelimiterRE).forEach(item => {\n if (item) {\n const tmp = item.split(propertyDelimiterRE);\n tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return ret;\n}\nfunction stringifyStyle(styles) {\n let ret = '';\n if (!styles || isString(styles)) {\n return ret;\n }\n for (const key in styles) {\n const value = styles[key];\n const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);\n if (isString(value) || typeof value === 'number') {\n // only render valid values\n ret += `${normalizedKey}:${value};`;\n }\n }\n return ret;\n}\nfunction normalizeClass(value) {\n let res = '';\n if (isString(value)) {\n res = value;\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n const normalized = normalizeClass(value[i]);\n if (normalized) {\n res += normalized + ' ';\n }\n }\n } else if (isObject(value)) {\n for (const name in value) {\n if (value[name]) {\n res += name + ' ';\n }\n }\n }\n return res.trim();\n}\nfunction normalizeProps(props) {\n if (!props) return null;\n let {\n class: klass,\n style\n } = props;\n if (klass && !isString(klass)) {\n props.class = normalizeClass(klass);\n }\n if (style) {\n props.style = normalizeStyle(style);\n }\n return props;\n}\n\n// These tag configs are shared between compiler-dom and runtime-dom, so they\n// https://developer.mozilla.org/en-US/docs/Web/HTML/Element\nconst HTML_TAGS = 'html,body,base,head,link,meta,style,title,address,article,aside,footer,' + 'header,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,' + 'figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,' + 'data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,' + 'time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,' + 'canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,' + 'th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,' + 'option,output,progress,select,textarea,details,dialog,menu,' + 'summary,template,blockquote,iframe,tfoot';\n// https://developer.mozilla.org/en-US/docs/Web/SVG/Element\nconst SVG_TAGS = 'svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,' + 'defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,' + 'feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,' + 'feDistanceLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,' + 'feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,' + 'fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,' + 'foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,' + 'mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,' + 'polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,' + 'text,textPath,title,tspan,unknown,use,view';\nconst VOID_TAGS = 'area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr';\n/**\n * Compiler only.\n * Do NOT use in runtime code paths unless behind `(process.env.NODE_ENV !== 'production')` flag.\n */\nconst isHTMLTag = /*#__PURE__*/makeMap(HTML_TAGS);\n/**\n * Compiler only.\n * Do NOT use in runtime code paths unless behind `(process.env.NODE_ENV !== 'production')` flag.\n */\nconst isSVGTag = /*#__PURE__*/makeMap(SVG_TAGS);\n/**\n * Compiler only.\n * Do NOT use in runtime code paths unless behind `(process.env.NODE_ENV !== 'production')` flag.\n */\nconst isVoidTag = /*#__PURE__*/makeMap(VOID_TAGS);\n\n/**\n * On the client we only need to offer special cases for boolean attributes that\n * have different names from their corresponding dom properties:\n * - itemscope -> N/A\n * - allowfullscreen -> allowFullscreen\n * - formnovalidate -> formNoValidate\n * - ismap -> isMap\n * - nomodule -> noModule\n * - novalidate -> noValidate\n * - readonly -> readOnly\n */\nconst specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;\nconst isSpecialBooleanAttr = /*#__PURE__*/makeMap(specialBooleanAttrs);\n/**\n * The full list is needed during SSR to produce the correct initial markup.\n */\nconst isBooleanAttr = /*#__PURE__*/makeMap(specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,` + `loop,open,required,reversed,scoped,seamless,` + `checked,muted,multiple,selected`);\n/**\n * Boolean attributes should be included if the value is truthy or ''.\n * e.g. `` compiles to `{ multiple: '' }` + */ +function includeBooleanAttr(value) { + return !!value || value === ''; +} + +function looseCompareArrays(a, b) { + if (a.length !== b.length) + return false; + let equal = true; + for (let i = 0; equal && i < a.length; i++) { + equal = looseEqual(a[i], b[i]); + } + return equal; +} +function looseEqual(a, b) { + if (a === b) + return true; + let aValidType = isDate(a); + let bValidType = isDate(b); + if (aValidType || bValidType) { + return aValidType && bValidType ? a.getTime() === b.getTime() : false; + } + aValidType = isSymbol(a); + bValidType = isSymbol(b); + if (aValidType || bValidType) { + return a === b; + } + aValidType = isArray(a); + bValidType = isArray(b); + if (aValidType || bValidType) { + return aValidType && bValidType ? looseCompareArrays(a, b) : false; + } + aValidType = isObject(a); + bValidType = isObject(b); + if (aValidType || bValidType) { + /* istanbul ignore if: this if will probably never be called */ + if (!aValidType || !bValidType) { + return false; + } + const aKeysCount = Object.keys(a).length; + const bKeysCount = Object.keys(b).length; + if (aKeysCount !== bKeysCount) { + return false; + } + for (const key in a) { + const aHasKey = a.hasOwnProperty(key); + const bHasKey = b.hasOwnProperty(key); + if ((aHasKey && !bHasKey) || + (!aHasKey && bHasKey) || + !looseEqual(a[key], b[key])) { + return false; + } + } + } + return String(a) === String(b); +} +function looseIndexOf(arr, val) { + return arr.findIndex(item => looseEqual(item, val)); +} + +/** + * For converting {{ interpolation }} values to displayed strings. + * @private + */ +const toDisplayString = (val) => { + return isString(val) + ? val + : val == null + ? '' + : isArray(val) || + (isObject(val) && + (val.toString === objectToString || !isFunction(val.toString))) + ? JSON.stringify(val, replacer, 2) + : String(val); +}; +const replacer = (_key, val) => { + // can't use isRef here since @vue/shared has no deps + if (val && val.__v_isRef) { + return replacer(_key, val.value); + } + else if (isMap(val)) { + return { + [`Map(${val.size})`]: [...val.entries()].reduce((entries, [key, val]) => { + entries[`${key} =>`] = val; + return entries; + }, {}) + }; + } + else if (isSet(val)) { + return { + [`Set(${val.size})`]: [...val.values()] + }; + } + else if (isObject(val) && !isArray(val) && !isPlainObject(val)) { + return String(val); + } + return val; +}; + +const EMPTY_OBJ = Object.freeze({}) + ; +const EMPTY_ARR = Object.freeze([]) ; +const NOOP = () => { }; +/** + * Always return false. + */ +const NO = () => false; +const onRE = /^on[^a-z]/; +const isOn = (key) => onRE.test(key); +const isModelListener = (key) => key.startsWith('onUpdate:'); +const extend = Object.assign; +const remove = (arr, el) => { + const i = arr.indexOf(el); + if (i > -1) { + arr.splice(i, 1); + } +}; +const hasOwnProperty = Object.prototype.hasOwnProperty; +const hasOwn = (val, key) => hasOwnProperty.call(val, key); +const isArray = Array.isArray; +const isMap = (val) => toTypeString(val) === '[object Map]'; +const isSet = (val) => toTypeString(val) === '[object Set]'; +const isDate = (val) => toTypeString(val) === '[object Date]'; +const isFunction = (val) => typeof val === 'function'; +const isString = (val) => typeof val === 'string'; +const isSymbol = (val) => typeof val === 'symbol'; +const isObject = (val) => val !== null && typeof val === 'object'; +const isPromise = (val) => { + return isObject(val) && isFunction(val.then) && isFunction(val.catch); +}; +const objectToString = Object.prototype.toString; +const toTypeString = (value) => objectToString.call(value); +const toRawType = (value) => { + // extract "RawType" from strings like "[object RawType]" + return toTypeString(value).slice(8, -1); +}; +const isPlainObject = (val) => toTypeString(val) === '[object Object]'; +const isIntegerKey = (key) => isString(key) && + key !== 'NaN' && + key[0] !== '-' && + '' + parseInt(key, 10) === key; +const isReservedProp = /*#__PURE__*/ makeMap( +// the leading comma is intentional so empty string "" is also included +',key,ref,ref_for,ref_key,' + + 'onVnodeBeforeMount,onVnodeMounted,' + + 'onVnodeBeforeUpdate,onVnodeUpdated,' + + 'onVnodeBeforeUnmount,onVnodeUnmounted'); +const isBuiltInDirective = /*#__PURE__*/ makeMap('bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo'); +const cacheStringFunction = (fn) => { + const cache = Object.create(null); + return ((str) => { + const hit = cache[str]; + return hit || (cache[str] = fn(str)); + }); +}; +const camelizeRE = /-(\w)/g; +/** + * @private + */ +const camelize = cacheStringFunction((str) => { + return str.replace(camelizeRE, (_, c) => (c ? c.toUpperCase() : '')); +}); +const hyphenateRE = /\B([A-Z])/g; +/** + * @private + */ +const hyphenate = cacheStringFunction((str) => str.replace(hyphenateRE, '-$1').toLowerCase()); +/** + * @private + */ +const capitalize = cacheStringFunction((str) => str.charAt(0).toUpperCase() + str.slice(1)); +/** + * @private + */ +const toHandlerKey = cacheStringFunction((str) => str ? `on${capitalize(str)}` : ``); +// compare whether a value has changed, accounting for NaN. +const hasChanged = (value, oldValue) => !Object.is(value, oldValue); +const invokeArrayFns = (fns, arg) => { + for (let i = 0; i < fns.length; i++) { + fns[i](arg); + } +}; +const def = (obj, key, value) => { + Object.defineProperty(obj, key, { + configurable: true, + enumerable: false, + value + }); +}; +const toNumber = (val) => { + const n = parseFloat(val); + return isNaN(n) ? val : n; +}; +let _globalThis; +const getGlobalThis = () => { + return (_globalThis || + (_globalThis = + typeof globalThis !== 'undefined' + ? globalThis + : typeof self !== 'undefined' + ? self + : typeof window !== 'undefined' + ? window + : typeof global !== 'undefined' + ? global + : {})); +}; + +function warn(msg, ...args) { + console.warn(`[Vue warn] ${msg}`, ...args); +} + +let activeEffectScope; +class EffectScope { + constructor(detached = false) { + this.detached = detached; + /** + * @internal + */ + this.active = true; + /** + * @internal + */ + this.effects = []; + /** + * @internal + */ + this.cleanups = []; + this.parent = activeEffectScope; + if (!detached && activeEffectScope) { + this.index = + (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1; + } + } + run(fn) { + if (this.active) { + const currentEffectScope = activeEffectScope; + try { + activeEffectScope = this; + return fn(); + } + finally { + activeEffectScope = currentEffectScope; + } + } + else { + warn(`cannot run an inactive effect scope.`); + } + } + /** + * This should only be called on non-detached scopes + * @internal + */ + on() { + activeEffectScope = this; + } + /** + * This should only be called on non-detached scopes + * @internal + */ + off() { + activeEffectScope = this.parent; + } + stop(fromParent) { + if (this.active) { + let i, l; + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].stop(); + } + for (i = 0, l = this.cleanups.length; i < l; i++) { + this.cleanups[i](); + } + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].stop(true); + } + } + // nested scope, dereference from parent to avoid memory leaks + if (!this.detached && this.parent && !fromParent) { + // optimized O(1) removal + const last = this.parent.scopes.pop(); + if (last && last !== this) { + this.parent.scopes[this.index] = last; + last.index = this.index; + } + } + this.parent = undefined; + this.active = false; + } + } +} +function effectScope(detached) { + return new EffectScope(detached); +} +function recordEffectScope(effect, scope = activeEffectScope) { + if (scope && scope.active) { + scope.effects.push(effect); + } +} +function getCurrentScope() { + return activeEffectScope; +} +function onScopeDispose(fn) { + if (activeEffectScope) { + activeEffectScope.cleanups.push(fn); + } + else { + warn(`onScopeDispose() is called when there is no active effect scope` + + ` to be associated with.`); + } +} + +const createDep = (effects) => { + const dep = new Set(effects); + dep.w = 0; + dep.n = 0; + return dep; +}; +const wasTracked = (dep) => (dep.w & trackOpBit) > 0; +const newTracked = (dep) => (dep.n & trackOpBit) > 0; +const initDepMarkers = ({ deps }) => { + if (deps.length) { + for (let i = 0; i < deps.length; i++) { + deps[i].w |= trackOpBit; // set was tracked + } + } +}; +const finalizeDepMarkers = (effect) => { + const { deps } = effect; + if (deps.length) { + let ptr = 0; + for (let i = 0; i < deps.length; i++) { + const dep = deps[i]; + if (wasTracked(dep) && !newTracked(dep)) { + dep.delete(effect); + } + else { + deps[ptr++] = dep; + } + // clear bits + dep.w &= ~trackOpBit; + dep.n &= ~trackOpBit; + } + deps.length = ptr; + } +}; + +const targetMap = new WeakMap(); +// The number of effects currently being tracked recursively. +let effectTrackDepth = 0; +let trackOpBit = 1; +/** + * The bitwise track markers support at most 30 levels of recursion. + * This value is chosen to enable modern JS engines to use a SMI on all platforms. + * When recursion depth is greater, fall back to using a full cleanup. + */ +const maxMarkerBits = 30; +let activeEffect; +const ITERATE_KEY = Symbol('iterate' ); +const MAP_KEY_ITERATE_KEY = Symbol('Map key iterate' ); +class ReactiveEffect { + constructor(fn, scheduler = null, scope) { + this.fn = fn; + this.scheduler = scheduler; + this.active = true; + this.deps = []; + this.parent = undefined; + recordEffectScope(this, scope); + } + run() { + if (!this.active) { + return this.fn(); + } + let parent = activeEffect; + let lastShouldTrack = shouldTrack; + while (parent) { + if (parent === this) { + return; + } + parent = parent.parent; + } + try { + this.parent = activeEffect; + activeEffect = this; + shouldTrack = true; + trackOpBit = 1 << ++effectTrackDepth; + if (effectTrackDepth <= maxMarkerBits) { + initDepMarkers(this); + } + else { + cleanupEffect(this); + } + return this.fn(); + } + finally { + if (effectTrackDepth <= maxMarkerBits) { + finalizeDepMarkers(this); + } + trackOpBit = 1 << --effectTrackDepth; + activeEffect = this.parent; + shouldTrack = lastShouldTrack; + this.parent = undefined; + if (this.deferStop) { + this.stop(); + } + } + } + stop() { + // stopped while running itself - defer the cleanup + if (activeEffect === this) { + this.deferStop = true; + } + else if (this.active) { + cleanupEffect(this); + if (this.onStop) { + this.onStop(); + } + this.active = false; + } + } +} +function cleanupEffect(effect) { + const { deps } = effect; + if (deps.length) { + for (let i = 0; i < deps.length; i++) { + deps[i].delete(effect); + } + deps.length = 0; + } +} +function effect(fn, options) { + if (fn.effect) { + fn = fn.effect.fn; + } + const _effect = new ReactiveEffect(fn); + if (options) { + extend(_effect, options); + if (options.scope) + recordEffectScope(_effect, options.scope); + } + if (!options || !options.lazy) { + _effect.run(); + } + const runner = _effect.run.bind(_effect); + runner.effect = _effect; + return runner; +} +function stop(runner) { + runner.effect.stop(); +} +let shouldTrack = true; +const trackStack = []; +function pauseTracking() { + trackStack.push(shouldTrack); + shouldTrack = false; +} +function resetTracking() { + const last = trackStack.pop(); + shouldTrack = last === undefined ? true : last; +} +function track(target, type, key) { + if (shouldTrack && activeEffect) { + let depsMap = targetMap.get(target); + if (!depsMap) { + targetMap.set(target, (depsMap = new Map())); + } + let dep = depsMap.get(key); + if (!dep) { + depsMap.set(key, (dep = createDep())); + } + const eventInfo = { effect: activeEffect, target, type, key } + ; + trackEffects(dep, eventInfo); + } +} +function trackEffects(dep, debuggerEventExtraInfo) { + let shouldTrack = false; + if (effectTrackDepth <= maxMarkerBits) { + if (!newTracked(dep)) { + dep.n |= trackOpBit; // set newly tracked + shouldTrack = !wasTracked(dep); + } + } + else { + // Full cleanup mode. + shouldTrack = !dep.has(activeEffect); + } + if (shouldTrack) { + dep.add(activeEffect); + activeEffect.deps.push(dep); + if (activeEffect.onTrack) { + activeEffect.onTrack(Object.assign({ effect: activeEffect }, debuggerEventExtraInfo)); + } + } +} +function trigger(target, type, key, newValue, oldValue, oldTarget) { + const depsMap = targetMap.get(target); + if (!depsMap) { + // never been tracked + return; + } + let deps = []; + if (type === "clear" /* TriggerOpTypes.CLEAR */) { + // collection being cleared + // trigger all effects for target + deps = [...depsMap.values()]; + } + else if (key === 'length' && isArray(target)) { + const newLength = toNumber(newValue); + depsMap.forEach((dep, key) => { + if (key === 'length' || key >= newLength) { + deps.push(dep); + } + }); + } + else { + // schedule runs for SET | ADD | DELETE + if (key !== void 0) { + deps.push(depsMap.get(key)); + } + // also run for iteration key on ADD | DELETE | Map.SET + switch (type) { + case "add" /* TriggerOpTypes.ADD */: + if (!isArray(target)) { + deps.push(depsMap.get(ITERATE_KEY)); + if (isMap(target)) { + deps.push(depsMap.get(MAP_KEY_ITERATE_KEY)); + } + } + else if (isIntegerKey(key)) { + // new index added to array -> length changes + deps.push(depsMap.get('length')); + } + break; + case "delete" /* TriggerOpTypes.DELETE */: + if (!isArray(target)) { + deps.push(depsMap.get(ITERATE_KEY)); + if (isMap(target)) { + deps.push(depsMap.get(MAP_KEY_ITERATE_KEY)); + } + } + break; + case "set" /* TriggerOpTypes.SET */: + if (isMap(target)) { + deps.push(depsMap.get(ITERATE_KEY)); + } + break; + } + } + const eventInfo = { target, type, key, newValue, oldValue, oldTarget } + ; + if (deps.length === 1) { + if (deps[0]) { + { + triggerEffects(deps[0], eventInfo); + } + } + } + else { + const effects = []; + for (const dep of deps) { + if (dep) { + effects.push(...dep); + } + } + { + triggerEffects(createDep(effects), eventInfo); + } + } +} +function triggerEffects(dep, debuggerEventExtraInfo) { + // spread into array for stabilization + const effects = isArray(dep) ? dep : [...dep]; + for (const effect of effects) { + if (effect.computed) { + triggerEffect(effect, debuggerEventExtraInfo); + } + } + for (const effect of effects) { + if (!effect.computed) { + triggerEffect(effect, debuggerEventExtraInfo); + } + } +} +function triggerEffect(effect, debuggerEventExtraInfo) { + if (effect !== activeEffect || effect.allowRecurse) { + if (effect.onTrigger) { + effect.onTrigger(extend({ effect }, debuggerEventExtraInfo)); + } + if (effect.scheduler) { + effect.scheduler(); + } + else { + effect.run(); + } + } +} + +const isNonTrackableKeys = /*#__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`); +const builtInSymbols = new Set( +/*#__PURE__*/ +Object.getOwnPropertyNames(Symbol) + // ios10.x Object.getOwnPropertyNames(Symbol) can enumerate 'arguments' and 'caller' + // but accessing them on Symbol leads to TypeError because Symbol is a strict mode + // function + .filter(key => key !== 'arguments' && key !== 'caller') + .map(key => Symbol[key]) + .filter(isSymbol)); +const get = /*#__PURE__*/ createGetter(); +const shallowGet = /*#__PURE__*/ createGetter(false, true); +const readonlyGet = /*#__PURE__*/ createGetter(true); +const shallowReadonlyGet = /*#__PURE__*/ createGetter(true, true); +const arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations(); +function createArrayInstrumentations() { + const instrumentations = {}; + ['includes', 'indexOf', 'lastIndexOf'].forEach(key => { + instrumentations[key] = function (...args) { + const arr = toRaw(this); + for (let i = 0, l = this.length; i < l; i++) { + track(arr, "get" /* TrackOpTypes.GET */, i + ''); + } + // we run the method using the original args first (which may be reactive) + const res = arr[key](...args); + if (res === -1 || res === false) { + // if that didn't work, run it again using raw values. + return arr[key](...args.map(toRaw)); + } + else { + return res; + } + }; + }); + ['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => { + instrumentations[key] = function (...args) { + pauseTracking(); + const res = toRaw(this)[key].apply(this, args); + resetTracking(); + return res; + }; + }); + return instrumentations; +} +function createGetter(isReadonly = false, shallow = false) { + return function get(target, key, receiver) { + if (key === "__v_isReactive" /* ReactiveFlags.IS_REACTIVE */) { + return !isReadonly; + } + else if (key === "__v_isReadonly" /* ReactiveFlags.IS_READONLY */) { + return isReadonly; + } + else if (key === "__v_isShallow" /* ReactiveFlags.IS_SHALLOW */) { + return shallow; + } + else if (key === "__v_raw" /* ReactiveFlags.RAW */ && + receiver === + (isReadonly + ? shallow + ? shallowReadonlyMap + : readonlyMap + : shallow + ? shallowReactiveMap + : reactiveMap).get(target)) { + return target; + } + const targetIsArray = isArray(target); + if (!isReadonly && targetIsArray && hasOwn(arrayInstrumentations, key)) { + return Reflect.get(arrayInstrumentations, key, receiver); + } + const res = Reflect.get(target, key, receiver); + if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) { + return res; + } + if (!isReadonly) { + track(target, "get" /* TrackOpTypes.GET */, key); + } + if (shallow) { + return res; + } + if (isRef(res)) { + // ref unwrapping - skip unwrap for Array + integer key. + return targetIsArray && isIntegerKey(key) ? res : res.value; + } + if (isObject(res)) { + // Convert returned value into a proxy as well. we do the isObject check + // here to avoid invalid value warning. Also need to lazy access readonly + // and reactive here to avoid circular dependency. + return isReadonly ? readonly(res) : reactive(res); + } + return res; + }; +} +const set = /*#__PURE__*/ createSetter(); +const shallowSet = /*#__PURE__*/ createSetter(true); +function createSetter(shallow = false) { + return function set(target, key, value, receiver) { + let oldValue = target[key]; + if (isReadonly(oldValue) && isRef(oldValue) && !isRef(value)) { + return false; + } + if (!shallow) { + if (!isShallow(value) && !isReadonly(value)) { + oldValue = toRaw(oldValue); + value = toRaw(value); + } + if (!isArray(target) && isRef(oldValue) && !isRef(value)) { + oldValue.value = value; + return true; + } + } + const hadKey = isArray(target) && isIntegerKey(key) + ? Number(key) < target.length + : hasOwn(target, key); + const result = Reflect.set(target, key, value, receiver); + // don't trigger if target is something up in the prototype chain of original + if (target === toRaw(receiver)) { + if (!hadKey) { + trigger(target, "add" /* TriggerOpTypes.ADD */, key, value); + } + else if (hasChanged(value, oldValue)) { + trigger(target, "set" /* TriggerOpTypes.SET */, key, value, oldValue); + } + } + return result; + }; +} +function deleteProperty(target, key) { + const hadKey = hasOwn(target, key); + const oldValue = target[key]; + const result = Reflect.deleteProperty(target, key); + if (result && hadKey) { + trigger(target, "delete" /* TriggerOpTypes.DELETE */, key, undefined, oldValue); + } + return result; +} +function has(target, key) { + const result = Reflect.has(target, key); + if (!isSymbol(key) || !builtInSymbols.has(key)) { + track(target, "has" /* TrackOpTypes.HAS */, key); + } + return result; +} +function ownKeys(target) { + track(target, "iterate" /* TrackOpTypes.ITERATE */, isArray(target) ? 'length' : ITERATE_KEY); + return Reflect.ownKeys(target); +} +const mutableHandlers = { + get, + set, + deleteProperty, + has, + ownKeys +}; +const readonlyHandlers = { + get: readonlyGet, + set(target, key) { + { + warn(`Set operation on key "${String(key)}" failed: target is readonly.`, target); + } + return true; + }, + deleteProperty(target, key) { + { + warn(`Delete operation on key "${String(key)}" failed: target is readonly.`, target); + } + return true; + } +}; +const shallowReactiveHandlers = /*#__PURE__*/ extend({}, mutableHandlers, { + get: shallowGet, + set: shallowSet +}); +// Props handlers are special in the sense that it should not unwrap top-level +// refs (in order to allow refs to be explicitly passed down), but should +// retain the reactivity of the normal readonly object. +const shallowReadonlyHandlers = /*#__PURE__*/ extend({}, readonlyHandlers, { + get: shallowReadonlyGet +}); + +const toShallow = (value) => value; +const getProto = (v) => Reflect.getPrototypeOf(v); +function get$1(target, key, isReadonly = false, isShallow = false) { + // #1772: readonly(reactive(Map)) should return readonly + reactive version + // of the value + target = target["__v_raw" /* ReactiveFlags.RAW */]; + const rawTarget = toRaw(target); + const rawKey = toRaw(key); + if (!isReadonly) { + if (key !== rawKey) { + track(rawTarget, "get" /* TrackOpTypes.GET */, key); + } + track(rawTarget, "get" /* TrackOpTypes.GET */, rawKey); + } + const { has } = getProto(rawTarget); + const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive; + if (has.call(rawTarget, key)) { + return wrap(target.get(key)); + } + else if (has.call(rawTarget, rawKey)) { + return wrap(target.get(rawKey)); + } + else if (target !== rawTarget) { + // #3602 readonly(reactive(Map)) + // ensure that the nested reactive `Map` can do tracking for itself + target.get(key); + } +} +function has$1(key, isReadonly = false) { + const target = this["__v_raw" /* ReactiveFlags.RAW */]; + const rawTarget = toRaw(target); + const rawKey = toRaw(key); + if (!isReadonly) { + if (key !== rawKey) { + track(rawTarget, "has" /* TrackOpTypes.HAS */, key); + } + track(rawTarget, "has" /* TrackOpTypes.HAS */, rawKey); + } + return key === rawKey + ? target.has(key) + : target.has(key) || target.has(rawKey); +} +function size(target, isReadonly = false) { + target = target["__v_raw" /* ReactiveFlags.RAW */]; + !isReadonly && track(toRaw(target), "iterate" /* TrackOpTypes.ITERATE */, ITERATE_KEY); + return Reflect.get(target, 'size', target); +} +function add(value) { + value = toRaw(value); + const target = toRaw(this); + const proto = getProto(target); + const hadKey = proto.has.call(target, value); + if (!hadKey) { + target.add(value); + trigger(target, "add" /* TriggerOpTypes.ADD */, value, value); + } + return this; +} +function set$1(key, value) { + value = toRaw(value); + const target = toRaw(this); + const { has, get } = getProto(target); + let hadKey = has.call(target, key); + if (!hadKey) { + key = toRaw(key); + hadKey = has.call(target, key); + } + else { + checkIdentityKeys(target, has, key); + } + const oldValue = get.call(target, key); + target.set(key, value); + if (!hadKey) { + trigger(target, "add" /* TriggerOpTypes.ADD */, key, value); + } + else if (hasChanged(value, oldValue)) { + trigger(target, "set" /* TriggerOpTypes.SET */, key, value, oldValue); + } + return this; +} +function deleteEntry(key) { + const target = toRaw(this); + const { has, get } = getProto(target); + let hadKey = has.call(target, key); + if (!hadKey) { + key = toRaw(key); + hadKey = has.call(target, key); + } + else { + checkIdentityKeys(target, has, key); + } + const oldValue = get ? get.call(target, key) : undefined; + // forward the operation before queueing reactions + const result = target.delete(key); + if (hadKey) { + trigger(target, "delete" /* TriggerOpTypes.DELETE */, key, undefined, oldValue); + } + return result; +} +function clear() { + const target = toRaw(this); + const hadItems = target.size !== 0; + const oldTarget = isMap(target) + ? new Map(target) + : new Set(target) + ; + // forward the operation before queueing reactions + const result = target.clear(); + if (hadItems) { + trigger(target, "clear" /* TriggerOpTypes.CLEAR */, undefined, undefined, oldTarget); + } + return result; +} +function createForEach(isReadonly, isShallow) { + return function forEach(callback, thisArg) { + const observed = this; + const target = observed["__v_raw" /* ReactiveFlags.RAW */]; + const rawTarget = toRaw(target); + const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive; + !isReadonly && track(rawTarget, "iterate" /* TrackOpTypes.ITERATE */, ITERATE_KEY); + return target.forEach((value, key) => { + // important: make sure the callback is + // 1. invoked with the reactive map as `this` and 3rd arg + // 2. the value received should be a corresponding reactive/readonly. + return callback.call(thisArg, wrap(value), wrap(key), observed); + }); + }; +} +function createIterableMethod(method, isReadonly, isShallow) { + return function (...args) { + const target = this["__v_raw" /* ReactiveFlags.RAW */]; + const rawTarget = toRaw(target); + const targetIsMap = isMap(rawTarget); + const isPair = method === 'entries' || (method === Symbol.iterator && targetIsMap); + const isKeyOnly = method === 'keys' && targetIsMap; + const innerIterator = target[method](...args); + const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive; + !isReadonly && + track(rawTarget, "iterate" /* TrackOpTypes.ITERATE */, isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY); + // return a wrapped iterator which returns observed versions of the + // values emitted from the real iterator + return { + // iterator protocol + next() { + const { value, done } = innerIterator.next(); + return done + ? { value, done } + : { + value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value), + done + }; + }, + // iterable protocol + [Symbol.iterator]() { + return this; + } + }; + }; +} +function createReadonlyMethod(type) { + return function (...args) { + { + const key = args[0] ? `on key "${args[0]}" ` : ``; + console.warn(`${capitalize(type)} operation ${key}failed: target is readonly.`, toRaw(this)); + } + return type === "delete" /* TriggerOpTypes.DELETE */ ? false : this; + }; +} +function createInstrumentations() { + const mutableInstrumentations = { + get(key) { + return get$1(this, key); + }, + get size() { + return size(this); + }, + has: has$1, + add, + set: set$1, + delete: deleteEntry, + clear, + forEach: createForEach(false, false) + }; + const shallowInstrumentations = { + get(key) { + return get$1(this, key, false, true); + }, + get size() { + return size(this); + }, + has: has$1, + add, + set: set$1, + delete: deleteEntry, + clear, + forEach: createForEach(false, true) + }; + const readonlyInstrumentations = { + get(key) { + return get$1(this, key, true); + }, + get size() { + return size(this, true); + }, + has(key) { + return has$1.call(this, key, true); + }, + add: createReadonlyMethod("add" /* TriggerOpTypes.ADD */), + set: createReadonlyMethod("set" /* TriggerOpTypes.SET */), + delete: createReadonlyMethod("delete" /* TriggerOpTypes.DELETE */), + clear: createReadonlyMethod("clear" /* TriggerOpTypes.CLEAR */), + forEach: createForEach(true, false) + }; + const shallowReadonlyInstrumentations = { + get(key) { + return get$1(this, key, true, true); + }, + get size() { + return size(this, true); + }, + has(key) { + return has$1.call(this, key, true); + }, + add: createReadonlyMethod("add" /* TriggerOpTypes.ADD */), + set: createReadonlyMethod("set" /* TriggerOpTypes.SET */), + delete: createReadonlyMethod("delete" /* TriggerOpTypes.DELETE */), + clear: createReadonlyMethod("clear" /* TriggerOpTypes.CLEAR */), + forEach: createForEach(true, true) + }; + const iteratorMethods = ['keys', 'values', 'entries', Symbol.iterator]; + iteratorMethods.forEach(method => { + mutableInstrumentations[method] = createIterableMethod(method, false, false); + readonlyInstrumentations[method] = createIterableMethod(method, true, false); + shallowInstrumentations[method] = createIterableMethod(method, false, true); + shallowReadonlyInstrumentations[method] = createIterableMethod(method, true, true); + }); + return [ + mutableInstrumentations, + readonlyInstrumentations, + shallowInstrumentations, + shallowReadonlyInstrumentations + ]; +} +const [mutableInstrumentations, readonlyInstrumentations, shallowInstrumentations, shallowReadonlyInstrumentations] = /* #__PURE__*/ createInstrumentations(); +function createInstrumentationGetter(isReadonly, shallow) { + const instrumentations = shallow + ? isReadonly + ? shallowReadonlyInstrumentations + : shallowInstrumentations + : isReadonly + ? readonlyInstrumentations + : mutableInstrumentations; + return (target, key, receiver) => { + if (key === "__v_isReactive" /* ReactiveFlags.IS_REACTIVE */) { + return !isReadonly; + } + else if (key === "__v_isReadonly" /* ReactiveFlags.IS_READONLY */) { + return isReadonly; + } + else if (key === "__v_raw" /* ReactiveFlags.RAW */) { + return target; + } + return Reflect.get(hasOwn(instrumentations, key) && key in target + ? instrumentations + : target, key, receiver); + }; +} +const mutableCollectionHandlers = { + get: /*#__PURE__*/ createInstrumentationGetter(false, false) +}; +const shallowCollectionHandlers = { + get: /*#__PURE__*/ createInstrumentationGetter(false, true) +}; +const readonlyCollectionHandlers = { + get: /*#__PURE__*/ createInstrumentationGetter(true, false) +}; +const shallowReadonlyCollectionHandlers = { + get: /*#__PURE__*/ createInstrumentationGetter(true, true) +}; +function checkIdentityKeys(target, has, key) { + const rawKey = toRaw(key); + if (rawKey !== key && has.call(target, rawKey)) { + const type = toRawType(target); + console.warn(`Reactive ${type} contains both the raw and reactive ` + + `versions of the same object${type === `Map` ? ` as keys` : ``}, ` + + `which can lead to inconsistencies. ` + + `Avoid differentiating between the raw and reactive versions ` + + `of an object and only use the reactive version if possible.`); + } +} + +const reactiveMap = new WeakMap(); +const shallowReactiveMap = new WeakMap(); +const readonlyMap = new WeakMap(); +const shallowReadonlyMap = new WeakMap(); +function targetTypeMap(rawType) { + switch (rawType) { + case 'Object': + case 'Array': + return 1 /* TargetType.COMMON */; + case 'Map': + case 'Set': + case 'WeakMap': + case 'WeakSet': + return 2 /* TargetType.COLLECTION */; + default: + return 0 /* TargetType.INVALID */; + } +} +function getTargetType(value) { + return value["__v_skip" /* ReactiveFlags.SKIP */] || !Object.isExtensible(value) + ? 0 /* TargetType.INVALID */ + : targetTypeMap(toRawType(value)); +} +function reactive(target) { + // if trying to observe a readonly proxy, return the readonly version. + if (isReadonly(target)) { + return target; + } + return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap); +} +/** + * Return a shallowly-reactive copy of the original object, where only the root + * level properties are reactive. It also does not auto-unwrap refs (even at the + * root level). + */ +function shallowReactive(target) { + return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap); +} +/** + * Creates a readonly copy of the original object. Note the returned copy is not + * made reactive, but `readonly` can be called on an already reactive object. + */ +function readonly(target) { + return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap); +} +/** + * Returns a reactive-copy of the original object, where only the root level + * properties are readonly, and does NOT unwrap refs nor recursively convert + * returned properties. + * This is used for creating the props proxy object for stateful components. + */ +function shallowReadonly(target) { + return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap); +} +function createReactiveObject(target, isReadonly, baseHandlers, collectionHandlers, proxyMap) { + if (!isObject(target)) { + { + console.warn(`value cannot be made reactive: ${String(target)}`); + } + return target; + } + // target is already a Proxy, return it. + // exception: calling readonly() on a reactive object + if (target["__v_raw" /* ReactiveFlags.RAW */] && + !(isReadonly && target["__v_isReactive" /* ReactiveFlags.IS_REACTIVE */])) { + return target; + } + // target already has corresponding Proxy + const existingProxy = proxyMap.get(target); + if (existingProxy) { + return existingProxy; + } + // only specific value types can be observed. + const targetType = getTargetType(target); + if (targetType === 0 /* TargetType.INVALID */) { + return target; + } + const proxy = new Proxy(target, targetType === 2 /* TargetType.COLLECTION */ ? collectionHandlers : baseHandlers); + proxyMap.set(target, proxy); + return proxy; +} +function isReactive(value) { + if (isReadonly(value)) { + return isReactive(value["__v_raw" /* ReactiveFlags.RAW */]); + } + return !!(value && value["__v_isReactive" /* ReactiveFlags.IS_REACTIVE */]); +} +function isReadonly(value) { + return !!(value && value["__v_isReadonly" /* ReactiveFlags.IS_READONLY */]); +} +function isShallow(value) { + return !!(value && value["__v_isShallow" /* ReactiveFlags.IS_SHALLOW */]); +} +function isProxy(value) { + return isReactive(value) || isReadonly(value); +} +function toRaw(observed) { + const raw = observed && observed["__v_raw" /* ReactiveFlags.RAW */]; + return raw ? toRaw(raw) : observed; +} +function markRaw(value) { + def(value, "__v_skip" /* ReactiveFlags.SKIP */, true); + return value; +} +const toReactive = (value) => isObject(value) ? reactive(value) : value; +const toReadonly = (value) => isObject(value) ? readonly(value) : value; + +function trackRefValue(ref) { + if (shouldTrack && activeEffect) { + ref = toRaw(ref); + { + trackEffects(ref.dep || (ref.dep = createDep()), { + target: ref, + type: "get" /* TrackOpTypes.GET */, + key: 'value' + }); + } + } +} +function triggerRefValue(ref, newVal) { + ref = toRaw(ref); + if (ref.dep) { + { + triggerEffects(ref.dep, { + target: ref, + type: "set" /* TriggerOpTypes.SET */, + key: 'value', + newValue: newVal + }); + } + } +} +function isRef(r) { + return !!(r && r.__v_isRef === true); +} +function ref(value) { + return createRef(value, false); +} +function shallowRef(value) { + return createRef(value, true); +} +function createRef(rawValue, shallow) { + if (isRef(rawValue)) { + return rawValue; + } + return new RefImpl(rawValue, shallow); +} +class RefImpl { + constructor(value, __v_isShallow) { + this.__v_isShallow = __v_isShallow; + this.dep = undefined; + this.__v_isRef = true; + this._rawValue = __v_isShallow ? value : toRaw(value); + this._value = __v_isShallow ? value : toReactive(value); + } + get value() { + trackRefValue(this); + return this._value; + } + set value(newVal) { + const useDirectValue = this.__v_isShallow || isShallow(newVal) || isReadonly(newVal); + newVal = useDirectValue ? newVal : toRaw(newVal); + if (hasChanged(newVal, this._rawValue)) { + this._rawValue = newVal; + this._value = useDirectValue ? newVal : toReactive(newVal); + triggerRefValue(this, newVal); + } + } +} +function triggerRef(ref) { + triggerRefValue(ref, ref.value ); +} +function unref(ref) { + return isRef(ref) ? ref.value : ref; +} +const shallowUnwrapHandlers = { + get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)), + set: (target, key, value, receiver) => { + const oldValue = target[key]; + if (isRef(oldValue) && !isRef(value)) { + oldValue.value = value; + return true; + } + else { + return Reflect.set(target, key, value, receiver); + } + } +}; +function proxyRefs(objectWithRefs) { + return isReactive(objectWithRefs) + ? objectWithRefs + : new Proxy(objectWithRefs, shallowUnwrapHandlers); +} +class CustomRefImpl { + constructor(factory) { + this.dep = undefined; + this.__v_isRef = true; + const { get, set } = factory(() => trackRefValue(this), () => triggerRefValue(this)); + this._get = get; + this._set = set; + } + get value() { + return this._get(); + } + set value(newVal) { + this._set(newVal); + } +} +function customRef(factory) { + return new CustomRefImpl(factory); +} +function toRefs(object) { + if (!isProxy(object)) { + console.warn(`toRefs() expects a reactive object but received a plain one.`); + } + const ret = isArray(object) ? new Array(object.length) : {}; + for (const key in object) { + ret[key] = toRef(object, key); + } + return ret; +} +class ObjectRefImpl { + constructor(_object, _key, _defaultValue) { + this._object = _object; + this._key = _key; + this._defaultValue = _defaultValue; + this.__v_isRef = true; + } + get value() { + const val = this._object[this._key]; + return val === undefined ? this._defaultValue : val; + } + set value(newVal) { + this._object[this._key] = newVal; + } +} +function toRef(object, key, defaultValue) { + const val = object[key]; + return isRef(val) + ? val + : new ObjectRefImpl(object, key, defaultValue); +} + +var _a; +class ComputedRefImpl { + constructor(getter, _setter, isReadonly, isSSR) { + this._setter = _setter; + this.dep = undefined; + this.__v_isRef = true; + this[_a] = false; + this._dirty = true; + this.effect = new ReactiveEffect(getter, () => { + if (!this._dirty) { + this._dirty = true; + triggerRefValue(this); + } + }); + this.effect.computed = this; + this.effect.active = this._cacheable = !isSSR; + this["__v_isReadonly" /* ReactiveFlags.IS_READONLY */] = isReadonly; + } + get value() { + // the computed ref may get wrapped by other proxies e.g. readonly() #3376 + const self = toRaw(this); + trackRefValue(self); + if (self._dirty || !self._cacheable) { + self._dirty = false; + self._value = self.effect.run(); + } + return self._value; + } + set value(newValue) { + this._setter(newValue); + } +} +_a = "__v_isReadonly" /* ReactiveFlags.IS_READONLY */; +function computed(getterOrOptions, debugOptions, isSSR = false) { + let getter; + let setter; + const onlyGetter = isFunction(getterOrOptions); + if (onlyGetter) { + getter = getterOrOptions; + setter = () => { + console.warn('Write operation failed: computed value is readonly'); + } + ; + } + else { + getter = getterOrOptions.get; + setter = getterOrOptions.set; + } + const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR); + if (debugOptions && !isSSR) { + cRef.effect.onTrack = debugOptions.onTrack; + cRef.effect.onTrigger = debugOptions.onTrigger; + } + return cRef; +} + +const stack = []; +function pushWarningContext(vnode) { + stack.push(vnode); +} +function popWarningContext() { + stack.pop(); +} +function warn$1(msg, ...args) { + // avoid props formatting or warn handler tracking deps that might be mutated + // during patch, leading to infinite recursion. + pauseTracking(); + const instance = stack.length ? stack[stack.length - 1].component : null; + const appWarnHandler = instance && instance.appContext.config.warnHandler; + const trace = getComponentTrace(); + if (appWarnHandler) { + callWithErrorHandling(appWarnHandler, instance, 11 /* ErrorCodes.APP_WARN_HANDLER */, [ + msg + args.join(''), + instance && instance.proxy, + trace + .map(({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`) + .join('\n'), + trace + ]); + } + else { + const warnArgs = [`[Vue warn]: ${msg}`, ...args]; + /* istanbul ignore if */ + if (trace.length && + // avoid spamming console during tests + !false) { + warnArgs.push(`\n`, ...formatTrace(trace)); + } + console.warn(...warnArgs); + } + resetTracking(); +} +function getComponentTrace() { + let currentVNode = stack[stack.length - 1]; + if (!currentVNode) { + return []; + } + // we can't just use the stack because it will be incomplete during updates + // that did not start from the root. Re-construct the parent chain using + // instance parent pointers. + const normalizedStack = []; + while (currentVNode) { + const last = normalizedStack[0]; + if (last && last.vnode === currentVNode) { + last.recurseCount++; + } + else { + normalizedStack.push({ + vnode: currentVNode, + recurseCount: 0 + }); + } + const parentInstance = currentVNode.component && currentVNode.component.parent; + currentVNode = parentInstance && parentInstance.vnode; + } + return normalizedStack; +} +/* istanbul ignore next */ +function formatTrace(trace) { + const logs = []; + trace.forEach((entry, i) => { + logs.push(...(i === 0 ? [] : [`\n`]), ...formatTraceEntry(entry)); + }); + return logs; +} +function formatTraceEntry({ vnode, recurseCount }) { + const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``; + const isRoot = vnode.component ? vnode.component.parent == null : false; + const open = ` at <${formatComponentName(vnode.component, vnode.type, isRoot)}`; + const close = `>` + postfix; + return vnode.props + ? [open, ...formatProps(vnode.props), close] + : [open + close]; +} +/* istanbul ignore next */ +function formatProps(props) { + const res = []; + const keys = Object.keys(props); + keys.slice(0, 3).forEach(key => { + res.push(...formatProp(key, props[key])); + }); + if (keys.length > 3) { + res.push(` ...`); + } + return res; +} +/* istanbul ignore next */ +function formatProp(key, value, raw) { + if (isString(value)) { + value = JSON.stringify(value); + return raw ? value : [`${key}=${value}`]; + } + else if (typeof value === 'number' || + typeof value === 'boolean' || + value == null) { + return raw ? value : [`${key}=${value}`]; + } + else if (isRef(value)) { + value = formatProp(key, toRaw(value.value), true); + return raw ? value : [`${key}=Ref<`, value, `>`]; + } + else if (isFunction(value)) { + return [`${key}=fn${value.name ? `<${value.name}>` : ``}`]; + } + else { + value = toRaw(value); + return raw ? value : [`${key}=`, value]; + } +} + +const ErrorTypeStrings = { + ["sp" /* LifecycleHooks.SERVER_PREFETCH */]: 'serverPrefetch hook', + ["bc" /* LifecycleHooks.BEFORE_CREATE */]: 'beforeCreate hook', + ["c" /* LifecycleHooks.CREATED */]: 'created hook', + ["bm" /* LifecycleHooks.BEFORE_MOUNT */]: 'beforeMount hook', + ["m" /* LifecycleHooks.MOUNTED */]: 'mounted hook', + ["bu" /* LifecycleHooks.BEFORE_UPDATE */]: 'beforeUpdate hook', + ["u" /* LifecycleHooks.UPDATED */]: 'updated', + ["bum" /* LifecycleHooks.BEFORE_UNMOUNT */]: 'beforeUnmount hook', + ["um" /* LifecycleHooks.UNMOUNTED */]: 'unmounted hook', + ["a" /* LifecycleHooks.ACTIVATED */]: 'activated hook', + ["da" /* LifecycleHooks.DEACTIVATED */]: 'deactivated hook', + ["ec" /* LifecycleHooks.ERROR_CAPTURED */]: 'errorCaptured hook', + ["rtc" /* LifecycleHooks.RENDER_TRACKED */]: 'renderTracked hook', + ["rtg" /* LifecycleHooks.RENDER_TRIGGERED */]: 'renderTriggered hook', + [0 /* ErrorCodes.SETUP_FUNCTION */]: 'setup function', + [1 /* ErrorCodes.RENDER_FUNCTION */]: 'render function', + [2 /* ErrorCodes.WATCH_GETTER */]: 'watcher getter', + [3 /* ErrorCodes.WATCH_CALLBACK */]: 'watcher callback', + [4 /* ErrorCodes.WATCH_CLEANUP */]: 'watcher cleanup function', + [5 /* ErrorCodes.NATIVE_EVENT_HANDLER */]: 'native event handler', + [6 /* ErrorCodes.COMPONENT_EVENT_HANDLER */]: 'component event handler', + [7 /* ErrorCodes.VNODE_HOOK */]: 'vnode hook', + [8 /* ErrorCodes.DIRECTIVE_HOOK */]: 'directive hook', + [9 /* ErrorCodes.TRANSITION_HOOK */]: 'transition hook', + [10 /* ErrorCodes.APP_ERROR_HANDLER */]: 'app errorHandler', + [11 /* ErrorCodes.APP_WARN_HANDLER */]: 'app warnHandler', + [12 /* ErrorCodes.FUNCTION_REF */]: 'ref function', + [13 /* ErrorCodes.ASYNC_COMPONENT_LOADER */]: 'async component loader', + [14 /* ErrorCodes.SCHEDULER */]: 'scheduler flush. This is likely a Vue internals bug. ' + + 'Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/core' +}; +function callWithErrorHandling(fn, instance, type, args) { + let res; + try { + res = args ? fn(...args) : fn(); + } + catch (err) { + handleError(err, instance, type); + } + return res; +} +function callWithAsyncErrorHandling(fn, instance, type, args) { + if (isFunction(fn)) { + const res = callWithErrorHandling(fn, instance, type, args); + if (res && isPromise(res)) { + res.catch(err => { + handleError(err, instance, type); + }); + } + return res; + } + const values = []; + for (let i = 0; i < fn.length; i++) { + values.push(callWithAsyncErrorHandling(fn[i], instance, type, args)); + } + return values; +} +function handleError(err, instance, type, throwInDev = true) { + const contextVNode = instance ? instance.vnode : null; + if (instance) { + let cur = instance.parent; + // the exposed instance is the render proxy to keep it consistent with 2.x + const exposedInstance = instance.proxy; + // in production the hook receives only the error code + const errorInfo = ErrorTypeStrings[type] ; + while (cur) { + const errorCapturedHooks = cur.ec; + if (errorCapturedHooks) { + for (let i = 0; i < errorCapturedHooks.length; i++) { + if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) { + return; + } + } + } + cur = cur.parent; + } + // app-level handling + const appErrorHandler = instance.appContext.config.errorHandler; + if (appErrorHandler) { + callWithErrorHandling(appErrorHandler, null, 10 /* ErrorCodes.APP_ERROR_HANDLER */, [err, exposedInstance, errorInfo]); + return; + } + } + logError(err, type, contextVNode, throwInDev); +} +function logError(err, type, contextVNode, throwInDev = true) { + { + const info = ErrorTypeStrings[type]; + if (contextVNode) { + pushWarningContext(contextVNode); + } + warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`); + if (contextVNode) { + popWarningContext(); + } + // crash in dev by default so it's more noticeable + if (throwInDev) { + throw err; + } + else { + console.error(err); + } + } +} + +let isFlushing = false; +let isFlushPending = false; +const queue = []; +let flushIndex = 0; +const pendingPostFlushCbs = []; +let activePostFlushCbs = null; +let postFlushIndex = 0; +const resolvedPromise = /*#__PURE__*/ Promise.resolve(); +let currentFlushPromise = null; +const RECURSION_LIMIT = 100; +function nextTick(fn) { + const p = currentFlushPromise || resolvedPromise; + return fn ? p.then(this ? fn.bind(this) : fn) : p; +} +// #2768 +// Use binary-search to find a suitable position in the queue, +// so that the queue maintains the increasing order of job's id, +// which can prevent the job from being skipped and also can avoid repeated patching. +function findInsertionIndex(id) { + // the start index should be `flushIndex + 1` + let start = flushIndex + 1; + let end = queue.length; + while (start < end) { + const middle = (start + end) >>> 1; + const middleJobId = getId(queue[middle]); + middleJobId < id ? (start = middle + 1) : (end = middle); + } + return start; +} +function queueJob(job) { + // the dedupe search uses the startIndex argument of Array.includes() + // by default the search index includes the current job that is being run + // so it cannot recursively trigger itself again. + // if the job is a watch() callback, the search will start with a +1 index to + // allow it recursively trigger itself - it is the user's responsibility to + // ensure it doesn't end up in an infinite loop. + if (!queue.length || + !queue.includes(job, isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex)) { + if (job.id == null) { + queue.push(job); + } + else { + queue.splice(findInsertionIndex(job.id), 0, job); + } + queueFlush(); + } +} +function queueFlush() { + if (!isFlushing && !isFlushPending) { + isFlushPending = true; + currentFlushPromise = resolvedPromise.then(flushJobs); + } +} +function invalidateJob(job) { + const i = queue.indexOf(job); + if (i > flushIndex) { + queue.splice(i, 1); + } +} +function queuePostFlushCb(cb) { + if (!isArray(cb)) { + if (!activePostFlushCbs || + !activePostFlushCbs.includes(cb, cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex)) { + pendingPostFlushCbs.push(cb); + } + } + else { + // if cb is an array, it is a component lifecycle hook which can only be + // triggered by a job, which is already deduped in the main queue, so + // we can skip duplicate check here to improve perf + pendingPostFlushCbs.push(...cb); + } + queueFlush(); +} +function flushPreFlushCbs(seen, +// if currently flushing, skip the current job itself +i = isFlushing ? flushIndex + 1 : 0) { + { + seen = seen || new Map(); + } + for (; i < queue.length; i++) { + const cb = queue[i]; + if (cb && cb.pre) { + if (checkRecursiveUpdates(seen, cb)) { + continue; + } + queue.splice(i, 1); + i--; + cb(); + } + } +} +function flushPostFlushCbs(seen) { + if (pendingPostFlushCbs.length) { + const deduped = [...new Set(pendingPostFlushCbs)]; + pendingPostFlushCbs.length = 0; + // #1947 already has active queue, nested flushPostFlushCbs call + if (activePostFlushCbs) { + activePostFlushCbs.push(...deduped); + return; + } + activePostFlushCbs = deduped; + { + seen = seen || new Map(); + } + activePostFlushCbs.sort((a, b) => getId(a) - getId(b)); + for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { + if (checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) { + continue; + } + activePostFlushCbs[postFlushIndex](); + } + activePostFlushCbs = null; + postFlushIndex = 0; + } +} +const getId = (job) => job.id == null ? Infinity : job.id; +const comparator = (a, b) => { + const diff = getId(a) - getId(b); + if (diff === 0) { + if (a.pre && !b.pre) + return -1; + if (b.pre && !a.pre) + return 1; + } + return diff; +}; +function flushJobs(seen) { + isFlushPending = false; + isFlushing = true; + { + seen = seen || new Map(); + } + // Sort queue before flush. + // This ensures that: + // 1. Components are updated from parent to child. (because parent is always + // created before the child so its render effect will have smaller + // priority number) + // 2. If a component is unmounted during a parent component's update, + // its update can be skipped. + queue.sort(comparator); + // conditional usage of checkRecursiveUpdate must be determined out of + // try ... catch block since Rollup by default de-optimizes treeshaking + // inside try-catch. This can leave all warning code unshaked. Although + // they would get eventually shaken by a minifier like terser, some minifiers + // would fail to do that (e.g. https://github.com/evanw/esbuild/issues/1610) + const check = (job) => checkRecursiveUpdates(seen, job) + ; + try { + for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { + const job = queue[flushIndex]; + if (job && job.active !== false) { + if (true && check(job)) { + continue; + } + // console.log(`running:`, job.id) + callWithErrorHandling(job, null, 14 /* ErrorCodes.SCHEDULER */); + } + } + } + finally { + flushIndex = 0; + queue.length = 0; + flushPostFlushCbs(seen); + isFlushing = false; + currentFlushPromise = null; + // some postFlushCb queued jobs! + // keep flushing until it drains. + if (queue.length || pendingPostFlushCbs.length) { + flushJobs(seen); + } + } +} +function checkRecursiveUpdates(seen, fn) { + if (!seen.has(fn)) { + seen.set(fn, 1); + } + else { + const count = seen.get(fn); + if (count > RECURSION_LIMIT) { + const instance = fn.ownerInstance; + const componentName = instance && getComponentName(instance.type); + warn$1(`Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. ` + + `This means you have a reactive effect that is mutating its own ` + + `dependencies and thus recursively triggering itself. Possible sources ` + + `include component template, render function, updated hook or ` + + `watcher source function.`); + return true; + } + else { + seen.set(fn, count + 1); + } + } +} + +/* eslint-disable no-restricted-globals */ +let isHmrUpdating = false; +const hmrDirtyComponents = new Set(); +// Expose the HMR runtime on the global object +// This makes it entirely tree-shakable without polluting the exports and makes +// it easier to be used in toolings like vue-loader +// Note: for a component to be eligible for HMR it also needs the __hmrId option +// to be set so that its instances can be registered / removed. +{ + getGlobalThis().__VUE_HMR_RUNTIME__ = { + createRecord: tryWrap(createRecord), + rerender: tryWrap(rerender), + reload: tryWrap(reload) + }; +} +const map = new Map(); +function registerHMR(instance) { + const id = instance.type.__hmrId; + let record = map.get(id); + if (!record) { + createRecord(id, instance.type); + record = map.get(id); + } + record.instances.add(instance); +} +function unregisterHMR(instance) { + map.get(instance.type.__hmrId).instances.delete(instance); +} +function createRecord(id, initialDef) { + if (map.has(id)) { + return false; + } + map.set(id, { + initialDef: normalizeClassComponent(initialDef), + instances: new Set() + }); + return true; +} +function normalizeClassComponent(component) { + return isClassComponent(component) ? component.__vccOpts : component; +} +function rerender(id, newRender) { + const record = map.get(id); + if (!record) { + return; + } + // update initial record (for not-yet-rendered component) + record.initialDef.render = newRender; + [...record.instances].forEach(instance => { + if (newRender) { + instance.render = newRender; + normalizeClassComponent(instance.type).render = newRender; + } + instance.renderCache = []; + // this flag forces child components with slot content to update + isHmrUpdating = true; + instance.update(); + isHmrUpdating = false; + }); +} +function reload(id, newComp) { + const record = map.get(id); + if (!record) + return; + newComp = normalizeClassComponent(newComp); + // update initial def (for not-yet-rendered components) + updateComponentDef(record.initialDef, newComp); + // create a snapshot which avoids the set being mutated during updates + const instances = [...record.instances]; + for (const instance of instances) { + const oldComp = normalizeClassComponent(instance.type); + if (!hmrDirtyComponents.has(oldComp)) { + // 1. Update existing comp definition to match new one + if (oldComp !== record.initialDef) { + updateComponentDef(oldComp, newComp); + } + // 2. mark definition dirty. This forces the renderer to replace the + // component on patch. + hmrDirtyComponents.add(oldComp); + } + // 3. invalidate options resolution cache + instance.appContext.optionsCache.delete(instance.type); + // 4. actually update + if (instance.ceReload) { + // custom element + hmrDirtyComponents.add(oldComp); + instance.ceReload(newComp.styles); + hmrDirtyComponents.delete(oldComp); + } + else if (instance.parent) { + // 4. Force the parent instance to re-render. This will cause all updated + // components to be unmounted and re-mounted. Queue the update so that we + // don't end up forcing the same parent to re-render multiple times. + queueJob(instance.parent.update); + } + else if (instance.appContext.reload) { + // root instance mounted via createApp() has a reload method + instance.appContext.reload(); + } + else if (typeof window !== 'undefined') { + // root instance inside tree created via raw render(). Force reload. + window.location.reload(); + } + else { + console.warn('[HMR] Root or manually mounted instance modified. Full reload required.'); + } + } + // 5. make sure to cleanup dirty hmr components after update + queuePostFlushCb(() => { + for (const instance of instances) { + hmrDirtyComponents.delete(normalizeClassComponent(instance.type)); + } + }); +} +function updateComponentDef(oldComp, newComp) { + extend(oldComp, newComp); + for (const key in oldComp) { + if (key !== '__file' && !(key in newComp)) { + delete oldComp[key]; + } + } +} +function tryWrap(fn) { + return (id, arg) => { + try { + return fn(id, arg); + } + catch (e) { + console.error(e); + console.warn(`[HMR] Something went wrong during Vue component hot-reload. ` + + `Full reload required.`); + } + }; +} + +let devtools; +let buffer = []; +let devtoolsNotInstalled = false; +function emit(event, ...args) { + if (devtools) { + devtools.emit(event, ...args); + } + else if (!devtoolsNotInstalled) { + buffer.push({ event, args }); + } +} +function setDevtoolsHook(hook, target) { + var _a, _b; + devtools = hook; + if (devtools) { + devtools.enabled = true; + buffer.forEach(({ event, args }) => devtools.emit(event, ...args)); + buffer = []; + } + else if ( + // handle late devtools injection - only do this if we are in an actual + // browser environment to avoid the timer handle stalling test runner exit + // (#4815) + typeof window !== 'undefined' && + // some envs mock window but not fully + window.HTMLElement && + // also exclude jsdom + !((_b = (_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) === null || _b === void 0 ? void 0 : _b.includes('jsdom'))) { + const replay = (target.__VUE_DEVTOOLS_HOOK_REPLAY__ = + target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []); + replay.push((newHook) => { + setDevtoolsHook(newHook, target); + }); + // clear buffer after 3s - the user probably doesn't have devtools installed + // at all, and keeping the buffer will cause memory leaks (#4738) + setTimeout(() => { + if (!devtools) { + target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null; + devtoolsNotInstalled = true; + buffer = []; + } + }, 3000); + } + else { + // non-browser env, assume not installed + devtoolsNotInstalled = true; + buffer = []; + } +} +function devtoolsInitApp(app, version) { + emit("app:init" /* DevtoolsHooks.APP_INIT */, app, version, { + Fragment, + Text, + Comment, + Static + }); +} +function devtoolsUnmountApp(app) { + emit("app:unmount" /* DevtoolsHooks.APP_UNMOUNT */, app); +} +const devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook("component:added" /* DevtoolsHooks.COMPONENT_ADDED */); +const devtoolsComponentUpdated = +/*#__PURE__*/ createDevtoolsComponentHook("component:updated" /* DevtoolsHooks.COMPONENT_UPDATED */); +const _devtoolsComponentRemoved = /*#__PURE__*/ createDevtoolsComponentHook("component:removed" /* DevtoolsHooks.COMPONENT_REMOVED */); +const devtoolsComponentRemoved = (component) => { + if (devtools && + typeof devtools.cleanupBuffer === 'function' && + // remove the component if it wasn't buffered + !devtools.cleanupBuffer(component)) { + _devtoolsComponentRemoved(component); + } +}; +function createDevtoolsComponentHook(hook) { + return (component) => { + emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component); + }; +} +const devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:start" /* DevtoolsHooks.PERFORMANCE_START */); +const devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:end" /* DevtoolsHooks.PERFORMANCE_END */); +function createDevtoolsPerformanceHook(hook) { + return (component, type, time) => { + emit(hook, component.appContext.app, component.uid, component, type, time); + }; +} +function devtoolsComponentEmit(component, event, params) { + emit("component:emit" /* DevtoolsHooks.COMPONENT_EMIT */, component.appContext.app, component, event, params); +} + +function emit$1(instance, event, ...rawArgs) { + if (instance.isUnmounted) + return; + const props = instance.vnode.props || EMPTY_OBJ; + { + const { emitsOptions, propsOptions: [propsOptions] } = instance; + if (emitsOptions) { + if (!(event in emitsOptions) && + !(false )) { + if (!propsOptions || !(toHandlerKey(event) in propsOptions)) { + warn$1(`Component emitted event "${event}" but it is neither declared in ` + + `the emits option nor as an "${toHandlerKey(event)}" prop.`); + } + } + else { + const validator = emitsOptions[event]; + if (isFunction(validator)) { + const isValid = validator(...rawArgs); + if (!isValid) { + warn$1(`Invalid event arguments: event validation failed for event "${event}".`); + } + } + } + } + } + let args = rawArgs; + const isModelListener = event.startsWith('update:'); + // for v-model update:xxx events, apply modifiers on args + const modelArg = isModelListener && event.slice(7); + if (modelArg && modelArg in props) { + const modifiersKey = `${modelArg === 'modelValue' ? 'model' : modelArg}Modifiers`; + const { number, trim } = props[modifiersKey] || EMPTY_OBJ; + if (trim) { + args = rawArgs.map(a => (isString(a) ? a.trim() : a)); + } + if (number) { + args = rawArgs.map(toNumber); + } + } + { + devtoolsComponentEmit(instance, event, args); + } + { + const lowerCaseEvent = event.toLowerCase(); + if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) { + warn$1(`Event "${lowerCaseEvent}" is emitted in component ` + + `${formatComponentName(instance, instance.type)} but the handler is registered for "${event}". ` + + `Note that HTML attributes are case-insensitive and you cannot use ` + + `v-on to listen to camelCase events when using in-DOM templates. ` + + `You should probably use "${hyphenate(event)}" instead of "${event}".`); + } + } + let handlerName; + let handler = props[(handlerName = toHandlerKey(event))] || + // also try camelCase event handler (#2249) + props[(handlerName = toHandlerKey(camelize(event)))]; + // for v-model update:xxx events, also trigger kebab-case equivalent + // for props passed via kebab-case + if (!handler && isModelListener) { + handler = props[(handlerName = toHandlerKey(hyphenate(event)))]; + } + if (handler) { + callWithAsyncErrorHandling(handler, instance, 6 /* ErrorCodes.COMPONENT_EVENT_HANDLER */, args); + } + const onceHandler = props[handlerName + `Once`]; + if (onceHandler) { + if (!instance.emitted) { + instance.emitted = {}; + } + else if (instance.emitted[handlerName]) { + return; + } + instance.emitted[handlerName] = true; + callWithAsyncErrorHandling(onceHandler, instance, 6 /* ErrorCodes.COMPONENT_EVENT_HANDLER */, args); + } +} +function normalizeEmitsOptions(comp, appContext, asMixin = false) { + const cache = appContext.emitsCache; + const cached = cache.get(comp); + if (cached !== undefined) { + return cached; + } + const raw = comp.emits; + let normalized = {}; + // apply mixin/extends props + let hasExtends = false; + if (!isFunction(comp)) { + const extendEmits = (raw) => { + const normalizedFromExtend = normalizeEmitsOptions(raw, appContext, true); + if (normalizedFromExtend) { + hasExtends = true; + extend(normalized, normalizedFromExtend); + } + }; + if (!asMixin && appContext.mixins.length) { + appContext.mixins.forEach(extendEmits); + } + if (comp.extends) { + extendEmits(comp.extends); + } + if (comp.mixins) { + comp.mixins.forEach(extendEmits); + } + } + if (!raw && !hasExtends) { + if (isObject(comp)) { + cache.set(comp, null); + } + return null; + } + if (isArray(raw)) { + raw.forEach(key => (normalized[key] = null)); + } + else { + extend(normalized, raw); + } + if (isObject(comp)) { + cache.set(comp, normalized); + } + return normalized; +} +// Check if an incoming prop key is a declared emit event listener. +// e.g. With `emits: { click: null }`, props named `onClick` and `onclick` are +// both considered matched listeners. +function isEmitListener(options, key) { + if (!options || !isOn(key)) { + return false; + } + key = key.slice(2).replace(/Once$/, ''); + return (hasOwn(options, key[0].toLowerCase() + key.slice(1)) || + hasOwn(options, hyphenate(key)) || + hasOwn(options, key)); +} + +/** + * mark the current rendering instance for asset resolution (e.g. + * resolveComponent, resolveDirective) during render + */ +let currentRenderingInstance = null; +let currentScopeId = null; +/** + * Note: rendering calls maybe nested. The function returns the parent rendering + * instance if present, which should be restored after the render is done: + * + * ```js + * const prev = setCurrentRenderingInstance(i) + * // ...render + * setCurrentRenderingInstance(prev) + * ``` + */ +function setCurrentRenderingInstance(instance) { + const prev = currentRenderingInstance; + currentRenderingInstance = instance; + currentScopeId = (instance && instance.type.__scopeId) || null; + return prev; +} +/** + * Set scope id when creating hoisted vnodes. + * @private compiler helper + */ +function pushScopeId(id) { + currentScopeId = id; +} +/** + * Technically we no longer need this after 3.0.8 but we need to keep the same + * API for backwards compat w/ code generated by compilers. + * @private + */ +function popScopeId() { + currentScopeId = null; +} +/** + * Only for backwards compat + * @private + */ +const withScopeId = (_id) => withCtx; +/** + * Wrap a slot function to memoize current rendering instance + * @private compiler helper + */ +function withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot // false only +) { + if (!ctx) + return fn; + // already normalized + if (fn._n) { + return fn; + } + const renderFnWithContext = (...args) => { + // If a user calls a compiled slot inside a template expression (#1745), it + // can mess up block tracking, so by default we disable block tracking and + // force bail out when invoking a compiled slot (indicated by the ._d flag). + // This isn't necessary if rendering a compiled ``, so we flip the + // ._d flag off when invoking the wrapped fn inside `renderSlot`. + if (renderFnWithContext._d) { + setBlockTracking(-1); + } + const prevInstance = setCurrentRenderingInstance(ctx); + let res; + try { + res = fn(...args); + } + finally { + setCurrentRenderingInstance(prevInstance); + if (renderFnWithContext._d) { + setBlockTracking(1); + } + } + { + devtoolsComponentUpdated(ctx); + } + return res; + }; + // mark normalized to avoid duplicated wrapping + renderFnWithContext._n = true; + // mark this as compiled by default + // this is used in vnode.ts -> normalizeChildren() to set the slot + // rendering flag. + renderFnWithContext._c = true; + // disable block tracking by default + renderFnWithContext._d = true; + return renderFnWithContext; +} + +/** + * dev only flag to track whether $attrs was used during render. + * If $attrs was used during render then the warning for failed attrs + * fallthrough can be suppressed. + */ +let accessedAttrs = false; +function markAttrsAccessed() { + accessedAttrs = true; +} +function renderComponentRoot(instance) { + const { type: Component, vnode, proxy, withProxy, props, propsOptions: [propsOptions], slots, attrs, emit, render, renderCache, data, setupState, ctx, inheritAttrs } = instance; + let result; + let fallthroughAttrs; + const prev = setCurrentRenderingInstance(instance); + { + accessedAttrs = false; + } + try { + if (vnode.shapeFlag & 4 /* ShapeFlags.STATEFUL_COMPONENT */) { + // withProxy is a proxy with a different `has` trap only for + // runtime-compiled render functions using `with` block. + const proxyToUse = withProxy || proxy; + result = normalizeVNode(render.call(proxyToUse, proxyToUse, renderCache, props, setupState, data, ctx)); + fallthroughAttrs = attrs; + } + else { + // functional + const render = Component; + // in dev, mark attrs accessed if optional props (attrs === props) + if (true && attrs === props) { + markAttrsAccessed(); + } + result = normalizeVNode(render.length > 1 + ? render(props, true + ? { + get attrs() { + markAttrsAccessed(); + return attrs; + }, + slots, + emit + } + : { attrs, slots, emit }) + : render(props, null /* we know it doesn't need it */)); + fallthroughAttrs = Component.props + ? attrs + : getFunctionalFallthrough(attrs); + } + } + catch (err) { + blockStack.length = 0; + handleError(err, instance, 1 /* ErrorCodes.RENDER_FUNCTION */); + result = createVNode(Comment); + } + // attr merging + // in dev mode, comments are preserved, and it's possible for a template + // to have comments along side the root element which makes it a fragment + let root = result; + let setRoot = undefined; + if (result.patchFlag > 0 && + result.patchFlag & 2048 /* PatchFlags.DEV_ROOT_FRAGMENT */) { + [root, setRoot] = getChildRoot(result); + } + if (fallthroughAttrs && inheritAttrs !== false) { + const keys = Object.keys(fallthroughAttrs); + const { shapeFlag } = root; + if (keys.length) { + if (shapeFlag & (1 /* ShapeFlags.ELEMENT */ | 6 /* ShapeFlags.COMPONENT */)) { + if (propsOptions && keys.some(isModelListener)) { + // If a v-model listener (onUpdate:xxx) has a corresponding declared + // prop, it indicates this component expects to handle v-model and + // it should not fallthrough. + // related: #1543, #1643, #1989 + fallthroughAttrs = filterModelListeners(fallthroughAttrs, propsOptions); + } + root = cloneVNode(root, fallthroughAttrs); + } + else if (!accessedAttrs && root.type !== Comment) { + const allAttrs = Object.keys(attrs); + const eventAttrs = []; + const extraAttrs = []; + for (let i = 0, l = allAttrs.length; i < l; i++) { + const key = allAttrs[i]; + if (isOn(key)) { + // ignore v-model handlers when they fail to fallthrough + if (!isModelListener(key)) { + // remove `on`, lowercase first letter to reflect event casing + // accurately + eventAttrs.push(key[2].toLowerCase() + key.slice(3)); + } + } + else { + extraAttrs.push(key); + } + } + if (extraAttrs.length) { + warn$1(`Extraneous non-props attributes (` + + `${extraAttrs.join(', ')}) ` + + `were passed to component but could not be automatically inherited ` + + `because component renders fragment or text root nodes.`); + } + if (eventAttrs.length) { + warn$1(`Extraneous non-emits event listeners (` + + `${eventAttrs.join(', ')}) ` + + `were passed to component but could not be automatically inherited ` + + `because component renders fragment or text root nodes. ` + + `If the listener is intended to be a component custom event listener only, ` + + `declare it using the "emits" option.`); + } + } + } + } + // inherit directives + if (vnode.dirs) { + if (!isElementRoot(root)) { + warn$1(`Runtime directive used on component with non-element root node. ` + + `The directives will not function as intended.`); + } + // clone before mutating since the root may be a hoisted vnode + root = cloneVNode(root); + root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs; + } + // inherit transition data + if (vnode.transition) { + if (!isElementRoot(root)) { + warn$1(`Component inside renders non-element root node ` + + `that cannot be animated.`); + } + root.transition = vnode.transition; + } + if (setRoot) { + setRoot(root); + } + else { + result = root; + } + setCurrentRenderingInstance(prev); + return result; +} +/** + * dev only + * In dev mode, template root level comments are rendered, which turns the + * template into a fragment root, but we need to locate the single element + * root for attrs and scope id processing. + */ +const getChildRoot = (vnode) => { + const rawChildren = vnode.children; + const dynamicChildren = vnode.dynamicChildren; + const childRoot = filterSingleRoot(rawChildren); + if (!childRoot) { + return [vnode, undefined]; + } + const index = rawChildren.indexOf(childRoot); + const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1; + const setRoot = (updatedRoot) => { + rawChildren[index] = updatedRoot; + if (dynamicChildren) { + if (dynamicIndex > -1) { + dynamicChildren[dynamicIndex] = updatedRoot; + } + else if (updatedRoot.patchFlag > 0) { + vnode.dynamicChildren = [...dynamicChildren, updatedRoot]; + } + } + }; + return [normalizeVNode(childRoot), setRoot]; +}; +function filterSingleRoot(children) { + let singleRoot; + for (let i = 0; i < children.length; i++) { + const child = children[i]; + if (isVNode(child)) { + // ignore user comment + if (child.type !== Comment || child.children === 'v-if') { + if (singleRoot) { + // has more than 1 non-comment child, return now + return; + } + else { + singleRoot = child; + } + } + } + else { + return; + } + } + return singleRoot; +} +const getFunctionalFallthrough = (attrs) => { + let res; + for (const key in attrs) { + if (key === 'class' || key === 'style' || isOn(key)) { + (res || (res = {}))[key] = attrs[key]; + } + } + return res; +}; +const filterModelListeners = (attrs, props) => { + const res = {}; + for (const key in attrs) { + if (!isModelListener(key) || !(key.slice(9) in props)) { + res[key] = attrs[key]; + } + } + return res; +}; +const isElementRoot = (vnode) => { + return (vnode.shapeFlag & (6 /* ShapeFlags.COMPONENT */ | 1 /* ShapeFlags.ELEMENT */) || + vnode.type === Comment // potential v-if branch switch + ); +}; +function shouldUpdateComponent(prevVNode, nextVNode, optimized) { + const { props: prevProps, children: prevChildren, component } = prevVNode; + const { props: nextProps, children: nextChildren, patchFlag } = nextVNode; + const emits = component.emitsOptions; + // Parent component's render function was hot-updated. Since this may have + // caused the child component's slots content to have changed, we need to + // force the child to update as well. + if ((prevChildren || nextChildren) && isHmrUpdating) { + return true; + } + // force child update for runtime directive or transition on component vnode. + if (nextVNode.dirs || nextVNode.transition) { + return true; + } + if (optimized && patchFlag >= 0) { + if (patchFlag & 1024 /* PatchFlags.DYNAMIC_SLOTS */) { + // slot content that references values that might have changed, + // e.g. in a v-for + return true; + } + if (patchFlag & 16 /* PatchFlags.FULL_PROPS */) { + if (!prevProps) { + return !!nextProps; + } + // presence of this flag indicates props are always non-null + return hasPropsChanged(prevProps, nextProps, emits); + } + else if (patchFlag & 8 /* PatchFlags.PROPS */) { + const dynamicProps = nextVNode.dynamicProps; + for (let i = 0; i < dynamicProps.length; i++) { + const key = dynamicProps[i]; + if (nextProps[key] !== prevProps[key] && + !isEmitListener(emits, key)) { + return true; + } + } + } + } + else { + // this path is only taken by manually written render functions + // so presence of any children leads to a forced update + if (prevChildren || nextChildren) { + if (!nextChildren || !nextChildren.$stable) { + return true; + } + } + if (prevProps === nextProps) { + return false; + } + if (!prevProps) { + return !!nextProps; + } + if (!nextProps) { + return true; + } + return hasPropsChanged(prevProps, nextProps, emits); + } + return false; +} +function hasPropsChanged(prevProps, nextProps, emitsOptions) { + const nextKeys = Object.keys(nextProps); + if (nextKeys.length !== Object.keys(prevProps).length) { + return true; + } + for (let i = 0; i < nextKeys.length; i++) { + const key = nextKeys[i]; + if (nextProps[key] !== prevProps[key] && + !isEmitListener(emitsOptions, key)) { + return true; + } + } + return false; +} +function updateHOCHostEl({ vnode, parent }, el // HostNode +) { + while (parent && parent.subTree === vnode) { + (vnode = parent.vnode).el = el; + parent = parent.parent; + } +} + +const isSuspense = (type) => type.__isSuspense; +// Suspense exposes a component-like API, and is treated like a component +// in the compiler, but internally it's a special built-in type that hooks +// directly into the renderer. +const SuspenseImpl = { + name: 'Suspense', + // In order to make Suspense tree-shakable, we need to avoid importing it + // directly in the renderer. The renderer checks for the __isSuspense flag + // on a vnode's type and calls the `process` method, passing in renderer + // internals. + __isSuspense: true, + process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, + // platform-specific impl passed from renderer + rendererInternals) { + if (n1 == null) { + mountSuspense(n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals); + } + else { + patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, rendererInternals); + } + }, + hydrate: hydrateSuspense, + create: createSuspenseBoundary, + normalize: normalizeSuspenseChildren +}; +// Force-casted public typing for h and TSX props inference +const Suspense = (SuspenseImpl + ); +function triggerEvent(vnode, name) { + const eventListener = vnode.props && vnode.props[name]; + if (isFunction(eventListener)) { + eventListener(); + } +} +function mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) { + const { p: patch, o: { createElement } } = rendererInternals; + const hiddenContainer = createElement('div'); + const suspense = (vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals)); + // start mounting the content subtree in an off-dom container + patch(null, (suspense.pendingBranch = vnode.ssContent), hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds); + // now check if we have encountered any async deps + if (suspense.deps > 0) { + // has async + // invoke @fallback event + triggerEvent(vnode, 'onPending'); + triggerEvent(vnode, 'onFallback'); + // mount the fallback tree + patch(null, vnode.ssFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context + isSVG, slotScopeIds); + setActiveBranch(suspense, vnode.ssFallback); + } + else { + // Suspense has no async deps. Just resolve. + suspense.resolve(); + } +} +function patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) { + const suspense = (n2.suspense = n1.suspense); + suspense.vnode = n2; + n2.el = n1.el; + const newBranch = n2.ssContent; + const newFallback = n2.ssFallback; + const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense; + if (pendingBranch) { + suspense.pendingBranch = newBranch; + if (isSameVNodeType(newBranch, pendingBranch)) { + // same root type but content may have changed. + patch(pendingBranch, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized); + if (suspense.deps <= 0) { + suspense.resolve(); + } + else if (isInFallback) { + patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context + isSVG, slotScopeIds, optimized); + setActiveBranch(suspense, newFallback); + } + } + else { + // toggled before pending tree is resolved + suspense.pendingId++; + if (isHydrating) { + // if toggled before hydration is finished, the current DOM tree is + // no longer valid. set it as the active branch so it will be unmounted + // when resolved + suspense.isHydrating = false; + suspense.activeBranch = pendingBranch; + } + else { + unmount(pendingBranch, parentComponent, suspense); + } + // increment pending ID. this is used to invalidate async callbacks + // reset suspense state + suspense.deps = 0; + // discard effects from pending branch + suspense.effects.length = 0; + // discard previous container + suspense.hiddenContainer = createElement('div'); + if (isInFallback) { + // already in fallback state + patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized); + if (suspense.deps <= 0) { + suspense.resolve(); + } + else { + patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context + isSVG, slotScopeIds, optimized); + setActiveBranch(suspense, newFallback); + } + } + else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) { + // toggled "back" to current active branch + patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, isSVG, slotScopeIds, optimized); + // force resolve + suspense.resolve(true); + } + else { + // switched to a 3rd branch + patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized); + if (suspense.deps <= 0) { + suspense.resolve(); + } + } + } + } + else { + if (activeBranch && isSameVNodeType(newBranch, activeBranch)) { + // root did not change, just normal patch + patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, isSVG, slotScopeIds, optimized); + setActiveBranch(suspense, newBranch); + } + else { + // root node toggled + // invoke @pending event + triggerEvent(n2, 'onPending'); + // mount pending branch in off-dom container + suspense.pendingBranch = newBranch; + suspense.pendingId++; + patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized); + if (suspense.deps <= 0) { + // incoming branch has no async deps, resolve now. + suspense.resolve(); + } + else { + const { timeout, pendingId } = suspense; + if (timeout > 0) { + setTimeout(() => { + if (suspense.pendingId === pendingId) { + suspense.fallback(newFallback); + } + }, timeout); + } + else if (timeout === 0) { + suspense.fallback(newFallback); + } + } + } + } +} +let hasWarned = false; +function createSuspenseBoundary(vnode, parent, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals, isHydrating = false) { + /* istanbul ignore if */ + if (!hasWarned) { + hasWarned = true; + // @ts-ignore `console.info` cannot be null error + console[console.info ? 'info' : 'log'](` is an experimental feature and its API will likely change.`); + } + const { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals; + const timeout = toNumber(vnode.props && vnode.props.timeout); + const suspense = { + vnode, + parent, + parentComponent, + isSVG, + container, + hiddenContainer, + anchor, + deps: 0, + pendingId: 0, + timeout: typeof timeout === 'number' ? timeout : -1, + activeBranch: null, + pendingBranch: null, + isInFallback: true, + isHydrating, + isUnmounted: false, + effects: [], + resolve(resume = false) { + { + if (!resume && !suspense.pendingBranch) { + throw new Error(`suspense.resolve() is called without a pending branch.`); + } + if (suspense.isUnmounted) { + throw new Error(`suspense.resolve() is called on an already unmounted suspense boundary.`); + } + } + const { vnode, activeBranch, pendingBranch, pendingId, effects, parentComponent, container } = suspense; + if (suspense.isHydrating) { + suspense.isHydrating = false; + } + else if (!resume) { + const delayEnter = activeBranch && + pendingBranch.transition && + pendingBranch.transition.mode === 'out-in'; + if (delayEnter) { + activeBranch.transition.afterLeave = () => { + if (pendingId === suspense.pendingId) { + move(pendingBranch, container, anchor, 0 /* MoveType.ENTER */); + } + }; + } + // this is initial anchor on mount + let { anchor } = suspense; + // unmount current active tree + if (activeBranch) { + // if the fallback tree was mounted, it may have been moved + // as part of a parent suspense. get the latest anchor for insertion + anchor = next(activeBranch); + unmount(activeBranch, parentComponent, suspense, true); + } + if (!delayEnter) { + // move content from off-dom container to actual container + move(pendingBranch, container, anchor, 0 /* MoveType.ENTER */); + } + } + setActiveBranch(suspense, pendingBranch); + suspense.pendingBranch = null; + suspense.isInFallback = false; + // flush buffered effects + // check if there is a pending parent suspense + let parent = suspense.parent; + let hasUnresolvedAncestor = false; + while (parent) { + if (parent.pendingBranch) { + // found a pending parent suspense, merge buffered post jobs + // into that parent + parent.effects.push(...effects); + hasUnresolvedAncestor = true; + break; + } + parent = parent.parent; + } + // no pending parent suspense, flush all jobs + if (!hasUnresolvedAncestor) { + queuePostFlushCb(effects); + } + suspense.effects = []; + // invoke @resolve event + triggerEvent(vnode, 'onResolve'); + }, + fallback(fallbackVNode) { + if (!suspense.pendingBranch) { + return; + } + const { vnode, activeBranch, parentComponent, container, isSVG } = suspense; + // invoke @fallback event + triggerEvent(vnode, 'onFallback'); + const anchor = next(activeBranch); + const mountFallback = () => { + if (!suspense.isInFallback) { + return; + } + // mount the fallback tree + patch(null, fallbackVNode, container, anchor, parentComponent, null, // fallback tree will not have suspense context + isSVG, slotScopeIds, optimized); + setActiveBranch(suspense, fallbackVNode); + }; + const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === 'out-in'; + if (delayEnter) { + activeBranch.transition.afterLeave = mountFallback; + } + suspense.isInFallback = true; + // unmount current active branch + unmount(activeBranch, parentComponent, null, // no suspense so unmount hooks fire now + true // shouldRemove + ); + if (!delayEnter) { + mountFallback(); + } + }, + move(container, anchor, type) { + suspense.activeBranch && + move(suspense.activeBranch, container, anchor, type); + suspense.container = container; + }, + next() { + return suspense.activeBranch && next(suspense.activeBranch); + }, + registerDep(instance, setupRenderEffect) { + const isInPendingSuspense = !!suspense.pendingBranch; + if (isInPendingSuspense) { + suspense.deps++; + } + const hydratedEl = instance.vnode.el; + instance + .asyncDep.catch(err => { + handleError(err, instance, 0 /* ErrorCodes.SETUP_FUNCTION */); + }) + .then(asyncSetupResult => { + // retry when the setup() promise resolves. + // component may have been unmounted before resolve. + if (instance.isUnmounted || + suspense.isUnmounted || + suspense.pendingId !== instance.suspenseId) { + return; + } + // retry from this component + instance.asyncResolved = true; + const { vnode } = instance; + { + pushWarningContext(vnode); + } + handleSetupResult(instance, asyncSetupResult, false); + if (hydratedEl) { + // vnode may have been replaced if an update happened before the + // async dep is resolved. + vnode.el = hydratedEl; + } + const placeholder = !hydratedEl && instance.subTree.el; + setupRenderEffect(instance, vnode, + // component may have been moved before resolve. + // if this is not a hydration, instance.subTree will be the comment + // placeholder. + parentNode(hydratedEl || instance.subTree.el), + // anchor will not be used if this is hydration, so only need to + // consider the comment placeholder case. + hydratedEl ? null : next(instance.subTree), suspense, isSVG, optimized); + if (placeholder) { + remove(placeholder); + } + updateHOCHostEl(instance, vnode.el); + { + popWarningContext(); + } + // only decrease deps count if suspense is not already resolved + if (isInPendingSuspense && --suspense.deps === 0) { + suspense.resolve(); + } + }); + }, + unmount(parentSuspense, doRemove) { + suspense.isUnmounted = true; + if (suspense.activeBranch) { + unmount(suspense.activeBranch, parentComponent, parentSuspense, doRemove); + } + if (suspense.pendingBranch) { + unmount(suspense.pendingBranch, parentComponent, parentSuspense, doRemove); + } + } + }; + return suspense; +} +function hydrateSuspense(node, vnode, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals, hydrateNode) { + /* eslint-disable no-restricted-globals */ + const suspense = (vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, node.parentNode, document.createElement('div'), null, isSVG, slotScopeIds, optimized, rendererInternals, true /* hydrating */)); + // there are two possible scenarios for server-rendered suspense: + // - success: ssr content should be fully resolved + // - failure: ssr content should be the fallback branch. + // however, on the client we don't really know if it has failed or not + // attempt to hydrate the DOM assuming it has succeeded, but we still + // need to construct a suspense boundary first + const result = hydrateNode(node, (suspense.pendingBranch = vnode.ssContent), parentComponent, suspense, slotScopeIds, optimized); + if (suspense.deps === 0) { + suspense.resolve(); + } + return result; + /* eslint-enable no-restricted-globals */ +} +function normalizeSuspenseChildren(vnode) { + const { shapeFlag, children } = vnode; + const isSlotChildren = shapeFlag & 32 /* ShapeFlags.SLOTS_CHILDREN */; + vnode.ssContent = normalizeSuspenseSlot(isSlotChildren ? children.default : children); + vnode.ssFallback = isSlotChildren + ? normalizeSuspenseSlot(children.fallback) + : createVNode(Comment); +} +function normalizeSuspenseSlot(s) { + let block; + if (isFunction(s)) { + const trackBlock = isBlockTreeEnabled && s._c; + if (trackBlock) { + // disableTracking: false + // allow block tracking for compiled slots + // (see ./componentRenderContext.ts) + s._d = false; + openBlock(); + } + s = s(); + if (trackBlock) { + s._d = true; + block = currentBlock; + closeBlock(); + } + } + if (isArray(s)) { + const singleChild = filterSingleRoot(s); + if (!singleChild) { + warn$1(` slots expect a single root node.`); + } + s = singleChild; + } + s = normalizeVNode(s); + if (block && !s.dynamicChildren) { + s.dynamicChildren = block.filter(c => c !== s); + } + return s; +} +function queueEffectWithSuspense(fn, suspense) { + if (suspense && suspense.pendingBranch) { + if (isArray(fn)) { + suspense.effects.push(...fn); + } + else { + suspense.effects.push(fn); + } + } + else { + queuePostFlushCb(fn); + } +} +function setActiveBranch(suspense, branch) { + suspense.activeBranch = branch; + const { vnode, parentComponent } = suspense; + const el = (vnode.el = branch.el); + // in case suspense is the root node of a component, + // recursively update the HOC el + if (parentComponent && parentComponent.subTree === vnode) { + parentComponent.vnode.el = el; + updateHOCHostEl(parentComponent, el); + } +} + +function provide(key, value) { + if (!currentInstance) { + { + warn$1(`provide() can only be used inside setup().`); + } + } + else { + let provides = currentInstance.provides; + // by default an instance inherits its parent's provides object + // but when it needs to provide values of its own, it creates its + // own provides object using parent provides object as prototype. + // this way in `inject` we can simply look up injections from direct + // parent and let the prototype chain do the work. + const parentProvides = currentInstance.parent && currentInstance.parent.provides; + if (parentProvides === provides) { + provides = currentInstance.provides = Object.create(parentProvides); + } + // TS doesn't allow symbol as index type + provides[key] = value; + } +} +function inject(key, defaultValue, treatDefaultAsFactory = false) { + // fallback to `currentRenderingInstance` so that this can be called in + // a functional component + const instance = currentInstance || currentRenderingInstance; + if (instance) { + // #2400 + // to support `app.use` plugins, + // fallback to appContext's `provides` if the instance is at root + const provides = instance.parent == null + ? instance.vnode.appContext && instance.vnode.appContext.provides + : instance.parent.provides; + if (provides && key in provides) { + // TS doesn't allow symbol as index type + return provides[key]; + } + else if (arguments.length > 1) { + return treatDefaultAsFactory && isFunction(defaultValue) + ? defaultValue.call(instance.proxy) + : defaultValue; + } + else { + warn$1(`injection "${String(key)}" not found.`); + } + } + else { + warn$1(`inject() can only be used inside setup() or functional components.`); + } +} + +// Simple effect. +function watchEffect(effect, options) { + return doWatch(effect, null, options); +} +function watchPostEffect(effect, options) { + return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'post' }) )); +} +function watchSyncEffect(effect, options) { + return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'sync' }) )); +} +// initial value for watchers to trigger on undefined initial values +const INITIAL_WATCHER_VALUE = {}; +// implementation +function watch(source, cb, options) { + if (!isFunction(cb)) { + warn$1(`\`watch(fn, options?)\` signature has been moved to a separate API. ` + + `Use \`watchEffect(fn, options?)\` instead. \`watch\` now only ` + + `supports \`watch(source, cb, options?) signature.`); + } + return doWatch(source, cb, options); +} +function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EMPTY_OBJ) { + if (!cb) { + if (immediate !== undefined) { + warn$1(`watch() "immediate" option is only respected when using the ` + + `watch(source, callback, options?) signature.`); + } + if (deep !== undefined) { + warn$1(`watch() "deep" option is only respected when using the ` + + `watch(source, callback, options?) signature.`); + } + } + const warnInvalidSource = (s) => { + warn$1(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, ` + + `a reactive object, or an array of these types.`); + }; + const instance = currentInstance; + let getter; + let forceTrigger = false; + let isMultiSource = false; + if (isRef(source)) { + getter = () => source.value; + forceTrigger = isShallow(source); + } + else if (isReactive(source)) { + getter = () => source; + deep = true; + } + else if (isArray(source)) { + isMultiSource = true; + forceTrigger = source.some(s => isReactive(s) || isShallow(s)); + getter = () => source.map(s => { + if (isRef(s)) { + return s.value; + } + else if (isReactive(s)) { + return traverse(s); + } + else if (isFunction(s)) { + return callWithErrorHandling(s, instance, 2 /* ErrorCodes.WATCH_GETTER */); + } + else { + warnInvalidSource(s); + } + }); + } + else if (isFunction(source)) { + if (cb) { + // getter with cb + getter = () => callWithErrorHandling(source, instance, 2 /* ErrorCodes.WATCH_GETTER */); + } + else { + // no cb -> simple effect + getter = () => { + if (instance && instance.isUnmounted) { + return; + } + if (cleanup) { + cleanup(); + } + return callWithAsyncErrorHandling(source, instance, 3 /* ErrorCodes.WATCH_CALLBACK */, [onCleanup]); + }; + } + } + else { + getter = NOOP; + warnInvalidSource(source); + } + if (cb && deep) { + const baseGetter = getter; + getter = () => traverse(baseGetter()); + } + let cleanup; + let onCleanup = (fn) => { + cleanup = effect.onStop = () => { + callWithErrorHandling(fn, instance, 4 /* ErrorCodes.WATCH_CLEANUP */); + }; + }; + let oldValue = isMultiSource + ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) + : INITIAL_WATCHER_VALUE; + const job = () => { + if (!effect.active) { + return; + } + if (cb) { + // watch(source, cb) + const newValue = effect.run(); + if (deep || + forceTrigger || + (isMultiSource + ? newValue.some((v, i) => hasChanged(v, oldValue[i])) + : hasChanged(newValue, oldValue)) || + (false )) { + // cleanup before running cb again + if (cleanup) { + cleanup(); + } + callWithAsyncErrorHandling(cb, instance, 3 /* ErrorCodes.WATCH_CALLBACK */, [ + newValue, + // pass undefined as the old value when it's changed for the first time + oldValue === INITIAL_WATCHER_VALUE + ? undefined + : (isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE) + ? [] + : oldValue, + onCleanup + ]); + oldValue = newValue; + } + } + else { + // watchEffect + effect.run(); + } + }; + // important: mark the job as a watcher callback so that scheduler knows + // it is allowed to self-trigger (#1727) + job.allowRecurse = !!cb; + let scheduler; + if (flush === 'sync') { + scheduler = job; // the scheduler function gets called directly + } + else if (flush === 'post') { + scheduler = () => queuePostRenderEffect(job, instance && instance.suspense); + } + else { + // default: 'pre' + job.pre = true; + if (instance) + job.id = instance.uid; + scheduler = () => queueJob(job); + } + const effect = new ReactiveEffect(getter, scheduler); + { + effect.onTrack = onTrack; + effect.onTrigger = onTrigger; + } + // initial run + if (cb) { + if (immediate) { + job(); + } + else { + oldValue = effect.run(); + } + } + else if (flush === 'post') { + queuePostRenderEffect(effect.run.bind(effect), instance && instance.suspense); + } + else { + effect.run(); + } + const unwatch = () => { + effect.stop(); + if (instance && instance.scope) { + remove(instance.scope.effects, effect); + } + }; + return unwatch; +} +// this.$watch +function instanceWatch(source, value, options) { + const publicThis = this.proxy; + const getter = isString(source) + ? source.includes('.') + ? createPathGetter(publicThis, source) + : () => publicThis[source] + : source.bind(publicThis, publicThis); + let cb; + if (isFunction(value)) { + cb = value; + } + else { + cb = value.handler; + options = value; + } + const cur = currentInstance; + setCurrentInstance(this); + const res = doWatch(getter, cb.bind(publicThis), options); + if (cur) { + setCurrentInstance(cur); + } + else { + unsetCurrentInstance(); + } + return res; +} +function createPathGetter(ctx, path) { + const segments = path.split('.'); + return () => { + let cur = ctx; + for (let i = 0; i < segments.length && cur; i++) { + cur = cur[segments[i]]; + } + return cur; + }; +} +function traverse(value, seen) { + if (!isObject(value) || value["__v_skip" /* ReactiveFlags.SKIP */]) { + return value; + } + seen = seen || new Set(); + if (seen.has(value)) { + return value; + } + seen.add(value); + if (isRef(value)) { + traverse(value.value, seen); + } + else if (isArray(value)) { + for (let i = 0; i < value.length; i++) { + traverse(value[i], seen); + } + } + else if (isSet(value) || isMap(value)) { + value.forEach((v) => { + traverse(v, seen); + }); + } + else if (isPlainObject(value)) { + for (const key in value) { + traverse(value[key], seen); + } + } + return value; +} + +function useTransitionState() { + const state = { + isMounted: false, + isLeaving: false, + isUnmounting: false, + leavingVNodes: new Map() + }; + onMounted(() => { + state.isMounted = true; + }); + onBeforeUnmount(() => { + state.isUnmounting = true; + }); + return state; +} +const TransitionHookValidator = [Function, Array]; +const BaseTransitionImpl = { + name: `BaseTransition`, + props: { + mode: String, + appear: Boolean, + persisted: Boolean, + // enter + onBeforeEnter: TransitionHookValidator, + onEnter: TransitionHookValidator, + onAfterEnter: TransitionHookValidator, + onEnterCancelled: TransitionHookValidator, + // leave + onBeforeLeave: TransitionHookValidator, + onLeave: TransitionHookValidator, + onAfterLeave: TransitionHookValidator, + onLeaveCancelled: TransitionHookValidator, + // appear + onBeforeAppear: TransitionHookValidator, + onAppear: TransitionHookValidator, + onAfterAppear: TransitionHookValidator, + onAppearCancelled: TransitionHookValidator + }, + setup(props, { slots }) { + const instance = getCurrentInstance(); + const state = useTransitionState(); + let prevTransitionKey; + return () => { + const children = slots.default && getTransitionRawChildren(slots.default(), true); + if (!children || !children.length) { + return; + } + let child = children[0]; + if (children.length > 1) { + let hasFound = false; + // locate first non-comment child + for (const c of children) { + if (c.type !== Comment) { + if (hasFound) { + // warn more than one non-comment child + warn$1(' can only be used on a single element or component. ' + + 'Use for lists.'); + break; + } + child = c; + hasFound = true; + } + } + } + // there's no need to track reactivity for these props so use the raw + // props for a bit better perf + const rawProps = toRaw(props); + const { mode } = rawProps; + // check mode + if (mode && + mode !== 'in-out' && + mode !== 'out-in' && + mode !== 'default') { + warn$1(`invalid mode: ${mode}`); + } + if (state.isLeaving) { + return emptyPlaceholder(child); + } + // in the case of , we need to + // compare the type of the kept-alive children. + const innerChild = getKeepAliveChild(child); + if (!innerChild) { + return emptyPlaceholder(child); + } + const enterHooks = resolveTransitionHooks(innerChild, rawProps, state, instance); + setTransitionHooks(innerChild, enterHooks); + const oldChild = instance.subTree; + const oldInnerChild = oldChild && getKeepAliveChild(oldChild); + let transitionKeyChanged = false; + const { getTransitionKey } = innerChild.type; + if (getTransitionKey) { + const key = getTransitionKey(); + if (prevTransitionKey === undefined) { + prevTransitionKey = key; + } + else if (key !== prevTransitionKey) { + prevTransitionKey = key; + transitionKeyChanged = true; + } + } + // handle mode + if (oldInnerChild && + oldInnerChild.type !== Comment && + (!isSameVNodeType(innerChild, oldInnerChild) || transitionKeyChanged)) { + const leavingHooks = resolveTransitionHooks(oldInnerChild, rawProps, state, instance); + // update old tree's hooks in case of dynamic transition + setTransitionHooks(oldInnerChild, leavingHooks); + // switching between different views + if (mode === 'out-in') { + state.isLeaving = true; + // return placeholder node and queue update when leave finishes + leavingHooks.afterLeave = () => { + state.isLeaving = false; + // #6835 + // it also needs to be updated when active is undefined + if (instance.update.active !== false) { + instance.update(); + } + }; + return emptyPlaceholder(child); + } + else if (mode === 'in-out' && innerChild.type !== Comment) { + leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => { + const leavingVNodesCache = getLeavingNodesForType(state, oldInnerChild); + leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild; + // early removal callback + el._leaveCb = () => { + earlyRemove(); + el._leaveCb = undefined; + delete enterHooks.delayedLeave; + }; + enterHooks.delayedLeave = delayedLeave; + }; + } + } + return child; + }; + } +}; +// export the public type for h/tsx inference +// also to avoid inline import() in generated d.ts files +const BaseTransition = BaseTransitionImpl; +function getLeavingNodesForType(state, vnode) { + const { leavingVNodes } = state; + let leavingVNodesCache = leavingVNodes.get(vnode.type); + if (!leavingVNodesCache) { + leavingVNodesCache = Object.create(null); + leavingVNodes.set(vnode.type, leavingVNodesCache); + } + return leavingVNodesCache; +} +// The transition hooks are attached to the vnode as vnode.transition +// and will be called at appropriate timing in the renderer. +function resolveTransitionHooks(vnode, props, state, instance) { + const { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props; + const key = String(vnode.key); + const leavingVNodesCache = getLeavingNodesForType(state, vnode); + const callHook = (hook, args) => { + hook && + callWithAsyncErrorHandling(hook, instance, 9 /* ErrorCodes.TRANSITION_HOOK */, args); + }; + const callAsyncHook = (hook, args) => { + const done = args[1]; + callHook(hook, args); + if (isArray(hook)) { + if (hook.every(hook => hook.length <= 1)) + done(); + } + else if (hook.length <= 1) { + done(); + } + }; + const hooks = { + mode, + persisted, + beforeEnter(el) { + let hook = onBeforeEnter; + if (!state.isMounted) { + if (appear) { + hook = onBeforeAppear || onBeforeEnter; + } + else { + return; + } + } + // for same element (v-show) + if (el._leaveCb) { + el._leaveCb(true /* cancelled */); + } + // for toggled element with same key (v-if) + const leavingVNode = leavingVNodesCache[key]; + if (leavingVNode && + isSameVNodeType(vnode, leavingVNode) && + leavingVNode.el._leaveCb) { + // force early removal (not cancelled) + leavingVNode.el._leaveCb(); + } + callHook(hook, [el]); + }, + enter(el) { + let hook = onEnter; + let afterHook = onAfterEnter; + let cancelHook = onEnterCancelled; + if (!state.isMounted) { + if (appear) { + hook = onAppear || onEnter; + afterHook = onAfterAppear || onAfterEnter; + cancelHook = onAppearCancelled || onEnterCancelled; + } + else { + return; + } + } + let called = false; + const done = (el._enterCb = (cancelled) => { + if (called) + return; + called = true; + if (cancelled) { + callHook(cancelHook, [el]); + } + else { + callHook(afterHook, [el]); + } + if (hooks.delayedLeave) { + hooks.delayedLeave(); + } + el._enterCb = undefined; + }); + if (hook) { + callAsyncHook(hook, [el, done]); + } + else { + done(); + } + }, + leave(el, remove) { + const key = String(vnode.key); + if (el._enterCb) { + el._enterCb(true /* cancelled */); + } + if (state.isUnmounting) { + return remove(); + } + callHook(onBeforeLeave, [el]); + let called = false; + const done = (el._leaveCb = (cancelled) => { + if (called) + return; + called = true; + remove(); + if (cancelled) { + callHook(onLeaveCancelled, [el]); + } + else { + callHook(onAfterLeave, [el]); + } + el._leaveCb = undefined; + if (leavingVNodesCache[key] === vnode) { + delete leavingVNodesCache[key]; + } + }); + leavingVNodesCache[key] = vnode; + if (onLeave) { + callAsyncHook(onLeave, [el, done]); + } + else { + done(); + } + }, + clone(vnode) { + return resolveTransitionHooks(vnode, props, state, instance); + } + }; + return hooks; +} +// the placeholder really only handles one special case: KeepAlive +// in the case of a KeepAlive in a leave phase we need to return a KeepAlive +// placeholder with empty content to avoid the KeepAlive instance from being +// unmounted. +function emptyPlaceholder(vnode) { + if (isKeepAlive(vnode)) { + vnode = cloneVNode(vnode); + vnode.children = null; + return vnode; + } +} +function getKeepAliveChild(vnode) { + return isKeepAlive(vnode) + ? vnode.children + ? vnode.children[0] + : undefined + : vnode; +} +function setTransitionHooks(vnode, hooks) { + if (vnode.shapeFlag & 6 /* ShapeFlags.COMPONENT */ && vnode.component) { + setTransitionHooks(vnode.component.subTree, hooks); + } + else if (vnode.shapeFlag & 128 /* ShapeFlags.SUSPENSE */) { + vnode.ssContent.transition = hooks.clone(vnode.ssContent); + vnode.ssFallback.transition = hooks.clone(vnode.ssFallback); + } + else { + vnode.transition = hooks; + } +} +function getTransitionRawChildren(children, keepComment = false, parentKey) { + let ret = []; + let keyedFragmentCount = 0; + for (let i = 0; i < children.length; i++) { + let child = children[i]; + // #5360 inherit parent key in case of