j1-template 2021.0.0 → 2021.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/_includes/themes/j1/blocks/ads/ad.html +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/about_box.proc +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/contacts_box.proc +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/issue.proc +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/legal_statements.proc +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/links_box.proc +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/news_box.proc +1 -1
- data/_includes/themes/j1/blocks/footer/boxes/social_media_icons.proc +1 -1
- data/_includes/themes/j1/blocks/footer/generator.html +1 -1
- data/_includes/themes/j1/layouts/content_generator_app.html +1 -1
- data/_includes/themes/j1/layouts/content_generator_blog_archive.html +1 -1
- data/_includes/themes/j1/layouts/content_generator_collection.html +1 -1
- data/_includes/themes/j1/layouts/content_generator_page.html +1 -1
- data/_includes/themes/j1/layouts/content_generator_post.html +1 -1
- data/_includes/themes/j1/layouts/content_generator_raw.html +1 -1
- data/_includes/themes/j1/layouts/layout_metadata_generator.html +12 -12
- data/_includes/themes/j1/layouts/layout_module_generator.html +1 -1
- data/_includes/themes/j1/layouts/layout_resource_generator.html +1 -1
- data/_includes/themes/j1/modules/attics/generator.html +1 -1
- data/_includes/themes/j1/modules/boards/news_pin_board.html +1 -1
- data/_includes/themes/j1/modules/connectors/ad/custom-provider.html +1 -1
- data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +1 -1
- data/_includes/themes/j1/modules/connectors/ads +1 -1
- data/_includes/themes/j1/modules/connectors/analytic/custom-provider.html +1 -1
- data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +1 -1
- data/_includes/themes/j1/modules/connectors/analytics +1 -1
- data/_includes/themes/j1/modules/connectors/comment/custom-provider.html +1 -1
- data/_includes/themes/j1/modules/connectors/comment/disqus.html +1 -1
- data/_includes/themes/j1/modules/connectors/comment/facebook.html +1 -1
- data/_includes/themes/j1/modules/connectors/comments +1 -1
- data/_includes/themes/j1/modules/connectors/sharing +1 -1
- data/_includes/themes/j1/modules/connectors/translator +1 -1
- data/_includes/themes/j1/modules/connectors/translators/custom-translator.html +1 -1
- data/_includes/themes/j1/modules/connectors/translators/google-translator.html +1 -1
- data/_includes/themes/j1/modules/navigator/generator.html +7 -7
- data/_includes/themes/j1/modules/navigator/procedures/topsearch.proc +11 -11
- data/_includes/themes/j1/procedures/collections/create_collection_article_preview.proc +1 -1
- data/_includes/themes/j1/procedures/global/attributes_loader.proc +1 -1
- data/_includes/themes/j1/procedures/global/collect_frontmatter_options.proc +1 -1
- data/_includes/themes/j1/procedures/global/collect_page_options.proc +1 -1
- data/_includes/themes/j1/procedures/global/create_bs_button.proc +1 -1
- data/_includes/themes/j1/procedures/global/create_word_cloud.proc +1 -1
- data/_includes/themes/j1/procedures/global/get_category.proc +1 -1
- data/_includes/themes/j1/procedures/global/get_category_item.proc +1 -1
- data/_includes/themes/j1/procedures/global/get_documents_dir.proc +1 -1
- data/_includes/themes/j1/procedures/global/get_page_path.proc +1 -1
- data/_includes/themes/j1/procedures/global/get_page_url.proc +1 -1
- data/_includes/themes/j1/procedures/global/pager.proc +1 -1
- data/_includes/themes/j1/procedures/global/select_color.proc +1 -1
- data/_includes/themes/j1/procedures/global/select_font_size.proc +1 -1
- data/_includes/themes/j1/procedures/global/select_icon_size.proc +1 -1
- data/_includes/themes/j1/procedures/global/select_location.proc +1 -1
- data/_includes/themes/j1/procedures/global/set_base_vars_folders.proc +1 -1
- data/_includes/themes/j1/procedures/global/set_env_entry_document.proc +1 -1
- data/_includes/themes/j1/procedures/global/set_image_block.proc +1 -1
- data/_includes/themes/j1/procedures/global/setup.proc +1 -1
- data/_includes/themes/j1/procedures/layouts/content_writer.proc +1 -1
- data/_includes/themes/j1/procedures/layouts/default_writer.proc +1 -1
- data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
- data/_includes/themes/j1/procedures/layouts/resource_writer.proc +1 -1
- data/_includes/themes/j1/procedures/posts/collate_calendar.proc +1 -1
- data/_includes/themes/j1/procedures/posts/collate_list.proc +1 -1
- data/_includes/themes/j1/procedures/posts/collate_timeline.proc +1 -1
- data/_includes/themes/j1/procedures/posts/create_ad_block.proc +1 -1
- data/_includes/themes/j1/procedures/posts/create_series_header.proc +1 -1
- data/_layouts/app.html +1 -1
- data/_layouts/blog_archive.html +1 -1
- data/_layouts/collection.html +1 -1
- data/_layouts/compress.html +1 -1
- data/_layouts/default.html +1 -1
- data/_layouts/home.html +1 -1
- data/_layouts/page.html +1 -1
- data/_layouts/paginator/autopage_category.html +1 -1
- data/_layouts/paginator/autopage_collection.html +1 -1
- data/_layouts/paginator/autopage_collections_tags.html +1 -1
- data/_layouts/paginator/autopage_tags.html +1 -1
- data/_layouts/post.html +1 -1
- data/_layouts/raw.html +2 -2
- data/apps/public/cc/cc.yml +1 -1
- data/assets/data/authclient.html +1 -1
- data/assets/data/banner.html +1 -1
- data/assets/data/carousel.json +1 -1
- data/assets/data/cookiebar.html +1 -1
- data/assets/data/fam.html +2 -2
- data/assets/data/footer.html +1 -1
- data/assets/data/galleries.json +1 -1
- data/assets/data/gallery_customizer.html +2 -2
- data/assets/data/mdi_icons.json +69583 -14641
- data/assets/data/menu.html +1 -1
- data/assets/data/mmenu.html +1 -1
- data/assets/data/mmenu_sidebar.html +1 -1
- data/assets/data/mmenu_toc.html +2 -2
- data/assets/data/panel.html +1 -1
- data/assets/data/quicklinks.html +3 -3
- data/assets/data/themes.json +1 -1
- data/assets/data/twa_v1.json +1 -1
- data/assets/error_pages/HTTP204.html +1 -1
- data/assets/error_pages/HTTP400.html +1 -1
- data/assets/error_pages/HTTP401.html +1 -1
- data/assets/error_pages/HTTP403.html +1 -1
- data/assets/error_pages/HTTP404.html +1 -1
- data/assets/error_pages/HTTP500.html +1 -1
- data/assets/error_pages/HTTP501.html +1 -1
- data/assets/error_pages/HTTP502.html +1 -1
- data/assets/error_pages/HTTP503.html +1 -1
- data/assets/error_pages/HTTP520.html +1 -1
- data/assets/error_pages/HTTP521.html +1 -1
- data/assets/error_pages/HTTP533.html +1 -1
- data/assets/themes/j1/adapter/js/algolia.js +2 -2
- data/assets/themes/j1/adapter/js/attic.js +3 -3
- data/assets/themes/j1/adapter/js/bmd.js +2 -2
- data/assets/themes/j1/adapter/js/carousel.js +3 -3
- data/assets/themes/j1/adapter/js/clipboard.js +2 -2
- data/assets/themes/j1/adapter/js/cookiebar.js +9 -2
- data/assets/themes/j1/adapter/js/fam.js +4 -4
- data/assets/themes/j1/adapter/js/framer.js +2 -2
- data/assets/themes/j1/adapter/js/gallery_customizer.js +2 -2
- data/assets/themes/j1/adapter/js/j1.js +36 -9
- data/assets/themes/j1/adapter/js/jf_gallery.js +2 -2
- data/assets/themes/j1/adapter/js/lightbox.js +2 -2
- data/assets/themes/j1/adapter/js/logger.js +2 -2
- data/assets/themes/j1/adapter/js/mmenu.js +27 -29
- data/assets/themes/j1/adapter/js/navigator.js +2 -3
- data/assets/themes/j1/adapter/js/{lunr_search.js → quicksearch.js} +13 -13
- data/assets/themes/j1/adapter/js/rouge.js +8 -6
- data/assets/themes/j1/adapter/js/rtable.js +3 -3
- data/assets/themes/j1/adapter/js/themer.js +55 -47
- data/assets/themes/j1/adapter/js/toccer.js +2 -2
- data/assets/themes/j1/core/css/animate.css +2 -2
- data/assets/themes/j1/core/css/animate.min.css +1 -7
- data/assets/themes/j1/core/css/icon-fonts/fontawesome.css +5 -12
- data/assets/themes/j1/core/css/icon-fonts/fontawesome.min.css +1 -1
- data/assets/themes/j1/core/css/icon-fonts/iconify.css +5 -5
- data/assets/themes/j1/core/css/icon-fonts/materialdesign.css +12514 -4821
- data/assets/themes/j1/core/css/icon-fonts/materialdesign.min.css +1 -1
- data/assets/themes/j1/core/css/icon-fonts/twemoji.css +6 -6
- data/assets/themes/j1/core/css/icon-fonts/twemoji.min.css +1 -1
- data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +80 -50
- data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +1 -6
- data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.css +109 -79
- data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.min.css +1 -6
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +162 -109
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -8
- data/assets/themes/j1/core/css/vendor.css +7 -7
- data/assets/themes/j1/core/css/vendor.min.css +1 -1
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-brands-400.eot → eot/fa-brands-400.eot} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-regular-400.eot → eot/fa-regular-400.eot} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-solid-900.eot → eot/fa-solid-900.eot} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-brands-400.svg → svg/fa-brands-400.svg} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-regular-400.svg → svg/fa-regular-400.svg} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-solid-900.svg → svg/fa-solid-900.svg} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-brands-400.ttf → ttf/fa-brands-400.ttf} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-regular-400.ttf → ttf/fa-regular-400.ttf} +0 -0
- data/assets/themes/j1/core/fonts/fontawesome_5/fonts/{fa-solid-900.ttf → ttf/fa-solid-900.ttf} +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons/fonts → material_design_icons/fonts/_versions/v3.3.92/eot}/materialdesignicons-webfont.eot +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons/fonts → material_design_icons/fonts/_versions/v3.3.92}/materialdesignicons-webfont.woff +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons/fonts → material_design_icons/fonts/_versions/v3.3.92}/materialdesignicons-webfont.woff2 +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons/fonts → material_design_icons/fonts/_versions/v3.3.92/svg}/materialdesignicons-webfont.svg +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons/fonts → material_design_icons/fonts/_versions/v3.3.92/ttf}/materialdesignicons-webfont.ttf +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/_versions/v5.9.55/eot/materialdesignicons-webfont.eot +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/_versions/v5.9.55/materialdesignicons-webfont.woff +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/_versions/v5.9.55/materialdesignicons-webfont.woff2 +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/_versions/v5.9.55/preview.html +717 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/_versions/v5.9.55/svg/materialdesignicons-webfont.svg +10188 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/_versions/v5.9.55/ttf/materialdesignicons-webfont.ttf +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/eot/materialdesignicons-webfont.eot +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/materialdesignicons-webfont.woff +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/materialdesignicons-webfont.woff2 +0 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/svg/materialdesignicons-webfont.svg +10188 -0
- data/assets/themes/j1/core/fonts/material_design_icons/fonts/ttf/materialdesignicons-webfont.ttf +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons → material_design_icons}/metadata/icons.json +0 -0
- data/assets/themes/j1/core/fonts/{materialdesign_icons → material_design_icons}/metadata/icons.yml +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Bold.eot → eot/Roboto-Bold.eot} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Light.eot → eot/Roboto-Light.eot} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Medium.eot → eot/Roboto-Medium.eot} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Regular.eot → eot/Roboto-Regular.eot} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Thin.eot → eot/Roboto-Thin.eot} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Black.ttf → ttf/Roboto-Black.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-BlackItalic.ttf → ttf/Roboto-BlackItalic.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Bold.ttf → ttf/Roboto-Bold.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-BoldItalic.ttf → ttf/Roboto-BoldItalic.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Italic.ttf → ttf/Roboto-Italic.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Light.ttf → ttf/Roboto-Light.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-LightItalic.ttf → ttf/Roboto-LightItalic.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Medium.ttf → ttf/Roboto-Medium.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-MediumItalic.ttf → ttf/Roboto-MediumItalic.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Regular.ttf → ttf/Roboto-Regular.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-Thin.ttf → ttf/Roboto-Thin.ttf} +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-ThinItalic.ttf → ttf/Roboto-ThinItalic.ttf} +0 -0
- data/assets/themes/j1/core/js/template.js +5 -10
- data/assets/themes/j1/core/js/template.js.map +1 -1
- data/assets/themes/j1/core/js/template.min.js +23 -1
- data/assets/themes/j1/modules/backstretch/js/backstretch.js +1 -1
- data/assets/themes/j1/modules/backstretch/js/backstretch.min.js +1 -1
- data/assets/themes/j1/modules/carousel/css/carousel.css +1 -1
- data/assets/themes/j1/modules/carousel/css/carousel.min.css +1 -1
- data/assets/themes/j1/modules/carousel/css/carousel_transitions.css +1 -1
- data/assets/themes/j1/modules/carousel/css/carousel_transitions.min.css +1 -1
- data/assets/themes/j1/modules/carousel/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/carousel/css/theme/uno.min.css +1 -1
- data/assets/themes/j1/modules/clipboard/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/clipboard/css/theme/uno.min.css +1 -1
- data/assets/themes/j1/modules/datatables/css/DataTables-1.10.16/images/sort_asc.png +0 -0
- data/assets/themes/j1/modules/datatables/css/DataTables-1.10.16/images/sort_asc_disabled.png +0 -0
- data/assets/themes/j1/modules/datatables/css/DataTables-1.10.16/images/sort_both.png +0 -0
- data/assets/themes/j1/modules/datatables/css/DataTables-1.10.16/images/sort_desc.png +0 -0
- data/assets/themes/j1/modules/datatables/css/DataTables-1.10.16/images/sort_desc_disabled.png +0 -0
- data/assets/themes/j1/modules/datatables/css/datatables.css +1113 -0
- data/assets/themes/j1/modules/datatables/css/datatables.min.css +136 -0
- data/assets/themes/j1/modules/datatables/css/theme/uno.css +473 -0
- data/assets/themes/j1/modules/datatables/js/datatables.js +95360 -0
- data/assets/themes/j1/modules/datatables/js/datatables.min.js +533 -0
- data/assets/themes/j1/modules/fam/css/uno/fam.css +1 -1
- data/assets/themes/j1/modules/fam/js/fam.js +1 -1
- data/assets/themes/j1/modules/iframeResizer/LICENSE +21 -21
- data/assets/themes/j1/modules/jquery/js/jquery-3.5.1.min.map +1 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.7.0/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.8.0/css/justifiedGallery.css +110 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.8.0/css/justifiedGallery.min.css +110 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.8.0/js/jquery.justifiedGallery.js +1245 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.8.0/js/jquery.justifiedGallery.min.js +8 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.8.0/justifiedGallery.min.zip +0 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v3.8.0/justifiedGallery.zip +0 -0
- data/assets/themes/j1/modules/justifiedGallery/_versions/v4.0.0/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/justifiedGallery/css/_archived/justifiedGallery.css +110 -0
- data/assets/themes/j1/modules/justifiedGallery/css/_archived/justifiedGallery.min.css +110 -0
- data/assets/themes/j1/modules/justifiedGallery/css/justifiedGallery.css +11 -10
- data/assets/themes/j1/modules/justifiedGallery/css/justifiedGallery.min.css +3 -106
- data/assets/themes/j1/modules/justifiedGallery/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/justifiedGallery/css/theme/uno.min.css +1 -1
- data/assets/themes/j1/modules/justifiedGallery/js/justifiedGallery.js +147 -146
- data/assets/themes/j1/modules/justifiedGallery/js/justifiedGallery.min.js +3 -3
- data/assets/themes/j1/modules/lightGallery/css/themes/uno.css +1 -1
- data/assets/themes/j1/modules/lightGallery/css/themes/uno.min.css +1 -1
- data/assets/themes/j1/modules/lightGallery/js/core/lightgallery.min.js +1 -2
- data/assets/themes/j1/modules/lightGallery/js/modules/j1/j1-video.js +1 -1
- data/assets/themes/j1/modules/lightGallery/js/modules/j1/j1-video.min.js +1 -1
- data/assets/themes/j1/modules/lightbox/LICENSE +22 -22
- data/assets/themes/j1/modules/lightbox/css/lightbox.css +1 -1
- data/assets/themes/j1/modules/lightbox/css/lightbox.min.css +1 -1
- data/assets/themes/j1/modules/lightbox/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/lightbox/css/theme/uno.min.css +1 -1
- data/assets/themes/j1/modules/lightbox/js/lightbox.js +2 -2
- data/assets/themes/j1/modules/lightbox/js/lightbox.min.js +1 -1
- data/assets/themes/j1/modules/lunrSearch/css/{lunr_search.css → quicksearch.css} +1 -1
- data/assets/themes/j1/modules/lunrSearch/css/{lunr_search.min.css → quicksearch.min.css} +13 -6
- data/assets/themes/j1/modules/lunrSearch/js/lunr.language.support.js +304 -0
- data/assets/themes/j1/modules/lunrSearch/js/lunr.language.support.min.js +1 -0
- data/assets/themes/j1/modules/lunrSearch/js/{lunr_search.js → quicksearch.js} +23 -4
- data/assets/themes/j1/modules/lunrSearch/js/quicksearch.min.js +17 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ar.js +381 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ar.min.js +1 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.da.js +284 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.da.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.de.js +384 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.de.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.du.js +450 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.du.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.es.js +599 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.es.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.fi.js +541 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.fi.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.fr.js +703 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.fr.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.hu.js +565 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.hu.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.it.js +617 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.it.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ja.js +188 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ja.min.js +1 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.jp.js +5 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.jp.min.js +1 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.multi.js +79 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.multi.min.js +1 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.nl.js +448 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.nl.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.no.js +258 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.no.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.pt.js +570 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.pt.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ro.js +558 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ro.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ru.js +391 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.ru.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.sv.js +256 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.sv.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.th.js +97 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.tr.js +1087 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.tr.min.js +18 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.vi.js +84 -0
- data/assets/themes/j1/modules/lunrSearch/languages/lunr.vi.min.js +1 -0
- data/assets/themes/j1/modules/mdiPreviewer/css/previewer.css +21 -6
- data/assets/themes/j1/modules/mdiPreviewer/css/previewer.min.css +2 -2
- data/assets/themes/j1/modules/mdiPreviewer/js/previewer.js +115 -0
- data/assets/themes/j1/modules/mdiPreviewer/js/previewer.min.js +15 -0
- data/assets/themes/j1/modules/mdiPreviewer/js/previewer.new.js +111 -0
- data/assets/themes/j1/modules/mdiPreviewer/js/previewer.old.js +103 -0
- data/assets/themes/j1/modules/mmenuLight/css/mmenu.css +1 -1
- data/assets/themes/j1/modules/mmenuLight/css/mmenu.min.css +1 -1
- data/assets/themes/j1/modules/mmenuLight/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/mmenuLight/css/theme/uno.min.css +2 -2
- data/assets/themes/j1/modules/mmenuLight/js/mmenu.js +3 -3
- data/assets/themes/j1/modules/mmenuLight/js/mmenu.min.js +4 -4
- data/assets/themes/j1/modules/rtable/css/theme/uno.css +1 -1
- data/assets/themes/j1/modules/rtable/css/theme/uno.min.css +1 -1
- data/assets/themes/j1/modules/rtable/js/rtable.js +1 -1
- data/assets/themes/j1/modules/rtable/js/rtable.min.js +1 -1
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +1 -1
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
- data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.css +5 -5
- data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.min.css +2 -2
- data/assets/themes/j1/modules/twemoji/js/LICENSE +21 -21
- data/assets/themes/j1/modules/twemoji/js/picker/LICENSE +21 -21
- data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.js +47 -46
- data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.min.js +2 -2
- data/assets/themes/j1/modules/twemoji/js/twemoji.js +1 -1
- data/assets/themes/j1/modules/twemoji/js/twemoji.min.js +1 -1
- data/exe/j1 +2 -0
- data/lib/j1/commands/generate.rb +47 -46
- data/lib/j1/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.6/fastfilereaderext.so +0 -0
- data/lib/j1/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.6/rubyeventmachine.so +0 -0
- data/lib/j1/utils/exec.rb +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/j1_app.rb +0 -4
- data/lib/j1_app/j1_auth_manager/auth_manager.rb +1 -1
- data/lib/j1_app/j1_auth_manager/commands.rb +1 -1
- data/lib/j1_app/j1_auth_manager/error_pages.rb +1 -1
- data/lib/j1_app/j1_auth_manager/helpers_disqus.rb +1 -1
- data/lib/j1_app/j1_auth_manager/helpers_facebook.rb +1 -1
- data/lib/j1_app/j1_auth_manager/helpers_github.rb +1 -1
- data/lib/j1_app/j1_auth_manager/helpers_patreon.rb +1 -1
- data/lib/j1_app/j1_auth_manager/helpers_twitter.rb +1 -1
- data/lib/j1_app/j1_auth_manager/warden_omniauth.rb +1 -1
- data/lib/j1_app/omniauth/strategies/disqus.rb +1 -1
- data/lib/j1_app/omniauth/strategies/facebook.rb +1 -1
- data/lib/j1_app/omniauth/strategies/github.rb +1 -1
- data/lib/j1_app/omniauth/strategies/patreon.rb +1 -1
- data/lib/j1_app/omniauth/strategies/twitter.rb +1 -1
- data/lib/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.6/fastfilereaderext.so +0 -0
- data/lib/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.6/rubyeventmachine.so +0 -0
- data/lib/starter_web/Gemfile +29 -40
- data/lib/starter_web/_config.yml +4 -4
- data/lib/starter_web/_data/_defaults/categories.yml +1 -1
- data/lib/starter_web/_data/_defaults/colors.yml +1 -1
- data/lib/starter_web/_data/_defaults/font_sizes.yml +1 -1
- data/lib/starter_web/_data/_defaults/j1_light_gallery.yml +1 -1
- data/lib/starter_web/_data/_defaults/resources.yml +1 -1
- data/lib/starter_web/_data/_defaults/template_settings.yml +1 -1
- data/lib/starter_web/_data/apps/carousel.yml +1 -1
- data/lib/starter_web/_data/apps/defaults/carousel.yml +1 -1
- data/lib/starter_web/_data/apps/defaults/gallery_customizer.yml +1 -1
- data/lib/starter_web/_data/apps/defaults/justified_gallery.yml +1 -1
- data/lib/starter_web/_data/apps/defaults/light_gallery.yml +1 -1
- data/lib/starter_web/_data/apps/defaults/lightbox.yml +1 -1
- data/lib/starter_web/_data/apps/gallery_customizer.yml +1 -1
- data/lib/starter_web/_data/apps/justified_gallery.yml +1 -1
- data/lib/starter_web/_data/apps/light_gallery.yml +2 -2
- data/lib/starter_web/_data/apps/lightbox.yml +1 -1
- data/lib/starter_web/_data/asciidoc2pdf/fonts/ABOUT-mplus1mn-subset +26 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/ABOUT-mplus1p-subset +26 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/ABOUT-notoemoji-subset +3 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/ABOUT-notoserif-subset +26 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/LICENSE-mplus +16 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/LICENSE-notoemoji +201 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/LICENSE-notoserif +201 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/LICENSE-roboto +11 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Black.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-BlackItalic.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Bold.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-BoldItalic.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Italic.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Light.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-LightItalic.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Medium.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-MediumItalic.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Regular.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-Thin.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/Roboto-ThinItalic.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/mplus1mn-bold-subset.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/mplus1mn-bold_italic-subset.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/mplus1mn-italic-subset.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/mplus1mn-regular-subset.ttf +0 -0
- data/{assets/themes/j1/core/fonts/roboto → lib/starter_web/_data/asciidoc2pdf}/fonts/mplus1p-regular-fallback.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/fonts/notoemoji-subset.ttf +0 -0
- data/{assets/themes/j1/core/fonts/roboto → lib/starter_web/_data/asciidoc2pdf}/fonts/notoserif-bold-subset.ttf +0 -0
- data/{assets/themes/j1/core/fonts/roboto → lib/starter_web/_data/asciidoc2pdf}/fonts/notoserif-bold_italic-subset.ttf +0 -0
- data/{assets/themes/j1/core/fonts/roboto → lib/starter_web/_data/asciidoc2pdf}/fonts/notoserif-italic-subset.ttf +0 -0
- data/{assets/themes/j1/core/fonts/roboto → lib/starter_web/_data/asciidoc2pdf}/fonts/notoserif-regular-subset.ttf +0 -0
- data/lib/starter_web/_data/asciidoc2pdf/themes/base-theme.yml +130 -0
- data/lib/starter_web/_data/asciidoc2pdf/themes/default-for-print-theme.yml +36 -0
- data/lib/starter_web/_data/asciidoc2pdf/themes/default-for-print-with-fallback-font-theme.yml +15 -0
- data/lib/starter_web/_data/asciidoc2pdf/themes/default-theme.yml +298 -0
- data/lib/starter_web/_data/asciidoc2pdf/themes/default-with-fallback-font-theme.yml +21 -0
- data/lib/starter_web/_data/asciidoc2pdf/themes/j1-theme.yml +315 -0
- data/lib/starter_web/_data/blocks/banner.yml +1 -1
- data/lib/starter_web/_data/blocks/defaults/banner.yml +1 -1
- data/lib/starter_web/_data/blocks/defaults/footer.yml +1 -1
- data/lib/starter_web/_data/blocks/defaults/panel.yml +1 -1
- data/lib/starter_web/_data/blocks/footer.yml +2 -2
- data/lib/starter_web/_data/blocks/panel.yml +1 -1
- data/lib/starter_web/_data/builder/blog_navigator.yml +1 -1
- data/lib/starter_web/_data/categories.yml +1 -1
- data/lib/starter_web/_data/colors.yml +1 -1
- data/lib/starter_web/_data/font_sizes.yml +1 -1
- data/lib/starter_web/_data/j1_config.yml +37 -36
- data/lib/starter_web/_data/layouts/app.yml +1 -1
- data/lib/starter_web/_data/layouts/blog_archive.yml +1 -1
- data/lib/starter_web/_data/layouts/collection.yml +1 -1
- data/lib/starter_web/_data/layouts/default.yml +1 -1
- data/lib/starter_web/_data/layouts/home.yml +1 -1
- data/lib/starter_web/_data/layouts/page.yml +1 -1
- data/lib/starter_web/_data/layouts/post.yml +1 -1
- data/lib/starter_web/_data/layouts/raw.yml +1 -1
- data/lib/starter_web/_data/modules/advertising.yml +1 -1
- data/lib/starter_web/_data/modules/attics.yml +1 -1
- data/lib/starter_web/_data/modules/authentication.yml +1 -1
- data/lib/starter_web/_data/modules/cookiebar.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/attics.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/authentication.yml +45 -43
- data/lib/starter_web/_data/modules/defaults/cookiebar.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/fam.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/framer.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/log4javascript.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/log4r.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/navigator.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/quicksearch.yml +82 -0
- data/lib/starter_web/_data/modules/defaults/themer.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/toccer.yml +1 -1
- data/lib/starter_web/_data/modules/fam.yml +1 -1
- data/lib/starter_web/_data/modules/framer.yml +1 -1
- data/lib/starter_web/_data/modules/log4javascript.yml +1 -1
- data/lib/starter_web/_data/modules/log4r.yml +1 -1
- data/lib/starter_web/_data/modules/navigator.yml +5 -7
- data/lib/starter_web/_data/modules/navigator_menu.yml +3 -65
- data/lib/starter_web/_data/modules/{lunr_search.yml → quicksearch.yml} +4 -4
- data/lib/starter_web/_data/modules/themer.yml +1 -96
- data/lib/starter_web/_data/modules/toccer.yml +1 -1
- data/lib/starter_web/_data/pages/builder.yml +1 -1
- data/lib/starter_web/_data/plugins/defaults/notebooks.yml +1 -1
- data/lib/starter_web/_data/plugins/defaults/paginator.yml +1 -1
- data/lib/starter_web/_data/plugins/notebooks.yml +1 -1
- data/lib/starter_web/_data/plugins/paginator.yml +1 -1
- data/lib/starter_web/_data/private.yml +1 -1
- data/lib/starter_web/_data/resources.yml +35 -61
- data/lib/starter_web/_data/utilities/defaults/util_srv.yml +1 -1
- data/lib/starter_web/_data/utilities/util_srv.yml +1 -1
- data/lib/starter_web/_includes/attributes.asciidoc +278 -90
- data/lib/starter_web/_includes/documents/licenses/mit.asciidoc +19 -19
- data/lib/starter_web/_includes/tables/jekyll_variables.asciidoc +45 -45
- data/lib/starter_web/_includes/tables/template_variables.asciidoc +46 -46
- data/lib/starter_web/_plugins/asciidoctor-extensions/admonition-block-answer.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/admonition-block-question.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/banner.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/fab-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/fas-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/gallery-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/gist-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/iconify-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/lightbox-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/mdi-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/panel.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/shout-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor-extensions/twitter-emoji-inline.rb +1 -1
- data/lib/starter_web/_plugins/debug.rb +1 -1
- data/lib/starter_web/_plugins/filters.rb +1 -1
- data/lib/starter_web/_plugins/lorem_inline.rb +99 -4
- data/lib/starter_web/_plugins/lunr_index.rb +43 -10
- data/lib/starter_web/_plugins/minifyJS.rb +4 -1
- data/lib/starter_web/_plugins/minifyJSON.rb +1 -1
- data/lib/starter_web/_plugins/prettify.rb +1 -1
- data/lib/starter_web/_plugins/symlink_watcher.rb +1 -1
- data/lib/starter_web/assets/images/modules/attics/machine-generator-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/modules-apps-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/no-time-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/responsive-text-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/scalable/d1.svg +1 -1
- data/lib/starter_web/assets/images/pages/j1_webhooks/uml/auth_mgmr_signin_request_flow.uxf +632 -632
- data/lib/starter_web/assets/images/pages/j1_webhooks/uml/webhook_flow.uxf +648 -648
- data/lib/starter_web/assets/images/pages/panels/modules-apps-1920x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/panels/no-time-1920x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/panels/the-place-1920x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/roundtrip/600_quicksearch/quicksearch_icon-800x200.jpg +0 -0
- data/lib/starter_web/assets/images/pages/roundtrip/600_quicksearch/quicksearch_icon.jpg +0 -0
- data/lib/starter_web/assets/images/pages/roundtrip/600_quicksearch/quicksearch_input-800x200.jpg +0 -0
- data/lib/starter_web/assets/images/pages/roundtrip/600_quicksearch/quicksearch_input.jpg +0 -0
- data/lib/starter_web/assets/images/pages/roundtrip/600_quicksearch/quicksearch_results_jekyll-.jpg +0 -0
- data/lib/starter_web/assets/images/pages/roundtrip/600_quicksearch/quicksearch_results_jekyll.jpg +0 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1-template.adoc.erb +10 -13
- data/lib/starter_web/collections/posts/public/featured/_posts/{2018-05-01-confusion-about-base-url.adoc → 2020-04-01-confusion-about-base-url.adoc} +6 -4
- data/lib/starter_web/collections/posts/public/featured/_posts/{2019-05-01-top-open-source-static-site-generators.adoc → 2020-05-01-top-open-source-static-site-generators.adoc} +15 -13
- data/lib/starter_web/collections/posts/public/featured/_posts/{2019-06-01-about-cookies.adoc → 2020-06-01-about-cookies.adoc} +184 -198
- data/lib/starter_web/collections/posts/public/featured/_posts/_includes/documents/readme +1 -0
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +6 -17
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +6 -16
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +6 -16
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +6 -16
- data/{assets/themes/j1/modules/mdiPreviewer/js → lib/starter_web/collections/posts/public/series/_posts/_includes/documents}/readme +0 -0
- data/lib/starter_web/collections/posts/public/series/_posts/_includes/tables/debug_variables.asciidoc +47 -48
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +5 -4
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +13 -3
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-26-columbia-river.adoc +13 -3
- data/lib/starter_web/config.ru +23 -24
- data/lib/starter_web/dot.gitattributes +3 -17
- data/lib/starter_web/dot.nojekyll +19 -19
- data/lib/starter_web/favicon.ico +0 -0
- data/lib/starter_web/index.html +1 -1
- data/lib/starter_web/package.json +56 -44
- data/lib/starter_web/pages/protected/site_search.adoc +2 -7
- data/lib/starter_web/pages/public/about/about_site.adoc +1828 -8
- data/lib/starter_web/pages/public/about/become_a_patron.adoc +26 -1
- data/lib/starter_web/pages/public/blog/navigator/archive.html +2 -0
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +3 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +2 -0
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +2 -0
- data/lib/starter_web/pages/public/blog/navigator/index.html +2 -0
- data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/100_meet_and_greet_jekyll.adoc +3 -3
- data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/200_preparations.adoc +2 -2
- data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/300_first_awesome_web.adoc +2 -2
- data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/documents/300_first_awesome_web.asciidoc +11 -12
- data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/tables/debug_variables.asciidoc +47 -48
- data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/tables/readme +1 -0
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +6 -2
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +2 -3
- data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +5 -4
- data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +39 -19
- data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +417 -0
- data/lib/starter_web/pages/public/learn/roundtrip/610_fam.adoc +2 -2
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +3 -0
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_bottom_info.asciidoc +14 -14
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_bottom_left_warning.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_bottom_right_danger.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_central_success.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_full_height_left_info.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_full_height_right_success.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_top_info.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_top_left_info.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_top_right_success.asciidoc +11 -11
- data/lib/starter_web/pages/public/learn/where_to_go.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/000_copyright.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/100_impress.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/200_terms_of_use.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/400_license_agreement.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/500_support.adoc +1 -1
- data/lib/starter_web/pages/public/legal/en/eu/cookie.policy.asciidoc +50 -55
- data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +16 -5
- data/lib/starter_web/pages/public/previewer/_includes/attributes.asciidoc +5 -81
- data/lib/starter_web/pages/public/previewer/_includes/documents/licenses/mit.asciidoc +19 -19
- data/lib/starter_web/pages/public/previewer/_includes/documents/rouge/100_language_examples.asciidoc +119 -0
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/100_absolute_sizes.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/110_bs_grid_sizes.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/120_relative_sizes.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/200_rotate.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/300_flip.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/400_spin_pulsed.asciidoc +4 -4
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/500_bw_color_palette.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/510_bs_color_palette.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/600_md_color_palette.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/601_md_color_palette_indigo.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/mdi_icons/602_md_color_palette_pink.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/rouge/200_rouge_attributes.asciidoc +41 -0
- data/lib/starter_web/pages/public/previewer/_includes/tables/rouge/300_supported_languages.asciidoc +857 -0
- data/lib/starter_web/pages/public/previewer/_includes/tables/twitter_emoji/100_bs_sizes.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/twitter_emoji/100_relative_sizes.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/twitter_emoji/200_rotate.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/twitter_emoji/300_flip.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/twitter_emoji/400_spin_pulsed.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +116 -78
- data/lib/starter_web/pages/public/previewer/iframer.adoc +1 -1
- data/lib/starter_web/pages/public/previewer/justified_gallery.html +1 -1
- data/lib/starter_web/pages/public/previewer/mdi_icons_preview.adoc +41 -108
- data/lib/starter_web/pages/public/previewer/rouge.adoc +38 -353
- data/lib/starter_web/pages/public/previewer/twitter_emoji_preview.adoc +2 -2
- data/lib/starter_web/utilsrv/_defaults/package.json +2 -2
- data/lib/starter_web/utilsrv/package.json +9 -9
- data/lib/starter_web/utilsrv/server.js +1 -1
- metadata +197 -83
- data/assets/themes/j1/core/fonts/materialdesign_icons/license.md +0 -97
- data/assets/themes/j1/core/fonts/roboto/fonts/OpenSansEmoji.ttf +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/mplus1mn-bold-ascii.ttf +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/mplus1mn-bold_italic-ascii.ttf +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/mplus1mn-italic-ascii.ttf +0 -0
- data/assets/themes/j1/core/fonts/roboto/fonts/mplus1mn-regular-ascii-conums.ttf +0 -0
- data/assets/themes/j1/modules/lunrSearch/js/lunr_search.min.js +0 -17
- data/lib/j1_app/j1_auth_manager/views/auth_manager_ui.erb.kapott +0 -234
- data/lib/j1_app/j1_auth_manager/views/auth_manager_ui.new.erb +0 -297
- data/lib/starter_web/_data/modules/defaults/jekyll_search.yml +0 -151
- data/lib/starter_web/_data/modules/defaults/lunr_search.yml +0 -171
- data/lib/starter_web/_data/modules/jekyll_search.yml +0 -33
- data/lib/starter_web/_plugins/simple_search_filter.rb +0 -32
- data/lib/starter_web/collections/posts/public/featured/_posts/_includes/documents/unsplash-badge.asciidoc +0 -31
- data/lib/starter_web/collections/posts/public/series/_posts/_includes/documents/100-docker-using-shared-folders.asciidoc +0 -430
- data/lib/starter_web/collections/posts/public/series/_posts/_includes/documents/loop.sh +0 -28
- data/lib/starter_web/pages/public/learn/roundtrip/600_lunr.adoc +0 -236
data/assets/themes/j1/core/fonts/material_design_icons/fonts/ttf/materialdesignicons-webfont.ttf
ADDED
Binary file
|
data/assets/themes/j1/core/fonts/{materialdesign_icons → material_design_icons}/metadata/icons.json
RENAMED
File without changes
|
data/assets/themes/j1/core/fonts/{materialdesign_icons → material_design_icons}/metadata/icons.yml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-BlackItalic.ttf → ttf/Roboto-BlackItalic.ttf}
RENAMED
File without changes
|
File without changes
|
data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-BoldItalic.ttf → ttf/Roboto-BoldItalic.ttf}
RENAMED
File without changes
|
File without changes
|
File without changes
|
data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-LightItalic.ttf → ttf/Roboto-LightItalic.ttf}
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/assets/themes/j1/core/fonts/roboto/fonts/{Roboto-ThinItalic.ttf → ttf/Roboto-ThinItalic.ttf}
RENAMED
File without changes
|
@@ -1,29 +1,24 @@
|
|
1
1
|
!function(e){var n={};function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var r in e)t.d(o,r,function(n){return e[n]}.bind(null,r));return o},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/assets/themes/j1/core/js",t(t.s=0)}([function(e,n,t){window.j1.adapter=t(1),window.j1.core=t(2),window.j1.core.navigator=t(3),window.j1.core.cookiebar=t(4),window.j1.core.scrollSmooth=t(5),window.j1.anime=t(6);t(7),t(14)},function(e,n,t){"use strict";
|
2
2
|
/*!
|
3
3
|
* J1 Adapter
|
4
|
-
* Copyright (C)
|
4
|
+
* Copyright (C) 2021 Juergen Adams
|
5
5
|
* Licensed under MIT License.
|
6
6
|
*/e.exports=(j1,window,{_init_:function(){}})},function(e,n,t){"use strict";
|
7
7
|
/*!
|
8
8
|
* J1 Core
|
9
|
-
* Copyright (C)
|
9
|
+
* Copyright (C) 2021 Juergen Adams
|
10
10
|
* Licensed under MIT License.
|
11
11
|
*/e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},void 0);return{_init_:function(e){},getState:function(){return"loaded"},isMobile:function(e){var n,t=!1;return n=navigator.userAgent||navigator.vendor||window.opera,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(n)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm|cell|chtm|cldc|cmd|co(mp|nd)|craw|da(it|ll|ng)|dbte|dcs|devi|dica|dmob|do(c|p)o|ds(12|d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(|_)|g1 u|g560|gene|gf5|gmo|go(\.w|od)|gr(ad|un)|haie|hcit|hd(m|p|t)|hei|hi(pt|ta)|hp( i|ip)|hsc|ht(c(| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i(20|go|ma)|i230|iac( ||\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|[a-w])|libw|lynx|m1w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|mcr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|([1-8]|c))|phil|pire|pl(ay|uc)|pn2|po(ck|rt|se)|prox|psio|ptg|qaa|qc(07|12|21|32|60|[2-7]|i)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h|oo|p)|sdk\/|se(c(|0|1)|47|mc|nd|ri)|sgh|shar|sie(|m)|sk0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h|v|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl|tdg|tel(i|m)|tim|tmo|to(pl|sh)|ts(70|m|m3|m5)|tx9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas|your|zeto|zte/i.test(n.substr(0,4)))&&(t=!0),t},bsFormClearButton:function(){$(":input").on("keydown focus change mouseover",(function(){$(this).val().length>0&&$(this).nextAll(".form-clear").removeClass("d-none")})).on("keydown keyup blur",(function(){0===$(this).val().length&&$(this).nextAll(".form-clear").addClass("d-none")}))}}}()},function(e,n){
|
12
12
|
/*!
|
13
13
|
* J1 Navigator
|
14
|
-
* Copyright (C)
|
14
|
+
* Copyright (C) 2021 Juergen Adams
|
15
15
|
* Licensed under MIT License.
|
16
16
|
*/
|
17
17
|
e.exports=function(e){var n,t,o=j1.getCookieNames(),r=(o.cookie_consent,o.user_session,{});$.extend({foo:"bar",bar:"foo"},e);return{init:function(e,o){return n=log4javascript.getLogger("j1.core.navigator"),t="core is being initialized",n.info(t),this.manageDropdownMenu(e,o),this.navbarSticky(),r.type="command",r.action="module_initialized",r.text="navigator core initialized successfully",j1.sendMessage("j1.core.navigator","j1.adapter.navigator",r),!0},eventHandler:function(){var e=log4javascript.getLogger("j1.core.navigator.eventHandler"),n=$("nav.navbar.navigator");if(n.hasClass("navbar-sticky")&&n.wrap("<div class='wrap-sticky'></div>"),n.hasClass("brand-center")){var t=new Array,o=$("nav.brand-center"),r=o.find("ul.navbar-nav");o.find("ul.navbar-nav > li").each((function(){t.push($(this).html())}));var a=t.splice(0,Math.round(t.length/2)),i=t,s="",l=function(e){s="";for(var n=0;n<e.length;n++)s+="<li>"+e[n]+"</li>"};l(a),r.html(s),o.find("ul.nav").first().addClass("navbar-left"),l(i),r.after('<ul class="nav navbar-nav"></ul>').next().html(s),o.find("ul.nav").last().addClass("navbar-right"),o.find("ul.nav.navbar-left").wrap("<div class='col_half left'></div>"),o.find("ul.nav.navbar-right").wrap("<div class='col_half right'></div>"),o.find("ul.navbar-nav > li").each((function(){var e=$("ul.dropdown-menu",this),n=$("ul.megamenu-content",this);e.closest("li").addClass("dropdown"),n.closest("li").addClass("megamenu-fw")}))}n.find("ul.nav").hasClass("navbar-center")&&n.addClass("menu-center"),n.hasClass("navbar-full")?($("nav.navbar.navigator").find("ul.nav").wrap("<div class='wrap-full-menu'></div>"),$(".wrap-full-menu").wrap("<div class='nav-full'></div>"),$("ul.nav.navbar-nav").prepend("<li class='close-full-menu'><a href='#'><i class='mdi mdi-close'></i></a></li>")):n.hasClass("navbar-mobile")?n.removeClass("no-full"):n.addClass("no-full"),n.hasClass("no-background")&&$(window).on("scroll",(function(){var e=$("nav.navbar").outerHeight();$(window).scrollTop()>e?$(".navbar-fixed").removeClass("no-background"):$(".navbar-fixed").addClass("no-background")})),n.hasClass("navbar-transparent")&&$(window).on("scroll",(function(){var e=$("nav.navbar").outerHeight();$(window).scrollTop()>e?($(".navbar-fixed").removeClass("navbar-transparent"),$(".navbar-fixed").addClass("navbar-scrolled")):($(".navbar-fixed").removeClass("navbar-scrolled"),$(".navbar-fixed").addClass("navbar-transparent"))})),$("nav.navbar.navigator .attr-nav").each((function(){e.debug("register OPEN event|s for QuickSearch"),$("li.search > a",this).on("click",(function(n){e.debug("manage search action OPEN"),$("html,body").animate({scrollTop:0},0),$(".top-search").slideToggle("slow","swing",(function(){$(".top-search").is(":visible")?($("body").addClass("stop-scrolling"),$("body").bind("touchmove",(function(e){e.preventDefault()}))):($("body").removeClass("stop-scrolling"),$("body").unbind("touchmove"))}))}))})),e.debug("register CLOSE event|s for QuickSearch"),$(".input-group-addon.close-search").on("click",(function(n){n.preventDefault(),e.debug("manage search action CLOSE"),$(".top-search").slideUp("slow","swing"),$("html,body").animate({scrollTop:0},0),$("body").removeClass("stop-scrolling"),$("body").unbind("touchmove"),n.stopPropagation()})),$("nav.navbar.navigator .attr-nav").each((function(){e.debug("register SHOW|HIDE event|s for J1 Translator"),$("li.translator > a",this).on("click",(function(n){e.debug("toggle translator icon SHOW|HIDE"),$("#google_translate_element").toggle(),"none"!==$("#google_translate_element").css("display")&&$("html,body").animate({scrollTop:0},"slow")}))})),$("body").wrapInner("<div class='wrapper'></div>")},manageDropdownMenu:function(e,n){var t,o,r,a,i=e,s=n,l=$("nav.navbar.navigator"),c=(window.matchMedia("(orientation: landscape)").matches,$(window).width()),u=($("nav").width(),l.find("ul.nav").data("in")),d=l.find("ul.nav").data("out"),f="#"+s.xhr_container_id+".collapse",p=s.delay_menu_open;if(c<=(o="lg"===i.nav_bar.media_breakpoint?992:"md"===i.nav_bar.media_breakpoint?768:"sm"===i.nav_bar.media_breakpoint?576:992)?($(f).addClass("navbar-collapse"),$(f).removeClass("show"),$("#navigator_nav_quicklinks").addClass("show"),$("nav.navbar.navigator .attr-nav").each((function(){$(".dropdown-menu",this).removeClass("animated"),$("li.dropdown",this).off("mouseenter"),$("li.dropdown",this).off("mouseleave"),$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",(function(e){$(this).closest("li.dropdown").find(".dropdown-menu").first().stop().fadeToggle(),$(".navbar-toggle").each((function(){$(".mdi",this).removeClass("mdi-close"),$(".mdi",this).addClass("mdi-menu"),$(".navbar-collapse").removeClass("in"),$(".navbar-collapse").removeClass("open")}))})),$(this).on("mouseleave",(function(){$(".dropdown-menu",this).stop().fadeOut(),$("li.dropdown",this).removeClass("open")}))})),$("#desktop_menu").hide()):c>o&&($("#navigator_nav_quicklinks").removeClass("show"),$("#desktop_menu").show(),$(".dropdown-menu > li").hover((function(){var e=$(this).find("ul");if(1==e.length)e.height(),void 0!==e.css("max-height")&&e.css("max-height").match(/\d+/)[0]})),$(".dropdown-menu > li").on("mouseleave",(function(){$("body").removeClass("stop-scrolling")})),$(f).removeClass("navbar-collapse"),$(f).addClass("show"),$("nav.navbar.navigator ul.nav").each((function(){$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",(function(e){})),$(".megamenu-fw",this).each((function(){$(".title",this).off("click"),$("a.dropdown-toggle",this).off("click"),$(".content").removeClass("animated")})),$(".dropdown-menu",this).addClass("animated"),$("li.dropdown",this).on("mouseenter",(function(){if(t=$(".dropdown-menu",this).eq(0),r=$(this),$("body").hasClass("stop-scrolling")||$("body").hasClass("mm-ocd-opened"))return!1;t.removeClass(d),t.removeClass("open"),r.addClass("open"),a=window.setTimeout((function(){r.hasClass("open")&&(t.stop().fadeIn().addClass(u),t.addClass("open"),r.addClass("open"))}),p)})),$("li.dropdown",this).on("mouseleave",(function(){window.clearTimeout(a),$(this).removeClass("open").removeClass("open"),$(".dropdown-menu",this).removeClass("open"),$(".dropdown-menu",this).eq(0).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d)})),$(this).on("mouseleave",(function(){window.clearTimeout(a),$("li.dropdown",this).removeClass("open"),$(".dropdown-menu",this).removeClass("open"),$(".dropdown-menu",this).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d)}))}))),$("nav.navbar.navigator .attr-nav").each((function(){$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",(function(e){})),$(".dropdown-menu",this).addClass("animated"),$("li.dropdown",this).on("mouseenter",(function(){$(".dropdown-menu",this).eq(0).removeClass(d),$(".dropdown-menu",this).eq(0).stop().fadeIn().addClass(u),$(this).addClass("open")})),$("li.dropdown",this).on("mouseleave",(function(){$(".dropdown-menu",this).eq(0).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d),$(this).removeClass("open")})),$(this).on("mouseleave",(function(){$(".dropdown-menu",this).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d),$("li.dropdown",this).removeClass("open")}))})),l.hasClass("navbar-full")){var m=$(window).height(),v=$(window).width();$(".nav-full").css("height",m+"px"),$(".wrap-full-menu").css("height",m+"px"),$(".wrap-full-menu").css("width",v+"px"),$(".navbar-collapse").addClass("animated"),$(".navbar-toggle").each((function(){var e=$(this).data("target");$(this).off("click"),$(this).on("click",(function(n){n.preventDefault(),$(e).removeClass(d),$(e).addClass("in"),$(e).addClass(u)})),$("li.close-full-menu").on("click",(function(n){n.preventDefault(),$(e).addClass(d),setTimeout((function(){$(e).removeClass("in"),$(e).removeClass(u)}),500)}))}))}},navbarSticky:function(){var e=$("nav.navbar.navigator");if(e.hasClass("navbar-sticky")){var n=e.height();$(".wrap-sticky").height(n);var t=$(".wrap-sticky").offset().top;$(window).on("scroll",(function(){$(window).scrollTop()>t?e.addClass("sticked"):e.removeClass("sticked")}))}},updateSidebar:function(e){var n,o=log4javascript.getLogger("j1.core.navigator.updateSidebar");return n=JSON.stringify(e),t="user state data: "+n,o.debug(t),j1.resolveMacros(e),j1.updateMacros(e),!0}}}(jQuery)},function(e,n){
|
18
18
|
/*!
|
19
19
|
* J1 Cookiebar
|
20
|
-
* Copyright (C)
|
20
|
+
* Copyright (C) 2021 Juergen Adams
|
21
21
|
* Licensed under MIT License.
|
22
22
|
*/
|
23
|
-
e.exports=(jQuery,{init:function(e){var n=e,t=log4javascript.getLogger("j1.cookiebar"),o=j1.getCookieNames().user_state,r={},a={renewOnVisit:!1,forceShow:!1,domain:String(window.location.hostname),referrer:String(document.referrer)},i=(e=$.extend(a,n),setInterval((function(e){"finished"==j1.getState()&&(user_state_detected=j1.existsCookie(o),user_state_detected?(t.info("User state cookie found"),r=j1.readCookie(o)):t.error("User state NOT cookie found"),"accepted"==r.cookies_accepted&&$("#quickLinksCookieButton").css("display","block"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted||$("#quickLinksCookieButton").css("display","none"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted&&""!=r.cookies_accepted||$("#topFullCookieConsent").modal("show"),clearInterval(i))})))},eventHandler:function(e){var n,t=log4javascript.getLogger("cookiebar.eventHandler"),o=window.location.pathname,r=document.querySelectorAll("a.btn"),a=(j1.appDetected(),e.deleteOnDecline,e.whitelistedPages),i=(a=[],e.stopScrolling),s=j1.getCookieNames(),l=s.user_state,c={},u=j1.readCookie(l);return logText="register button click events",t.debug(logText),r.forEach((function(e,r){e.addEventListener("click",(function(e){return"policyButton"===this.id?(t.debug("user clicked policyButton"),$("#cookiePolicyInfo").toggle("fast",(function(){$("#modal-footer").toggleClass("modal-footer-hidden modal-footer-show")})),!1):"acceptButton"===this.id?(t.debug("user clicked acceptButton"),(u=j1.readCookie(l)).cookies_accepted="accepted",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","block"),!1):"declineButton"===this.id?(t.debug("user clicked declineButton"),u.cookies_accepted="declined",o=window.location.pathname,n=a.indexOf(o)>-1,t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),t.warn("delete all cookies"),j1.deleteCookie(l),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome(),!1):("revokeCookies"===this.id&&(t.debug("user clicked revokeCookiesButton"),o=window.location.pathname,n=a.indexOf(o)>-1,(u=j1.readCookie(l)).cookies_accepted="declined",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome()),"remainCookies"===this.id?(t.debug("user clicked remainCookiesButton"),!1):void 0)}))})),$(document).on("shown.bs.modal","#cookieRevokeCentralDanger",(function(){t.debug("user opened modal: cookieRevokeCentralDanger")})),$(document).on("hide.bs.modal","#cookieRevokeCentralDanger",(function(){t.debug("user closed cookieRevokeCentralDanger")})),$(document).on("shown.bs.modal","#topFullCookieConsent",(function(){i&&$("body").addClass("stop-scrolling")})),$(document).on("hide.bs.modal","#topFullCookieConsent",(function(){t.debug("user closed modal: topFullCookieConsent"),$("body").removeClass("stop-scrolling")})),logText="events registered",t.debug(logText),!0}})},function(e,n,t){"use strict";
|
24
|
-
/*!
|
25
|
-
* J1 scrollSmooth
|
26
|
-
* Copyright (C) 2020 Juergen Adams
|
27
|
-
* Licensed under MIT License.
|
28
|
-
*/e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},e);return{scroll:function(e,n){var t,o;o="run module scrollSmooth",(t=log4javascript.getLogger("j1.scrollSmooth.core")).info(o);var r=n.duration,a=n.offset;this.scrollTo(e,{duration:r,offset:a,callback:null}),o="scrollSmooth finished",t.info(o)},scrollTo:function(e,n){n.offset;var t,o,r=$(".attic"),a=$("nav.navbar"),i=$("#adblock"),s=a.hasClass("navbar-fixed")?"fixed":"scrolled",l=$("body").css("font-size").replace("px",""),c=window.pageYOffset,u=parseInt(l),d=r.length?r.height():0,f=a.length?a.height():0,p=i.length?i.height():0,m="fixed"==s?-1*(f+p+u):-1*(d+f+p+u),v={duration:n.duration,offset:m,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},h=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),g="string"==typeof e?v.offset+(e?h&&h.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,b="function"==typeof v.duration?v.duration(g):v.duration;function w(e){o=e-t,window.scrollTo(0,v.easing(o,c,g,b)),o<b?requestAnimationFrame(w):(window.scrollTo(0,c+g),$(window).scrollTop($(window).scrollTop()+1),$(window).scrollTop($(window).scrollTop()-1),"function"==typeof v.callback&&v.callback())}requestAnimationFrame((function(e){t=e,w(e)}))}}}(jQuery)},function(e,n,t){"use strict";var o={update:null,begin:null,loopBegin:null,changeBegin:null,change:null,changeComplete:null,loopComplete:null,complete:null,loop:1,direction:"normal",autoplay:!0,timelineOffset:0},r={duration:1e3,delay:0,endDelay:0,easing:"easeOutElastic(1, .5)",round:0},a=["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","skew","skewX","skewY","perspective","matrix","matrix3d"],i={CSS:{},springs:{}};function s(e,n,t){return Math.min(Math.max(e,n),t)}function l(e,n){return e.indexOf(n)>-1}function c(e,n){return e.apply(null,n)}var u={arr:function(e){return Array.isArray(e)},obj:function(e){return l(Object.prototype.toString.call(e),"Object")},pth:function(e){return u.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},inp:function(e){return e instanceof HTMLInputElement},dom:function(e){return e.nodeType||u.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return u.hex(e)||u.rgb(e)||u.hsl(e)},key:function(e){return!o.hasOwnProperty(e)&&!r.hasOwnProperty(e)&&"targets"!==e&&"keyframes"!==e}};function d(e){var n=/\(([^)]+)\)/.exec(e);return n?n[1].split(",").map((function(e){return parseFloat(e)})):[]}function f(e,n){var t=d(e),o=s(u.und(t[0])?1:t[0],.1,100),r=s(u.und(t[1])?100:t[1],.1,100),a=s(u.und(t[2])?10:t[2],.1,100),l=s(u.und(t[3])?0:t[3],.1,100),c=Math.sqrt(r/o),f=a/(2*Math.sqrt(r*o)),p=f<1?c*Math.sqrt(1-f*f):0,m=f<1?(f*c-l)/p:-l+c;function v(e){var t=n?n*e/1e3:e;return t=f<1?Math.exp(-t*f*c)*(1*Math.cos(p*t)+m*Math.sin(p*t)):(1+m*t)*Math.exp(-t*c),0===e||1===e?e:1-t}return n?v:function(){var n=i.springs[e];if(n)return n;for(var t=0,o=0;;)if(1===v(t+=1/6)){if(++o>=16)break}else o=0;var r=t*(1/6)*1e3;return i.springs[e]=r,r}}function p(e){return void 0===e&&(e=10),function(n){return Math.ceil(s(n,1e-6,1)*e)*(1/e)}}var m,v,h=function(){function e(e,n){return 1-3*n+3*e}function n(e,n){return 3*n-6*e}function t(e){return 3*e}function o(o,r,a){return((e(r,a)*o+n(r,a))*o+t(r))*o}function r(o,r,a){return 3*e(r,a)*o*o+2*n(r,a)*o+t(r)}return function(e,n,t,a){if(0<=e&&e<=1&&0<=t&&t<=1){var i=new Float32Array(11);if(e!==n||t!==a)for(var s=0;s<11;++s)i[s]=o(.1*s,e,t);return function(r){return e===n&&t===a||0===r||1===r?r:o(l(r),n,a)}}function l(n){for(var a=0,s=1;10!==s&&i[s]<=n;++s)a+=.1;--s;var l=a+.1*((n-i[s])/(i[s+1]-i[s])),c=r(l,e,t);return c>=.001?function(e,n,t,a){for(var i=0;i<4;++i){var s=r(n,t,a);if(0===s)return n;n-=(o(n,t,a)-e)/s}return n}(n,l,e,t):0===c?l:function(e,n,t,r,a){var i,s,l=0;do{(i=o(s=n+(t-n)/2,r,a)-e)>0?t=s:n=s}while(Math.abs(i)>1e-7&&++l<10);return s}(n,a,a+.1,e,t)}}}(),g=(m={linear:function(){return function(e){return e}}},v={Sine:function(){return function(e){return 1-Math.cos(e*Math.PI/2)}},Circ:function(){return function(e){return 1-Math.sqrt(1-e*e)}},Back:function(){return function(e){return e*e*(3*e-2)}},Bounce:function(){return function(e){for(var n,t=4;e<((n=Math.pow(2,--t))-1)/11;);return 1/Math.pow(4,3-t)-7.5625*Math.pow((3*n-2)/22-e,2)}},Elastic:function(e,n){void 0===e&&(e=1),void 0===n&&(n=.5);var t=s(e,1,10),o=s(n,.1,2);return function(e){return 0===e||1===e?e:-t*Math.pow(2,10*(e-1))*Math.sin((e-1-o/(2*Math.PI)*Math.asin(1/t))*(2*Math.PI)/o)}}},["Quad","Cubic","Quart","Quint","Expo"].forEach((function(e,n){v[e]=function(){return function(e){return Math.pow(e,n+2)}}})),Object.keys(v).forEach((function(e){var n=v[e];m["easeIn"+e]=n,m["easeOut"+e]=function(e,t){return function(o){return 1-n(e,t)(1-o)}},m["easeInOut"+e]=function(e,t){return function(o){return o<.5?n(e,t)(2*o)/2:1-n(e,t)(-2*o+2)/2}}})),m);function b(e,n){if(u.fnc(e))return e;var t=e.split("(")[0],o=g[t],r=d(e);switch(t){case"spring":return f(e,n);case"cubicBezier":return c(h,r);case"steps":return c(p,r);default:return c(o,r)}}function w(e){try{return document.querySelectorAll(e)}catch(e){return}}function C(e,n){for(var t=e.length,o=arguments.length>=2?arguments[1]:void 0,r=[],a=0;a<t;a++)if(a in e){var i=e[a];n.call(o,i,a,e)&&r.push(i)}return r}function y(e){return e.reduce((function(e,n){return e.concat(u.arr(n)?y(n):n)}),[])}function k(e){return u.arr(e)?e:(u.str(e)&&(e=w(e)||e),e instanceof NodeList||e instanceof HTMLCollection?[].slice.call(e):[e])}function $(e,n){return e.some((function(e){return e===n}))}function x(e){var n={};for(var t in e)n[t]=e[t];return n}function S(e,n){var t=x(e);for(var o in e)t[o]=n.hasOwnProperty(o)?n[o]:e[o];return t}function _(e,n){var t=x(e);for(var o in n)t[o]=u.und(e[o])?n[o]:e[o];return t}function j(e){return u.rgb(e)?(t=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(n=e))?"rgba("+t[1]+",1)":n:u.hex(e)?function(e){var n=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,n,t,o){return n+n+t+t+o+o})),t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n);return"rgba("+parseInt(t[1],16)+","+parseInt(t[2],16)+","+parseInt(t[3],16)+",1)"}(e):u.hsl(e)?function(e){var n,t,o,r=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e),a=parseInt(r[1],10)/360,i=parseInt(r[2],10)/100,s=parseInt(r[3],10)/100,l=r[4]||1;function c(e,n,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?e+6*(n-e)*t:t<.5?n:t<2/3?e+(n-e)*(2/3-t)*6:e}if(0==i)n=t=o=s;else{var u=s<.5?s*(1+i):s+i-s*i,d=2*s-u;n=c(d,u,a+1/3),t=c(d,u,a),o=c(d,u,a-1/3)}return"rgba("+255*n+","+255*t+","+255*o+","+l+")"}(e):void 0;var n,t}function T(e){var n=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e);if(n)return n[1]}function L(e,n){return u.fnc(e)?e(n.target,n.id,n.total):e}function O(e,n){return e.getAttribute(n)}function q(e,n,t){if($([t,"deg","rad","turn"],T(n)))return n;var o=i.CSS[n+t];if(!u.und(o))return o;var r=document.createElement(e.tagName),a=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;a.appendChild(r),r.style.position="absolute",r.style.width=100+t;var s=100/r.offsetWidth;a.removeChild(r);var l=s*parseFloat(n);return i.CSS[n+t]=l,l}function M(e,n,t){if(n in e.style){var o=n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=e.style[n]||getComputedStyle(e).getPropertyValue(o)||"0";return t?q(e,r,t):r}}function N(e,n){return u.dom(e)&&!u.inp(e)&&(O(e,n)||u.svg(e)&&e[n])?"attribute":u.dom(e)&&$(a,n)?"transform":u.dom(e)&&"transform"!==n&&M(e,n)?"css":null!=e[n]?"object":void 0}function E(e){if(u.dom(e)){for(var n,t=e.style.transform||"",o=/(\w+)\(([^)]*)\)/g,r=new Map;n=o.exec(t);)r.set(n[1],n[2]);return r}}function I(e,n,t,o){var r=l(n,"scale")?1:0+function(e){return l(e,"translate")||"perspective"===e?"px":l(e,"rotate")||l(e,"skew")?"deg":void 0}(n),a=E(e).get(n)||r;return t&&(t.transforms.list.set(n,a),t.transforms.last=n),o?q(e,a,o):a}function D(e,n,t,o){switch(N(e,n)){case"transform":return I(e,n,o,t);case"css":return M(e,n,t);case"attribute":return O(e,n);default:return e[n]||0}}function A(e,n){var t=/^(\*=|\+=|-=)/.exec(e);if(!t)return e;var o=T(e)||0,r=parseFloat(n),a=parseFloat(e.replace(t[0],""));switch(t[0][0]){case"+":return r+a+o;case"-":return r-a+o;case"*":return r*a+o}}function B(e,n){if(u.col(e))return j(e);if(/\s/g.test(e))return e;var t=T(e),o=t?e.substr(0,e.length-t.length):e;return n?o+n:o}function P(e,n){return Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2))}function F(e){for(var n,t=e.points,o=0,r=0;r<t.numberOfItems;r++){var a=t.getItem(r);r>0&&(o+=P(n,a)),n=a}return o}function H(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return function(e){return 2*Math.PI*O(e,"r")}(e);case"rect":return function(e){return 2*O(e,"width")+2*O(e,"height")}(e);case"line":return function(e){return P({x:O(e,"x1"),y:O(e,"y1")},{x:O(e,"x2"),y:O(e,"y2")})}(e);case"polyline":return F(e);case"polygon":return function(e){var n=e.points;return F(e)+P(n.getItem(n.numberOfItems-1),n.getItem(0))}(e)}}function z(e,n){var t=n||{},o=t.el||function(e){for(var n=e.parentNode;u.svg(n)&&u.svg(n.parentNode);)n=n.parentNode;return n}(e),r=o.getBoundingClientRect(),a=O(o,"viewBox"),i=r.width,s=r.height,l=t.viewBox||(a?a.split(" "):[0,0,i,s]);return{el:o,viewBox:l,x:l[0]/1,y:l[1]/1,w:i/l[2],h:s/l[3]}}function R(e,n){function t(t){void 0===t&&(t=0);var o=n+t>=1?n+t:0;return e.el.getPointAtLength(o)}var o=z(e.el,e.svg),r=t(),a=t(-1),i=t(1);switch(e.property){case"x":return(r.x-o.x)*o.w;case"y":return(r.y-o.y)*o.h;case"angle":return 180*Math.atan2(i.y-a.y,i.x-a.x)/Math.PI}}function Q(e,n){var t=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?/g,o=B(u.pth(e)?e.totalLength:e,n)+"";return{original:o,numbers:o.match(t)?o.match(t).map(Number):[0],strings:u.str(e)||n?o.split(t):[]}}function Y(e){return C(e?y(u.arr(e)?e.map(k):k(e)):[],(function(e,n,t){return t.indexOf(e)===n}))}function U(e){var n=Y(e);return n.map((function(e,t){return{target:e,id:t,total:n.length,transforms:{list:E(e)}}}))}function V(e,n){var t=x(n);if(/^spring/.test(t.easing)&&(t.duration=f(t.easing)),u.arr(e)){var o=e.length;2===o&&!u.obj(e[0])?e={value:e}:u.fnc(n.duration)||(t.duration=n.duration/o)}var r=u.arr(e)?e:[e];return r.map((function(e,t){var o=u.obj(e)&&!u.pth(e)?e:{value:e};return u.und(o.delay)&&(o.delay=t?0:n.delay),u.und(o.endDelay)&&(o.endDelay=t===r.length-1?n.endDelay:0),o})).map((function(e){return _(e,t)}))}function X(e,n){var t=[],o=n.keyframes;for(var r in o&&(n=_(function(e){for(var n=C(y(e.map((function(e){return Object.keys(e)}))),(function(e){return u.key(e)})).reduce((function(e,n){return e.indexOf(n)<0&&e.push(n),e}),[]),t={},o=function(o){var r=n[o];t[r]=e.map((function(e){var n={};for(var t in e)u.key(t)?t==r&&(n.value=e[t]):n[t]=e[t];return n}))},r=0;r<n.length;r++)o(r);return t}(o),n)),n)u.key(r)&&t.push({name:r,tweens:V(n[r],e)});return t}function Z(e,n){var t;return e.tweens.map((function(o){var r=function(e,n){var t={};for(var o in e){var r=L(e[o],n);u.arr(r)&&1===(r=r.map((function(e){return L(e,n)}))).length&&(r=r[0]),t[o]=r}return t.duration=parseFloat(t.duration),t.delay=parseFloat(t.delay),t}(o,n),a=r.value,i=u.arr(a)?a[1]:a,s=T(i),l=D(n.target,e.name,s,n),c=t?t.to.original:l,d=u.arr(a)?a[0]:c,f=T(d)||T(l),p=s||f;return u.und(i)&&(i=c),r.from=Q(d,p),r.to=Q(A(i,d),p),r.start=t?t.end:0,r.end=r.start+r.delay+r.duration+r.endDelay,r.easing=b(r.easing,r.duration),r.isPath=u.pth(a),r.isColor=u.col(r.from.original),r.isColor&&(r.round=1),t=r,r}))}var W={css:function(e,n,t){return e.style[n]=t},attribute:function(e,n,t){return e.setAttribute(n,t)},object:function(e,n,t){return e[n]=t},transform:function(e,n,t,o,r){if(o.list.set(n,t),n===o.last||r){var a="";o.list.forEach((function(e,n){a+=n+"("+e+") "})),e.style.transform=a}}};function J(e,n){U(e).forEach((function(e){for(var t in n){var o=L(n[t],e),r=e.target,a=T(o),i=D(r,t,a,e),s=A(B(o,a||T(i)),i),l=N(r,t);W[l](r,t,s,e.transforms,!0)}}))}function G(e,n){return C(y(e.map((function(e){return n.map((function(n){return function(e,n){var t=N(e.target,n.name);if(t){var o=Z(n,e),r=o[o.length-1];return{type:t,property:n.name,animatable:e,tweens:o,duration:r.end,delay:o[0].delay,endDelay:r.endDelay}}}(e,n)}))}))),(function(e){return!u.und(e)}))}function K(e,n){var t=e.length,o=function(e){return e.timelineOffset?e.timelineOffset:0},r={};return r.duration=t?Math.max.apply(Math,e.map((function(e){return o(e)+e.duration}))):n.duration,r.delay=t?Math.min.apply(Math,e.map((function(e){return o(e)+e.delay}))):n.delay,r.endDelay=t?r.duration-Math.max.apply(Math,e.map((function(e){return o(e)+e.duration-e.endDelay}))):n.endDelay,r}var ee=0;var ne,te=[],oe=[],re=function(){function e(){ne=requestAnimationFrame(n)}function n(n){var t=te.length;if(t){for(var o=0;o<t;){var r=te[o];if(r.paused){var a=te.indexOf(r);a>-1&&(te.splice(a,1),t=te.length)}else r.tick(n);o++}e()}else ne=cancelAnimationFrame(ne)}return e}();function ae(e){void 0===e&&(e={});var n,t=0,a=0,i=0,l=0,c=null;function u(e){var n=window.Promise&&new Promise((function(e){return c=e}));return e.finished=n,n}var d=function(e){var n=S(o,e),t=S(r,e),a=X(t,e),i=U(e.targets),s=G(i,a),l=K(s,t),c=ee;return ee++,_(n,{id:c,children:[],animatables:i,animations:s,duration:l.duration,delay:l.delay,endDelay:l.endDelay})}(e);u(d);function f(){var e=d.direction;"alternate"!==e&&(d.direction="normal"!==e?"normal":"reverse"),d.reversed=!d.reversed,n.forEach((function(e){return e.reversed=d.reversed}))}function p(e){return d.reversed?d.duration-e:e}function m(){t=0,a=p(d.currentTime)*(1/ae.speed)}function v(e,n){n&&n.seek(e-n.timelineOffset)}function h(e){for(var n=0,t=d.animations,o=t.length;n<o;){var r=t[n],a=r.animatable,i=r.tweens,l=i.length-1,c=i[l];l&&(c=C(i,(function(n){return e<n.end}))[0]||c);for(var u=s(e-c.start-c.delay,0,c.duration)/c.duration,f=isNaN(u)?1:c.easing(u),p=c.to.strings,m=c.round,v=[],h=c.to.numbers.length,g=void 0,b=0;b<h;b++){var w=void 0,y=c.to.numbers[b],k=c.from.numbers[b]||0;w=c.isPath?R(c.value,f*y):k+f*(y-k),m&&(c.isColor&&b>2||(w=Math.round(w*m)/m)),v.push(w)}var $=p.length;if($){g=p[0];for(var x=0;x<$;x++){p[x];var S=p[x+1],_=v[x];isNaN(_)||(g+=S?_+S:_+" ")}}else g=v[0];W[r.type](a.target,r.property,g,a.transforms),r.currentValue=g,n++}}function g(e){d[e]&&!d.passThrough&&d[e](d)}function b(e){var o=d.duration,r=d.delay,m=o-d.endDelay,b=p(e);d.progress=s(b/o*100,0,100),d.reversePlayback=b<d.currentTime,n&&function(e){if(d.reversePlayback)for(var t=l;t--;)v(e,n[t]);else for(var o=0;o<l;o++)v(e,n[o])}(b),!d.began&&d.currentTime>0&&(d.began=!0,g("begin")),!d.loopBegan&&d.currentTime>0&&(d.loopBegan=!0,g("loopBegin")),b<=r&&0!==d.currentTime&&h(0),(b>=m&&d.currentTime!==o||!o)&&h(o),b>r&&b<m?(d.changeBegan||(d.changeBegan=!0,d.changeCompleted=!1,g("changeBegin")),g("change"),h(b)):d.changeBegan&&(d.changeCompleted=!0,d.changeBegan=!1,g("changeComplete")),d.currentTime=s(b,0,o),d.began&&g("update"),e>=o&&(a=0,d.remaining&&!0!==d.remaining&&d.remaining--,d.remaining?(t=i,g("loopComplete"),d.loopBegan=!1,"alternate"===d.direction&&f()):(d.paused=!0,d.completed||(d.completed=!0,g("loopComplete"),g("complete"),!d.passThrough&&"Promise"in window&&(c(),u(d)))))}return d.reset=function(){var e=d.direction;d.passThrough=!1,d.currentTime=0,d.progress=0,d.paused=!0,d.began=!1,d.loopBegan=!1,d.changeBegan=!1,d.completed=!1,d.changeCompleted=!1,d.reversePlayback=!1,d.reversed="reverse"===e,d.remaining=d.loop,n=d.children;for(var t=l=n.length;t--;)d.children[t].reset();(d.reversed&&!0!==d.loop||"alternate"===e&&1===d.loop)&&d.remaining++,h(d.reversed?d.duration:0)},d.set=function(e,n){return J(e,n),d},d.tick=function(e){i=e,t||(t=i),b((i+(a-t))*ae.speed)},d.seek=function(e){b(p(e))},d.pause=function(){d.paused=!0,m()},d.play=function(){d.paused&&(d.completed&&d.reset(),d.paused=!1,te.push(d),m(),ne||re())},d.reverse=function(){f(),d.completed=!d.reversed,m()},d.restart=function(){d.reset(),d.play()},d.reset(),d.autoplay&&d.play(),d}function ie(e,n){for(var t=n.length;t--;)$(e,n[t].animatable.target)&&n.splice(t,1)}"undefined"!=typeof document&&document.addEventListener("visibilitychange",(function(){document.hidden?(te.forEach((function(e){return e.pause()})),oe=te.slice(0),ae.running=te=[]):oe.forEach((function(e){return e.play()}))})),ae.version="3.2.0",ae.speed=1,ae.running=te,ae.remove=function(e){for(var n=Y(e),t=te.length;t--;){var o=te[t],r=o.animations,a=o.children;ie(n,r);for(var i=a.length;i--;){var s=a[i],l=s.animations;ie(n,l),l.length||s.children.length||a.splice(i,1)}r.length||a.length||o.pause()}},ae.get=D,ae.set=J,ae.convertPx=q,ae.path=function(e,n){var t=u.str(e)?w(e)[0]:e,o=n||100;return function(e){return{property:e,el:t,svg:z(t),totalLength:H(t)*(o/100)}}},ae.setDashoffset=function(e){var n=H(e);return e.setAttribute("stroke-dasharray",n),n},ae.stagger=function(e,n){void 0===n&&(n={});var t=n.direction||"normal",o=n.easing?b(n.easing):null,r=n.grid,a=n.axis,i=n.from||0,s="first"===i,l="center"===i,c="last"===i,d=u.arr(e),f=d?parseFloat(e[0]):parseFloat(e),p=d?parseFloat(e[1]):0,m=T(d?e[1]:e)||0,v=n.start||0+(d?f:0),h=[],g=0;return function(e,n,u){if(s&&(i=0),l&&(i=(u-1)/2),c&&(i=u-1),!h.length){for(var b=0;b<u;b++){if(r){var w=l?(r[0]-1)/2:i%r[0],C=l?(r[1]-1)/2:Math.floor(i/r[0]),y=w-b%r[0],k=C-Math.floor(b/r[0]),$=Math.sqrt(y*y+k*k);"x"===a&&($=-y),"y"===a&&($=-k),h.push($)}else h.push(Math.abs(i-b));g=Math.max.apply(Math,h)}o&&(h=h.map((function(e){return o(e/g)*g}))),"reverse"===t&&(h=h.map((function(e){return a?e<0?-1*e:-e:Math.abs(g-e)})))}return v+(d?(p-f)/g:f)*(Math.round(100*h[n])/100)+m}},ae.timeline=function(e){void 0===e&&(e={});var n=ae(e);return n.duration=0,n.add=function(t,o){var a=te.indexOf(n),i=n.children;function s(e){e.passThrough=!0}a>-1&&te.splice(a,1);for(var l=0;l<i.length;l++)s(i[l]);var c=_(t,S(r,e));c.targets=c.targets||e.targets;var d=n.duration;c.autoplay=!1,c.direction=n.direction,c.timelineOffset=u.und(o)?d:A(o,d),s(n),n.seek(c.timelineOffset);var f=ae(c);s(f),i.push(f);var p=K(i,e);return n.delay=p.delay,n.endDelay=p.endDelay,n.duration=p.duration,n.seek(0),n.reset(),n.autoplay&&n.play(),n},n},ae.easing=b,ae.penner=g,ae.random=function(e,n){return Math.floor(Math.random()*(n-e+1))+e},e.exports=ae},function(e,n,t){(function(o){var r,a,i,s;s=void 0!==o?o:this.window||this.global,a=[],r=function(e){"use strict";var n,o,r,a=t(9),i={},s={},l=t(10),c=t(11),u=t(12),d=!!(e&&e.document&&e.document.querySelector&&e.addEventListener);if("undefined"!=typeof window||d){var f=Object.prototype.hasOwnProperty;return s.destroy=function(){if(!i.skipRendering)try{document.querySelector(i.tocSelector).innerHTML=""}catch(e){console.warn("Element not found: "+i.tocSelector)}i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).removeEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).removeEventListener("resize",this._scrollListener,!1),n&&document.querySelector(i.scrollContainer).removeEventListener("click",this._clickListener,!1)):(document.removeEventListener("scroll",this._scrollListener,!1),document.removeEventListener("resize",this._scrollListener,!1),n&&document.removeEventListener("click",this._clickListener,!1))},s.init=function(e){if(d&&(i=function(){for(var e={},n=0;n<arguments.length;n++){var t=arguments[n];for(var o in t)f.call(t,o)&&(e[o]=t[o])}return e}(a,e||{}),this.options=i,this.state={},i.scrollSmooth&&(i.duration=i.scrollSmoothDuration,i.offset=i.scrollSmoothOffset,s.scrollSmooth=t(13).initSmoothScrolling(i)),n=l(i),o=c(i),this._buildHtml=n,this._parseContent=o,s.destroy(),null!==(r=o.selectHeadings(i.contentSelector,i.headingSelector)))){var m=o.nestHeadingsArray(r).nest;i.skipRendering||n.render(i.tocSelector,m),this._scrollListener=p((function(e){n.updateToc(r),!i.disableTocScrollSync&&u(i);var t=e&&e.target&&e.target.scrollingElement&&0===e.target.scrollingElement.scrollTop;(e&&(0===e.eventPhase||null===e.currentTarget)||t)&&(n.updateToc(r),i.scrollEndCallback&&i.scrollEndCallback(e))}),i.throttleTimeout),this._scrollListener(),i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).addEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).addEventListener("resize",this._scrollListener,!1)):(document.addEventListener("scroll",this._scrollListener,!1),document.addEventListener("resize",this._scrollListener,!1));var v=null;return this._clickListener=p((function(e){i.scrollSmooth&&n.disableTocAnimation(e),n.updateToc(r),v&&clearTimeout(v),v=setTimeout((function(){n.enableTocAnimation()}),i.scrollSmoothDuration)}),i.throttleTimeout),i.scrollContainer&&document.querySelector(i.scrollContainer)?document.querySelector(i.scrollContainer).addEventListener("click",this._clickListener,!1):document.addEventListener("click",this._clickListener,!1),this}},s.refresh=function(e){s.destroy(),s.init(e||this.options)},e.tocbot=s,s}function p(e,n,t){var o,r;return n||(n=250),function(){var a=t||this,i=+new Date,s=arguments;o&&i<o+n?(clearTimeout(r),r=setTimeout((function(){o=i,e.apply(a,s)}),n)):(o=i,e.apply(a,s))}}}(s),void 0===(i="function"==typeof r?r.apply(n,a):r)||(e.exports=i)}).call(this,t(8))},function(e,n){var t;t=function(){return this}();try{t=t||new Function("return this")()}catch(e){"object"==typeof window&&(t=window)}e.exports=t},function(e,n){e.exports={tocSelector:".js-toc",contentSelector:".js-toc-content",headingSelector:"h1, h2, h3",ignoreSelector:".js-toc-ignore",hasInnerContainers:!1,linkClass:"toc-link",extraLinkClasses:"",activeLinkClass:"is-active-link",listClass:"toc-list",extraListClasses:"",isCollapsedClass:"is-collapsed",collapsibleClass:"is-collapsible",listItemClass:"toc-list-item",activeListItemClass:"is-active-li",collapseDepth:0,scrollSmooth:!0,scrollSmoothDuration:420,scrollSmoothOffset:0,scrollEndCallback:function(e){},headingsOffset:1,throttleTimeout:50,positionFixedSelector:null,positionFixedClass:"is-position-fixed",fixedSidebarOffset:"auto",includeHtml:!1,onClick:function(e){},orderedList:!0,scrollContainer:null,skipRendering:!1,headingLabelCallback:!1,ignoreHiddenElements:!1,headingObjectCallback:null,basePath:"",disableTocScrollSync:!1}},function(e,n){e.exports=function(e){var n=[].forEach,t=[].some,o=document.body,r=!0;function a(t,o){var r=o.appendChild(function(t){var o=document.createElement("li"),r=document.createElement("a");e.listItemClass&&o.setAttribute("class",e.listItemClass);e.onClick&&(r.onclick=e.onClick);e.includeHtml&&t.childNodes.length?n.call(t.childNodes,(function(e){r.appendChild(e.cloneNode(!0))})):r.textContent=t.textContent;return r.setAttribute("href",e.basePath+"#"+t.id),r.setAttribute("class",e.linkClass+" node-name--"+t.nodeName+" "+e.extraLinkClasses),o.appendChild(r),o}(t));if(t.children.length){var s=i(t.isCollapsed);t.children.forEach((function(e){a(e,s)})),r.appendChild(s)}}function i(n){var t=e.orderedList?"ol":"ul",o=document.createElement(t),r=e.listClass+" "+e.extraListClasses;return n&&(r+=" "+e.collapsibleClass,r+=" "+e.isCollapsedClass),o.setAttribute("class",r),o}return{enableTocAnimation:function(){r=!0},disableTocAnimation:function(n){var t=n.target||n.srcElement;"string"==typeof t.className&&-1!==t.className.indexOf(e.linkClass)&&(r=!1)},render:function(e,n){var t=i(!1);n.forEach((function(e){a(e,t)}));var o=document.querySelector(e);if(null!==o)return o.firstChild&&o.removeChild(o.firstChild),0===n.length?o:o.appendChild(t)},updateToc:function(a){var i;i=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop,e.positionFixedSelector&&function(){var n;n=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop;var t=document.querySelector(e.positionFixedSelector);"auto"===e.fixedSidebarOffset&&(e.fixedSidebarOffset=document.querySelector(e.tocSelector).offsetTop),n>e.fixedSidebarOffset?-1===t.className.indexOf(e.positionFixedClass)&&(t.className+=" "+e.positionFixedClass):t.className=t.className.split(" "+e.positionFixedClass).join("")}();var s,l=a;if(r&&null!==document.querySelector(e.tocSelector)&&l.length>0){t.call(l,(function(n,t){return function n(t){var o=0;return t!==document.querySelector(e.contentSelector&&null!=t)&&(o=t.offsetTop,e.hasInnerContainers&&(o+=n(t.offsetParent))),o}(n)>i+e.headingsOffset+10?(s=l[t],!0):t===l.length-1?(s=l[l.length-1],!0):void 0}));var c=document.querySelector(e.tocSelector).querySelectorAll("."+e.linkClass);n.call(c,(function(n){n.className=n.className.split(" "+e.activeLinkClass).join("")}));var u=document.querySelector(e.tocSelector).querySelectorAll("."+e.listItemClass);n.call(u,(function(n){n.className=n.className.split(" "+e.activeListItemClass).join("")}));var d=document.querySelector(e.tocSelector).querySelector("."+e.linkClass+".node-name--"+s.nodeName+'[href="'+e.basePath+"#"+s.id.replace(/([ #;&,.+*~':"!^$[\]()=>|/@])/g,"\\$1")+'"]');-1===d.className.indexOf(e.activeLinkClass)&&(d.className+=" "+e.activeLinkClass);var f=d.parentNode;f&&-1===f.className.indexOf(e.activeListItemClass)&&(f.className+=" "+e.activeListItemClass);var p=document.querySelector(e.tocSelector).querySelectorAll("."+e.listClass+"."+e.collapsibleClass);n.call(p,(function(n){-1===n.className.indexOf(e.isCollapsedClass)&&(n.className+=" "+e.isCollapsedClass)})),d.nextSibling&&-1!==d.nextSibling.className.indexOf(e.isCollapsedClass)&&(d.nextSibling.className=d.nextSibling.className.split(" "+e.isCollapsedClass).join("")),function n(t){if(-1!==t.className.indexOf(e.collapsibleClass)&&-1!==t.className.indexOf(e.isCollapsedClass))return t.className=t.className.split(" "+e.isCollapsedClass).join(""),n(t.parentNode.parentNode);return t}(d.parentNode.parentNode)}}}}},function(e,n){e.exports=function(e){var n=[].reduce;function t(e){return e[e.length-1]}function o(e){return+e.nodeName.split("H").join("")}function r(n){if(!(n instanceof window.HTMLElement))return n;if(e.ignoreHiddenElements&&(!n.offsetHeight||!n.offsetParent))return null;var t={id:n.id,children:[],nodeName:n.nodeName,headingLevel:o(n),textContent:e.headingLabelCallback?String(e.headingLabelCallback(n.textContent)):n.textContent.trim()};return e.includeHtml&&(t.childNodes=n.childNodes),e.headingObjectCallback?e.headingObjectCallback(t,n):t}return{nestHeadingsArray:function(o){return n.call(o,(function(n,o){var a=r(o);return a&&function(n,o){for(var a=r(n),i=a.headingLevel,s=o,l=t(s),c=i-(l?l.headingLevel:0);c>0;)(l=t(s))&&void 0!==l.children&&(s=l.children),c--;i>=e.collapseDepth&&(a.isCollapsed=!0),s.push(a)}(a,n.nest),n}),{nest:[]})},selectHeadings:function(n,t){var o=t;e.ignoreSelector&&(o=t.split(",").map((function(n){return n.trim()+":not("+e.ignoreSelector+")"})));try{return document.querySelector(n).querySelectorAll(o)}catch(e){return console.warn("Element not found: "+n),null}}}}},function(e,n){e.exports=function(e){var n=document.querySelector(e.tocSelector);if(n&&n.scrollHeight>n.clientHeight){var t=n.querySelector("."+e.activeListItemClass);t&&(n.scrollTop=t.offsetTop)}}},function(e,n){n.initSmoothScrolling=function(e){document.documentElement.style;var n=e.duration,t=e.offset,o=location.hash?r(location.href):location.href;function r(e){return e.slice(0,e.lastIndexOf("#"))}document.body.addEventListener("click",(function(a){var i;"a"!==(i=a.target).tagName.toLowerCase()||!(i.hash.length>0||"#"===i.href.charAt(i.href.length-1))||r(i.href)!==o&&r(i.href)+"#"!==o||a.target.className.indexOf("no-smooth-scroll")>-1||"#"===a.target.href.charAt(a.target.href.length-2)&&"!"===a.target.href.charAt(a.target.href.length-1)||-1===a.target.className.indexOf(e.linkClass)||function(e,n){var t,o,r=window.pageYOffset,a={duration:n.duration,offset:n.offset||0,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},i=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),s="string"==typeof e?a.offset+(e?i&&i.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,l="function"==typeof a.duration?a.duration(s):a.duration;function c(e){o=e-t,window.scrollTo(0,a.easing(o,r,s,l)),o<l?requestAnimationFrame(c):(window.scrollTo(0,r+s),"function"==typeof a.callback&&a.callback())}requestAnimationFrame((function(e){t=e,c(e)}))}(a.target.hash,{duration:n,offset:t,callback:function(){var e,n;e=a.target.hash,(n=document.getElementById(e.substring(1)))&&(/^(?:a|select|input|button|textarea)$/i.test(n.tagName)||(n.tabIndex=-1),n.focus())}})}),!1)}},function(e,n){$((function(){$(".result").each((function(e,n){var t=$(n),o=t.prev().find(".title"),r=$('<div class="view-result j1-viewer"><span class="btn-viewer j1-tooltip" data-toggle="tooltip" data-placement="left" title="toggle results" data-original-title="toggle results">View</span></div>');o.append(r),r.on("click",(function(e){e.preventDefault(),function(e){window.clearTimeout(void 0),e.prev().toggleClass("stacked"),e.toggle()}(t)}))}))}))}]);
|
23
|
+
e.exports=(jQuery,{init:function(e){var n=e,t=log4javascript.getLogger("j1.cookiebar"),o=j1.getCookieNames().user_state,r={},a={renewOnVisit:!1,forceShow:!1,domain:String(window.location.hostname),referrer:String(document.referrer)},i=(e=$.extend(a,n),setInterval((function(e){"finished"==j1.getState()&&(user_state_detected=j1.existsCookie(o),user_state_detected?(t.info("User state cookie found"),r=j1.readCookie(o)):t.error("User state NOT cookie found"),"accepted"==r.cookies_accepted&&$("#quickLinksCookieButton").css("display","block"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted||$("#quickLinksCookieButton").css("display","none"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted&&""!=r.cookies_accepted||$("#topFullCookieConsent").modal("show"),clearInterval(i))})))},eventHandler:function(e){var n,t=log4javascript.getLogger("cookiebar.eventHandler"),o=window.location.pathname,r=document.querySelectorAll("a.btn"),a=(j1.appDetected(),e.deleteOnDecline,e.whitelistedPages),i=(a=[],e.stopScrolling),s=j1.getCookieNames(),l=s.user_state,c={},u=j1.readCookie(l);return logText="register button click events",t.debug(logText),r.forEach((function(e,r){e.addEventListener("click",(function(e){return"policyButton"===this.id?(t.debug("user clicked policyButton"),$("#cookiePolicyInfo").toggle("fast",(function(){$("#modal-footer").toggleClass("modal-footer-hidden modal-footer-show")})),!1):"acceptButton"===this.id?(t.debug("user clicked acceptButton"),(u=j1.readCookie(l)).cookies_accepted="accepted",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","block"),!1):"declineButton"===this.id?(t.debug("user clicked declineButton"),u.cookies_accepted="declined",o=window.location.pathname,n=a.indexOf(o)>-1,t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),t.warn("delete all cookies"),j1.deleteCookie(l),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome(),!1):("revokeCookies"===this.id&&(t.debug("user clicked revokeCookiesButton"),o=window.location.pathname,n=a.indexOf(o)>-1,(u=j1.readCookie(l)).cookies_accepted="declined",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome()),"remainCookies"===this.id?(t.debug("user clicked remainCookiesButton"),!1):void 0)}))})),$(document).on("shown.bs.modal","#cookieRevokeCentralDanger",(function(){t.debug("user opened modal: cookieRevokeCentralDanger")})),$(document).on("hide.bs.modal","#cookieRevokeCentralDanger",(function(){t.debug("user closed cookieRevokeCentralDanger")})),$(document).on("shown.bs.modal","#topFullCookieConsent",(function(){i&&$("body").addClass("stop-scrolling")})),$(document).on("hide.bs.modal","#topFullCookieConsent",(function(){t.debug("user closed modal: topFullCookieConsent"),$("body").removeClass("stop-scrolling")})),logText="events registered",t.debug(logText),!0}})},function(e,n,t){"use strict";e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},e);return{scroll:function(e,n){var t,o;o="run module scrollSmooth",(t=log4javascript.getLogger("j1.scrollSmooth.core")).info(o);var r=n.duration,a=n.offset;this.scrollTo(e,{duration:r,offset:a,callback:null}),o="scrollSmooth finished",t.info(o)},scrollTo:function(e,n){var t,o,r=window.pageYOffset,a={duration:n.duration,offset:n.offset||0,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},i=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),s="string"==typeof e?a.offset+(e?i&&i.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,l="function"==typeof a.duration?a.duration(s):a.duration;function c(e){o=e-t,window.scrollTo(0,a.easing(o,r,s,l)),o<l?requestAnimationFrame(c):(window.scrollTo(0,r+s),$(window).scrollTop($(window).scrollTop()+1),$(window).scrollTop($(window).scrollTop()-1),"function"==typeof a.callback&&a.callback())}requestAnimationFrame((function(e){t=e,c(e)}))}}}(jQuery)},function(e,n,t){"use strict";var o={update:null,begin:null,loopBegin:null,changeBegin:null,change:null,changeComplete:null,loopComplete:null,complete:null,loop:1,direction:"normal",autoplay:!0,timelineOffset:0},r={duration:1e3,delay:0,endDelay:0,easing:"easeOutElastic(1, .5)",round:0},a=["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","skew","skewX","skewY","perspective","matrix","matrix3d"],i={CSS:{},springs:{}};function s(e,n,t){return Math.min(Math.max(e,n),t)}function l(e,n){return e.indexOf(n)>-1}function c(e,n){return e.apply(null,n)}var u={arr:function(e){return Array.isArray(e)},obj:function(e){return l(Object.prototype.toString.call(e),"Object")},pth:function(e){return u.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},inp:function(e){return e instanceof HTMLInputElement},dom:function(e){return e.nodeType||u.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return u.hex(e)||u.rgb(e)||u.hsl(e)},key:function(e){return!o.hasOwnProperty(e)&&!r.hasOwnProperty(e)&&"targets"!==e&&"keyframes"!==e}};function d(e){var n=/\(([^)]+)\)/.exec(e);return n?n[1].split(",").map((function(e){return parseFloat(e)})):[]}function f(e,n){var t=d(e),o=s(u.und(t[0])?1:t[0],.1,100),r=s(u.und(t[1])?100:t[1],.1,100),a=s(u.und(t[2])?10:t[2],.1,100),l=s(u.und(t[3])?0:t[3],.1,100),c=Math.sqrt(r/o),f=a/(2*Math.sqrt(r*o)),p=f<1?c*Math.sqrt(1-f*f):0,m=f<1?(f*c-l)/p:-l+c;function v(e){var t=n?n*e/1e3:e;return t=f<1?Math.exp(-t*f*c)*(1*Math.cos(p*t)+m*Math.sin(p*t)):(1+m*t)*Math.exp(-t*c),0===e||1===e?e:1-t}return n?v:function(){var n=i.springs[e];if(n)return n;for(var t=0,o=0;;)if(1===v(t+=1/6)){if(++o>=16)break}else o=0;var r=t*(1/6)*1e3;return i.springs[e]=r,r}}function p(e){return void 0===e&&(e=10),function(n){return Math.ceil(s(n,1e-6,1)*e)*(1/e)}}var m,v,h=function(){function e(e,n){return 1-3*n+3*e}function n(e,n){return 3*n-6*e}function t(e){return 3*e}function o(o,r,a){return((e(r,a)*o+n(r,a))*o+t(r))*o}function r(o,r,a){return 3*e(r,a)*o*o+2*n(r,a)*o+t(r)}return function(e,n,t,a){if(0<=e&&e<=1&&0<=t&&t<=1){var i=new Float32Array(11);if(e!==n||t!==a)for(var s=0;s<11;++s)i[s]=o(.1*s,e,t);return function(r){return e===n&&t===a||0===r||1===r?r:o(l(r),n,a)}}function l(n){for(var a=0,s=1;10!==s&&i[s]<=n;++s)a+=.1;--s;var l=a+.1*((n-i[s])/(i[s+1]-i[s])),c=r(l,e,t);return c>=.001?function(e,n,t,a){for(var i=0;i<4;++i){var s=r(n,t,a);if(0===s)return n;n-=(o(n,t,a)-e)/s}return n}(n,l,e,t):0===c?l:function(e,n,t,r,a){var i,s,l=0;do{(i=o(s=n+(t-n)/2,r,a)-e)>0?t=s:n=s}while(Math.abs(i)>1e-7&&++l<10);return s}(n,a,a+.1,e,t)}}}(),g=(m={linear:function(){return function(e){return e}}},v={Sine:function(){return function(e){return 1-Math.cos(e*Math.PI/2)}},Circ:function(){return function(e){return 1-Math.sqrt(1-e*e)}},Back:function(){return function(e){return e*e*(3*e-2)}},Bounce:function(){return function(e){for(var n,t=4;e<((n=Math.pow(2,--t))-1)/11;);return 1/Math.pow(4,3-t)-7.5625*Math.pow((3*n-2)/22-e,2)}},Elastic:function(e,n){void 0===e&&(e=1),void 0===n&&(n=.5);var t=s(e,1,10),o=s(n,.1,2);return function(e){return 0===e||1===e?e:-t*Math.pow(2,10*(e-1))*Math.sin((e-1-o/(2*Math.PI)*Math.asin(1/t))*(2*Math.PI)/o)}}},["Quad","Cubic","Quart","Quint","Expo"].forEach((function(e,n){v[e]=function(){return function(e){return Math.pow(e,n+2)}}})),Object.keys(v).forEach((function(e){var n=v[e];m["easeIn"+e]=n,m["easeOut"+e]=function(e,t){return function(o){return 1-n(e,t)(1-o)}},m["easeInOut"+e]=function(e,t){return function(o){return o<.5?n(e,t)(2*o)/2:1-n(e,t)(-2*o+2)/2}}})),m);function b(e,n){if(u.fnc(e))return e;var t=e.split("(")[0],o=g[t],r=d(e);switch(t){case"spring":return f(e,n);case"cubicBezier":return c(h,r);case"steps":return c(p,r);default:return c(o,r)}}function w(e){try{return document.querySelectorAll(e)}catch(e){return}}function C(e,n){for(var t=e.length,o=arguments.length>=2?arguments[1]:void 0,r=[],a=0;a<t;a++)if(a in e){var i=e[a];n.call(o,i,a,e)&&r.push(i)}return r}function y(e){return e.reduce((function(e,n){return e.concat(u.arr(n)?y(n):n)}),[])}function k(e){return u.arr(e)?e:(u.str(e)&&(e=w(e)||e),e instanceof NodeList||e instanceof HTMLCollection?[].slice.call(e):[e])}function $(e,n){return e.some((function(e){return e===n}))}function x(e){var n={};for(var t in e)n[t]=e[t];return n}function S(e,n){var t=x(e);for(var o in e)t[o]=n.hasOwnProperty(o)?n[o]:e[o];return t}function _(e,n){var t=x(e);for(var o in n)t[o]=u.und(e[o])?n[o]:e[o];return t}function j(e){return u.rgb(e)?(t=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(n=e))?"rgba("+t[1]+",1)":n:u.hex(e)?function(e){var n=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,n,t,o){return n+n+t+t+o+o})),t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n);return"rgba("+parseInt(t[1],16)+","+parseInt(t[2],16)+","+parseInt(t[3],16)+",1)"}(e):u.hsl(e)?function(e){var n,t,o,r=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e),a=parseInt(r[1],10)/360,i=parseInt(r[2],10)/100,s=parseInt(r[3],10)/100,l=r[4]||1;function c(e,n,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?e+6*(n-e)*t:t<.5?n:t<2/3?e+(n-e)*(2/3-t)*6:e}if(0==i)n=t=o=s;else{var u=s<.5?s*(1+i):s+i-s*i,d=2*s-u;n=c(d,u,a+1/3),t=c(d,u,a),o=c(d,u,a-1/3)}return"rgba("+255*n+","+255*t+","+255*o+","+l+")"}(e):void 0;var n,t}function T(e){var n=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e);if(n)return n[1]}function L(e,n){return u.fnc(e)?e(n.target,n.id,n.total):e}function O(e,n){return e.getAttribute(n)}function q(e,n,t){if($([t,"deg","rad","turn"],T(n)))return n;var o=i.CSS[n+t];if(!u.und(o))return o;var r=document.createElement(e.tagName),a=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;a.appendChild(r),r.style.position="absolute",r.style.width=100+t;var s=100/r.offsetWidth;a.removeChild(r);var l=s*parseFloat(n);return i.CSS[n+t]=l,l}function M(e,n,t){if(n in e.style){var o=n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=e.style[n]||getComputedStyle(e).getPropertyValue(o)||"0";return t?q(e,r,t):r}}function N(e,n){return u.dom(e)&&!u.inp(e)&&(O(e,n)||u.svg(e)&&e[n])?"attribute":u.dom(e)&&$(a,n)?"transform":u.dom(e)&&"transform"!==n&&M(e,n)?"css":null!=e[n]?"object":void 0}function E(e){if(u.dom(e)){for(var n,t=e.style.transform||"",o=/(\w+)\(([^)]*)\)/g,r=new Map;n=o.exec(t);)r.set(n[1],n[2]);return r}}function I(e,n,t,o){var r=l(n,"scale")?1:0+function(e){return l(e,"translate")||"perspective"===e?"px":l(e,"rotate")||l(e,"skew")?"deg":void 0}(n),a=E(e).get(n)||r;return t&&(t.transforms.list.set(n,a),t.transforms.last=n),o?q(e,a,o):a}function D(e,n,t,o){switch(N(e,n)){case"transform":return I(e,n,o,t);case"css":return M(e,n,t);case"attribute":return O(e,n);default:return e[n]||0}}function A(e,n){var t=/^(\*=|\+=|-=)/.exec(e);if(!t)return e;var o=T(e)||0,r=parseFloat(n),a=parseFloat(e.replace(t[0],""));switch(t[0][0]){case"+":return r+a+o;case"-":return r-a+o;case"*":return r*a+o}}function B(e,n){if(u.col(e))return j(e);if(/\s/g.test(e))return e;var t=T(e),o=t?e.substr(0,e.length-t.length):e;return n?o+n:o}function P(e,n){return Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2))}function F(e){for(var n,t=e.points,o=0,r=0;r<t.numberOfItems;r++){var a=t.getItem(r);r>0&&(o+=P(n,a)),n=a}return o}function H(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return function(e){return 2*Math.PI*O(e,"r")}(e);case"rect":return function(e){return 2*O(e,"width")+2*O(e,"height")}(e);case"line":return function(e){return P({x:O(e,"x1"),y:O(e,"y1")},{x:O(e,"x2"),y:O(e,"y2")})}(e);case"polyline":return F(e);case"polygon":return function(e){var n=e.points;return F(e)+P(n.getItem(n.numberOfItems-1),n.getItem(0))}(e)}}function z(e,n){var t=n||{},o=t.el||function(e){for(var n=e.parentNode;u.svg(n)&&u.svg(n.parentNode);)n=n.parentNode;return n}(e),r=o.getBoundingClientRect(),a=O(o,"viewBox"),i=r.width,s=r.height,l=t.viewBox||(a?a.split(" "):[0,0,i,s]);return{el:o,viewBox:l,x:l[0]/1,y:l[1]/1,w:i/l[2],h:s/l[3]}}function R(e,n){function t(t){void 0===t&&(t=0);var o=n+t>=1?n+t:0;return e.el.getPointAtLength(o)}var o=z(e.el,e.svg),r=t(),a=t(-1),i=t(1);switch(e.property){case"x":return(r.x-o.x)*o.w;case"y":return(r.y-o.y)*o.h;case"angle":return 180*Math.atan2(i.y-a.y,i.x-a.x)/Math.PI}}function Q(e,n){var t=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?/g,o=B(u.pth(e)?e.totalLength:e,n)+"";return{original:o,numbers:o.match(t)?o.match(t).map(Number):[0],strings:u.str(e)||n?o.split(t):[]}}function Y(e){return C(e?y(u.arr(e)?e.map(k):k(e)):[],(function(e,n,t){return t.indexOf(e)===n}))}function U(e){var n=Y(e);return n.map((function(e,t){return{target:e,id:t,total:n.length,transforms:{list:E(e)}}}))}function V(e,n){var t=x(n);if(/^spring/.test(t.easing)&&(t.duration=f(t.easing)),u.arr(e)){var o=e.length;2===o&&!u.obj(e[0])?e={value:e}:u.fnc(n.duration)||(t.duration=n.duration/o)}var r=u.arr(e)?e:[e];return r.map((function(e,t){var o=u.obj(e)&&!u.pth(e)?e:{value:e};return u.und(o.delay)&&(o.delay=t?0:n.delay),u.und(o.endDelay)&&(o.endDelay=t===r.length-1?n.endDelay:0),o})).map((function(e){return _(e,t)}))}function X(e,n){var t=[],o=n.keyframes;for(var r in o&&(n=_(function(e){for(var n=C(y(e.map((function(e){return Object.keys(e)}))),(function(e){return u.key(e)})).reduce((function(e,n){return e.indexOf(n)<0&&e.push(n),e}),[]),t={},o=function(o){var r=n[o];t[r]=e.map((function(e){var n={};for(var t in e)u.key(t)?t==r&&(n.value=e[t]):n[t]=e[t];return n}))},r=0;r<n.length;r++)o(r);return t}(o),n)),n)u.key(r)&&t.push({name:r,tweens:V(n[r],e)});return t}function Z(e,n){var t;return e.tweens.map((function(o){var r=function(e,n){var t={};for(var o in e){var r=L(e[o],n);u.arr(r)&&1===(r=r.map((function(e){return L(e,n)}))).length&&(r=r[0]),t[o]=r}return t.duration=parseFloat(t.duration),t.delay=parseFloat(t.delay),t}(o,n),a=r.value,i=u.arr(a)?a[1]:a,s=T(i),l=D(n.target,e.name,s,n),c=t?t.to.original:l,d=u.arr(a)?a[0]:c,f=T(d)||T(l),p=s||f;return u.und(i)&&(i=c),r.from=Q(d,p),r.to=Q(A(i,d),p),r.start=t?t.end:0,r.end=r.start+r.delay+r.duration+r.endDelay,r.easing=b(r.easing,r.duration),r.isPath=u.pth(a),r.isColor=u.col(r.from.original),r.isColor&&(r.round=1),t=r,r}))}var W={css:function(e,n,t){return e.style[n]=t},attribute:function(e,n,t){return e.setAttribute(n,t)},object:function(e,n,t){return e[n]=t},transform:function(e,n,t,o,r){if(o.list.set(n,t),n===o.last||r){var a="";o.list.forEach((function(e,n){a+=n+"("+e+") "})),e.style.transform=a}}};function J(e,n){U(e).forEach((function(e){for(var t in n){var o=L(n[t],e),r=e.target,a=T(o),i=D(r,t,a,e),s=A(B(o,a||T(i)),i),l=N(r,t);W[l](r,t,s,e.transforms,!0)}}))}function G(e,n){return C(y(e.map((function(e){return n.map((function(n){return function(e,n){var t=N(e.target,n.name);if(t){var o=Z(n,e),r=o[o.length-1];return{type:t,property:n.name,animatable:e,tweens:o,duration:r.end,delay:o[0].delay,endDelay:r.endDelay}}}(e,n)}))}))),(function(e){return!u.und(e)}))}function K(e,n){var t=e.length,o=function(e){return e.timelineOffset?e.timelineOffset:0},r={};return r.duration=t?Math.max.apply(Math,e.map((function(e){return o(e)+e.duration}))):n.duration,r.delay=t?Math.min.apply(Math,e.map((function(e){return o(e)+e.delay}))):n.delay,r.endDelay=t?r.duration-Math.max.apply(Math,e.map((function(e){return o(e)+e.duration-e.endDelay}))):n.endDelay,r}var ee=0;var ne,te=[],oe=[],re=function(){function e(){ne=requestAnimationFrame(n)}function n(n){var t=te.length;if(t){for(var o=0;o<t;){var r=te[o];if(r.paused){var a=te.indexOf(r);a>-1&&(te.splice(a,1),t=te.length)}else r.tick(n);o++}e()}else ne=cancelAnimationFrame(ne)}return e}();function ae(e){void 0===e&&(e={});var n,t=0,a=0,i=0,l=0,c=null;function u(e){var n=window.Promise&&new Promise((function(e){return c=e}));return e.finished=n,n}var d=function(e){var n=S(o,e),t=S(r,e),a=X(t,e),i=U(e.targets),s=G(i,a),l=K(s,t),c=ee;return ee++,_(n,{id:c,children:[],animatables:i,animations:s,duration:l.duration,delay:l.delay,endDelay:l.endDelay})}(e);u(d);function f(){var e=d.direction;"alternate"!==e&&(d.direction="normal"!==e?"normal":"reverse"),d.reversed=!d.reversed,n.forEach((function(e){return e.reversed=d.reversed}))}function p(e){return d.reversed?d.duration-e:e}function m(){t=0,a=p(d.currentTime)*(1/ae.speed)}function v(e,n){n&&n.seek(e-n.timelineOffset)}function h(e){for(var n=0,t=d.animations,o=t.length;n<o;){var r=t[n],a=r.animatable,i=r.tweens,l=i.length-1,c=i[l];l&&(c=C(i,(function(n){return e<n.end}))[0]||c);for(var u=s(e-c.start-c.delay,0,c.duration)/c.duration,f=isNaN(u)?1:c.easing(u),p=c.to.strings,m=c.round,v=[],h=c.to.numbers.length,g=void 0,b=0;b<h;b++){var w=void 0,y=c.to.numbers[b],k=c.from.numbers[b]||0;w=c.isPath?R(c.value,f*y):k+f*(y-k),m&&(c.isColor&&b>2||(w=Math.round(w*m)/m)),v.push(w)}var $=p.length;if($){g=p[0];for(var x=0;x<$;x++){p[x];var S=p[x+1],_=v[x];isNaN(_)||(g+=S?_+S:_+" ")}}else g=v[0];W[r.type](a.target,r.property,g,a.transforms),r.currentValue=g,n++}}function g(e){d[e]&&!d.passThrough&&d[e](d)}function b(e){var o=d.duration,r=d.delay,m=o-d.endDelay,b=p(e);d.progress=s(b/o*100,0,100),d.reversePlayback=b<d.currentTime,n&&function(e){if(d.reversePlayback)for(var t=l;t--;)v(e,n[t]);else for(var o=0;o<l;o++)v(e,n[o])}(b),!d.began&&d.currentTime>0&&(d.began=!0,g("begin")),!d.loopBegan&&d.currentTime>0&&(d.loopBegan=!0,g("loopBegin")),b<=r&&0!==d.currentTime&&h(0),(b>=m&&d.currentTime!==o||!o)&&h(o),b>r&&b<m?(d.changeBegan||(d.changeBegan=!0,d.changeCompleted=!1,g("changeBegin")),g("change"),h(b)):d.changeBegan&&(d.changeCompleted=!0,d.changeBegan=!1,g("changeComplete")),d.currentTime=s(b,0,o),d.began&&g("update"),e>=o&&(a=0,d.remaining&&!0!==d.remaining&&d.remaining--,d.remaining?(t=i,g("loopComplete"),d.loopBegan=!1,"alternate"===d.direction&&f()):(d.paused=!0,d.completed||(d.completed=!0,g("loopComplete"),g("complete"),!d.passThrough&&"Promise"in window&&(c(),u(d)))))}return d.reset=function(){var e=d.direction;d.passThrough=!1,d.currentTime=0,d.progress=0,d.paused=!0,d.began=!1,d.loopBegan=!1,d.changeBegan=!1,d.completed=!1,d.changeCompleted=!1,d.reversePlayback=!1,d.reversed="reverse"===e,d.remaining=d.loop,n=d.children;for(var t=l=n.length;t--;)d.children[t].reset();(d.reversed&&!0!==d.loop||"alternate"===e&&1===d.loop)&&d.remaining++,h(d.reversed?d.duration:0)},d.set=function(e,n){return J(e,n),d},d.tick=function(e){i=e,t||(t=i),b((i+(a-t))*ae.speed)},d.seek=function(e){b(p(e))},d.pause=function(){d.paused=!0,m()},d.play=function(){d.paused&&(d.completed&&d.reset(),d.paused=!1,te.push(d),m(),ne||re())},d.reverse=function(){f(),d.completed=!d.reversed,m()},d.restart=function(){d.reset(),d.play()},d.reset(),d.autoplay&&d.play(),d}function ie(e,n){for(var t=n.length;t--;)$(e,n[t].animatable.target)&&n.splice(t,1)}"undefined"!=typeof document&&document.addEventListener("visibilitychange",(function(){document.hidden?(te.forEach((function(e){return e.pause()})),oe=te.slice(0),ae.running=te=[]):oe.forEach((function(e){return e.play()}))})),ae.version="3.2.0",ae.speed=1,ae.running=te,ae.remove=function(e){for(var n=Y(e),t=te.length;t--;){var o=te[t],r=o.animations,a=o.children;ie(n,r);for(var i=a.length;i--;){var s=a[i],l=s.animations;ie(n,l),l.length||s.children.length||a.splice(i,1)}r.length||a.length||o.pause()}},ae.get=D,ae.set=J,ae.convertPx=q,ae.path=function(e,n){var t=u.str(e)?w(e)[0]:e,o=n||100;return function(e){return{property:e,el:t,svg:z(t),totalLength:H(t)*(o/100)}}},ae.setDashoffset=function(e){var n=H(e);return e.setAttribute("stroke-dasharray",n),n},ae.stagger=function(e,n){void 0===n&&(n={});var t=n.direction||"normal",o=n.easing?b(n.easing):null,r=n.grid,a=n.axis,i=n.from||0,s="first"===i,l="center"===i,c="last"===i,d=u.arr(e),f=d?parseFloat(e[0]):parseFloat(e),p=d?parseFloat(e[1]):0,m=T(d?e[1]:e)||0,v=n.start||0+(d?f:0),h=[],g=0;return function(e,n,u){if(s&&(i=0),l&&(i=(u-1)/2),c&&(i=u-1),!h.length){for(var b=0;b<u;b++){if(r){var w=l?(r[0]-1)/2:i%r[0],C=l?(r[1]-1)/2:Math.floor(i/r[0]),y=w-b%r[0],k=C-Math.floor(b/r[0]),$=Math.sqrt(y*y+k*k);"x"===a&&($=-y),"y"===a&&($=-k),h.push($)}else h.push(Math.abs(i-b));g=Math.max.apply(Math,h)}o&&(h=h.map((function(e){return o(e/g)*g}))),"reverse"===t&&(h=h.map((function(e){return a?e<0?-1*e:-e:Math.abs(g-e)})))}return v+(d?(p-f)/g:f)*(Math.round(100*h[n])/100)+m}},ae.timeline=function(e){void 0===e&&(e={});var n=ae(e);return n.duration=0,n.add=function(t,o){var a=te.indexOf(n),i=n.children;function s(e){e.passThrough=!0}a>-1&&te.splice(a,1);for(var l=0;l<i.length;l++)s(i[l]);var c=_(t,S(r,e));c.targets=c.targets||e.targets;var d=n.duration;c.autoplay=!1,c.direction=n.direction,c.timelineOffset=u.und(o)?d:A(o,d),s(n),n.seek(c.timelineOffset);var f=ae(c);s(f),i.push(f);var p=K(i,e);return n.delay=p.delay,n.endDelay=p.endDelay,n.duration=p.duration,n.seek(0),n.reset(),n.autoplay&&n.play(),n},n},ae.easing=b,ae.penner=g,ae.random=function(e,n){return Math.floor(Math.random()*(n-e+1))+e},e.exports=ae},function(e,n,t){(function(o){var r,a,i,s;s=void 0!==o?o:this.window||this.global,a=[],r=function(e){"use strict";var n,o,r,a=t(9),i={},s={},l=t(10),c=t(11),u=t(12),d=!!(e&&e.document&&e.document.querySelector&&e.addEventListener);if("undefined"!=typeof window||d){var f=Object.prototype.hasOwnProperty;return s.destroy=function(){if(!i.skipRendering)try{document.querySelector(i.tocSelector).innerHTML=""}catch(e){console.warn("Element not found: "+i.tocSelector)}i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).removeEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).removeEventListener("resize",this._scrollListener,!1),n&&document.querySelector(i.scrollContainer).removeEventListener("click",this._clickListener,!1)):(document.removeEventListener("scroll",this._scrollListener,!1),document.removeEventListener("resize",this._scrollListener,!1),n&&document.removeEventListener("click",this._clickListener,!1))},s.init=function(e){if(d&&(i=function(){for(var e={},n=0;n<arguments.length;n++){var t=arguments[n];for(var o in t)f.call(t,o)&&(e[o]=t[o])}return e}(a,e||{}),this.options=i,this.state={},i.scrollSmooth&&(i.duration=i.scrollSmoothDuration,i.offset=i.scrollSmoothOffset,s.scrollSmooth=t(13).initSmoothScrolling(i)),n=l(i),o=c(i),this._buildHtml=n,this._parseContent=o,s.destroy(),null!==(r=o.selectHeadings(i.contentSelector,i.headingSelector)))){var m=o.nestHeadingsArray(r).nest;i.skipRendering||n.render(i.tocSelector,m),this._scrollListener=p((function(e){n.updateToc(r),!i.disableTocScrollSync&&u(i);var t=e&&e.target&&e.target.scrollingElement&&0===e.target.scrollingElement.scrollTop;(e&&(0===e.eventPhase||null===e.currentTarget)||t)&&(n.updateToc(r),i.scrollEndCallback&&i.scrollEndCallback(e))}),i.throttleTimeout),this._scrollListener(),i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).addEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).addEventListener("resize",this._scrollListener,!1)):(document.addEventListener("scroll",this._scrollListener,!1),document.addEventListener("resize",this._scrollListener,!1));var v=null;return this._clickListener=p((function(e){i.scrollSmooth&&n.disableTocAnimation(e),n.updateToc(r),v&&clearTimeout(v),v=setTimeout((function(){n.enableTocAnimation()}),i.scrollSmoothDuration)}),i.throttleTimeout),i.scrollContainer&&document.querySelector(i.scrollContainer)?document.querySelector(i.scrollContainer).addEventListener("click",this._clickListener,!1):document.addEventListener("click",this._clickListener,!1),this}},s.refresh=function(e){s.destroy(),s.init(e||this.options)},e.tocbot=s,s}function p(e,n,t){var o,r;return n||(n=250),function(){var a=t||this,i=+new Date,s=arguments;o&&i<o+n?(clearTimeout(r),r=setTimeout((function(){o=i,e.apply(a,s)}),n)):(o=i,e.apply(a,s))}}}(s),void 0===(i="function"==typeof r?r.apply(n,a):r)||(e.exports=i)}).call(this,t(8))},function(e,n){var t;t=function(){return this}();try{t=t||new Function("return this")()}catch(e){"object"==typeof window&&(t=window)}e.exports=t},function(e,n){e.exports={tocSelector:".js-toc",contentSelector:".js-toc-content",headingSelector:"h1, h2, h3",ignoreSelector:".js-toc-ignore",hasInnerContainers:!1,linkClass:"toc-link",extraLinkClasses:"",activeLinkClass:"is-active-link",listClass:"toc-list",extraListClasses:"",isCollapsedClass:"is-collapsed",collapsibleClass:"is-collapsible",listItemClass:"toc-list-item",activeListItemClass:"is-active-li",collapseDepth:0,scrollSmooth:!0,scrollSmoothDuration:420,scrollSmoothOffset:0,scrollEndCallback:function(e){},headingsOffset:1,throttleTimeout:50,positionFixedSelector:null,positionFixedClass:"is-position-fixed",fixedSidebarOffset:"auto",includeHtml:!1,onClick:function(e){},orderedList:!0,scrollContainer:null,skipRendering:!1,headingLabelCallback:!1,ignoreHiddenElements:!1,headingObjectCallback:null,basePath:"",disableTocScrollSync:!1}},function(e,n){e.exports=function(e){var n=[].forEach,t=[].some,o=document.body,r=!0;function a(t,o){var r=o.appendChild(function(t){var o=document.createElement("li"),r=document.createElement("a");e.listItemClass&&o.setAttribute("class",e.listItemClass);e.onClick&&(r.onclick=e.onClick);e.includeHtml&&t.childNodes.length?n.call(t.childNodes,(function(e){r.appendChild(e.cloneNode(!0))})):r.textContent=t.textContent;return r.setAttribute("href",e.basePath+"#"+t.id),r.setAttribute("class",e.linkClass+" node-name--"+t.nodeName+" "+e.extraLinkClasses),o.appendChild(r),o}(t));if(t.children.length){var s=i(t.isCollapsed);t.children.forEach((function(e){a(e,s)})),r.appendChild(s)}}function i(n){var t=e.orderedList?"ol":"ul",o=document.createElement(t),r=e.listClass+" "+e.extraListClasses;return n&&(r+=" "+e.collapsibleClass,r+=" "+e.isCollapsedClass),o.setAttribute("class",r),o}return{enableTocAnimation:function(){r=!0},disableTocAnimation:function(n){var t=n.target||n.srcElement;"string"==typeof t.className&&-1!==t.className.indexOf(e.linkClass)&&(r=!1)},render:function(e,n){var t=i(!1);n.forEach((function(e){a(e,t)}));var o=document.querySelector(e);if(null!==o)return o.firstChild&&o.removeChild(o.firstChild),0===n.length?o:o.appendChild(t)},updateToc:function(a){var i;i=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop,e.positionFixedSelector&&function(){var n;n=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop;var t=document.querySelector(e.positionFixedSelector);"auto"===e.fixedSidebarOffset&&(e.fixedSidebarOffset=document.querySelector(e.tocSelector).offsetTop),n>e.fixedSidebarOffset?-1===t.className.indexOf(e.positionFixedClass)&&(t.className+=" "+e.positionFixedClass):t.className=t.className.split(" "+e.positionFixedClass).join("")}();var s,l=a;if(r&&null!==document.querySelector(e.tocSelector)&&l.length>0){t.call(l,(function(n,t){return function n(t){var o=0;return t!==document.querySelector(e.contentSelector&&null!=t)&&(o=t.offsetTop,e.hasInnerContainers&&(o+=n(t.offsetParent))),o}(n)>i+e.headingsOffset+10?(s=l[t],!0):t===l.length-1?(s=l[l.length-1],!0):void 0}));var c=document.querySelector(e.tocSelector).querySelectorAll("."+e.linkClass);n.call(c,(function(n){n.className=n.className.split(" "+e.activeLinkClass).join("")}));var u=document.querySelector(e.tocSelector).querySelectorAll("."+e.listItemClass);n.call(u,(function(n){n.className=n.className.split(" "+e.activeListItemClass).join("")}));var d=document.querySelector(e.tocSelector).querySelector("."+e.linkClass+".node-name--"+s.nodeName+'[href="'+e.basePath+"#"+s.id.replace(/([ #;&,.+*~':"!^$[\]()=>|/@])/g,"\\$1")+'"]');-1===d.className.indexOf(e.activeLinkClass)&&(d.className+=" "+e.activeLinkClass);var f=d.parentNode;f&&-1===f.className.indexOf(e.activeListItemClass)&&(f.className+=" "+e.activeListItemClass);var p=document.querySelector(e.tocSelector).querySelectorAll("."+e.listClass+"."+e.collapsibleClass);n.call(p,(function(n){-1===n.className.indexOf(e.isCollapsedClass)&&(n.className+=" "+e.isCollapsedClass)})),d.nextSibling&&-1!==d.nextSibling.className.indexOf(e.isCollapsedClass)&&(d.nextSibling.className=d.nextSibling.className.split(" "+e.isCollapsedClass).join("")),function n(t){if(-1!==t.className.indexOf(e.collapsibleClass)&&-1!==t.className.indexOf(e.isCollapsedClass))return t.className=t.className.split(" "+e.isCollapsedClass).join(""),n(t.parentNode.parentNode);return t}(d.parentNode.parentNode)}}}}},function(e,n){e.exports=function(e){var n=[].reduce;function t(e){return e[e.length-1]}function o(e){return+e.nodeName.split("H").join("")}function r(n){if(!(n instanceof window.HTMLElement))return n;if(e.ignoreHiddenElements&&(!n.offsetHeight||!n.offsetParent))return null;var t={id:n.id,children:[],nodeName:n.nodeName,headingLevel:o(n),textContent:e.headingLabelCallback?String(e.headingLabelCallback(n.textContent)):n.textContent.trim()};return e.includeHtml&&(t.childNodes=n.childNodes),e.headingObjectCallback?e.headingObjectCallback(t,n):t}return{nestHeadingsArray:function(o){return n.call(o,(function(n,o){var a=r(o);return a&&function(n,o){for(var a=r(n),i=a.headingLevel,s=o,l=t(s),c=i-(l?l.headingLevel:0);c>0;)(l=t(s))&&void 0!==l.children&&(s=l.children),c--;i>=e.collapseDepth&&(a.isCollapsed=!0),s.push(a)}(a,n.nest),n}),{nest:[]})},selectHeadings:function(n,t){var o=t;e.ignoreSelector&&(o=t.split(",").map((function(n){return n.trim()+":not("+e.ignoreSelector+")"})));try{return document.querySelector(n).querySelectorAll(o)}catch(e){return console.warn("Element not found: "+n),null}}}}},function(e,n){e.exports=function(e){var n=document.querySelector(e.tocSelector);if(n&&n.scrollHeight>n.clientHeight){var t=n.querySelector("."+e.activeListItemClass);t&&(n.scrollTop=t.offsetTop)}}},function(e,n){n.initSmoothScrolling=function(e){document.documentElement.style;var n=e.duration,t=e.offset,o=location.hash?r(location.href):location.href;function r(e){return e.slice(0,e.lastIndexOf("#"))}document.body.addEventListener("click",(function(a){var i;"a"!==(i=a.target).tagName.toLowerCase()||!(i.hash.length>0||"#"===i.href.charAt(i.href.length-1))||r(i.href)!==o&&r(i.href)+"#"!==o||a.target.className.indexOf("no-smooth-scroll")>-1||"#"===a.target.href.charAt(a.target.href.length-2)&&"!"===a.target.href.charAt(a.target.href.length-1)||-1===a.target.className.indexOf(e.linkClass)||function(e,n){var t,o,r=window.pageYOffset,a={duration:n.duration,offset:n.offset||0,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},i=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),s="string"==typeof e?a.offset+(e?i&&i.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,l="function"==typeof a.duration?a.duration(s):a.duration;function c(e){o=e-t,window.scrollTo(0,a.easing(o,r,s,l)),o<l?requestAnimationFrame(c):(window.scrollTo(0,r+s),"function"==typeof a.callback&&a.callback())}requestAnimationFrame((function(e){t=e,c(e)}))}(a.target.hash,{duration:n,offset:t,callback:function(){var e,n;e=a.target.hash,(n=document.getElementById(e.substring(1)))&&(/^(?:a|select|input|button|textarea)$/i.test(n.tagName)||(n.tabIndex=-1),n.focus())}})}),!1)}},function(e,n){$((function(){$(".result").each((function(e,n){var t=$(n),o=t.prev().find(".title"),r=$('<div class="view-result j1-viewer"><span class="btn-viewer j1-tooltip" data-toggle="tooltip" data-placement="left" title="toggle results" data-original-title="toggle results">View</span></div>');o.append(r),r.on("click",(function(e){e.preventDefault(),function(e){window.clearTimeout(void 0),e.prev().toggleClass("stacked"),e.toggle()}(t)}))}))}))}]);
|
29
24
|
//# sourceMappingURL=template.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./template.js","webpack:///./js/adapter/adapter.js","webpack:///./js/core/core.js","webpack:///./js/navigator/navigator.js","webpack:///./js/cookiebar/cookiebar.js","webpack:///./js/scroll-smooth/scroll-smooth.js","webpack:///./js/anime/anime.js","webpack:///./js/tocbot/tocbot.js","webpack:///(webpack)/buildin/global.js","webpack:///./js/tocbot/default-options.js","webpack:///./js/tocbot/build-html.js","webpack:///./js/tocbot/parse-content.js","webpack:///./js/tocbot/update-toc-scroll.js","webpack:///./js/tocbot/scroll-smooth/index.js","webpack:///./js/adoc_result_viewer/view_results.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","window","j1","adapter","require","core","navigator","cookiebar","scrollSmooth","anime","_init_","options","$","extend","foo","bar","getState","isMobile","ua_name","a","mobile","userAgent","vendor","opera","test","substr","bsFormClearButton","on","this","val","length","nextAll","removeClass","addClass","logger","logText","cookie_names","getCookieNames","message","cookie_consent","user_session","init","defaultOptions","menuOptions","log4javascript","getLogger","info","manageDropdownMenu","navbarSticky","type","action","text","sendMessage","eventHandler","$getNav","hasClass","wrap","postsArr","Array","index","$postsList","find","each","push","html","firstList","splice","Math","round","secondList","ListHTML","createHTML","list","first","after","next","last","dropDown","megaMenu","closest","prepend","navbarHeighth","outerHeight","scrollTop","debug","e","animate","slideToggle","is","preventDefault","unbind","slideUp","stopPropagation","toggle","css","wrapInner","$menu","breakPoint","$dropDown","timeoutHandle","navDefaultOptions","navMenuOptions","$getWindow","matchMedia","matches","width","$getIn","data","$getOut","menuSelector","xhr_container_id","delayMenuOpen","delay_menu_open","nav_bar","media_breakpoint","off","stop","fadeToggle","fadeOut","hide","show","hover","$list","height","match","eq","setTimeout","fadeIn","clearTimeout","windowHeight","windowWidth","getId","$getHeight","getOffset","offset","top","updateSidebar","user_data","json_message","JSON","stringify","resolveMacros","updateMacros","jQuery","moduleOptions","cookie_user_state","user_state","moduleDefaults","renewOnVisit","forceShow","domain","String","location","hostname","referrer","document","dependencies_met_page_ready","setInterval","user_state_detected","existsCookie","readCookie","error","cookies_accepted","modal","clearInterval","whitelisted","current_page","pathname","modalButtons","querySelectorAll","whitelistedPages","appDetected","deleteOnDecline","stopScrolling","forEach","button","addEventListener","id","toggleClass","writeCookie","expires","current_user_data","mergeData","indexOf","warn","deleteCookie","goHome","scroll","target","duration","scrollTo","callback","timeStart","timeElapsed","$pagehead","$navbar","$adblock","navbarType","fontSize","replace","start","pageYOffset","parseInt","h","opt","easing","b","tgt","querySelector","decodeURI","split","join","distance","getBoundingClientRect","documentElement","body","loop","time","requestAnimationFrame","defaultInstanceSettings","update","begin","loopBegin","changeBegin","change","changeComplete","loopComplete","complete","direction","autoplay","timelineOffset","defaultTweenSettings","delay","endDelay","validTransforms","cache","CSS","springs","minMax","min","max","stringContains","str","applyArguments","func","args","apply","arr","isArray","obj","toString","pth","svg","SVGElement","inp","HTMLInputElement","dom","nodeType","fnc","und","hex","rgb","hsl","col","parseEasingParameters","string","exec","map","parseFloat","spring","params","mass","stiffness","damping","velocity","w0","sqrt","zeta","wd","solver","progress","exp","cos","sin","cached","elapsed","rest","steps","ceil","eases","functionEasings","bezier","A","aA1","aA2","B","C","calcBezier","aT","getSlope","mX1","mY1","mX2","mY2","sampleValues","Float32Array","x","getTForX","aX","intervalStart","currentSample","kSplineTableSize","guessForT","initialSlope","aGuessT","currentSlope","newtonRaphsonIterate","aA","aB","currentX","currentT","abs","binarySubdivide","penner","linear","Sine","PI","Circ","Back","Bounce","pow2","pow","Elastic","amplitude","period","asin","keys","easeIn","parseEasings","ease","selectString","filterArray","len","thisArg","arguments","result","flattenArray","reduce","concat","toArray","NodeList","HTMLCollection","slice","arrayContains","some","cloneObject","clone","replaceObjectProps","o1","o2","mergeObjects","colorToRgb","rgbValue","hexValue","g","hexToRgba","hslValue","hue2rgb","q","hslToRgba","getUnit","getFunctionValue","animatable","total","getAttribute","el","prop","convertPxToUnit","unit","tempEl","createElement","tagName","parentEl","parentNode","appendChild","style","position","factor","offsetWidth","removeChild","convertedUnit","getCSSValue","uppercasePropName","toLowerCase","getComputedStyle","getPropertyValue","getAnimationType","getElementTransforms","transform","reg","transforms","Map","set","getTransformValue","propName","defaultVal","getTransformUnit","getOriginalTargetValue","getRelativeValue","to","from","operator","u","y","validateValue","originalUnit","unitLess","getDistance","p1","p2","getPolylineLength","previousPos","points","totalLength","numberOfItems","currentPos","getItem","getTotalLength","getCircleLength","getRectLength","getLineLength","getPolygonLength","getParentSvg","pathEl","svgData","parentSvgEl","getParentSvgEl","rect","viewBoxAttr","viewBox","w","getPathProgress","path","point","getPointAtLength","p0","atan2","decomposeValue","rgx","original","numbers","Number","strings","parseTargets","targets","item","pos","self","getAnimatables","parsed","normalizePropertyTweens","tweenSettings","settings","propArray","v","k","getProperties","properties","keyframes","propertyNames","newKey","flattenKeyframes","tweens","normalizeTweens","previousTween","tween","normalizeTweenValues","tweenValue","toUnit","originalValue","previousValue","fromUnit","end","isPath","isColor","setProgressValue","attribute","setAttribute","manual","setTargetsValue","valueUnit","animType","getAnimations","animatables","lastTween","createAnimation","getInstanceTimings","animations","animLength","getTlOffset","anim","timings","instanceID","raf","activeInstances","pausedInstances","engine","play","step","activeInstancesLength","activeInstance","paused","instanceIndex","tick","cancelAnimationFrame","children","startTime","lastTime","now","childrenLength","resolve","makePromise","instance","promise","Promise","_resolve","finished","instanceSettings","createNewInstance","toggleInstanceDirection","reversed","child","adjustTime","resetTime","currentTime","speed","seekChild","seek","setAnimationsProgress","insTime","animationsLength","tweenLength","eased","isNaN","toNumbersLength","toNumber","fromNumber","stringsLength","n$1","currentValue","setCallback","cb","passThrough","setInstanceProgress","engineTime","insDuration","insDelay","insEndDelay","reversePlayback","i$1","syncInstanceChildren","began","loopBegan","changeBegan","changeCompleted","remaining","completed","reset","pause","reverse","restart","removeTargetsFromAnimations","targetsArray","hidden","ins","running","version","remove","childAnimations","convertPx","percent","setDashoffset","pathLength","stagger","grid","axis","fromIndex","fromFirst","fromCenter","fromLast","isRange","val1","val2","values","maxValue","fromX","fromY","floor","distanceX","distanceY","timeline","tl","add","instanceParams","tlIndex","insParams","tlDuration","random","root","global","define","buildHtml","parseContent","headingsArray","tocbot","BuildHtml","ParseContent","updateTocScroll","supports","destroy","skipRendering","tocSelector","innerHTML","console","scrollContainer","removeEventListener","_scrollListener","_clickListener","customOptions","source","state","scrollSmoothDuration","scrollSmoothOffset","initSmoothScrolling","_buildHtml","_parseContent","selectHeadings","contentSelector","headingSelector","nestedHeadings","nestHeadingsArray","nest","render","throttle","updateToc","disableTocScrollSync","isTop","scrollingElement","eventPhase","currentTarget","scrollEndCallback","throttleTimeout","timeout","event","disableTocAnimation","enableTocAnimation","refresh","fn","threshold","scope","deferTimer","context","Date","Function","ignoreSelector","hasInnerContainers","linkClass","extraLinkClasses","activeLinkClass","listClass","extraListClasses","isCollapsedClass","collapsibleClass","listItemClass","activeListItemClass","collapseDepth","headingsOffset","positionFixedSelector","positionFixedClass","fixedSidebarOffset","includeHtml","onClick","orderedList","headingLabelCallback","ignoreHiddenElements","headingObjectCallback","basePath","currentlyHighlighting","createEl","container","link","onclick","childNodes","node","cloneNode","textContent","nodeName","createLink","createList","isCollapsed","listElement","classes","srcElement","className","selector","parent","firstChild","posFixedEl","offsetTop","updateFixedSidebarClass","topHeader","headings","heading","getHeadingTopPos","offsetParent","tocLinks","tocLink","tocLis","tocLi","activeTocLink","li","tocLists","nextSibling","removeCollapsedFromParents","element","getLastItem","array","getHeadingLevel","getHeadingObject","HTMLElement","offsetHeight","headingLevel","trim","prev","curr","currentHeading","level","lastItem","counter","undefined","addNode","selectors","toc","scrollHeight","clientHeight","activeItem","pageUrl","hash","stripHash","href","url","lastIndexOf","charAt","jump","getElementById","substring","tabIndex","focus","idx","result_block","title_div","view_result_link","append","toggle_result_block"],"mappings":"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","file":"template.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/assets/themes/j1/core/js\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","/*\n # -----------------------------------------------------------------------------\n # ~/src/template.js\n # J1 Template Javascript Core library\n #\n # Product/Info:\n # https://jekyll.one\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under the MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n #\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint-disable no-unused-vars */\n/* global window */\n\n// -----------------------------------------------------------------------------\n// Import SASS sources for HMR\n// -----------------------------------------------------------------------------\n// import '../100_template_css/scss/theme_uno/components/_footer.scss';\n// import '../100_template_css/theme_uno.css'; // <-- yes, also require (s)css. This is a Webpack thing\n\n// Core Libraries - imported|required from NODE|NPM modules\n// -----------------------------------------------------------------------------\n//\n// Following objects (framework modules) are *conditionaly* forced to be\n// exposed for run-time to the global namespace (window) by WP config\n// file (expose-loader):\n// jQuery\n// Popper ('popper.js/dist/umd/popper', https://github.com/twbs/bootstrap/issues/23381)\n// -----------------------------------------------------------------------------\n\n// Core Utilities (moved to modules)\n// -----------------------------------------------------------------------------\n// Following objects (native node modules) are *explicitely* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\n// window.Cookies = require('js-cookie');\n// window.log4javascript = require('log4javascript');\n// window.parseURL = require('lite-url');\n// window.platform = require('platform');\n// window.yaml = require('js-yaml');\n// window.uuid = require('uuid/v4');\n\n// Core Libraries - build|required from SOURCE\n// -----------------------------------------------------------------------------\n\n// Following source objects|modules are *explicitely* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\nwindow.j1.adapter = require('./js/adapter/adapter.js');\nwindow.j1.core = require('./js/core/core.js');\nwindow.j1.core.navigator = require('./js/navigator/navigator.js');\nwindow.j1.core.cookiebar = require('./js/cookiebar/cookiebar.js');\nwindow.j1.core.scrollSmooth = require('./js/scroll-smooth/scroll-smooth.js');\nwindow.j1.anime = require('./js/anime/anime.js'); // added for fam\n// window.j1.fam = require('./js/fam/fam.js'); // cannot used until NOT rewritten to jQuery\n\n// Following source objects|modules are *implicetly* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\n//const Bootstrap = require('./js/bootstrap/bootstrap.js');\n//const J1JekyllSearch = require('./js/jekyll_search/jekyll_search.js');\nconst J1Tocbot = require('./js/tocbot/tocbot.js');\n//const J1ThemeSwitcher = require('./js/bs_theme_switcher/switcher.js');\n// const J1MmenuLight = require('./js/mmenu-light/mmenu.js');\n\n// Passing log data over Internet|SeeMe (currently NOT used)\n// -----------------------------------------------------------------------------\n// window.j1.core.log4javascript = require('./js/logger/client/webhook.js');\n\n// BMD Libraries (moved to modules)\n// -----------------------------------------------------------------------------\n// window.bootstrapMaterialDesign = require('./js/bmd/js/bmd.js');\n\n// Github Webhooks (currently NOT used)\n// -----------------------------------------------------------------------------\n// window.j1.core.webhooks = require('./js/webhooks/octokit/client.js');\n\n\n// Test|Custom modules (currently NOT used)\n// -----------------------------------------------------------------------------\n// window.j1promiseTest = require('./js/custom/test_promises.js');\n// window.j1Example = require('./js/custom/example_module.js');\n\n// BS Libraries (moved to modules)\n// -----------------------------------------------------------------------------\n// Following source objects|modules are *implicetly* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\n// const Bootstrap = require('./js/bootstrap/bootstrap.js');\n\n// const J1JekyllSearch = require('./js/jekyll_search/jekyll_search.js'); // Buffer Kack\n// const J1Tocbot = require('./js/tocbot/tocbot.js');\n\n// Backstretch (moved to modules)\n// -----------------------------------------------------------------------------\n// Following source objects|modules are *implicetly* forced to be\n// exposed for run-time to the namespace of jQuery ($).\n// -----------------------------------------------------------------------------\n// const J1Attics = require('./js/backstretch/backstretch.js');\n\n// Additional Vanilla JS helpers\n// -----------------------------------------------------------------------------\nconst J1AdocResultViewer = require('./js/adoc_result_viewer/view_results.js');\n// const MSIEPolyfills = require('./js/polyfills/ms-ie.js');\n\n// HMR messages (currently NOT used)\n// -----------------------------------------------------------------------------\n// if (module.hot) {\n// var logtext;\n// var stat;\n// var stat=module.hot.status();\n//\n// logtext='[INFO ] [HMR ] [Hot Module Replacement enabled]';\n// console.log(logtext);\n// logtext='[INFO ] [HMR ] [Status: ' + stat + ']';\n// console.log(logtext);\n//\n// module.hot.accept('./template.js', function() {\n// console.log('[HMR] Accepting the updated template.js module!');\n// });\n//\n// module.hot.accept('../100_template_css/theme_uno.scss', function () {\n// console.log('[HMR] Accepting the updated style.css module!');\n// require('../100_template_css/theme_uno.scss')\n// })\n//\n// React to the current status...\n// module.hot.addStatusHandler(status => {\n// stat=module.hot.status();\n// logtext='[INFO ] [HMR ] [Status: ' + stat + ']';\n// console.log(logtext);\n// });\n//}\n\n// -----------------------------------------------------------------------------\n// END\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/adapter/adapter.js\n # Provides an empty object for later loaded adapter objects\n #\n # Product/Info:\n # https://jekyll.one\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n'use strict';\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n// -----------------------------------------------------------------------------\n\n/*!\n * J1 Adapter\n * Copyright (C) 2020 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = (function ( j1, window ) {\n return {\n\n // -------------------------------------------------------------------------\n // _init_\n // Global initializer for the adapter object\n // -------------------------------------------------------------------------\n _init_: function () {\n return;\n } // END _init_\n\n }; // END return\n\n})( j1, window );\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/j1_template/core.js\n # Provides an empty object for later loaded core objects\n #\n # Product/Info:\n # https://jekyll.one\n # http://getbootstrap.com/\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n'use strict';\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n// -----------------------------------------------------------------------------\n\n// module.exports = function core ( options ) {\n/*!\n * J1 Core\n * Copyright (C) 2020 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = (function (options) {\n\n // ---------------------------------------------------------------------------\n // Global variables\n // ---------------------------------------------------------------------------\n // var messageCatalog = {};\n // var state;\n // var logger;\n // var logText;\n\n // ---------------------------------------------------------------------------\n // Default settings\n // ---------------------------------------------------------------------------\n var settings = $.extend({\n foo: 'foo_option',\n bar: 'bar_option'\n }, options );\n\n var state = 'loaded';\n\n return {\n\n // -------------------------------------------------------------------------\n // _init_\n // Global initializer for the core object\n // -------------------------------------------------------------------------\n _init_: function (options) {\n\n //\n // Place handling of options here\n //\n\n return;\n }, // END _init_\n\n // -------------------------------------------------------------------------\n // Returns the current (processing) state of the module\n // -------------------------------------------------------------------------\n getState: function () {\n return state;\n }, // END state\n\n // -------------------------------------------------------------------------\n // isMobile\n // Return true if the current platform is a mobile device\n // -------------------------------------------------------------------------\n isMobile: function (ua_name) {\n var mobile = false;\n (function(a){if(/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm|cell|chtm|cldc|cmd|co(mp|nd)|craw|da(it|ll|ng)|dbte|dcs|devi|dica|dmob|do(c|p)o|ds(12|d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(|_)|g1 u|g560|gene|gf5|gmo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd(m|p|t)|hei|hi(pt|ta)|hp( i|ip)|hsc|ht(c(| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i(20|go|ma)|i230|iac( ||\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|[a-w])|libw|lynx|m1w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|mcr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|([1-8]|c))|phil|pire|pl(ay|uc)|pn2|po(ck|rt|se)|prox|psio|ptg|qaa|qc(07|12|21|32|60|[2-7]|i)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h|oo|p)|sdk\\/|se(c(|0|1)|47|mc|nd|ri)|sgh|shar|sie(|m)|sk0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h|v|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl|tdg|tel(i|m)|tim|tmo|to(pl|sh)|ts(70|m|m3|m5)|tx9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas|your|zeto|zte/i.test(a.substr(0,4))) mobile = true;})(navigator.userAgent||navigator.vendor||window.opera);\n return mobile;\n }, // END isMobile\n\n // -------------------------------------------------------------------------\n // Clear button for input fields (forms)\n // -------------------------------------------------------------------------\n bsFormClearButton: function () {\n// $('.position-relative :input').on('keydown focus', function() {\n $(':input').on('keydown focus change mouseover', function() {\n if ($(this).val().length > 0) {\n $(this).nextAll('.form-clear').removeClass('d-none');\n }\n }).on('keydown keyup blur', function() {\n if ($(this).val().length === 0) {\n $(this).nextAll('.form-clear').addClass('d-none');\n }\n });\n\n // $('.form-clear').on('click', function() {\n // $(this).addClass('d-none').prevAll(':input').val('');\n // // hide|clear results from top search\n // $('#search-results').hide();\n // $('#search-results').html('');\n // });\n }\n\n }; // end return (object)\n\n//})( jQuery, window );\n})(); // END IFFE\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/navigator/navigator.js\n # Provides all JavaScript core functions for J1 Navigator\n #\n # Product/Info:\n # https://jekyll.one\n # https://github.com/adamnurdin01/navigator\n #\n # Copyright (C) 2020 Juergen Adams\n # Copyright (C) 2016 adamnurdin01\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # Bootsnav is licensed under MIT License.\n # See: https://github.com/adamnurdin01/navigator\n #\n # -----------------------------------------------------------------------------\n # NOTE:\n # jadams, 2020-06-21:\n # J1 Navigator needs a general revision on BS4 code and functionalities\n # Current, only base function are tested with BS4 (was coded for BS3)\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n// -----------------------------------------------------------------------------\n\n// -----------------------------------------------------------------------------\n// TODO: Height of dropdowns are to be limited in general\n\n// -----------------------------------------------------------------------------\n// Navigator core registered as 'j1.core.navigator'\n// -----------------------------------------------------------------------------\n\n/*!\n * J1 Navigator\n * Copyright (C) 2020 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = function navigator ( options ) {\n\n // ---------------------------------------------------------------------------\n // global vars\n // ---------------------------------------------------------------------------\n var cookie_names = j1.getCookieNames();\n var cookie_consent_name = cookie_names.cookie_consent;\n var cookie_user_session_name = cookie_names.user_session;\n var message = {};\n var state;\n var logger;\n var logText;\n\n // -----------------------------------------------------------------------\n // default settings\n // -----------------------------------------------------------------------\n var settings = $.extend ({\n foo: 'bar',\n bar: 'foo',\n }, options );\n\n // ---------------------------------------------------------------------------\n // main object\n // ---------------------------------------------------------------------------\n return {\n\n // -------------------------------------------------------------------------\n // module initializer\n // -------------------------------------------------------------------------\n init: function( defaultOptions, menuOptions ) {\n logger = log4javascript.getLogger('j1.core.navigator');\n logText = 'core is being initialized';\n\n logger.info(logText);\n this.manageDropdownMenu(defaultOptions, menuOptions);\n this.navbarSticky();\n // this.navbarScrollspy();\n\n message.type = 'command';\n message.action = 'module_initialized';\n message.text = 'navigator core initialized successfully';\n j1.sendMessage( 'j1.core.navigator', 'j1.adapter.navigator', message );\n\n return true;\n },\n\n // -------------------------------------------------------------------------\n // event handler\n // -------------------------------------------------------------------------\n eventHandler: function() {\n var logger = log4javascript.getLogger('j1.core.navigator.eventHandler');\n var $getNav = $('nav.navbar.navigator');\n // const seeMe = 'https://smee.io/wlNIFNiJN0GClm2';\n // const middleware = 'localhost:5000/state';\n // const web_server_dev = 'http://localhost:41000/status';\n // const utility_server = 'http://localhost:41001/git?request=pull';\n // var sender = seeMe;\n // var payload;\n var json_data;\n\n // if (j1.checkUserAgent('IE') || j1.checkUserAgent('Edge')) {\n // logger.warn('HTML5 server side events (SSE) not supported for: ' + userAgent);\n // logger.warn('Middleware messages disabled');\n // } else {\n // const middleware_status = new EventSource(sender);\n //\n // // -----------------------------------------------------------------------\n // // middleware event handler ( SSE currently NOT used)\n // // -----------------------------------------------------------------------\n // middleware_status.onmessage = (event) => {\n // const payload = JSON.parse(event.data);\n //\n // logger.debug('middleware: event received');\n //\n // json_data = JSON.stringify(payload, undefined, 2);\n // logText = 'payload: ' + json_data;\n // logger.debug(logText);\n //\n // message.type = 'command';\n // message.action = 'status';\n // message.text = payload;\n // j1.sendMessage( 'j1.core.navigator', 'j1.adapter.navigator', message );\n //\n // return true;\n // }; // END event onMessage\n // }\n\n // -----------------------------------------------------------------------\n // Navbar Sticky\n // -----------------------------------------------------------------------\n var navSticky = $getNav.hasClass('navbar-sticky');\n if( navSticky ){\n // Wraped navigation\n $getNav.wrap('<div class=\\'wrap-sticky\\'></div>');\n }\n\n // -----------------------------------------------------------------------\n // Navbar Center\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('brand-center') ){\n var postsArr = new Array();\n var index = $('nav.brand-center');\n var $postsList = index.find('ul.navbar-nav');\n\n //Create array of all posts in lists\n index.find('ul.navbar-nav > li').each(function(){\n postsArr.push($(this).html());\n });\n\n // Split the array at this point. The original array is altered.\n var firstList = postsArr.splice(0, Math.round(postsArr.length / 2));\n var secondList = postsArr;\n var ListHTML = '';\n\n var createHTML = function(list) {\n ListHTML = '';\n for (var i = 0; i < list.length; i++) {\n ListHTML += '<li>' + list[i] + '</li>';\n }\n };\n\n // Generate HTML for first list\n createHTML(firstList);\n $postsList.html(ListHTML);\n index.find('ul.nav').first().addClass('navbar-left');\n\n // Generate HTML for second list\n createHTML(secondList);\n //Create new list after original one\n $postsList.after('<ul class=\"nav navbar-nav\"></ul>').next().html(ListHTML);\n index.find('ul.nav').last().addClass('navbar-right');\n\n // Wrap navigation menu\n index.find('ul.nav.navbar-left').wrap('<div class=\\'col_half left\\'></div>');\n index.find('ul.nav.navbar-right').wrap('<div class=\\'col_half right\\'></div>');\n\n // Selection Class\n index.find('ul.navbar-nav > li').each(function() {\n var dropDown = $('ul.dropdown-menu', this),\n megaMenu = $('ul.megamenu-content', this);\n dropDown.closest('li').addClass('dropdown');\n megaMenu.closest('li').addClass('megamenu-fw');\n });\n }\n\n // -----------------------------------------------------------------------\n // Navbar Sidebar\n // -----------------------------------------------------------------------\n // if( $getNav.hasClass('navbar-sidebar')) {\n // // Add Class to body\n // $('body').addClass('wrap-nav-sidebar');\n // $getNav.wrapInner('<div class=\\'scroller\\'></div>');\n // } else {\n // $('.navigator').addClass('on');\n // }\n\n // -----------------------------------------------------------------------\n // Menu Center\n // -----------------------------------------------------------------------\n if( $getNav.find('ul.nav').hasClass('navbar-center')) {\n $getNav.addClass('menu-center');\n }\n\n // -----------------------------------------------------------------------\n // Navbar Full\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('navbar-full')) {\n // Add Class to body\n $('nav.navbar.navigator').find('ul.nav').wrap('<div class=\\'wrap-full-menu\\'></div>');\n $('.wrap-full-menu').wrap('<div class=\\'nav-full\\'></div>');\n $('ul.nav.navbar-nav').prepend('<li class=\\'close-full-menu\\'><a href=\\'#\\'><i class=\\'mdi mdi-close\\'></i></a></li>');\n } else if( $getNav.hasClass('navbar-mobile') ) {\n $getNav.removeClass('no-full');\n } else {\n $getNav.addClass('no-full');\n }\n\n // -----------------------------------------------------------------------\n // Navbar Mobile\n // -----------------------------------------------------------------------\n // if( $getNav.hasClass('navbar-mobile')) {\n // // Add Class to body\n // $('.navbar-collapse').on('shown.bs.collapse', function() {\n // $('body').addClass('side-right');\n // });\n // $('.navbar-collapse').on('hide.bs.collapse', function() {\n // $('body').removeClass('side-right');\n // });\n //\n // $(window).on('resize', function() {\n // $('body').removeClass('side-right');\n // });\n // }\n\n // -----------------------------------------------------------------------\n // Navbar Fixed\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('no-background') ) {\n $(window).on('scroll', function() {\n var navbarHeighth = $('nav.navbar').outerHeight();\n var scrollPos = $(window).scrollTop();\n\n if (scrollPos > navbarHeighth) {\n $('.navbar-fixed').removeClass('no-background');\n } else {\n $('.navbar-fixed').addClass('no-background');\n }\n });\n }\n\n if( $getNav.hasClass('navbar-transparent') ) {\n $(window).on('scroll', function() {\n var navbarHeighth = $('nav.navbar').outerHeight();\n var scrollPos = $(window).scrollTop();\n\n if (scrollPos > navbarHeighth) {\n $('.navbar-fixed').removeClass('navbar-transparent');\n $('.navbar-fixed').addClass('navbar-scrolled');\n } else {\n $('.navbar-fixed').removeClass('navbar-scrolled');\n $('.navbar-fixed').addClass('navbar-transparent');\n }\n });\n }\n\n // -----------------------------------------------------------------------\n // Toggle Search\n // https://stackoverflow.com/questions/178325/how-do-i-check-if-an-element-is-hidden-in-jquery\n // https://stackoverflow.com/questions/4770025/how-to-disable-scrolling-temporarily\n // https://stackoverflow.com/questions/5963669/whats-the-difference-between-event-stoppropagation-and-event-preventdefault\n // -----------------------------------------------------------------------\n $('nav.navbar.navigator .attr-nav').each(function() {\n logger.debug('register OPEN event|s for QuickSearch');\n $('li.search > a', this).on('click', function(e) {\n // e.preventDefault(); // don't do the default browser action\n logger.debug('manage search action OPEN');\n $('html,body').animate({scrollTop: 0}, 0);\n $('.top-search').slideToggle('slow', 'swing', function() {\n if ( $('.top-search').is(':visible') ) {\n // disable scrolling (desktop)\n $('body').addClass('stop-scrolling');\n // disable scrolling (mobile)\n $('body').bind('touchmove', function(e){e.preventDefault();});\n } else {\n // enable scrolling (desktop)\n $('body').removeClass('stop-scrolling');\n // enable scrolling (mobile)\n $('body').unbind('touchmove');\n }\n });\n // e.stopPropagation(); // don't bubble up the event\n });\n });\n logger.debug('register CLOSE event|s for QuickSearch');\n $('.input-group-addon.close-search').on('click', function(e) {\n e.preventDefault(); // don't do the default browser action\n logger.debug('manage search action CLOSE');\n $('.top-search').slideUp('slow', 'swing');\n $('html,body').animate({scrollTop: 0}, 0);\n // enable scrolling (desktop)\n $('body').removeClass('stop-scrolling');\n // enable scrolling (mobile)\n $('body').unbind('touchmove');\n e.stopPropagation(); // don't bubble up the event\n });\n\n // -----------------------------------------------------------------------\n // Toggle Translator SHOW|HIDE\n // -----------------------------------------------------------------------\n $('nav.navbar.navigator .attr-nav').each(function() {\n logger.debug('register SHOW|HIDE event|s for J1 Translator');\n $('li.translator > a', this).on('click', function(e) {\n // e.preventDefault(); // don't do the default browser action\n // window.location.reload(true);\n logger.debug('toggle translator icon SHOW|HIDE');\n // See: https://api.jquery.com/toggle/\n // With no parameters, the .toggle() method simply toggles the visibility of elements\n $('#google_translate_element').toggle();\n if ($('#google_translate_element').css('display') !== 'none') {\n $('html,body').animate({scrollTop: 0}, 'slow');\n }\n // e.stopPropagation(); // don't bubble up the event\n });\n });\n\n // -----------------------------------------------------------------------\n // Toggle Side Menu\n // -----------------------------------------------------------------------\n // $('nav.navbar.navigator .attr-nav').each(function() {\n // logger.debug('register OPEN event|s for SideBar');\n // $('li.side-menu > a', this).on('click', function(e) {\n // // e.preventDefault(); // don't do the default browser action\n // logger.debug('manage sidebar action OPEN');\n // // e.stopPropagation(); // don't bubble up the event\n // $('nav.navbar.navigator > .side').toggleClass('on');\n // $('body').toggleClass('on-side');\n // // e.stopPropagation(); // don't bubble up the event\n // });\n // });\n // logger.debug('register CLOSE event|s for SideBar');\n // $('.side .close-side').on('click', function(e) {\n // e.preventDefault(); // don't do the default browser action\n // logger.debug('manage sidebar action CLOSE');\n // $('nav.navbar.navigator > .side').removeClass('on');\n // $('body').removeClass('on-side');\n // // e.stopPropagation(); // don't bubble up the event\n // });\n\n // -----------------------------------------------------------------------\n // Wrapper\n // -----------------------------------------------------------------------\n $('body').wrapInner( '<div class=\\'wrapper\\'></div>');\n\n }, // end event\n\n // -------------------------------------------------------------------------\n // Manage the Menu Dropdowns for Desktop|Mobile\n // -------------------------------------------------------------------------\n manageDropdownMenu : function( defaultOptions, menuOptions ) {\n\n var navDefaultOptions = defaultOptions;\n var navMenuOptions = menuOptions;\n\n var $getNav = $('nav.navbar.navigator');\n var $windowOrientation = window.matchMedia('(orientation: landscape)').matches ? 'landscape' : 'portrait';\n var $getWindow = $(window).width();\n var $getNavWidth = $('nav').width();\n var $getIn = $getNav.find('ul.nav').data('in');\n var $getOut = $getNav.find('ul.nav').data('out');\n\n var menuSelector = '#' +navMenuOptions.xhr_container_id+ '.collapse';\n var delayMenuOpen = navMenuOptions.delay_menu_open;\n\n var $menu;\n var breakPoint;\n var $dropDown;\n var timeoutHandle;\n\n // BS4 @media MAX breakpoints\n // NOTE: a media query is always a range\n // -----------------------------------------------------------------------\n var gridBreakpoint_lg = 992; // bs-breakpoint-lg\n var gridBreakpoint_md = 768; // bs-breakpoint-md\n var gridBreakpoint_sm = 576; // bs-breakpoint-sm\n\n // BS4 @media MIN breakpoints\n // -----------------------------------------------------------------------\n // NOTE: a media query is always a range\n // var gridBreakpoint_lg = 991;\n // var gridBreakpoint_md = 767;\n // var gridBreakpoint_sm = 575;\n\n // @media ranges\n // -----------------------------------------------------------------------\n var small_range = {min: '0em', max: '40em'}; /* 0, 640px */\n var medium_range = {min: '40.063em', max: '64em'}; /* 641px, 1024px */\n var large_range = {min: '64.063em', max: '90em'}; /* 1025px, 1440px */\n var xlarge_range = {min: '90.063em', max: '120em'}; /* 1441px, 1920px */\n var xxlarge_range = {min: '120.063em'}; /* 1921px */\n\n\n // jadams, 2019-05-01: Set Media Breakpoint for Desktop|Mobile Navigation\n if ( navDefaultOptions.nav_bar.media_breakpoint === 'lg' ) {\n breakPoint = gridBreakpoint_lg;\n } else if ( navDefaultOptions.nav_bar.media_breakpoint === 'md' ) {\n breakPoint = gridBreakpoint_md;\n } else if ( navDefaultOptions.nav_bar.media_breakpoint === 'sm' ) {\n breakPoint = gridBreakpoint_sm;\n } else{\n breakPoint = gridBreakpoint_lg;\n }\n\n // -----------------------------------------------------------------------\n // Tablet or Mobile\n // NOTE:\n // Managing the mobile menu is moved to MMenu Plugin\n // Only base functions like QuickLinks are managed by\n // J1 Navigator\n // -----------------------------------------------------------------------\n // MIN media breakpoint\n if ( $getWindow <= breakPoint ) {\n\n // Collapse Navbar\n $(menuSelector).addClass('navbar-collapse');\n $(menuSelector).removeClass('show'); //\n $('#navigator_nav_quicklinks').addClass('show');\n\n // Enable click Quicklink Navigation\n $('nav.navbar.navigator .attr-nav').each(function() {\n $('.dropdown-menu', this).removeClass('animated');\n $('li.dropdown', this).off('mouseenter');\n $('li.dropdown', this).off('mouseleave');\n $('a.dropdown-toggle', this).off('click');\n $('a.dropdown-toggle', this).on('click', function (e) {\n // e.stopPropagation(); // don't bubble up the event\n $(this).closest('li.dropdown').find('.dropdown-menu').first().stop().fadeToggle();\n $('.navbar-toggle').each(function(){\n $('.mdi', this).removeClass('mdi-close');\n $('.mdi', this).addClass('mdi-menu');\n $('.navbar-collapse').removeClass('in');\n $('.navbar-collapse').removeClass('open');\n });\n });\n\n $(this).on('mouseleave', function(){\n $('.dropdown-menu', this).stop().fadeOut();\n $('li.dropdown', this).removeClass('open');\n // return false;\n });\n });\n\n $('#desktop_menu').hide();\n\n // -----------------------------------------------------------------------\n // Desktop Navigation does NOT work on physical devices like iPad|Pro\n // Config DISABLED\n //\n// } else if ( $getWindow > breakPoint || $getWindow <= 1024 && $windowOrientation == 'portrait' ) {\n } else if ( $getWindow > breakPoint ) {\n // -----------------------------------------------------------------------\n // Desktop\n // -----------------------------------------------------------------------\n $('#navigator_nav_quicklinks').removeClass('show');\n $('#desktop_menu').show();\n\n // TODO: Fix delayMenuOpen issue\n // TODO: scrollStart|Stop are to be moved to menu events\n //\n // var scrollStart = $('body').removeClass('stop-scrolling');\n // var scrollStop = $('body').addClass('stop-scrolling');\n\n // jadams, 2017-12-39: Workaround. Unclear why delayMenuOpen get lost for image|video headers\n // if ( delayMenuOpen === undefined ) { delayMenuOpen = 250; }\n\n // jadams, 2020-20-13: managing the dropdown menu lenght should be done\n // different. The current method cause an ugly extry lengt at the end of\n // the LAST menu item\n // Adding the height limiter DISABLED\n\n // limit the dropdown menu lenght if needed\n $('.dropdown-menu > li').hover(function() {\n var $container = $(this);\n var $list = $container.find('ul');\n\n // $('body').addClass('stop-scrolling');\n\n // continue on simple dropdowns only (no MM)\n if ( $list.length == 1 ) {\n var height = $list.height() * 1.1; // make sure there is valid space at the bottom\n var maxHeight;\n // typeof, make sure that test|if returns a string\n // see: https://stackoverflow.com/questions/3390396/how-can-i-check-for-undefined-in-javascript\n if ( typeof $list.css('max-height') !== 'undefined' ) {\n maxHeight = $list.css('max-height').match(/\\d+/)[0]; // get the value of (dropdown) maxHeight\n } else { maxHeight = 200; }\n var tooHeigh = height / maxHeight; // calc if the dropdown height exceeds the limit\n\n // limit the dropdown lenght to maxHeight (permanent)\n // jadams, 2020-20-13: height limiter DISABLED\n // if (tooHeigh > 1) {\n // $list.css({\n // 'height': maxHeight,\n // 'overflow-y': 'auto'\n // });\n // }\n }\n });\n\n $('.dropdown-menu > li').on('mouseleave', function(){\n $('body').removeClass('stop-scrolling');\n });\n\n // Height of scroll navigation sidebar (??? needed ???)\n // jadams: 2019-06-14, since HTML generation of the menubar changed\n // to \"id only\" jQuery of '.scroller' cause failures\n // What a hell is: '.scroller' (jQuery Scroller) ???\n //$('.scroller').css('height', $getHeight + 'px');\n // Removed module support this\n // $('body').removeClass('stop-scrolling');\n\n // jadams 2017-11-01: Menu button (toggler) shown|hide by BS4\n //$(buttonSelector).css('display','block');\n $(menuSelector).removeClass('navbar-collapse'); //.toggleClass(scrollStart);\n // jadams 2017-11-01: class 'in' replaced by 'show' for BS4\n $(menuSelector).addClass('show');\n\n // Navbar Sidebar\n // if ( $getNav.hasClass('navbar-sidebar')) {\n //\n // // Hover Open on Sidebar Menu\n // $('nav.navbar.navigator ul.nav').each(function () {\n //\n // $('a.dropdown-toggle', this).off('click');\n // $('a.dropdown-toggle', this).on('click', function (e) {\n // // e.stopPropagation(); // don't bubble up the event\n // });\n //\n // $('.dropdown-menu', this).addClass('animated');\n // $('li.dropdown', this).on('mouseenter', function () {\n // $('.dropdown-menu', this).eq(0).removeClass($getOut);\n // $('.dropdown-menu', this).eq(0).stop().fadeIn().addClass($getIn);\n // $(this).addClass('open');\n // // return false;\n // });\n //\n // $('.col_menu').each(function () {\n // $('.content', this).addClass('animated');\n // $('.title', this).on('mouseenter', function () {\n // $(this).closest('.col_menu').find('.content').stop().fadeIn().addClass($getIn);\n // $(this).closest('.col_menu').addClass('open');\n // // return false;\n // });\n // });\n //\n // $(this).on('mouseleave', function () {\n // $('.dropdown-menu', this).stop().removeClass($getIn);\n // $('.dropdown-menu', this).stop().addClass($getOut).fadeOut();\n // $('.col_menu', this).find('.content').stop().fadeOut().removeClass($getIn);\n // $('.col_menu', this).removeClass('open');\n // $('li.dropdown', this).removeClass('open');\n // // return false;\n // });\n // }); // fixed\n // } // END Navbar Sidebar\n\n // Hover Open on Default Menu\n $('nav.navbar.navigator ul.nav').each(function() {\n $('a.dropdown-toggle', this).off('click');\n $('a.dropdown-toggle', this).on('click', function (e) {\n // e.stopPropagation(); // don't bubble up the event\n });\n\n $('.megamenu-fw', this).each(function(){\n $('.title', this).off('click');\n $('a.dropdown-toggle', this).off('click');\n $('.content').removeClass('animated');\n });\n $('.dropdown-menu', this).addClass('animated');\n\n $('li.dropdown', this).on('mouseenter', function(){\n $menu = $('.dropdown-menu', this).eq(0);\n $dropDown = $(this);\n\n // stop scrolling if top search or any (mmenu) drawer is opened\n if ($('body').hasClass('stop-scrolling') || $('body').hasClass('mm-ocd-opened') ){ return false; }\n\n $menu.removeClass($getOut);\n $menu.removeClass('open');\n $dropDown.addClass('open');\n // Get|Set the timeout object to delay the dropdown open\n timeoutHandle = window.setTimeout(function () {\n if ($dropDown.hasClass('open')){\n $menu.stop().fadeIn().addClass($getIn);\n $menu.addClass('open');\n $dropDown.addClass('open');\n }\n }, delayMenuOpen);\n });\n\n $('li.dropdown', this).on('mouseleave', function(){\n window.clearTimeout(timeoutHandle); // Clear the timeout object\n $(this).removeClass('open').removeClass('open');\n\n $('.dropdown-menu', this).removeClass('open');\n $('.dropdown-menu', this).eq(0).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n });\n\n $(this).on('mouseleave', function(){\n window.clearTimeout(timeoutHandle);\n $('li.dropdown', this).removeClass('open');\n $('.dropdown-menu', this).removeClass('open');\n $('.dropdown-menu', this).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n });\n }); // END Default Menu\n\n } // end Desktop\n\n // -----------------------------------------------------------------------\n // Hover Open on Quicklink Navigation\n // -----------------------------------------------------------------------\n $('nav.navbar.navigator .attr-nav').each(function() {\n\n $('a.dropdown-toggle', this).off('click');\n $('a.dropdown-toggle', this).on('click', function (e) {\n // e.stopPropagation(); // don't bubble up the event\n });\n\n $('.dropdown-menu', this).addClass('animated');\n $('li.dropdown', this).on('mouseenter', function(){\n $('.dropdown-menu', this).eq(0).removeClass($getOut);\n $('.dropdown-menu', this).eq(0).stop().fadeIn().addClass($getIn);\n $(this).addClass('open');\n //return false;\n });\n\n $('li.dropdown', this).on('mouseleave', function(){\n $('.dropdown-menu', this).eq(0).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n $(this).removeClass('open');\n });\n\n $(this).on('mouseleave', function(){\n $('.dropdown-menu', this).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n $('li.dropdown', this).removeClass('open');\n //return false;\n });\n });\n\n // -----------------------------------------------------------------------\n // Fullscreen Menu\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('navbar-full')){\n var windowHeight = $(window).height(),\n windowWidth = $(window).width();\n\n $('.nav-full').css('height', windowHeight + 'px');\n $('.wrap-full-menu').css('height', windowHeight + 'px');\n $('.wrap-full-menu').css('width', windowWidth + 'px');\n\n $('.navbar-collapse').addClass('animated');\n $('.navbar-toggle').each(function(){\n var getId = $(this).data('target');\n $(this).off('click');\n $(this).on('click', function(e){\n e.preventDefault();\n $(getId).removeClass($getOut);\n $(getId).addClass('in');\n $(getId).addClass($getIn);\n // e.stopPropagation(); // don't bubble up the event\n // return false;\n });\n\n $('li.close-full-menu').on('click', function(e){\n e.preventDefault();\n $(getId).addClass($getOut);\n setTimeout(function(){\n $(getId).removeClass('in');\n $(getId).removeClass($getIn);\n }, 500);\n //e.stopPropagation(); // don't bubble up the event\n // return false;\n });\n });\n }\n }, // end manageDropdownMenu\n\n // -------------------------------------------------------------------------\n // Sticky Navbar\n // -------------------------------------------------------------------------\n navbarSticky : function() {\n var $getNav = $('nav.navbar.navigator'),\n navSticky = $getNav.hasClass('navbar-sticky');\n\n if (navSticky) {\n // Set Height Navigation\n var $getHeight = $getNav.height();\n $('.wrap-sticky').height($getHeight);\n\n // Windown on scroll\n var getOffset = $('.wrap-sticky').offset().top;\n $(window).on('scroll', function(){\n var scrollTop = $(window).scrollTop();\n if(scrollTop > getOffset){\n $getNav.addClass('sticked');\n }else {\n $getNav.removeClass('sticked');\n }\n });\n }\n }, // end navbarSticky\n\n // -------------------------------------------------------------------------\n // Navbar Scrollspy\n // -------------------------------------------------------------------------\n // navbarScrollspy : function() {\n // var navScrollSpy = $('.navbar-scrollspy'),\n // $body = $('body'),\n // $getNav = $('nav.navbar.navigator'),\n // offset = $getNav.outerHeight();\n //\n // if( navScrollSpy.length ){\n // $body.scrollspy({target: '.navbar', offset: offset });\n //\n // // Animation Scrollspy\n // $('.scroll').on('click', function(event) {\n // event.preventDefault();\n //\n // // Active link\n // $('.scroll').removeClass('active');\n // $(this).addClass('active');\n //\n // // Remove navbar collapse\n // $('.navbar-collapse').removeClass('in');\n //\n // // Toggle Bars\n // $('.navbar-toggle').each(function(){\n // $('.mdi', this).removeClass('mdi-close');\n // $('.mdi', this).addClass('mdi-menu');\n // });\n //\n // // Scroll\n // var scrollTop = $(window).scrollTop(),\n // $anchor = $(this).find('a'),\n // $section = $($anchor.attr('href')).offset().top,\n // $window = $(window).width(),\n // $minusDesktop = $getNav.data('minus-value-desktop'),\n // $minusMobile = $getNav.data('minus-value-mobile'),\n // $speed = $getNav.data('speed'),\n // $position;\n //\n // if( $window > 992 ){\n // $position = $section - $minusDesktop;\n // }else{\n // $position = $section - $minusMobile;\n // }\n //\n // $('html, body').stop().animate({\n // scrollTop: $position\n // }, $speed);\n // });\n //\n // // Activate Navigation\n // var fixSpy = function() {\n // var data = $body.data('bs.scrollspy');\n // if (data) {\n // offset = $getNav.outerHeight();\n // data.options.offset = offset;\n // $body.data('bs.scrollspy', data);\n // $body.scrollspy('refresh');\n // }\n // };\n //\n // // Activate Navigation on resize\n // var resizeTimer;\n // $(window).on('resize', function() {\n // clearTimeout(resizeTimer);\n // var resizeTimer = setTimeout(fixSpy, 200);\n // });\n // }\n // }, // end navbarScrollspy\n\n // -------------------------------------------------------------------------\n // updateSidebar\n // Note:\n // -------------------------------------------------------------------------\n updateSidebar: function (user_data) {\n var logger = log4javascript.getLogger('j1.core.navigator.updateSidebar');\n var json_message;\n\n// json_message = JSON.stringify(user_data, undefined, 2); // multiline\n json_message = JSON.stringify(user_data);\n logText = 'user state data: ' + json_message;\n logger.debug(logText);\n\n // Replace Macro placeholders to values\n j1.resolveMacros(user_data);\n // Replace Macro values only\n j1.updateMacros(user_data);\n\n return true;\n\n }, // END updateSidebar\n\n }; // end return (object)\n}( jQuery );\n","/*\n # -----------------------------------------------------------------------------\n # ~/assets/themes/j1/modules/cookiebar/js/cookiebar.js\n # Provides Javascript functions for jQuery cookiebar\n #\n # Product/Info:\n # http://jekyll.one\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n # NOTE:\n # cb cookie disabled. Instead, j1 user state cookie is used.\n # -----------------------------------------------------------------------------\n # TODO:\n # Module needs to be rewritten to use j1 native BS modals.\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-redeclare: \"off\" */\n/* global window */\n\n// TODO:\n\n// -----------------------------------------------------------------------------\n// Cookie Consent core registered as \"cookiebar\"\n// -----------------------------------------------------------------------------\n/*!\n * J1 Cookiebar\n * Copyright (C) 2020 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = function cookiebar (options) {\n\n return {\n\n // -------------------------------------------------------------------------\n // Initialize cookie consent core\n // -------------------------------------------------------------------------\n init: function (options) {\n\n var moduleOptions = options;\n var logger = log4javascript.getLogger('j1.cookiebar');\n var cookie_names = j1.getCookieNames();\n const cookie_user_state = cookie_names.user_state;\n var user_state = {};\n\n var moduleDefaults = {\n renewOnVisit: false, // Renew the cookie upon revisit to website\n forceShow: false, // Force cookiebar to show regardless of user cookie preference\n domain: String(window.location.hostname), // Location of privacy policy\n referrer: String(document.referrer) // Where visitor has come from\n };\n\n var options = $.extend(moduleDefaults,moduleOptions);\n\n var dependencies_met_page_ready = setInterval (function (options) {\n if ( j1.getState() == 'finished' ) {\n\n // Set|Detect J1 UserState\n user_state_detected = j1.existsCookie (cookie_user_state);\n if ( user_state_detected ) {\n logger.info('User state cookie found');\n user_state = j1.readCookie(cookie_user_state);\n } else {\n logger.error('User state NOT cookie found');\n }\n\n // Show cookie (consent) icon\n if (user_state.cookies_accepted == 'accepted') {\n // Display cookie (consent) icon\n $('#quickLinksCookieButton').css('display', 'block');\n }\n\n // Hide cookie (consent) icon\n if (user_state.cookies_accepted == 'pending' || user_state.cookies_accepted == 'declined' ) {\n // Display cookie (consent) icon\n $('#quickLinksCookieButton').css('display', 'none');\n }\n\n // Sets expiration date for cookie\n // var expireDate = new Date();\n // expireDate.setTime(expireDate.getTime()+(options.expireDays*86400000));\n // expireDate = expireDate.toGMTString();\n\n if (\n user_state.cookies_accepted == 'pending' ||\n user_state.cookies_accepted == 'declined' ||\n user_state.cookies_accepted == '')\n {\n $('#topFullCookieConsent').modal('show');\n }\n clearInterval(dependencies_met_page_ready);\n }\n });\n },\n\n // -------------------------------------------------------------------------\n // eventHandler: EventHandler for J1 Cookie Consent\n // Manage button click events for all BS Modals\n // See: https://www.nickang.com/add-event-listener-for-loop-problem-in-javascript/\n // -------------------------------------------------------------------------\n eventHandler: function (options) {\n var logger = log4javascript.getLogger('cookiebar.eventHandler');\n var current_page = window.location.pathname;\n var modalButtons = document.querySelectorAll('a.btn');\n var appDetected = j1.appDetected();\n var deleteOnDecline = options.deleteOnDecline;\n var deleteOnDecline = true;\n var whitelistedPages = options.whitelistedPages;\n var whitelistedPages = [];\n var stopScrolling = options.stopScrolling;\n var cookie_names = j1.getCookieNames();\n const cookie_user_state = cookie_names.user_state;\n var user_state = {};\n var cookie_consent = j1.readCookie(cookie_user_state);\n var whitelisted;\n var json_data;\n\n logText = 'register button click events';\n logger.debug(logText);\n\n modalButtons.forEach(function(button, index) {\n button.addEventListener('click', function(e) {\n\n // CookieConsent policyButton\n // -------------------------------------------------------------------\n if (this.id === 'policyButton') {\n logger.debug('user clicked policyButton');\n // toggle|display cookie policy\n $('#cookiePolicyInfo').toggle( 'fast', function() {\n // toggle container classes\n $('#modal-footer').toggleClass('modal-footer-hidden modal-footer-show');\n });\n\n // return false behaves like preventDefault() to block\n // further event propagation (bubble up)\n return false;\n }\n\n // CookieConsent acceptButton\n // -------------------------------------------------------------------\n if (this.id === 'acceptButton') {\n logger.debug('user clicked acceptButton');\n\n // Set consent state\n cookie_consent = j1.readCookie(cookie_user_state);\n cookie_consent.cookies_accepted = 'accepted';\n\n // Update user state cookie\n\n // j1.writeCookie({\n // name: cookie_user_state,\n // data: cookie_consent,\n // expires: cookie_consent.live_span\n // });\n\n j1.writeCookie({\n name: cookie_user_state,\n data: cookie_consent,\n expires: 365\n });\n\n // update sidebar for changed consent|theme data\n logger.info('update sidebar');\n user_state = j1.readCookie(cookie_names.user_state);\n user_session = j1.readCookie(cookie_names.user_session);\n current_user_data = j1.mergeData(user_session, user_state);\n j1.core.navigator.updateSidebar(current_user_data);\n\n // Display cookie icon\n $('#quickLinksCookieButton').css('display', 'block');\n\n return false;\n }\n\n // CookieConsent declineButton\n // -------------------------------------------------------------------\n if (this.id === 'declineButton') {\n logger.debug('user clicked declineButton');\n\n // Set consent state|current_page\n cookie_consent.cookies_accepted = 'declined';\n current_page = window.location.pathname;\n whitelisted = (whitelistedPages.indexOf(current_page) > -1);\n\n // update sidebar for changed consent|theme data\n logger.info('update sidebar');\n user_state = j1.readCookie(cookie_names.user_state);\n user_session = j1.readCookie(cookie_names.user_session);\n current_user_data = j1.mergeData(user_session, user_state);\n j1.core.navigator.updateSidebar(current_user_data);\n\n if (deleteOnDecline) {\n // Delete cookies\n logger.warn('delete all cookies');\n j1.deleteCookie(cookie_user_state);\n }\n\n $('#quickLinksCookieButton').css('display', 'none');\n // Set route to home page if current page is NOT whitelisted\n if ( !whitelisted ) { j1.goHome(); }\n\n return false;\n }\n\n // revokeCookiesButton\n // -------------------------------------------------------------------\n if (this.id === 'revokeCookies') {\n logger.debug('user clicked revokeCookiesButton');\n\n current_page = window.location.pathname;\n whitelisted = (whitelistedPages.indexOf(current_page) > -1);\n\n // Set consent state\n cookie_consent = j1.readCookie(cookie_user_state);\n cookie_consent.cookies_accepted = 'declined';\n\n // Update user state cookie\n\n // j1.writeCookie({\n // name: cookie_user_state,\n // data: cookie_consent,\n // expires: cookie_consent.live_span\n // });\n\n j1.writeCookie({\n name: cookie_user_state,\n data: cookie_consent,\n expires: 365\n });\n\n // update sidebar for changed consent|theme data\n logger.info('update sidebar');\n user_state = j1.readCookie(cookie_names.user_state);\n user_session = j1.readCookie(cookie_names.user_session);\n current_user_data = j1.mergeData(user_session, user_state);\n j1.core.navigator.updateSidebar(current_user_data);\n\n // Hide cookie icon\n $('#quickLinksCookieButton').css('display', 'none');\n\n // Set route to home page if current page is NOT whitelisted\n if (!whitelisted) { j1.goHome(); }\n }\n\n // remainCookiesButton\n // -------------------------------------------------------------------\n if (this.id === 'remainCookies') {\n logger.debug('user clicked remainCookiesButton');\n return false;\n }\n });\n });\n\n // Register pre/post events for modal cookieRevokeCentralDanger\n // -----------------------------------------------------------------------\n $(document).on('shown.bs.modal','#cookieRevokeCentralDanger', function () {\n logger.debug('user opened modal: cookieRevokeCentralDanger');\n });\n\n $(document).on('hide.bs.modal','#cookieRevokeCentralDanger', function () {\n logger.debug('user closed cookieRevokeCentralDanger');\n });\n\n // Register pre/post events for modal topFullCookieConsent\n // -----------------------------------------------------------------------\n $(document).on('shown.bs.modal','#topFullCookieConsent', function () {\n if ( stopScrolling ) { $('body').addClass('stop-scrolling'); }\n //\n // place action here\n //\n });\n\n $(document).on('hide.bs.modal','#topFullCookieConsent', function () {\n logger.debug('user closed modal: topFullCookieConsent');\n $('body').removeClass('stop-scrolling');\n });\n\n logText = 'events registered';\n logger.debug(logText);\n\n return true;\n } // END eventHandler\n }; // END return\n}( jQuery );\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/scroll-smooth/scroll-smooth.js\n # Provides Javascript functions for smooth scrolling\n #\n # Product/Info:\n # http://jekyll.one\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n'use strict';\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-redeclare: \"off\" */\n/* eslint indent: \"off\" */\n// -----------------------------------------------------------------------------\n\n// -----------------------------------------------------------------------------\n// scrollSmooth core registered as \"scrollSmooth\"\n// -----------------------------------------------------------------------------\n/*!\n * J1 scrollSmooth\n * Copyright (C) 2020 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = function scrollSmooth ( options ) {\n\n // Default settings\n var settings = $.extend({\n foo: 'foo_option',\n bar: 'bar_option'\n }, options );\n\n // -----------------------------------------------------------------------\n // Helper functions\n // -----------------------------------------------------------------------\n function stripHash (url) {\n return url.slice(0, url.lastIndexOf('#'))\n }\n\n function isCssSmoothScrollSupported () {\n return 'scrollBehavior' in document.documentElement.style\n }\n\n return {\n // -------------------------------------------------------------------------\n // Initialize scrollSmooth\n // -------------------------------------------------------------------------\n scroll: function ( target, options ) {\n\n var logger;\n var logText;\n\n logger = log4javascript.getLogger('j1.scrollSmooth.core');\n\n // indicator|check currently NOT used\n // if (isCssSmoothScrollSupported()) { }\n\n logText = 'run module scrollSmooth'\n logger.info(logText);\n\n var duration = options.duration;\n var offset = options.offset;\n\n // var pageUrl = options.location.hash\n // ? stripHash(options.location.href)\n // : options.location.href;\n\n this.scrollTo(target, {\n duration: duration,\n offset: offset,\n callback: null\n });\n\n logText = 'scrollSmooth finished'\n logger.info(logText);\n },\n\n // -------------------------------------------------------------------------\n // scrollTo\n // -------------------------------------------------------------------------\n scrollTo: function ( target, options ) {\n var offset = options.offset;\n\n var $pagehead = $('.attic');\n var $navbar = $('nav.navbar');\n var $adblock = $('#adblock');\n\n var navbarType = $navbar.hasClass('navbar-fixed') ? 'fixed' : 'scrolled';\n var fontSize = $('body').css('font-size').replace('px','');\n var start = window.pageYOffset;\n\n var l = parseInt(fontSize);\n\n var h = $pagehead.length ? $pagehead.height() : 0;\n var n = $navbar.length ? $navbar.height() : 0;\n var a = $adblock.length ? $adblock.height() : 0;\n\n var o = navbarType == 'fixed' ? -1*(n + a + l) : -1*(h + n + a + l);\n\n var opt = {\n duration: options.duration,\n offset: o,\n callback: options.callback,\n easing: options.easing || easeInOutQuad\n };\n\n // This makes ids that start with a number work: ('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n // DecodeURI for nonASCII hashes, they was encoded, but id was not encoded, it lead to not finding the tgt element by id.\n // And this is for IE: document.body.scrollTop\n var tgt = document.querySelector('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n var distance = typeof target === 'string'\n ? opt.offset + (\n target\n ? (tgt && tgt.getBoundingClientRect().top) || 0 // handle non-existent links better.\n : -(document.documentElement.scrollTop || document.body.scrollTop))\n : target\n var duration = typeof opt.duration === 'function'\n ? opt.duration(distance)\n : opt.duration\n var timeStart\n var timeElapsed\n\n requestAnimationFrame(function (time) { timeStart = time; loop(time) })\n function loop (time) {\n timeElapsed = time - timeStart\n\n window.scrollTo(0, opt.easing(timeElapsed, start, distance, duration))\n\n if (timeElapsed < duration) { requestAnimationFrame(loop) } else { end() }\n }\n\n function end () {\n window.scrollTo(0, start + distance)\n\n // jadams, 2020-07-04: on (some?) mobile devices, the navbar\n // background is NOT switched (always?) correctly on a\n // page RELOAD.\n //\n // Solution: scroll the page one pixel back and forth (trigger)\n // to get the right position for the Toccer and adjust the\n // Navigator to display the (tranparent) navbar correctly based\n // on their onscroll events registered.\n //\n $(window).scrollTop($(window).scrollTop()+1);\n $(window).scrollTop($(window).scrollTop()-1);\n\n if (typeof opt.callback === 'function') { opt.callback() }\n }\n\n // Robert Penner's easeInOutQuad - http://robertpenner.com/easing/\n function easeInOutQuad (t, b, c, d) {\n t /= d / 2\n if (t < 1) return c / 2 * t * t + b\n t--\n return -c / 2 * (t * (t - 2) - 1) + b\n }\n } // END scrollTo\n\n }; // END return\n}( jQuery );\n","/*\n * anime.js v3.2.0\n * (c) 2020 Julian Garnier\n * Released under the MIT license\n * animejs.com\n */\n\n'use strict';\n\n// Defaults\n\nvar defaultInstanceSettings = {\n update: null,\n begin: null,\n loopBegin: null,\n changeBegin: null,\n change: null,\n changeComplete: null,\n loopComplete: null,\n complete: null,\n loop: 1,\n direction: 'normal',\n autoplay: true,\n timelineOffset: 0\n};\n\nvar defaultTweenSettings = {\n duration: 1000,\n delay: 0,\n endDelay: 0,\n easing: 'easeOutElastic(1, .5)',\n round: 0\n};\n\nvar validTransforms = ['translateX', 'translateY', 'translateZ', 'rotate', 'rotateX', 'rotateY', 'rotateZ', 'scale', 'scaleX', 'scaleY', 'scaleZ', 'skew', 'skewX', 'skewY', 'perspective', 'matrix', 'matrix3d'];\n\n// Caching\n\nvar cache = {\n CSS: {},\n springs: {}\n};\n\n// Utils\n\nfunction minMax(val, min, max) {\n return Math.min(Math.max(val, min), max);\n}\n\nfunction stringContains(str, text) {\n return str.indexOf(text) > -1;\n}\n\nfunction applyArguments(func, args) {\n return func.apply(null, args);\n}\n\nvar is = {\n arr: function (a) { return Array.isArray(a); },\n obj: function (a) { return stringContains(Object.prototype.toString.call(a), 'Object'); },\n pth: function (a) { return is.obj(a) && a.hasOwnProperty('totalLength'); },\n svg: function (a) { return a instanceof SVGElement; },\n inp: function (a) { return a instanceof HTMLInputElement; },\n dom: function (a) { return a.nodeType || is.svg(a); },\n str: function (a) { return typeof a === 'string'; },\n fnc: function (a) { return typeof a === 'function'; },\n und: function (a) { return typeof a === 'undefined'; },\n hex: function (a) { return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(a); },\n rgb: function (a) { return /^rgb/.test(a); },\n hsl: function (a) { return /^hsl/.test(a); },\n col: function (a) { return (is.hex(a) || is.rgb(a) || is.hsl(a)); },\n key: function (a) { return !defaultInstanceSettings.hasOwnProperty(a) && !defaultTweenSettings.hasOwnProperty(a) && a !== 'targets' && a !== 'keyframes'; }\n};\n\n// Easings\n\nfunction parseEasingParameters(string) {\n var match = /\\(([^)]+)\\)/.exec(string);\n return match ? match[1].split(',').map(function (p) { return parseFloat(p); }) : [];\n}\n\n// Spring solver inspired by Webkit Copyright © 2016 Apple Inc. All rights reserved. https://webkit.org/demos/spring/spring.js\n\nfunction spring(string, duration) {\n\n var params = parseEasingParameters(string);\n var mass = minMax(is.und(params[0]) ? 1 : params[0], .1, 100);\n var stiffness = minMax(is.und(params[1]) ? 100 : params[1], .1, 100);\n var damping = minMax(is.und(params[2]) ? 10 : params[2], .1, 100);\n var velocity = minMax(is.und(params[3]) ? 0 : params[3], .1, 100);\n var w0 = Math.sqrt(stiffness / mass);\n var zeta = damping / (2 * Math.sqrt(stiffness * mass));\n var wd = zeta < 1 ? w0 * Math.sqrt(1 - zeta * zeta) : 0;\n var a = 1;\n var b = zeta < 1 ? (zeta * w0 + -velocity) / wd : -velocity + w0;\n\n function solver(t) {\n var progress = duration ? (duration * t) / 1000 : t;\n if (zeta < 1) {\n progress = Math.exp(-progress * zeta * w0) * (a * Math.cos(wd * progress) + b * Math.sin(wd * progress));\n } else {\n progress = (a + b * progress) * Math.exp(-progress * w0);\n }\n if (t === 0 || t === 1) { return t; }\n return 1 - progress;\n }\n\n function getDuration() {\n var cached = cache.springs[string];\n if (cached) { return cached; }\n var frame = 1/6;\n var elapsed = 0;\n var rest = 0;\n while(true) {\n elapsed += frame;\n if (solver(elapsed) === 1) {\n rest++;\n if (rest >= 16) { break; }\n } else {\n rest = 0;\n }\n }\n var duration = elapsed * frame * 1000;\n cache.springs[string] = duration;\n return duration;\n }\n\n return duration ? solver : getDuration;\n\n}\n\n// Basic steps easing implementation https://developer.mozilla.org/fr/docs/Web/CSS/transition-timing-function\n\nfunction steps(steps) {\n if ( steps === void 0 ) steps = 10;\n\n return function (t) { return Math.ceil((minMax(t, 0.000001, 1)) * steps) * (1 / steps); };\n}\n\n// BezierEasing https://github.com/gre/bezier-easing\n\nvar bezier = (function () {\n\n var kSplineTableSize = 11;\n var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\n\n function A(aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1 }\n function B(aA1, aA2) { return 3.0 * aA2 - 6.0 * aA1 }\n function C(aA1) { return 3.0 * aA1 }\n\n function calcBezier(aT, aA1, aA2) { return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT }\n function getSlope(aT, aA1, aA2) { return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1) }\n\n function binarySubdivide(aX, aA, aB, mX1, mX2) {\n var currentX, currentT, i = 0;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) { aB = currentT; } else { aA = currentT; }\n } while (Math.abs(currentX) > 0.0000001 && ++i < 10);\n return currentT;\n }\n\n function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n for (var i = 0; i < 4; ++i) {\n var currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) { return aGuessT; }\n var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n }\n\n function bezier(mX1, mY1, mX2, mY2) {\n\n if (!(0 <= mX1 && mX1 <= 1 && 0 <= mX2 && mX2 <= 1)) { return; }\n var sampleValues = new Float32Array(kSplineTableSize);\n\n if (mX1 !== mY1 || mX2 !== mY2) {\n for (var i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n }\n\n function getTForX(aX) {\n\n var intervalStart = 0;\n var currentSample = 1;\n var lastSample = kSplineTableSize - 1;\n\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n\n --currentSample;\n\n var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n var guessForT = intervalStart + dist * kSampleStepSize;\n var initialSlope = getSlope(guessForT, mX1, mX2);\n\n if (initialSlope >= 0.001) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n } else if (initialSlope === 0.0) {\n return guessForT;\n } else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n\n }\n\n return function (x) {\n if (mX1 === mY1 && mX2 === mY2) { return x; }\n if (x === 0 || x === 1) { return x; }\n return calcBezier(getTForX(x), mY1, mY2);\n }\n\n }\n\n return bezier;\n\n})();\n\nvar penner = (function () {\n\n // Based on jQuery UI's implemenation of easing equations from Robert Penner (http://www.robertpenner.com/easing)\n\n var eases = { linear: function () { return function (t) { return t; }; } };\n\n var functionEasings = {\n Sine: function () { return function (t) { return 1 - Math.cos(t * Math.PI / 2); }; },\n Circ: function () { return function (t) { return 1 - Math.sqrt(1 - t * t); }; },\n Back: function () { return function (t) { return t * t * (3 * t - 2); }; },\n Bounce: function () { return function (t) {\n var pow2, b = 4;\n while (t < (( pow2 = Math.pow(2, --b)) - 1) / 11) {}\n return 1 / Math.pow(4, 3 - b) - 7.5625 * Math.pow(( pow2 * 3 - 2 ) / 22 - t, 2)\n }; },\n Elastic: function (amplitude, period) {\n if ( amplitude === void 0 ) amplitude = 1;\n if ( period === void 0 ) period = .5;\n\n var a = minMax(amplitude, 1, 10);\n var p = minMax(period, .1, 2);\n return function (t) {\n return (t === 0 || t === 1) ? t : \n -a * Math.pow(2, 10 * (t - 1)) * Math.sin((((t - 1) - (p / (Math.PI * 2) * Math.asin(1 / a))) * (Math.PI * 2)) / p);\n }\n }\n };\n\n var baseEasings = ['Quad', 'Cubic', 'Quart', 'Quint', 'Expo'];\n\n baseEasings.forEach(function (name, i) {\n functionEasings[name] = function () { return function (t) { return Math.pow(t, i + 2); }; };\n });\n\n Object.keys(functionEasings).forEach(function (name) {\n var easeIn = functionEasings[name];\n eases['easeIn' + name] = easeIn;\n eases['easeOut' + name] = function (a, b) { return function (t) { return 1 - easeIn(a, b)(1 - t); }; };\n eases['easeInOut' + name] = function (a, b) { return function (t) { return t < 0.5 ? easeIn(a, b)(t * 2) / 2 : \n 1 - easeIn(a, b)(t * -2 + 2) / 2; }; };\n });\n\n return eases;\n\n})();\n\nfunction parseEasings(easing, duration) {\n if (is.fnc(easing)) { return easing; }\n var name = easing.split('(')[0];\n var ease = penner[name];\n var args = parseEasingParameters(easing);\n switch (name) {\n case 'spring' : return spring(easing, duration);\n case 'cubicBezier' : return applyArguments(bezier, args);\n case 'steps' : return applyArguments(steps, args);\n default : return applyArguments(ease, args);\n }\n}\n\n// Strings\n\nfunction selectString(str) {\n try {\n var nodes = document.querySelectorAll(str);\n return nodes;\n } catch(e) {\n return;\n }\n}\n\n// Arrays\n\nfunction filterArray(arr, callback) {\n var len = arr.length;\n var thisArg = arguments.length >= 2 ? arguments[1] : void 0;\n var result = [];\n for (var i = 0; i < len; i++) {\n if (i in arr) {\n var val = arr[i];\n if (callback.call(thisArg, val, i, arr)) {\n result.push(val);\n }\n }\n }\n return result;\n}\n\nfunction flattenArray(arr) {\n return arr.reduce(function (a, b) { return a.concat(is.arr(b) ? flattenArray(b) : b); }, []);\n}\n\nfunction toArray(o) {\n if (is.arr(o)) { return o; }\n if (is.str(o)) { o = selectString(o) || o; }\n if (o instanceof NodeList || o instanceof HTMLCollection) { return [].slice.call(o); }\n return [o];\n}\n\nfunction arrayContains(arr, val) {\n return arr.some(function (a) { return a === val; });\n}\n\n// Objects\n\nfunction cloneObject(o) {\n var clone = {};\n for (var p in o) { clone[p] = o[p]; }\n return clone;\n}\n\nfunction replaceObjectProps(o1, o2) {\n var o = cloneObject(o1);\n for (var p in o1) { o[p] = o2.hasOwnProperty(p) ? o2[p] : o1[p]; }\n return o;\n}\n\nfunction mergeObjects(o1, o2) {\n var o = cloneObject(o1);\n for (var p in o2) { o[p] = is.und(o1[p]) ? o2[p] : o1[p]; }\n return o;\n}\n\n// Colors\n\nfunction rgbToRgba(rgbValue) {\n var rgb = /rgb\\((\\d+,\\s*[\\d]+,\\s*[\\d]+)\\)/g.exec(rgbValue);\n return rgb ? (\"rgba(\" + (rgb[1]) + \",1)\") : rgbValue;\n}\n\nfunction hexToRgba(hexValue) {\n var rgx = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n var hex = hexValue.replace(rgx, function (m, r, g, b) { return r + r + g + g + b + b; } );\n var rgb = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n var r = parseInt(rgb[1], 16);\n var g = parseInt(rgb[2], 16);\n var b = parseInt(rgb[3], 16);\n return (\"rgba(\" + r + \",\" + g + \",\" + b + \",1)\");\n}\n\nfunction hslToRgba(hslValue) {\n var hsl = /hsl\\((\\d+),\\s*([\\d.]+)%,\\s*([\\d.]+)%\\)/g.exec(hslValue) || /hsla\\((\\d+),\\s*([\\d.]+)%,\\s*([\\d.]+)%,\\s*([\\d.]+)\\)/g.exec(hslValue);\n var h = parseInt(hsl[1], 10) / 360;\n var s = parseInt(hsl[2], 10) / 100;\n var l = parseInt(hsl[3], 10) / 100;\n var a = hsl[4] || 1;\n function hue2rgb(p, q, t) {\n if (t < 0) { t += 1; }\n if (t > 1) { t -= 1; }\n if (t < 1/6) { return p + (q - p) * 6 * t; }\n if (t < 1/2) { return q; }\n if (t < 2/3) { return p + (q - p) * (2/3 - t) * 6; }\n return p;\n }\n var r, g, b;\n if (s == 0) {\n r = g = b = l;\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1/3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1/3);\n }\n return (\"rgba(\" + (r * 255) + \",\" + (g * 255) + \",\" + (b * 255) + \",\" + a + \")\");\n}\n\nfunction colorToRgb(val) {\n if (is.rgb(val)) { return rgbToRgba(val); }\n if (is.hex(val)) { return hexToRgba(val); }\n if (is.hsl(val)) { return hslToRgba(val); }\n}\n\n// Units\n\nfunction getUnit(val) {\n var split = /[+-]?\\d*\\.?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(val);\n if (split) { return split[1]; }\n}\n\nfunction getTransformUnit(propName) {\n if (stringContains(propName, 'translate') || propName === 'perspective') { return 'px'; }\n if (stringContains(propName, 'rotate') || stringContains(propName, 'skew')) { return 'deg'; }\n}\n\n// Values\n\nfunction getFunctionValue(val, animatable) {\n if (!is.fnc(val)) { return val; }\n return val(animatable.target, animatable.id, animatable.total);\n}\n\nfunction getAttribute(el, prop) {\n return el.getAttribute(prop);\n}\n\nfunction convertPxToUnit(el, value, unit) {\n var valueUnit = getUnit(value);\n if (arrayContains([unit, 'deg', 'rad', 'turn'], valueUnit)) { return value; }\n var cached = cache.CSS[value + unit];\n if (!is.und(cached)) { return cached; }\n var baseline = 100;\n var tempEl = document.createElement(el.tagName);\n var parentEl = (el.parentNode && (el.parentNode !== document)) ? el.parentNode : document.body;\n parentEl.appendChild(tempEl);\n tempEl.style.position = 'absolute';\n tempEl.style.width = baseline + unit;\n var factor = baseline / tempEl.offsetWidth;\n parentEl.removeChild(tempEl);\n var convertedUnit = factor * parseFloat(value);\n cache.CSS[value + unit] = convertedUnit;\n return convertedUnit;\n}\n\nfunction getCSSValue(el, prop, unit) {\n if (prop in el.style) {\n var uppercasePropName = prop.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n var value = el.style[prop] || getComputedStyle(el).getPropertyValue(uppercasePropName) || '0';\n return unit ? convertPxToUnit(el, value, unit) : value;\n }\n}\n\nfunction getAnimationType(el, prop) {\n if (is.dom(el) && !is.inp(el) && (getAttribute(el, prop) || (is.svg(el) && el[prop]))) { return 'attribute'; }\n if (is.dom(el) && arrayContains(validTransforms, prop)) { return 'transform'; }\n if (is.dom(el) && (prop !== 'transform' && getCSSValue(el, prop))) { return 'css'; }\n if (el[prop] != null) { return 'object'; }\n}\n\nfunction getElementTransforms(el) {\n if (!is.dom(el)) { return; }\n var str = el.style.transform || '';\n var reg = /(\\w+)\\(([^)]*)\\)/g;\n var transforms = new Map();\n var m; while (m = reg.exec(str)) { transforms.set(m[1], m[2]); }\n return transforms;\n}\n\nfunction getTransformValue(el, propName, animatable, unit) {\n var defaultVal = stringContains(propName, 'scale') ? 1 : 0 + getTransformUnit(propName);\n var value = getElementTransforms(el).get(propName) || defaultVal;\n if (animatable) {\n animatable.transforms.list.set(propName, value);\n animatable.transforms['last'] = propName;\n }\n return unit ? convertPxToUnit(el, value, unit) : value;\n}\n\nfunction getOriginalTargetValue(target, propName, unit, animatable) {\n switch (getAnimationType(target, propName)) {\n case 'transform': return getTransformValue(target, propName, animatable, unit);\n case 'css': return getCSSValue(target, propName, unit);\n case 'attribute': return getAttribute(target, propName);\n default: return target[propName] || 0;\n }\n}\n\nfunction getRelativeValue(to, from) {\n var operator = /^(\\*=|\\+=|-=)/.exec(to);\n if (!operator) { return to; }\n var u = getUnit(to) || 0;\n var x = parseFloat(from);\n var y = parseFloat(to.replace(operator[0], ''));\n switch (operator[0][0]) {\n case '+': return x + y + u;\n case '-': return x - y + u;\n case '*': return x * y + u;\n }\n}\n\nfunction validateValue(val, unit) {\n if (is.col(val)) { return colorToRgb(val); }\n if (/\\s/g.test(val)) { return val; }\n var originalUnit = getUnit(val);\n var unitLess = originalUnit ? val.substr(0, val.length - originalUnit.length) : val;\n if (unit) { return unitLess + unit; }\n return unitLess;\n}\n\n// getTotalLength() equivalent for circle, rect, polyline, polygon and line shapes\n// adapted from https://gist.github.com/SebLambla/3e0550c496c236709744\n\nfunction getDistance(p1, p2) {\n return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));\n}\n\nfunction getCircleLength(el) {\n return Math.PI * 2 * getAttribute(el, 'r');\n}\n\nfunction getRectLength(el) {\n return (getAttribute(el, 'width') * 2) + (getAttribute(el, 'height') * 2);\n}\n\nfunction getLineLength(el) {\n return getDistance(\n {x: getAttribute(el, 'x1'), y: getAttribute(el, 'y1')}, \n {x: getAttribute(el, 'x2'), y: getAttribute(el, 'y2')}\n );\n}\n\nfunction getPolylineLength(el) {\n var points = el.points;\n var totalLength = 0;\n var previousPos;\n for (var i = 0 ; i < points.numberOfItems; i++) {\n var currentPos = points.getItem(i);\n if (i > 0) { totalLength += getDistance(previousPos, currentPos); }\n previousPos = currentPos;\n }\n return totalLength;\n}\n\nfunction getPolygonLength(el) {\n var points = el.points;\n return getPolylineLength(el) + getDistance(points.getItem(points.numberOfItems - 1), points.getItem(0));\n}\n\n// Path animation\n\nfunction getTotalLength(el) {\n if (el.getTotalLength) { return el.getTotalLength(); }\n switch(el.tagName.toLowerCase()) {\n case 'circle': return getCircleLength(el);\n case 'rect': return getRectLength(el);\n case 'line': return getLineLength(el);\n case 'polyline': return getPolylineLength(el);\n case 'polygon': return getPolygonLength(el);\n }\n}\n\nfunction setDashoffset(el) {\n var pathLength = getTotalLength(el);\n el.setAttribute('stroke-dasharray', pathLength);\n return pathLength;\n}\n\n// Motion path\n\nfunction getParentSvgEl(el) {\n var parentEl = el.parentNode;\n while (is.svg(parentEl)) {\n if (!is.svg(parentEl.parentNode)) { break; }\n parentEl = parentEl.parentNode;\n }\n return parentEl;\n}\n\nfunction getParentSvg(pathEl, svgData) {\n var svg = svgData || {};\n var parentSvgEl = svg.el || getParentSvgEl(pathEl);\n var rect = parentSvgEl.getBoundingClientRect();\n var viewBoxAttr = getAttribute(parentSvgEl, 'viewBox');\n var width = rect.width;\n var height = rect.height;\n var viewBox = svg.viewBox || (viewBoxAttr ? viewBoxAttr.split(' ') : [0, 0, width, height]);\n return {\n el: parentSvgEl,\n viewBox: viewBox,\n x: viewBox[0] / 1,\n y: viewBox[1] / 1,\n w: width / viewBox[2],\n h: height / viewBox[3]\n }\n}\n\nfunction getPath(path, percent) {\n var pathEl = is.str(path) ? selectString(path)[0] : path;\n var p = percent || 100;\n return function(property) {\n return {\n property: property,\n el: pathEl,\n svg: getParentSvg(pathEl),\n totalLength: getTotalLength(pathEl) * (p / 100)\n }\n }\n}\n\nfunction getPathProgress(path, progress) {\n function point(offset) {\n if ( offset === void 0 ) offset = 0;\n\n var l = progress + offset >= 1 ? progress + offset : 0;\n return path.el.getPointAtLength(l);\n }\n var svg = getParentSvg(path.el, path.svg);\n var p = point();\n var p0 = point(-1);\n var p1 = point(+1);\n switch (path.property) {\n case 'x': return (p.x - svg.x) * svg.w;\n case 'y': return (p.y - svg.y) * svg.h;\n case 'angle': return Math.atan2(p1.y - p0.y, p1.x - p0.x) * 180 / Math.PI;\n }\n}\n\n// Decompose value\n\nfunction decomposeValue(val, unit) {\n // const rgx = /-?\\d*\\.?\\d+/g; // handles basic numbers\n // const rgx = /[+-]?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?/g; // handles exponents notation\n var rgx = /[+-]?\\d*\\.?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?/g; // handles exponents notation\n var value = validateValue((is.pth(val) ? val.totalLength : val), unit) + '';\n return {\n original: value,\n numbers: value.match(rgx) ? value.match(rgx).map(Number) : [0],\n strings: (is.str(val) || unit) ? value.split(rgx) : []\n }\n}\n\n// Animatables\n\nfunction parseTargets(targets) {\n var targetsArray = targets ? (flattenArray(is.arr(targets) ? targets.map(toArray) : toArray(targets))) : [];\n return filterArray(targetsArray, function (item, pos, self) { return self.indexOf(item) === pos; });\n}\n\nfunction getAnimatables(targets) {\n var parsed = parseTargets(targets);\n return parsed.map(function (t, i) {\n return {target: t, id: i, total: parsed.length, transforms: { list: getElementTransforms(t) } };\n });\n}\n\n// Properties\n\nfunction normalizePropertyTweens(prop, tweenSettings) {\n var settings = cloneObject(tweenSettings);\n // Override duration if easing is a spring\n if (/^spring/.test(settings.easing)) { settings.duration = spring(settings.easing); }\n if (is.arr(prop)) {\n var l = prop.length;\n var isFromTo = (l === 2 && !is.obj(prop[0]));\n if (!isFromTo) {\n // Duration divided by the number of tweens\n if (!is.fnc(tweenSettings.duration)) { settings.duration = tweenSettings.duration / l; }\n } else {\n // Transform [from, to] values shorthand to a valid tween value\n prop = {value: prop};\n }\n }\n var propArray = is.arr(prop) ? prop : [prop];\n return propArray.map(function (v, i) {\n var obj = (is.obj(v) && !is.pth(v)) ? v : {value: v};\n // Default delay value should only be applied to the first tween\n if (is.und(obj.delay)) { obj.delay = !i ? tweenSettings.delay : 0; }\n // Default endDelay value should only be applied to the last tween\n if (is.und(obj.endDelay)) { obj.endDelay = i === propArray.length - 1 ? tweenSettings.endDelay : 0; }\n return obj;\n }).map(function (k) { return mergeObjects(k, settings); });\n}\n\n\nfunction flattenKeyframes(keyframes) {\n var propertyNames = filterArray(flattenArray(keyframes.map(function (key) { return Object.keys(key); })), function (p) { return is.key(p); })\n .reduce(function (a,b) { if (a.indexOf(b) < 0) { a.push(b); } return a; }, []);\n var properties = {};\n var loop = function ( i ) {\n var propName = propertyNames[i];\n properties[propName] = keyframes.map(function (key) {\n var newKey = {};\n for (var p in key) {\n if (is.key(p)) {\n if (p == propName) { newKey.value = key[p]; }\n } else {\n newKey[p] = key[p];\n }\n }\n return newKey;\n });\n };\n\n for (var i = 0; i < propertyNames.length; i++) loop( i );\n return properties;\n}\n\nfunction getProperties(tweenSettings, params) {\n var properties = [];\n var keyframes = params.keyframes;\n if (keyframes) { params = mergeObjects(flattenKeyframes(keyframes), params); }\n for (var p in params) {\n if (is.key(p)) {\n properties.push({\n name: p,\n tweens: normalizePropertyTweens(params[p], tweenSettings)\n });\n }\n }\n return properties;\n}\n\n// Tweens\n\nfunction normalizeTweenValues(tween, animatable) {\n var t = {};\n for (var p in tween) {\n var value = getFunctionValue(tween[p], animatable);\n if (is.arr(value)) {\n value = value.map(function (v) { return getFunctionValue(v, animatable); });\n if (value.length === 1) { value = value[0]; }\n }\n t[p] = value;\n }\n t.duration = parseFloat(t.duration);\n t.delay = parseFloat(t.delay);\n return t;\n}\n\nfunction normalizeTweens(prop, animatable) {\n var previousTween;\n return prop.tweens.map(function (t) {\n var tween = normalizeTweenValues(t, animatable);\n var tweenValue = tween.value;\n var to = is.arr(tweenValue) ? tweenValue[1] : tweenValue;\n var toUnit = getUnit(to);\n var originalValue = getOriginalTargetValue(animatable.target, prop.name, toUnit, animatable);\n var previousValue = previousTween ? previousTween.to.original : originalValue;\n var from = is.arr(tweenValue) ? tweenValue[0] : previousValue;\n var fromUnit = getUnit(from) || getUnit(originalValue);\n var unit = toUnit || fromUnit;\n if (is.und(to)) { to = previousValue; }\n tween.from = decomposeValue(from, unit);\n tween.to = decomposeValue(getRelativeValue(to, from), unit);\n tween.start = previousTween ? previousTween.end : 0;\n tween.end = tween.start + tween.delay + tween.duration + tween.endDelay;\n tween.easing = parseEasings(tween.easing, tween.duration);\n tween.isPath = is.pth(tweenValue);\n tween.isColor = is.col(tween.from.original);\n if (tween.isColor) { tween.round = 1; }\n previousTween = tween;\n return tween;\n });\n}\n\n// Tween progress\n\nvar setProgressValue = {\n css: function (t, p, v) { return t.style[p] = v; },\n attribute: function (t, p, v) { return t.setAttribute(p, v); },\n object: function (t, p, v) { return t[p] = v; },\n transform: function (t, p, v, transforms, manual) {\n transforms.list.set(p, v);\n if (p === transforms.last || manual) {\n var str = '';\n transforms.list.forEach(function (value, prop) { str += prop + \"(\" + value + \") \"; });\n t.style.transform = str;\n }\n }\n};\n\n// Set Value helper\n\nfunction setTargetsValue(targets, properties) {\n var animatables = getAnimatables(targets);\n animatables.forEach(function (animatable) {\n for (var property in properties) {\n var value = getFunctionValue(properties[property], animatable);\n var target = animatable.target;\n var valueUnit = getUnit(value);\n var originalValue = getOriginalTargetValue(target, property, valueUnit, animatable);\n var unit = valueUnit || getUnit(originalValue);\n var to = getRelativeValue(validateValue(value, unit), originalValue);\n var animType = getAnimationType(target, property);\n setProgressValue[animType](target, property, to, animatable.transforms, true);\n }\n });\n}\n\n// Animations\n\nfunction createAnimation(animatable, prop) {\n var animType = getAnimationType(animatable.target, prop.name);\n if (animType) {\n var tweens = normalizeTweens(prop, animatable);\n var lastTween = tweens[tweens.length - 1];\n return {\n type: animType,\n property: prop.name,\n animatable: animatable,\n tweens: tweens,\n duration: lastTween.end,\n delay: tweens[0].delay,\n endDelay: lastTween.endDelay\n }\n }\n}\n\nfunction getAnimations(animatables, properties) {\n return filterArray(flattenArray(animatables.map(function (animatable) {\n return properties.map(function (prop) {\n return createAnimation(animatable, prop);\n });\n })), function (a) { return !is.und(a); });\n}\n\n// Create Instance\n\nfunction getInstanceTimings(animations, tweenSettings) {\n var animLength = animations.length;\n var getTlOffset = function (anim) { return anim.timelineOffset ? anim.timelineOffset : 0; };\n var timings = {};\n timings.duration = animLength ? Math.max.apply(Math, animations.map(function (anim) { return getTlOffset(anim) + anim.duration; })) : tweenSettings.duration;\n timings.delay = animLength ? Math.min.apply(Math, animations.map(function (anim) { return getTlOffset(anim) + anim.delay; })) : tweenSettings.delay;\n timings.endDelay = animLength ? timings.duration - Math.max.apply(Math, animations.map(function (anim) { return getTlOffset(anim) + anim.duration - anim.endDelay; })) : tweenSettings.endDelay;\n return timings;\n}\n\nvar instanceID = 0;\n\nfunction createNewInstance(params) {\n var instanceSettings = replaceObjectProps(defaultInstanceSettings, params);\n var tweenSettings = replaceObjectProps(defaultTweenSettings, params);\n var properties = getProperties(tweenSettings, params);\n var animatables = getAnimatables(params.targets);\n var animations = getAnimations(animatables, properties);\n var timings = getInstanceTimings(animations, tweenSettings);\n var id = instanceID;\n instanceID++;\n return mergeObjects(instanceSettings, {\n id: id,\n children: [],\n animatables: animatables,\n animations: animations,\n duration: timings.duration,\n delay: timings.delay,\n endDelay: timings.endDelay\n });\n}\n\n// Core\n\nvar activeInstances = [];\nvar pausedInstances = [];\nvar raf;\n\nvar engine = (function () {\n function play() { \n raf = requestAnimationFrame(step);\n }\n function step(t) {\n var activeInstancesLength = activeInstances.length;\n if (activeInstancesLength) {\n var i = 0;\n while (i < activeInstancesLength) {\n var activeInstance = activeInstances[i];\n if (!activeInstance.paused) {\n activeInstance.tick(t);\n } else {\n var instanceIndex = activeInstances.indexOf(activeInstance);\n if (instanceIndex > -1) {\n activeInstances.splice(instanceIndex, 1);\n activeInstancesLength = activeInstances.length;\n }\n }\n i++;\n }\n play();\n } else {\n raf = cancelAnimationFrame(raf);\n }\n }\n return play;\n})();\n\nfunction handleVisibilityChange() {\n if (document.hidden) {\n activeInstances.forEach(function (ins) { return ins.pause(); });\n pausedInstances = activeInstances.slice(0);\n anime.running = activeInstances = [];\n } else {\n pausedInstances.forEach(function (ins) { return ins.play(); });\n }\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('visibilitychange', handleVisibilityChange);\n}\n\n// Public Instance\n\nfunction anime(params) {\n if ( params === void 0 ) params = {};\n\n\n var startTime = 0, lastTime = 0, now = 0;\n var children, childrenLength = 0;\n var resolve = null;\n\n function makePromise(instance) {\n var promise = window.Promise && new Promise(function (_resolve) { return resolve = _resolve; });\n instance.finished = promise;\n return promise;\n }\n\n var instance = createNewInstance(params);\n var promise = makePromise(instance);\n\n function toggleInstanceDirection() {\n var direction = instance.direction;\n if (direction !== 'alternate') {\n instance.direction = direction !== 'normal' ? 'normal' : 'reverse';\n }\n instance.reversed = !instance.reversed;\n children.forEach(function (child) { return child.reversed = instance.reversed; });\n }\n\n function adjustTime(time) {\n return instance.reversed ? instance.duration - time : time;\n }\n\n function resetTime() {\n startTime = 0;\n lastTime = adjustTime(instance.currentTime) * (1 / anime.speed);\n }\n\n function seekChild(time, child) {\n if (child) { child.seek(time - child.timelineOffset); }\n }\n\n function syncInstanceChildren(time) {\n if (!instance.reversePlayback) {\n for (var i = 0; i < childrenLength; i++) { seekChild(time, children[i]); }\n } else {\n for (var i$1 = childrenLength; i$1--;) { seekChild(time, children[i$1]); }\n }\n }\n\n function setAnimationsProgress(insTime) {\n var i = 0;\n var animations = instance.animations;\n var animationsLength = animations.length;\n while (i < animationsLength) {\n var anim = animations[i];\n var animatable = anim.animatable;\n var tweens = anim.tweens;\n var tweenLength = tweens.length - 1;\n var tween = tweens[tweenLength];\n // Only check for keyframes if there is more than one tween\n if (tweenLength) { tween = filterArray(tweens, function (t) { return (insTime < t.end); })[0] || tween; }\n var elapsed = minMax(insTime - tween.start - tween.delay, 0, tween.duration) / tween.duration;\n var eased = isNaN(elapsed) ? 1 : tween.easing(elapsed);\n var strings = tween.to.strings;\n var round = tween.round;\n var numbers = [];\n var toNumbersLength = tween.to.numbers.length;\n var progress = (void 0);\n for (var n = 0; n < toNumbersLength; n++) {\n var value = (void 0);\n var toNumber = tween.to.numbers[n];\n var fromNumber = tween.from.numbers[n] || 0;\n if (!tween.isPath) {\n value = fromNumber + (eased * (toNumber - fromNumber));\n } else {\n value = getPathProgress(tween.value, eased * toNumber);\n }\n if (round) {\n if (!(tween.isColor && n > 2)) {\n value = Math.round(value * round) / round;\n }\n }\n numbers.push(value);\n }\n // Manual Array.reduce for better performances\n var stringsLength = strings.length;\n if (!stringsLength) {\n progress = numbers[0];\n } else {\n progress = strings[0];\n for (var s = 0; s < stringsLength; s++) {\n var a = strings[s];\n var b = strings[s + 1];\n var n$1 = numbers[s];\n if (!isNaN(n$1)) {\n if (!b) {\n progress += n$1 + ' ';\n } else {\n progress += n$1 + b;\n }\n }\n }\n }\n setProgressValue[anim.type](animatable.target, anim.property, progress, animatable.transforms);\n anim.currentValue = progress;\n i++;\n }\n }\n\n function setCallback(cb) {\n if (instance[cb] && !instance.passThrough) { instance[cb](instance); }\n }\n\n function countIteration() {\n if (instance.remaining && instance.remaining !== true) {\n instance.remaining--;\n }\n }\n\n function setInstanceProgress(engineTime) {\n var insDuration = instance.duration;\n var insDelay = instance.delay;\n var insEndDelay = insDuration - instance.endDelay;\n var insTime = adjustTime(engineTime);\n instance.progress = minMax((insTime / insDuration) * 100, 0, 100);\n instance.reversePlayback = insTime < instance.currentTime;\n if (children) { syncInstanceChildren(insTime); }\n if (!instance.began && instance.currentTime > 0) {\n instance.began = true;\n setCallback('begin');\n }\n if (!instance.loopBegan && instance.currentTime > 0) {\n instance.loopBegan = true;\n setCallback('loopBegin');\n }\n if (insTime <= insDelay && instance.currentTime !== 0) {\n setAnimationsProgress(0);\n }\n if ((insTime >= insEndDelay && instance.currentTime !== insDuration) || !insDuration) {\n setAnimationsProgress(insDuration);\n }\n if (insTime > insDelay && insTime < insEndDelay) {\n if (!instance.changeBegan) {\n instance.changeBegan = true;\n instance.changeCompleted = false;\n setCallback('changeBegin');\n }\n setCallback('change');\n setAnimationsProgress(insTime);\n } else {\n if (instance.changeBegan) {\n instance.changeCompleted = true;\n instance.changeBegan = false;\n setCallback('changeComplete');\n }\n }\n instance.currentTime = minMax(insTime, 0, insDuration);\n if (instance.began) { setCallback('update'); }\n if (engineTime >= insDuration) {\n lastTime = 0;\n countIteration();\n if (!instance.remaining) {\n instance.paused = true;\n if (!instance.completed) {\n instance.completed = true;\n setCallback('loopComplete');\n setCallback('complete');\n if (!instance.passThrough && 'Promise' in window) {\n resolve();\n promise = makePromise(instance);\n }\n }\n } else {\n startTime = now;\n setCallback('loopComplete');\n instance.loopBegan = false;\n if (instance.direction === 'alternate') {\n toggleInstanceDirection();\n }\n }\n }\n }\n\n instance.reset = function() {\n var direction = instance.direction;\n instance.passThrough = false;\n instance.currentTime = 0;\n instance.progress = 0;\n instance.paused = true;\n instance.began = false;\n instance.loopBegan = false;\n instance.changeBegan = false;\n instance.completed = false;\n instance.changeCompleted = false;\n instance.reversePlayback = false;\n instance.reversed = direction === 'reverse';\n instance.remaining = instance.loop;\n children = instance.children;\n childrenLength = children.length;\n for (var i = childrenLength; i--;) { instance.children[i].reset(); }\n if (instance.reversed && instance.loop !== true || (direction === 'alternate' && instance.loop === 1)) { instance.remaining++; }\n setAnimationsProgress(instance.reversed ? instance.duration : 0);\n };\n\n // Set Value helper\n\n instance.set = function(targets, properties) {\n setTargetsValue(targets, properties);\n return instance;\n };\n\n instance.tick = function(t) {\n now = t;\n if (!startTime) { startTime = now; }\n setInstanceProgress((now + (lastTime - startTime)) * anime.speed);\n };\n\n instance.seek = function(time) {\n setInstanceProgress(adjustTime(time));\n };\n\n instance.pause = function() {\n instance.paused = true;\n resetTime();\n };\n\n instance.play = function() {\n if (!instance.paused) { return; }\n if (instance.completed) { instance.reset(); }\n instance.paused = false;\n activeInstances.push(instance);\n resetTime();\n if (!raf) { engine(); }\n };\n\n instance.reverse = function() {\n toggleInstanceDirection();\n instance.completed = instance.reversed ? false : true;\n resetTime();\n };\n\n instance.restart = function() {\n instance.reset();\n instance.play();\n };\n\n instance.reset();\n\n if (instance.autoplay) { instance.play(); }\n\n return instance;\n\n}\n\n// Remove targets from animation\n\nfunction removeTargetsFromAnimations(targetsArray, animations) {\n for (var a = animations.length; a--;) {\n if (arrayContains(targetsArray, animations[a].animatable.target)) {\n animations.splice(a, 1);\n }\n }\n}\n\nfunction removeTargets(targets) {\n var targetsArray = parseTargets(targets);\n for (var i = activeInstances.length; i--;) {\n var instance = activeInstances[i];\n var animations = instance.animations;\n var children = instance.children;\n removeTargetsFromAnimations(targetsArray, animations);\n for (var c = children.length; c--;) {\n var child = children[c];\n var childAnimations = child.animations;\n removeTargetsFromAnimations(targetsArray, childAnimations);\n if (!childAnimations.length && !child.children.length) { children.splice(c, 1); }\n }\n if (!animations.length && !children.length) { instance.pause(); }\n }\n}\n\n// Stagger helpers\n\nfunction stagger(val, params) {\n if ( params === void 0 ) params = {};\n\n var direction = params.direction || 'normal';\n var easing = params.easing ? parseEasings(params.easing) : null;\n var grid = params.grid;\n var axis = params.axis;\n var fromIndex = params.from || 0;\n var fromFirst = fromIndex === 'first';\n var fromCenter = fromIndex === 'center';\n var fromLast = fromIndex === 'last';\n var isRange = is.arr(val);\n var val1 = isRange ? parseFloat(val[0]) : parseFloat(val);\n var val2 = isRange ? parseFloat(val[1]) : 0;\n var unit = getUnit(isRange ? val[1] : val) || 0;\n var start = params.start || 0 + (isRange ? val1 : 0);\n var values = [];\n var maxValue = 0;\n return function (el, i, t) {\n if (fromFirst) { fromIndex = 0; }\n if (fromCenter) { fromIndex = (t - 1) / 2; }\n if (fromLast) { fromIndex = t - 1; }\n if (!values.length) {\n for (var index = 0; index < t; index++) {\n if (!grid) {\n values.push(Math.abs(fromIndex - index));\n } else {\n var fromX = !fromCenter ? fromIndex%grid[0] : (grid[0]-1)/2;\n var fromY = !fromCenter ? Math.floor(fromIndex/grid[0]) : (grid[1]-1)/2;\n var toX = index%grid[0];\n var toY = Math.floor(index/grid[0]);\n var distanceX = fromX - toX;\n var distanceY = fromY - toY;\n var value = Math.sqrt(distanceX * distanceX + distanceY * distanceY);\n if (axis === 'x') { value = -distanceX; }\n if (axis === 'y') { value = -distanceY; }\n values.push(value);\n }\n maxValue = Math.max.apply(Math, values);\n }\n if (easing) { values = values.map(function (val) { return easing(val / maxValue) * maxValue; }); }\n if (direction === 'reverse') { values = values.map(function (val) { return axis ? (val < 0) ? val * -1 : -val : Math.abs(maxValue - val); }); }\n }\n var spacing = isRange ? (val2 - val1) / maxValue : val1;\n return start + (spacing * (Math.round(values[i] * 100) / 100)) + unit;\n }\n}\n\n// Timeline\n\nfunction timeline(params) {\n if ( params === void 0 ) params = {};\n\n var tl = anime(params);\n tl.duration = 0;\n tl.add = function(instanceParams, timelineOffset) {\n var tlIndex = activeInstances.indexOf(tl);\n var children = tl.children;\n if (tlIndex > -1) { activeInstances.splice(tlIndex, 1); }\n function passThrough(ins) { ins.passThrough = true; }\n for (var i = 0; i < children.length; i++) { passThrough(children[i]); }\n var insParams = mergeObjects(instanceParams, replaceObjectProps(defaultTweenSettings, params));\n insParams.targets = insParams.targets || params.targets;\n var tlDuration = tl.duration;\n insParams.autoplay = false;\n insParams.direction = tl.direction;\n insParams.timelineOffset = is.und(timelineOffset) ? tlDuration : getRelativeValue(timelineOffset, tlDuration);\n passThrough(tl);\n tl.seek(insParams.timelineOffset);\n var ins = anime(insParams);\n passThrough(ins);\n children.push(ins);\n var timings = getInstanceTimings(children, params);\n tl.delay = timings.delay;\n tl.endDelay = timings.endDelay;\n tl.duration = timings.duration;\n tl.seek(0);\n tl.reset();\n if (tl.autoplay) { tl.play(); }\n return tl;\n };\n return tl;\n}\n\nanime.version = '3.2.0';\nanime.speed = 1;\nanime.running = activeInstances;\nanime.remove = removeTargets;\nanime.get = getOriginalTargetValue;\nanime.set = setTargetsValue;\nanime.convertPx = convertPxToUnit;\nanime.path = getPath;\nanime.setDashoffset = setDashoffset;\nanime.stagger = stagger;\nanime.timeline = timeline;\nanime.easing = parseEasings;\nanime.penner = penner;\nanime.random = function (min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; };\n\nmodule.exports = anime;\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/tocbot/tocbot.js\n # Tocbot v4.12.0 implementation for J1 template\n #\n # Product/Info:\n # https://jekyll.one\n # https://tscanlin.github.io/tocbot\n # https://github.com/tscanlin/tocbot\n #\n # Copyright (C) 2020 Juergen Adams\n # Copyright (C) 2016 Tim Scanlin\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # Tocbot is licensed under the MIT License.\n # For details, https://github.com/tscanlin/tocbot/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n # rules:\n # \"eslint:tocbot\": \"eslint --ignore-path .eslintignore src/tocbot/js\"\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\n/**\n * Tocbot\n * Tocbot creates a toble of contents based on HTML headings on a page,\n * this allows users to easily jump to different sections of the document.\n * Tocbot was inspired by tocify (http://gregfranko.com/jquery.tocify.js/).\n * The main differences are that it works natively without any need for jquery or jquery UI).\n *\n * @author Tim Scanlin\n */\n\n/* globals define */\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n define([], factory(root))\n } else if (typeof exports === 'object') {\n module.exports = factory(root)\n } else {\n root.tocbot = factory(root)\n }\n})(typeof global !== 'undefined' ? global : this.window || this.global, function (root) {\n 'use strict'\n\n // Default options.\n var defaultOptions = require('./default-options.js')\n // Object to store current options.\n var options = {}\n // Object for public APIs.\n var tocbot = {}\n\n var BuildHtml = require('./build-html.js')\n var ParseContent = require('./parse-content.js')\n var updateTocScroll = require('./update-toc-scroll.js')\n // Keep these variables at top scope once options are passed in.\n var buildHtml\n var parseContent\n\n // Just return if its not a browser.\n var supports = !!root && !!root.document && !!root.document.querySelector && !!root.addEventListener // Feature test\n if (typeof window === 'undefined' && !supports) {\n return\n }\n var headingsArray\n\n // From: https://github.com/Raynos/xtend\n var hasOwnProperty = Object.prototype.hasOwnProperty\n function extend () {\n var target = {}\n for (var i = 0; i < arguments.length; i++) {\n var source = arguments[i]\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n target[key] = source[key]\n }\n }\n }\n return target\n }\n\n // From: https://remysharp.com/2010/07/21/throttling-function-calls\n function throttle (fn, threshold, scope) {\n threshold || (threshold = 250)\n var last\n var deferTimer\n return function () {\n var context = scope || this\n var now = +new Date()\n var args = arguments\n if (last && now < last + threshold) {\n // hold on to it\n clearTimeout(deferTimer)\n deferTimer = setTimeout(function () {\n last = now\n fn.apply(context, args)\n }, threshold)\n } else {\n last = now\n fn.apply(context, args)\n }\n }\n }\n\n /**\n * Destroy tocbot.\n */\n tocbot.destroy = function () {\n if (!options.skipRendering) {\n // Clear HTML.\n try {\n document.querySelector(options.tocSelector).innerHTML = ''\n } catch (e) {\n console.warn('Element not found: ' + options.tocSelector); // eslint-disable-line\n }\n }\n\n // Remove event listeners.\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n document.querySelector(options.scrollContainer).removeEventListener('scroll', this._scrollListener, false)\n document.querySelector(options.scrollContainer).removeEventListener('resize', this._scrollListener, false)\n if (buildHtml) {\n document.querySelector(options.scrollContainer).removeEventListener('click', this._clickListener, false)\n }\n } else {\n document.removeEventListener('scroll', this._scrollListener, false)\n document.removeEventListener('resize', this._scrollListener, false)\n if (buildHtml) {\n document.removeEventListener('click', this._clickListener, false)\n }\n }\n }\n\n /**\n * Initialize tocbot.\n * @param {object} customOptions\n */\n tocbot.init = function (customOptions) {\n // feature test\n if (!supports) {\n return\n }\n\n // Merge defaults with user options.\n // Set to options variable at the top.\n options = extend(defaultOptions, customOptions || {})\n this.options = options\n this.state = {}\n\n // Init smooth scroll if enabled (default).\n if (options.scrollSmooth) {\n options.duration = options.scrollSmoothDuration\n options.offset = options.scrollSmoothOffset\n tocbot.scrollSmooth = require('./scroll-smooth').initSmoothScrolling(options)\n }\n\n // Pass options to these modules.\n buildHtml = BuildHtml(options)\n parseContent = ParseContent(options)\n\n // For testing purposes.\n this._buildHtml = buildHtml\n this._parseContent = parseContent\n\n // Destroy it if it exists first.\n tocbot.destroy()\n\n // Get headings array.\n headingsArray = parseContent.selectHeadings(options.contentSelector, options.headingSelector)\n // Return if no headings are found.\n if (headingsArray === null) {\n return\n }\n\n // Build nested headings array.\n var nestedHeadingsObj = parseContent.nestHeadingsArray(headingsArray)\n var nestedHeadings = nestedHeadingsObj.nest\n\n // Render.\n if (!options.skipRendering) {\n buildHtml.render(options.tocSelector, nestedHeadings)\n }\n\n // Update Sidebar and bind listeners.\n this._scrollListener = throttle(function (e) {\n buildHtml.updateToc(headingsArray)\n !options.disableTocScrollSync && updateTocScroll(options)\n var isTop = e && e.target && e.target.scrollingElement && e.target.scrollingElement.scrollTop === 0\n if ((e && (e.eventPhase === 0 || e.currentTarget === null)) || isTop) {\n buildHtml.updateToc(headingsArray)\n if (options.scrollEndCallback) {\n options.scrollEndCallback(e)\n }\n }\n }, options.throttleTimeout)\n this._scrollListener()\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n document.querySelector(options.scrollContainer).addEventListener('scroll', this._scrollListener, false)\n document.querySelector(options.scrollContainer).addEventListener('resize', this._scrollListener, false)\n } else {\n document.addEventListener('scroll', this._scrollListener, false)\n document.addEventListener('resize', this._scrollListener, false)\n }\n\n // Bind click listeners to disable animation.\n var timeout = null\n this._clickListener = throttle(function (event) {\n if (options.scrollSmooth) {\n buildHtml.disableTocAnimation(event)\n }\n buildHtml.updateToc(headingsArray)\n // Timeout to re-enable the animation.\n timeout && clearTimeout(timeout)\n timeout = setTimeout(function () {\n buildHtml.enableTocAnimation()\n }, options.scrollSmoothDuration)\n }, options.throttleTimeout)\n\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n document.querySelector(options.scrollContainer).addEventListener('click', this._clickListener, false)\n } else {\n document.addEventListener('click', this._clickListener, false)\n }\n\n return this\n }\n\n /**\n * Refresh tocbot.\n */\n tocbot.refresh = function (customOptions) {\n tocbot.destroy()\n tocbot.init(customOptions || this.options)\n }\n\n // Make tocbot available globally.\n root.tocbot = tocbot\n\n return tocbot\n})\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = {\n // Where to render the table of contents.\n tocSelector: '.js-toc',\n // Where to grab the headings to build the table of contents.\n contentSelector: '.js-toc-content',\n // Which headings to grab inside of the contentSelector element.\n headingSelector: 'h1, h2, h3',\n // Headings that match the ignoreSelector will be skipped.\n ignoreSelector: '.js-toc-ignore',\n // For headings inside relative or absolute positioned containers within content\n hasInnerContainers: false,\n // Main class to add to links.\n linkClass: 'toc-link',\n // Extra classes to add to links.\n extraLinkClasses: '',\n // Class to add to active links,\n // the link corresponding to the top most heading on the page.\n activeLinkClass: 'is-active-link',\n // Main class to add to lists.\n listClass: 'toc-list',\n // Extra classes to add to lists.\n extraListClasses: '',\n // Class that gets added when a list should be collapsed.\n isCollapsedClass: 'is-collapsed',\n // Class that gets added when a list should be able\n // to be collapsed but isn't necessarily collapsed.\n collapsibleClass: 'is-collapsible',\n // Class to add to list items.\n listItemClass: 'toc-list-item',\n // Class to add to active list items.\n activeListItemClass: 'is-active-li',\n // How many heading levels should not be collapsed.\n // For example, number 6 will show everything since\n // there are only 6 heading levels and number 0 will collapse them all.\n // The sections that are hidden will open\n // and close as you scroll to headings within them.\n collapseDepth: 0,\n // Smooth scrolling enabled.\n scrollSmooth: true,\n // Smooth scroll duration.\n scrollSmoothDuration: 420,\n // Smooth scroll offset.\n scrollSmoothOffset: 0,\n // Callback for scroll end.\n scrollEndCallback: function (e) {},\n // Headings offset between the headings and the top of the document (this is meant for minor adjustments).\n headingsOffset: 1,\n // Timeout between events firing to make sure it's\n // not too rapid (for performance reasons).\n throttleTimeout: 50,\n // Element to add the positionFixedClass to.\n positionFixedSelector: null,\n // Fixed position class to add to make sidebar fixed after scrolling\n // down past the fixedSidebarOffset.\n positionFixedClass: 'is-position-fixed',\n // fixedSidebarOffset can be any number but by default is set\n // to auto which sets the fixedSidebarOffset to the sidebar\n // element's offsetTop from the top of the document on init.\n fixedSidebarOffset: 'auto',\n // includeHtml can be set to true to include the HTML markup from the\n // heading node instead of just including the textContent.\n includeHtml: false,\n // onclick function to apply to all links in toc. will be called with\n // the event as the first parameter, and this can be used to stop,\n // propagation, prevent default or perform action\n onClick: function (e) {},\n // orderedList can be set to false to generate unordered lists (ul)\n // instead of ordered lists (ol)\n orderedList: true,\n // If there is a fixed article scroll container, set to calculate titles' offset\n scrollContainer: null,\n // prevent ToC DOM rendering if it's already rendered by an external system\n skipRendering: false,\n // Optional callback to change heading labels.\n // For example it can be used to cut down and put ellipses on multiline headings you deem too long.\n // Called each time a heading is parsed. Expects a string in return, the modified label to display.\n // function (string) => string\n headingLabelCallback: false,\n // ignore headings that are hidden in DOM\n ignoreHiddenElements: false,\n // Optional callback to modify properties of parsed headings.\n // The heading element is passed in node parameter and information parsed by default parser is provided in obj parameter.\n // Function has to return the same or modified obj.\n // The heading will be excluded from TOC if nothing is returned.\n // function (object, HTMLElement) => object | void\n headingObjectCallback: null,\n // Set the base path, useful if you use a `base` tag in `head`.\n basePath: '',\n // Only takes affect when `tocSelector` is scrolling,\n // keep the toc scroll position in sync with the content.\n disableTocScrollSync: false,\n};\n","/**\n * This file is responsible for building the DOM and updating DOM state.\n *\n * @author Tim Scanlin\n */\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = function (options) {\n var forEach = [].forEach\n var some = [].some\n var body = document.body\n var currentlyHighlighting = true\n var SPACE_CHAR = ' '\n\n /**\n * Create link and list elements.\n * @param {Object} d\n * @param {HTMLElement} container\n * @return {HTMLElement}\n */\n function createEl (d, container) {\n var link = container.appendChild(createLink(d))\n if (d.children.length) {\n var list = createList(d.isCollapsed)\n d.children.forEach(function (child) {\n createEl(child, list)\n })\n link.appendChild(list)\n }\n }\n\n /**\n * Render nested heading array data into a given selector.\n * @param {String} selector\n * @param {Array} data\n * @return {HTMLElement}\n */\n function render (selector, data) {\n var collapsed = false\n var container = createList(collapsed)\n\n data.forEach(function (d) {\n createEl(d, container)\n })\n\n var parent = document.querySelector(selector)\n\n // Return if no parent is found.\n if (parent === null) {\n return\n }\n\n // Remove existing child if it exists.\n if (parent.firstChild) {\n parent.removeChild(parent.firstChild)\n }\n\n // Just return the parent and don't append the list if no links are found.\n if (data.length === 0) {\n return parent\n }\n\n // Append the Elements that have been created\n return parent.appendChild(container)\n }\n\n /**\n * Create link element.\n * @param {Object} data\n * @return {HTMLElement}\n */\n function createLink (data) {\n var item = document.createElement('li')\n var a = document.createElement('a')\n if (options.listItemClass) {\n item.setAttribute('class', options.listItemClass)\n }\n\n if (options.onClick) {\n a.onclick = options.onClick\n }\n\n if (options.includeHtml && data.childNodes.length) {\n forEach.call(data.childNodes, function (node) {\n a.appendChild(node.cloneNode(true))\n })\n } else {\n // Default behavior.\n a.textContent = data.textContent\n }\n a.setAttribute('href', options.basePath + '#' + data.id)\n a.setAttribute('class', options.linkClass +\n SPACE_CHAR + 'node-name--' + data.nodeName +\n SPACE_CHAR + options.extraLinkClasses)\n item.appendChild(a)\n return item\n }\n\n /**\n * Create list element.\n * @param {Boolean} isCollapsed\n * @return {HTMLElement}\n */\n function createList (isCollapsed) {\n var listElement = (options.orderedList) ? 'ol' : 'ul'\n var list = document.createElement(listElement)\n var classes = options.listClass +\n SPACE_CHAR + options.extraListClasses\n if (isCollapsed) {\n classes += SPACE_CHAR + options.collapsibleClass\n classes += SPACE_CHAR + options.isCollapsedClass\n }\n list.setAttribute('class', classes)\n return list\n }\n\n /**\n * Update fixed sidebar class.\n * @return {HTMLElement}\n */\n function updateFixedSidebarClass () {\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n var top\n top = document.querySelector(options.scrollContainer).scrollTop\n } else {\n top = document.documentElement.scrollTop || body.scrollTop\n }\n var posFixedEl = document.querySelector(options.positionFixedSelector)\n\n if (options.fixedSidebarOffset === 'auto') {\n options.fixedSidebarOffset = document.querySelector(options.tocSelector).offsetTop\n }\n\n if (top > options.fixedSidebarOffset) {\n if (posFixedEl.className.indexOf(options.positionFixedClass) === -1) {\n posFixedEl.className += SPACE_CHAR + options.positionFixedClass\n }\n } else {\n posFixedEl.className = posFixedEl.className.split(SPACE_CHAR + options.positionFixedClass).join('')\n }\n }\n\n /**\n * Get top position of heading\n * @param {HTMLElement}\n * @return {integer} position\n */\n function getHeadingTopPos (obj) {\n var position = 0\n if (obj !== document.querySelector(options.contentSelector && obj != null)) {\n position = obj.offsetTop\n if (options.hasInnerContainers) { position += getHeadingTopPos(obj.offsetParent) }\n }\n return position\n }\n\n /**\n * Update TOC highlighting and collapsed groups\n */\n function updateToc (headingsArray) {\n // If a fixed content container was set\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n var top\n top = document.querySelector(options.scrollContainer).scrollTop\n } else {\n top = document.documentElement.scrollTop || body.scrollTop\n }\n\n // Add fixed class at offset\n if (options.positionFixedSelector) {\n updateFixedSidebarClass()\n }\n\n // Get the most TOP heading currently visible on the page to\n // identify what element to be highlighted\n var headings = headingsArray;\n var topHeader;\n var headingTopPos;\n\n // Using some instead of each so that we can escape early\n if (currentlyHighlighting &&\n document.querySelector(options.tocSelector) !== null &&\n headings.length > 0) {\n some.call(headings, function (heading, i) {\n headingTopPos = getHeadingTopPos(heading)\n if (headingTopPos > top + options.headingsOffset + 10) {\n // Don't allow negative index value\n // var index = (i === 0) ? i : i - 1;\n // topHeader = headings[index];\n // jadams, index correction seems NOT needed\n topHeader = headings[i];\n return true\n } else if (i === headings.length - 1) {\n // This allows scrolling for the last heading on the page\n topHeader = headings[headings.length - 1]\n return true\n }\n })\n\n // Remove the active class from the other tocLinks.\n var tocLinks = document.querySelector(options.tocSelector)\n .querySelectorAll('.' + options.linkClass)\n forEach.call(tocLinks, function (tocLink) {\n tocLink.className = tocLink.className.split(SPACE_CHAR + options.activeLinkClass).join('')\n })\n var tocLis = document.querySelector(options.tocSelector)\n .querySelectorAll('.' + options.listItemClass)\n forEach.call(tocLis, function (tocLi) {\n tocLi.className = tocLi.className.split(SPACE_CHAR + options.activeListItemClass).join('')\n })\n\n // Add the active class to the active tocLink.\n var activeTocLink = document.querySelector(options.tocSelector)\n .querySelector('.' + options.linkClass +\n '.node-name--' + topHeader.nodeName +\n '[href=\"' + options.basePath + '#' + topHeader.id.replace(/([ #;&,.+*~':\"!^$[\\]()=>|/@])/g, '\\\\$1') + '\"]')\n if (activeTocLink.className.indexOf(options.activeLinkClass) === -1) {\n activeTocLink.className += SPACE_CHAR + options.activeLinkClass\n }\n var li = activeTocLink.parentNode\n if (li && li.className.indexOf(options.activeListItemClass) === -1) {\n li.className += SPACE_CHAR + options.activeListItemClass\n }\n\n var tocLists = document.querySelector(options.tocSelector)\n .querySelectorAll('.' + options.listClass + '.' + options.collapsibleClass)\n\n // Collapse the other collapsible lists.\n forEach.call(tocLists, function (list) {\n if (list.className.indexOf(options.isCollapsedClass) === -1) {\n list.className += SPACE_CHAR + options.isCollapsedClass\n }\n })\n\n // Expand the active link's collapsible list and its sibling if applicable.\n if (activeTocLink.nextSibling && activeTocLink.nextSibling.className.indexOf(options.isCollapsedClass) !== -1) {\n activeTocLink.nextSibling.className = activeTocLink.nextSibling.className.split(SPACE_CHAR + options.isCollapsedClass).join('')\n }\n removeCollapsedFromParents(activeTocLink.parentNode.parentNode)\n }\n }\n\n /**\n * Remove collpased class from parent elements.\n * @param {HTMLElement} element\n * @return {HTMLElement}\n */\n function removeCollapsedFromParents (element) {\n if (element.className.indexOf(options.collapsibleClass) !== -1 && element.className.indexOf(options.isCollapsedClass) !== -1) {\n element.className = element.className.split(SPACE_CHAR + options.isCollapsedClass).join('')\n return removeCollapsedFromParents(element.parentNode.parentNode)\n }\n return element\n }\n\n /**\n * Disable TOC Animation when a link is clicked.\n * @param {Event} event\n */\n function disableTocAnimation (event) {\n var target = event.target || event.srcElement\n if (typeof target.className !== 'string' || target.className.indexOf(options.linkClass) === -1) {\n return\n }\n // Bind to tocLink clicks to temporarily disable highlighting\n // while smoothScroll is animating.\n currentlyHighlighting = false\n }\n\n /**\n * Enable TOC Animation.\n */\n function enableTocAnimation () {\n currentlyHighlighting = true\n }\n\n return {\n enableTocAnimation: enableTocAnimation,\n disableTocAnimation: disableTocAnimation,\n render: render,\n updateToc: updateToc\n }\n}\n","/**\n * This file is responsible for parsing the content from the DOM and making\n * sure data is nested properly.\n *\n * @author Tim Scanlin\n */\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = function parseContent (options) {\n var reduce = [].reduce\n\n /**\n * Get the last item in an array and return a reference to it.\n * @param {Array} array\n * @return {Object}\n */\n function getLastItem (array) {\n return array[array.length - 1]\n }\n\n /**\n * Get heading level for a heading dom node.\n * @param {HTMLElement} heading\n * @return {Number}\n */\n function getHeadingLevel (heading) {\n return +heading.nodeName.split('H').join('')\n }\n\n /**\n * Get important properties from a heading element and store in a plain object.\n * @param {HTMLElement} heading\n * @return {Object}\n */\n function getHeadingObject (heading) {\n // each node is processed twice by this method because nestHeadingsArray() and addNode() calls it\n // first time heading is real DOM node element, second time it is obj\n // that is causing problem so I am processing only original DOM node\n if (!(heading instanceof window.HTMLElement)) return heading\n\n if (options.ignoreHiddenElements && (!heading.offsetHeight || !heading.offsetParent)) {\n return null\n }\n\n var obj = {\n id: heading.id,\n children: [],\n nodeName: heading.nodeName,\n headingLevel: getHeadingLevel(heading),\n textContent: options.headingLabelCallback ? String(options.headingLabelCallback(heading.textContent)) : heading.textContent.trim()\n }\n\n if (options.includeHtml) {\n obj.childNodes = heading.childNodes\n }\n\n if (options.headingObjectCallback) {\n return options.headingObjectCallback(obj, heading)\n }\n\n return obj\n }\n\n /**\n * Add a node to the nested array.\n * @param {Object} node\n * @param {Array} nest\n * @return {Array}\n */\n function addNode (node, nest) {\n var obj = getHeadingObject(node)\n var level = obj.headingLevel\n var array = nest\n var lastItem = getLastItem(array)\n var lastItemLevel = lastItem\n ? lastItem.headingLevel\n : 0\n var counter = level - lastItemLevel\n\n while (counter > 0) {\n lastItem = getLastItem(array)\n if (lastItem && lastItem.children !== undefined) {\n array = lastItem.children\n }\n counter--\n }\n\n if (level >= options.collapseDepth) {\n obj.isCollapsed = true\n }\n\n array.push(obj)\n return array\n }\n\n /**\n * Select headings in content area, exclude any selector in options.ignoreSelector\n * @param {String} contentSelector\n * @param {Array} headingSelector\n * @return {Array}\n */\n function selectHeadings (contentSelector, headingSelector) {\n var selectors = headingSelector\n if (options.ignoreSelector) {\n selectors = headingSelector.split(',')\n .map(function mapSelectors (selector) {\n return selector.trim() + ':not(' + options.ignoreSelector + ')'\n })\n }\n try {\n return document.querySelector(contentSelector)\n .querySelectorAll(selectors)\n } catch (e) {\n console.warn('Element not found: ' + contentSelector); // eslint-disable-line\n return null\n }\n }\n\n /**\n * Nest headings array into nested arrays with 'children' property.\n * @param {Array} headingsArray\n * @return {Object}\n */\n function nestHeadingsArray (headingsArray) {\n return reduce.call(headingsArray, function reducer (prev, curr) {\n var currentHeading = getHeadingObject(curr)\n if (currentHeading) {\n addNode(currentHeading, prev.nest)\n }\n return prev\n }, {\n nest: []\n })\n }\n\n return {\n nestHeadingsArray: nestHeadingsArray,\n selectHeadings: selectHeadings\n }\n}\n","// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = function updateTocScroll(options) {\n var toc = document.querySelector(options.tocSelector);\n if (toc && toc.scrollHeight > toc.clientHeight) {\n var activeItem = toc.querySelector('.' + options.activeListItemClass);\n if (activeItem) {\n toc.scrollTop = activeItem.offsetTop;\n }\n }\n}\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/tocbot/scroll-smooth/index.js\n # Scroll-Smooth (Tocbot v4.12.0) implementation for J1 template\n #\n # Product/Info:\n # https://jekyll.one\n # https://tscanlin.github.io/tocbot\n # https://github.com/tscanlin/tocbot\n #\n # Copyright (C) 2020 Juergen Adams\n # Copyright (C) 2016 Tim Scanlin\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # Tocbot is licensed under the MIT License.\n # For details, https://github.com/tscanlin/tocbot/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint no-redeclare: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-empty: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n/* globals location, requestAnimationFrame */\n\nexports.initSmoothScrolling = initSmoothScrolling\n\nfunction initSmoothScrolling (options) {\n if (isCssSmoothSCrollSupported()) { }\n\n var duration = options.duration\n var offset = options.offset\n\n var pageUrl = location.hash\n ? stripHash(location.href)\n : location.href\n\n delegatedLinkHijacking()\n\n function delegatedLinkHijacking () {\n document.body.addEventListener('click', onClick, false)\n\n function onClick (e) {\n if (\n !isInPageLink(e.target) ||\n e.target.className.indexOf('no-smooth-scroll') > -1 ||\n (e.target.href.charAt(e.target.href.length - 2) === '#' &&\n e.target.href.charAt(e.target.href.length - 1) === '!') ||\n e.target.className.indexOf(options.linkClass) === -1) {\n return\n }\n\n // Don't prevent default or hash doesn't change.\n // e.preventDefault()\n\n jump(e.target.hash, {\n duration: duration,\n offset: offset,\n callback: function () {\n setFocus(e.target.hash)\n }\n })\n }\n }\n\n function isInPageLink (n) {\n return n.tagName.toLowerCase() === 'a' &&\n (n.hash.length > 0 || n.href.charAt(n.href.length - 1) === '#') &&\n (stripHash(n.href) === pageUrl || stripHash(n.href) + '#' === pageUrl)\n }\n\n function stripHash (url) {\n return url.slice(0, url.lastIndexOf('#'))\n }\n\n function isCssSmoothSCrollSupported () {\n return 'scrollBehavior' in document.documentElement.style\n }\n\n // Adapted from:\n // https://www.nczonline.net/blog/2013/01/15/fixing-skip-to-content-links/\n function setFocus (hash) {\n var element = document.getElementById(hash.substring(1))\n\n if (element) {\n if (!/^(?:a|select|input|button|textarea)$/i.test(element.tagName)) {\n element.tabIndex = -1\n }\n\n element.focus()\n }\n }\n}\n\nfunction jump (target, options) {\n var start = window.pageYOffset\n var opt = {\n duration: options.duration,\n offset: options.offset || 0,\n callback: options.callback,\n easing: options.easing || easeInOutQuad\n }\n // This makes ids that start with a number work: ('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n // DecodeURI for nonASCII hashes, they was encoded, but id was not encoded, it lead to not finding the tgt element by id.\n // And this is for IE: document.body.scrollTop\n var tgt = document.querySelector('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n var distance = typeof target === 'string'\n ? opt.offset + (\n target\n ? (tgt && tgt.getBoundingClientRect().top) || 0 // handle non-existent links better.\n : -(document.documentElement.scrollTop || document.body.scrollTop))\n : target\n var duration = typeof opt.duration === 'function'\n ? opt.duration(distance)\n : opt.duration\n var timeStart\n var timeElapsed\n\n requestAnimationFrame(function (time) { timeStart = time; loop(time) })\n function loop (time) {\n timeElapsed = time - timeStart\n\n window.scrollTo(0, opt.easing(timeElapsed, start, distance, duration))\n\n if (timeElapsed < duration) { requestAnimationFrame(loop) } else { end() }\n }\n\n function end () {\n window.scrollTo(0, start + distance)\n\n if (typeof opt.callback === 'function') { opt.callback() }\n }\n\n // Robert Penner's easeInOutQuad - http://robertpenner.com/easing/\n function easeInOutQuad (t, b, c, d) {\n t /= d / 2\n if (t < 1) return c / 2 * t * t + b\n t--\n return -c / 2 * (t * (t - 2) - 1) + b\n }\n}\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/adoc_result_viewer/view_results.js\n # Provides JavaScript functions displaying results for Asciidoctor\n #\n # Product/Info:\n # https://jekyll.one\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n #\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* global $ */\n// -----------------------------------------------------------------------------\n\n/*!\n * J1 ADoc ResultViewer\n * Copyright (C) 2020 Juergen Adams\n * Licensed under MIT License.\n */\n\nvar timeoutHandle;\n\nfunction toggle_result_block(result_block) {\n window.clearTimeout(timeoutHandle); // Clear the timeout object\n result_block.prev().toggleClass('stacked');\n result_block.toggle();\n // timeoutHandle = window.setTimeout(function () {\n // result_block.hide();\n // }, 5000);\n}\n\nfunction insert_result_links() {\n $('.result').each(function(idx, node) {\n var result_block = $(node);\n var title_div = result_block.prev().find('.title');\n var view_result_link = $('<div class=\"view-result j1-viewer\"><span class=\"btn-viewer j1-tooltip\" data-toggle=\"tooltip\" data-placement=\"left\" title=\"toggle results\" data-original-title=\"toggle results\">View</span></div>');\n title_div.append(view_result_link);\n view_result_link.on('click', function(event) {\n event.preventDefault();\n toggle_result_block(result_block);\n });\n });\n}\n\n$(insert_result_links);\n"],"sourceRoot":""}
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./template.js","webpack:///./js/adapter/adapter.js","webpack:///./js/core/core.js","webpack:///./js/navigator/navigator.js","webpack:///./js/cookiebar/cookiebar.js","webpack:///./js/scroll-smooth/scroll-smooth.js","webpack:///./js/anime/anime.js","webpack:///./js/tocbot/tocbot.js","webpack:///(webpack)/buildin/global.js","webpack:///./js/tocbot/default-options.js","webpack:///./js/tocbot/build-html.js","webpack:///./js/tocbot/parse-content.js","webpack:///./js/tocbot/update-toc-scroll.js","webpack:///./js/tocbot/scroll-smooth/index.js","webpack:///./js/adoc_result_viewer/view_results.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","window","j1","adapter","require","core","navigator","cookiebar","scrollSmooth","anime","_init_","options","$","extend","foo","bar","getState","isMobile","ua_name","a","mobile","userAgent","vendor","opera","test","substr","bsFormClearButton","on","this","val","length","nextAll","removeClass","addClass","logger","logText","cookie_names","getCookieNames","message","cookie_consent","user_session","init","defaultOptions","menuOptions","log4javascript","getLogger","info","manageDropdownMenu","navbarSticky","type","action","text","sendMessage","eventHandler","$getNav","hasClass","wrap","postsArr","Array","index","$postsList","find","each","push","html","firstList","splice","Math","round","secondList","ListHTML","createHTML","list","first","after","next","last","dropDown","megaMenu","closest","prepend","navbarHeighth","outerHeight","scrollTop","debug","e","animate","slideToggle","is","preventDefault","unbind","slideUp","stopPropagation","toggle","css","wrapInner","$menu","breakPoint","$dropDown","timeoutHandle","navDefaultOptions","navMenuOptions","$getWindow","matchMedia","matches","width","$getIn","data","$getOut","menuSelector","xhr_container_id","delayMenuOpen","delay_menu_open","nav_bar","media_breakpoint","off","stop","fadeToggle","fadeOut","hide","show","hover","$list","height","match","eq","setTimeout","fadeIn","clearTimeout","windowHeight","windowWidth","getId","$getHeight","getOffset","offset","top","updateSidebar","user_data","json_message","JSON","stringify","resolveMacros","updateMacros","jQuery","moduleOptions","cookie_user_state","user_state","moduleDefaults","renewOnVisit","forceShow","domain","String","location","hostname","referrer","document","dependencies_met_page_ready","setInterval","user_state_detected","existsCookie","readCookie","error","cookies_accepted","modal","clearInterval","whitelisted","current_page","pathname","modalButtons","querySelectorAll","whitelistedPages","appDetected","deleteOnDecline","stopScrolling","forEach","button","addEventListener","id","toggleClass","writeCookie","expires","current_user_data","mergeData","indexOf","warn","deleteCookie","goHome","scroll","target","duration","scrollTo","callback","timeStart","timeElapsed","start","pageYOffset","opt","easing","b","tgt","querySelector","decodeURI","split","join","distance","getBoundingClientRect","documentElement","body","loop","time","requestAnimationFrame","defaultInstanceSettings","update","begin","loopBegin","changeBegin","change","changeComplete","loopComplete","complete","direction","autoplay","timelineOffset","defaultTweenSettings","delay","endDelay","validTransforms","cache","CSS","springs","minMax","min","max","stringContains","str","applyArguments","func","args","apply","arr","isArray","obj","toString","pth","svg","SVGElement","inp","HTMLInputElement","dom","nodeType","fnc","und","hex","rgb","hsl","col","parseEasingParameters","string","exec","map","parseFloat","spring","params","mass","stiffness","damping","velocity","w0","sqrt","zeta","wd","solver","progress","exp","cos","sin","cached","elapsed","rest","steps","ceil","eases","functionEasings","bezier","A","aA1","aA2","B","C","calcBezier","aT","getSlope","mX1","mY1","mX2","mY2","sampleValues","Float32Array","x","getTForX","aX","intervalStart","currentSample","kSplineTableSize","guessForT","initialSlope","aGuessT","currentSlope","newtonRaphsonIterate","aA","aB","currentX","currentT","abs","binarySubdivide","penner","linear","Sine","PI","Circ","Back","Bounce","pow2","pow","Elastic","amplitude","period","asin","keys","easeIn","parseEasings","ease","selectString","filterArray","len","thisArg","arguments","result","flattenArray","reduce","concat","toArray","NodeList","HTMLCollection","slice","arrayContains","some","cloneObject","clone","replaceObjectProps","o1","o2","mergeObjects","colorToRgb","rgbValue","hexValue","replace","g","parseInt","hexToRgba","hslValue","h","hue2rgb","q","hslToRgba","getUnit","getFunctionValue","animatable","total","getAttribute","el","prop","convertPxToUnit","unit","tempEl","createElement","tagName","parentEl","parentNode","appendChild","style","position","factor","offsetWidth","removeChild","convertedUnit","getCSSValue","uppercasePropName","toLowerCase","getComputedStyle","getPropertyValue","getAnimationType","getElementTransforms","transform","reg","transforms","Map","set","getTransformValue","propName","defaultVal","getTransformUnit","getOriginalTargetValue","getRelativeValue","to","from","operator","u","y","validateValue","originalUnit","unitLess","getDistance","p1","p2","getPolylineLength","previousPos","points","totalLength","numberOfItems","currentPos","getItem","getTotalLength","getCircleLength","getRectLength","getLineLength","getPolygonLength","getParentSvg","pathEl","svgData","parentSvgEl","getParentSvgEl","rect","viewBoxAttr","viewBox","w","getPathProgress","path","point","getPointAtLength","p0","atan2","decomposeValue","rgx","original","numbers","Number","strings","parseTargets","targets","item","pos","self","getAnimatables","parsed","normalizePropertyTweens","tweenSettings","settings","propArray","v","k","getProperties","properties","keyframes","propertyNames","newKey","flattenKeyframes","tweens","normalizeTweens","previousTween","tween","normalizeTweenValues","tweenValue","toUnit","originalValue","previousValue","fromUnit","end","isPath","isColor","setProgressValue","attribute","setAttribute","manual","setTargetsValue","valueUnit","animType","getAnimations","animatables","lastTween","createAnimation","getInstanceTimings","animations","animLength","getTlOffset","anim","timings","instanceID","raf","activeInstances","pausedInstances","engine","play","step","activeInstancesLength","activeInstance","paused","instanceIndex","tick","cancelAnimationFrame","children","startTime","lastTime","now","childrenLength","resolve","makePromise","instance","promise","Promise","_resolve","finished","instanceSettings","createNewInstance","toggleInstanceDirection","reversed","child","adjustTime","resetTime","currentTime","speed","seekChild","seek","setAnimationsProgress","insTime","animationsLength","tweenLength","eased","isNaN","toNumbersLength","toNumber","fromNumber","stringsLength","n$1","currentValue","setCallback","cb","passThrough","setInstanceProgress","engineTime","insDuration","insDelay","insEndDelay","reversePlayback","i$1","syncInstanceChildren","began","loopBegan","changeBegan","changeCompleted","remaining","completed","reset","pause","reverse","restart","removeTargetsFromAnimations","targetsArray","hidden","ins","running","version","remove","childAnimations","convertPx","percent","setDashoffset","pathLength","stagger","grid","axis","fromIndex","fromFirst","fromCenter","fromLast","isRange","val1","val2","values","maxValue","fromX","fromY","floor","distanceX","distanceY","timeline","tl","add","instanceParams","tlIndex","insParams","tlDuration","random","root","global","define","buildHtml","parseContent","headingsArray","tocbot","BuildHtml","ParseContent","updateTocScroll","supports","destroy","skipRendering","tocSelector","innerHTML","console","scrollContainer","removeEventListener","_scrollListener","_clickListener","customOptions","source","state","scrollSmoothDuration","scrollSmoothOffset","initSmoothScrolling","_buildHtml","_parseContent","selectHeadings","contentSelector","headingSelector","nestedHeadings","nestHeadingsArray","nest","render","throttle","updateToc","disableTocScrollSync","isTop","scrollingElement","eventPhase","currentTarget","scrollEndCallback","throttleTimeout","timeout","event","disableTocAnimation","enableTocAnimation","refresh","fn","threshold","scope","deferTimer","context","Date","Function","ignoreSelector","hasInnerContainers","linkClass","extraLinkClasses","activeLinkClass","listClass","extraListClasses","isCollapsedClass","collapsibleClass","listItemClass","activeListItemClass","collapseDepth","headingsOffset","positionFixedSelector","positionFixedClass","fixedSidebarOffset","includeHtml","onClick","orderedList","headingLabelCallback","ignoreHiddenElements","headingObjectCallback","basePath","currentlyHighlighting","createEl","container","link","onclick","childNodes","node","cloneNode","textContent","nodeName","createLink","createList","isCollapsed","listElement","classes","srcElement","className","selector","parent","firstChild","posFixedEl","offsetTop","updateFixedSidebarClass","topHeader","headings","heading","getHeadingTopPos","offsetParent","tocLinks","tocLink","tocLis","tocLi","activeTocLink","li","tocLists","nextSibling","removeCollapsedFromParents","element","getLastItem","array","getHeadingLevel","getHeadingObject","HTMLElement","offsetHeight","headingLevel","trim","prev","curr","currentHeading","level","lastItem","counter","undefined","addNode","selectors","toc","scrollHeight","clientHeight","activeItem","pageUrl","hash","stripHash","href","url","lastIndexOf","charAt","jump","getElementById","substring","tabIndex","focus","idx","result_block","title_div","view_result_link","append","toggle_result_block"],"mappings":"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","file":"template.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/assets/themes/j1/core/js\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","/*\n # -----------------------------------------------------------------------------\n # ~/src/template.js\n # J1 Template Javascript Core library\n #\n # Product/Info:\n # https://jekyll.one\n #\n # Copyright (C) 2021 Juergen Adams\n #\n # J1 Template is licensed under the MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n #\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint-disable no-unused-vars */\n/* global window */\n\n// -----------------------------------------------------------------------------\n// Import SASS sources for HMR\n// -----------------------------------------------------------------------------\n// import '../100_template_css/scss/theme_uno/components/_footer.scss';\n// import '../100_template_css/theme_uno.css'; // <-- yes, also require (s)css. This is a Webpack thing\n\n// Core Libraries - imported|required from NODE|NPM modules\n// -----------------------------------------------------------------------------\n//\n// Following objects (framework modules) are *conditionaly* forced to be\n// exposed for run-time to the global namespace (window) by WP config\n// file (expose-loader):\n// jQuery\n// Popper ('popper.js/dist/umd/popper', https://github.com/twbs/bootstrap/issues/23381)\n// -----------------------------------------------------------------------------\n\n// Core Utilities (moved to modules)\n// -----------------------------------------------------------------------------\n// Following objects (native node modules) are *explicitely* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\n// window.Cookies = require('js-cookie');\n// window.log4javascript = require('log4javascript');\n// window.parseURL = require('lite-url');\n// window.platform = require('platform');\n// window.yaml = require('js-yaml');\n// window.uuid = require('uuid/v4');\n\n// Core Libraries - build|required from SOURCE\n// -----------------------------------------------------------------------------\n\n// Following source objects|modules are *explicitely* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\nwindow.j1.adapter = require('./js/adapter/adapter.js');\nwindow.j1.core = require('./js/core/core.js');\nwindow.j1.core.navigator = require('./js/navigator/navigator.js');\nwindow.j1.core.cookiebar = require('./js/cookiebar/cookiebar.js');\nwindow.j1.core.scrollSmooth = require('./js/scroll-smooth/scroll-smooth.js');\nwindow.j1.anime = require('./js/anime/anime.js'); // added for fam\n// window.j1.fam = require('./js/fam/fam.js'); // cannot used until NOT rewritten to jQuery\n\n// Following source objects|modules are *implicetly* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\n//const Bootstrap = require('./js/bootstrap/bootstrap.js');\n//const J1JekyllSearch = require('./js/jekyll_search/jekyll_search.js');\nconst J1Tocbot = require('./js/tocbot/tocbot.js');\n//const J1ThemeSwitcher = require('./js/bs_theme_switcher/switcher.js');\n// const J1MmenuLight = require('./js/mmenu-light/mmenu.js');\n\n// Passing log data over Internet|SeeMe (currently NOT used)\n// -----------------------------------------------------------------------------\n// window.j1.core.log4javascript = require('./js/logger/client/webhook.js');\n\n// BMD Libraries (moved to modules)\n// -----------------------------------------------------------------------------\n// window.bootstrapMaterialDesign = require('./js/bmd/js/bmd.js');\n\n// Github Webhooks (currently NOT used)\n// -----------------------------------------------------------------------------\n// window.j1.core.webhooks = require('./js/webhooks/octokit/client.js');\n\n\n// Test|Custom modules (currently NOT used)\n// -----------------------------------------------------------------------------\n// window.j1promiseTest = require('./js/custom/test_promises.js');\n// window.j1Example = require('./js/custom/example_module.js');\n\n// BS Libraries (moved to modules)\n// -----------------------------------------------------------------------------\n// Following source objects|modules are *implicetly* forced to be\n// exposed for run-time to the global namespace (window).\n// -----------------------------------------------------------------------------\n// const Bootstrap = require('./js/bootstrap/bootstrap.js');\n\n// const J1JekyllSearch = require('./js/jekyll_search/jekyll_search.js'); // Buffer Kack\n// const J1Tocbot = require('./js/tocbot/tocbot.js');\n\n// Backstretch (moved to modules)\n// -----------------------------------------------------------------------------\n// Following source objects|modules are *implicetly* forced to be\n// exposed for run-time to the namespace of jQuery ($).\n// -----------------------------------------------------------------------------\n// const J1Attics = require('./js/backstretch/backstretch.js');\n\n// Additional Vanilla JS helpers\n// -----------------------------------------------------------------------------\nconst J1AdocResultViewer = require('./js/adoc_result_viewer/view_results.js');\n// const MSIEPolyfills = require('./js/polyfills/ms-ie.js');\n\n// HMR messages (currently NOT used)\n// -----------------------------------------------------------------------------\n// if (module.hot) {\n// var logtext;\n// var stat;\n// var stat=module.hot.status();\n//\n// logtext='[INFO ] [HMR ] [Hot Module Replacement enabled]';\n// console.log(logtext);\n// logtext='[INFO ] [HMR ] [Status: ' + stat + ']';\n// console.log(logtext);\n//\n// module.hot.accept('./template.js', function() {\n// console.log('[HMR] Accepting the updated template.js module!');\n// });\n//\n// module.hot.accept('../100_template_css/theme_uno.scss', function () {\n// console.log('[HMR] Accepting the updated style.css module!');\n// require('../100_template_css/theme_uno.scss')\n// })\n//\n// React to the current status...\n// module.hot.addStatusHandler(status => {\n// stat=module.hot.status();\n// logtext='[INFO ] [HMR ] [Status: ' + stat + ']';\n// console.log(logtext);\n// });\n//}\n\n// -----------------------------------------------------------------------------\n// END\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/adapter/adapter.js\n # Provides an empty object for later loaded adapter objects\n #\n # Product/Info:\n # https://jekyll.one\n #\n # Copyright (C) 2021 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n'use strict';\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n// -----------------------------------------------------------------------------\n\n/*!\n * J1 Adapter\n * Copyright (C) 2021 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = (function ( j1, window ) {\n return {\n\n // -------------------------------------------------------------------------\n // _init_\n // Global initializer for the adapter object\n // -------------------------------------------------------------------------\n _init_: function () {\n return;\n } // END _init_\n\n }; // END return\n\n})( j1, window );\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/j1_template/core.js\n # Provides an empty object for later loaded core objects\n #\n # Product/Info:\n # https://jekyll.one\n # http://getbootstrap.com/\n #\n # Copyright (C) 2021 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n'use strict';\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n// -----------------------------------------------------------------------------\n\n// module.exports = function core ( options ) {\n/*!\n * J1 Core\n * Copyright (C) 2021 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = (function (options) {\n\n // ---------------------------------------------------------------------------\n // Global variables\n // ---------------------------------------------------------------------------\n // var messageCatalog = {};\n // var state;\n // var logger;\n // var logText;\n\n // ---------------------------------------------------------------------------\n // Default settings\n // ---------------------------------------------------------------------------\n var settings = $.extend({\n foo: 'foo_option',\n bar: 'bar_option'\n }, options );\n\n var state = 'loaded';\n\n return {\n\n // -------------------------------------------------------------------------\n // _init_\n // Global initializer for the core object\n // -------------------------------------------------------------------------\n _init_: function (options) {\n\n //\n // Place handling of options here\n //\n\n return;\n }, // END _init_\n\n // -------------------------------------------------------------------------\n // Returns the current (processing) state of the module\n // -------------------------------------------------------------------------\n getState: function () {\n return state;\n }, // END state\n\n // -------------------------------------------------------------------------\n // isMobile\n // Return true if the current platform is a mobile device\n // -------------------------------------------------------------------------\n isMobile: function (ua_name) {\n var mobile = false;\n (function(a){if(/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm|cell|chtm|cldc|cmd|co(mp|nd)|craw|da(it|ll|ng)|dbte|dcs|devi|dica|dmob|do(c|p)o|ds(12|d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(|_)|g1 u|g560|gene|gf5|gmo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd(m|p|t)|hei|hi(pt|ta)|hp( i|ip)|hsc|ht(c(| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i(20|go|ma)|i230|iac( ||\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|[a-w])|libw|lynx|m1w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|mcr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|([1-8]|c))|phil|pire|pl(ay|uc)|pn2|po(ck|rt|se)|prox|psio|ptg|qaa|qc(07|12|21|32|60|[2-7]|i)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h|oo|p)|sdk\\/|se(c(|0|1)|47|mc|nd|ri)|sgh|shar|sie(|m)|sk0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h|v|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl|tdg|tel(i|m)|tim|tmo|to(pl|sh)|ts(70|m|m3|m5)|tx9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas|your|zeto|zte/i.test(a.substr(0,4))) mobile = true;})(navigator.userAgent||navigator.vendor||window.opera);\n return mobile;\n }, // END isMobile\n\n // -------------------------------------------------------------------------\n // Clear button for input fields (forms)\n // -------------------------------------------------------------------------\n bsFormClearButton: function () {\n// $('.position-relative :input').on('keydown focus', function() {\n $(':input').on('keydown focus change mouseover', function() {\n if ($(this).val().length > 0) {\n $(this).nextAll('.form-clear').removeClass('d-none');\n }\n }).on('keydown keyup blur', function() {\n if ($(this).val().length === 0) {\n $(this).nextAll('.form-clear').addClass('d-none');\n }\n });\n\n // $('.form-clear').on('click', function() {\n // $(this).addClass('d-none').prevAll(':input').val('');\n // // hide|clear results from top search\n // $('#search-results').hide();\n // $('#search-results').html('');\n // });\n }\n\n }; // end return (object)\n\n//})( jQuery, window );\n})(); // END IFFE\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/navigator/navigator.js\n # Provides all JavaScript core functions for J1 Navigator\n #\n # Product/Info:\n # https://jekyll.one\n # https://github.com/adamnurdin01/navigator\n #\n # Copyright (C) 2021 Juergen Adams\n # Copyright (C) 2016 adamnurdin01\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # Bootsnav is licensed under MIT License.\n # See: https://github.com/adamnurdin01/navigator\n #\n # -----------------------------------------------------------------------------\n # NOTE:\n # jadams, 2020-06-21:\n # J1 Navigator needs a general revision on BS4 code and functionalities\n # Current, only base function are tested with BS4 (was coded for BS3)\n # -----------------------------------------------------------------------------\n*/\n\n// bla\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n// -----------------------------------------------------------------------------\n\n// -----------------------------------------------------------------------------\n// TODO: Height of dropdowns are to be limited in general\n\n// -----------------------------------------------------------------------------\n// Navigator core registered as 'j1.core.navigator'\n// -----------------------------------------------------------------------------\n\n/*!\n * J1 Navigator\n * Copyright (C) 2021 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = function navigator ( options ) {\n\n // ---------------------------------------------------------------------------\n // global vars\n // ---------------------------------------------------------------------------\n var cookie_names = j1.getCookieNames();\n var cookie_consent_name = cookie_names.cookie_consent;\n var cookie_user_session_name = cookie_names.user_session;\n var message = {};\n var state;\n var logger;\n var logText;\n\n // -----------------------------------------------------------------------\n // default settings\n // -----------------------------------------------------------------------\n var settings = $.extend ({\n foo: 'bar',\n bar: 'foo',\n }, options );\n\n // ---------------------------------------------------------------------------\n // main object\n // ---------------------------------------------------------------------------\n return {\n\n // -------------------------------------------------------------------------\n // module initializer\n // -------------------------------------------------------------------------\n init: function( defaultOptions, menuOptions ) {\n logger = log4javascript.getLogger('j1.core.navigator');\n logText = 'core is being initialized';\n\n logger.info(logText);\n this.manageDropdownMenu(defaultOptions, menuOptions);\n this.navbarSticky();\n // this.navbarScrollspy();\n\n message.type = 'command';\n message.action = 'module_initialized';\n message.text = 'navigator core initialized successfully';\n j1.sendMessage( 'j1.core.navigator', 'j1.adapter.navigator', message );\n\n return true;\n },\n\n // -------------------------------------------------------------------------\n // event handler\n // -------------------------------------------------------------------------\n eventHandler: function() {\n var logger = log4javascript.getLogger('j1.core.navigator.eventHandler');\n var $getNav = $('nav.navbar.navigator');\n // const seeMe = 'https://smee.io/wlNIFNiJN0GClm2';\n // const middleware = 'localhost:5000/state';\n // const web_server_dev = 'http://localhost:41000/status';\n // const utility_server = 'http://localhost:41001/git?request=pull';\n // var sender = seeMe;\n // var payload;\n var json_data;\n\n // if (j1.checkUserAgent('IE') || j1.checkUserAgent('Edge')) {\n // logger.warn('HTML5 server side events (SSE) not supported for: ' + userAgent);\n // logger.warn('Middleware messages disabled');\n // } else {\n // const middleware_status = new EventSource(sender);\n //\n // // -----------------------------------------------------------------------\n // // middleware event handler ( SSE currently NOT used)\n // // -----------------------------------------------------------------------\n // middleware_status.onmessage = (event) => {\n // const payload = JSON.parse(event.data);\n //\n // logger.debug('middleware: event received');\n //\n // json_data = JSON.stringify(payload, undefined, 2);\n // logText = 'payload: ' + json_data;\n // logger.debug(logText);\n //\n // message.type = 'command';\n // message.action = 'status';\n // message.text = payload;\n // j1.sendMessage( 'j1.core.navigator', 'j1.adapter.navigator', message );\n //\n // return true;\n // }; // END event onMessage\n // }\n\n // -----------------------------------------------------------------------\n // Navbar Sticky\n // -----------------------------------------------------------------------\n var navSticky = $getNav.hasClass('navbar-sticky');\n if( navSticky ){\n // Wraped navigation\n $getNav.wrap('<div class=\\'wrap-sticky\\'></div>');\n }\n\n // -----------------------------------------------------------------------\n // Navbar Center\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('brand-center') ){\n var postsArr = new Array();\n var index = $('nav.brand-center');\n var $postsList = index.find('ul.navbar-nav');\n\n //Create array of all posts in lists\n index.find('ul.navbar-nav > li').each(function(){\n postsArr.push($(this).html());\n });\n\n // Split the array at this point. The original array is altered.\n var firstList = postsArr.splice(0, Math.round(postsArr.length / 2));\n var secondList = postsArr;\n var ListHTML = '';\n\n var createHTML = function(list) {\n ListHTML = '';\n for (var i = 0; i < list.length; i++) {\n ListHTML += '<li>' + list[i] + '</li>';\n }\n };\n\n // Generate HTML for first list\n createHTML(firstList);\n $postsList.html(ListHTML);\n index.find('ul.nav').first().addClass('navbar-left');\n\n // Generate HTML for second list\n createHTML(secondList);\n //Create new list after original one\n $postsList.after('<ul class=\"nav navbar-nav\"></ul>').next().html(ListHTML);\n index.find('ul.nav').last().addClass('navbar-right');\n\n // Wrap navigation menu\n index.find('ul.nav.navbar-left').wrap('<div class=\\'col_half left\\'></div>');\n index.find('ul.nav.navbar-right').wrap('<div class=\\'col_half right\\'></div>');\n\n // Selection Class\n index.find('ul.navbar-nav > li').each(function() {\n var dropDown = $('ul.dropdown-menu', this),\n megaMenu = $('ul.megamenu-content', this);\n dropDown.closest('li').addClass('dropdown');\n megaMenu.closest('li').addClass('megamenu-fw');\n });\n }\n\n // -----------------------------------------------------------------------\n // Navbar Sidebar\n // -----------------------------------------------------------------------\n // if( $getNav.hasClass('navbar-sidebar')) {\n // // Add Class to body\n // $('body').addClass('wrap-nav-sidebar');\n // $getNav.wrapInner('<div class=\\'scroller\\'></div>');\n // } else {\n // $('.navigator').addClass('on');\n // }\n\n // -----------------------------------------------------------------------\n // Menu Center\n // -----------------------------------------------------------------------\n if( $getNav.find('ul.nav').hasClass('navbar-center')) {\n $getNav.addClass('menu-center');\n }\n\n // -----------------------------------------------------------------------\n // Navbar Full\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('navbar-full')) {\n // Add Class to body\n $('nav.navbar.navigator').find('ul.nav').wrap('<div class=\\'wrap-full-menu\\'></div>');\n $('.wrap-full-menu').wrap('<div class=\\'nav-full\\'></div>');\n $('ul.nav.navbar-nav').prepend('<li class=\\'close-full-menu\\'><a href=\\'#\\'><i class=\\'mdi mdi-close\\'></i></a></li>');\n } else if( $getNav.hasClass('navbar-mobile') ) {\n $getNav.removeClass('no-full');\n } else {\n $getNav.addClass('no-full');\n }\n\n // -----------------------------------------------------------------------\n // Navbar Mobile\n // -----------------------------------------------------------------------\n // if( $getNav.hasClass('navbar-mobile')) {\n // // Add Class to body\n // $('.navbar-collapse').on('shown.bs.collapse', function() {\n // $('body').addClass('side-right');\n // });\n // $('.navbar-collapse').on('hide.bs.collapse', function() {\n // $('body').removeClass('side-right');\n // });\n //\n // $(window).on('resize', function() {\n // $('body').removeClass('side-right');\n // });\n // }\n\n // -----------------------------------------------------------------------\n // Navbar Fixed\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('no-background') ) {\n $(window).on('scroll', function() {\n var navbarHeighth = $('nav.navbar').outerHeight();\n var scrollPos = $(window).scrollTop();\n\n if (scrollPos > navbarHeighth) {\n $('.navbar-fixed').removeClass('no-background');\n } else {\n $('.navbar-fixed').addClass('no-background');\n }\n });\n }\n\n if( $getNav.hasClass('navbar-transparent') ) {\n $(window).on('scroll', function() {\n var navbarHeighth = $('nav.navbar').outerHeight();\n var scrollPos = $(window).scrollTop();\n\n if (scrollPos > navbarHeighth) {\n $('.navbar-fixed').removeClass('navbar-transparent');\n $('.navbar-fixed').addClass('navbar-scrolled');\n } else {\n $('.navbar-fixed').removeClass('navbar-scrolled');\n $('.navbar-fixed').addClass('navbar-transparent');\n }\n });\n }\n\n // -----------------------------------------------------------------------\n // Toggle Search\n // https://stackoverflow.com/questions/178325/how-do-i-check-if-an-element-is-hidden-in-jquery\n // https://stackoverflow.com/questions/4770025/how-to-disable-scrolling-temporarily\n // https://stackoverflow.com/questions/5963669/whats-the-difference-between-event-stoppropagation-and-event-preventdefault\n // -----------------------------------------------------------------------\n $('nav.navbar.navigator .attr-nav').each(function() {\n logger.debug('register OPEN event|s for QuickSearch');\n $('li.search > a', this).on('click', function(e) {\n // e.preventDefault(); // don't do the default browser action\n logger.debug('manage search action OPEN');\n $('html,body').animate({scrollTop: 0}, 0);\n $('.top-search').slideToggle('slow', 'swing', function() {\n if ( $('.top-search').is(':visible') ) {\n // disable scrolling (desktop)\n $('body').addClass('stop-scrolling');\n // disable scrolling (mobile)\n $('body').bind('touchmove', function(e){e.preventDefault();});\n } else {\n // enable scrolling (desktop)\n $('body').removeClass('stop-scrolling');\n // enable scrolling (mobile)\n $('body').unbind('touchmove');\n }\n });\n // e.stopPropagation(); // don't bubble up the event\n });\n });\n logger.debug('register CLOSE event|s for QuickSearch');\n $('.input-group-addon.close-search').on('click', function(e) {\n e.preventDefault(); // don't do the default browser action\n logger.debug('manage search action CLOSE');\n $('.top-search').slideUp('slow', 'swing');\n $('html,body').animate({scrollTop: 0}, 0);\n // enable scrolling (desktop)\n $('body').removeClass('stop-scrolling');\n // enable scrolling (mobile)\n $('body').unbind('touchmove');\n e.stopPropagation(); // don't bubble up the event\n });\n\n // -----------------------------------------------------------------------\n // Toggle Translator SHOW|HIDE\n // -----------------------------------------------------------------------\n $('nav.navbar.navigator .attr-nav').each(function() {\n logger.debug('register SHOW|HIDE event|s for J1 Translator');\n $('li.translator > a', this).on('click', function(e) {\n // e.preventDefault(); // don't do the default browser action\n // window.location.reload(true);\n logger.debug('toggle translator icon SHOW|HIDE');\n // See: https://api.jquery.com/toggle/\n // With no parameters, the .toggle() method simply toggles the visibility of elements\n $('#google_translate_element').toggle();\n if ($('#google_translate_element').css('display') !== 'none') {\n $('html,body').animate({scrollTop: 0}, 'slow');\n }\n // e.stopPropagation(); // don't bubble up the event\n });\n });\n\n // -----------------------------------------------------------------------\n // Toggle Side Menu\n // -----------------------------------------------------------------------\n // $('nav.navbar.navigator .attr-nav').each(function() {\n // logger.debug('register OPEN event|s for SideBar');\n // $('li.side-menu > a', this).on('click', function(e) {\n // // e.preventDefault(); // don't do the default browser action\n // logger.debug('manage sidebar action OPEN');\n // // e.stopPropagation(); // don't bubble up the event\n // $('nav.navbar.navigator > .side').toggleClass('on');\n // $('body').toggleClass('on-side');\n // // e.stopPropagation(); // don't bubble up the event\n // });\n // });\n // logger.debug('register CLOSE event|s for SideBar');\n // $('.side .close-side').on('click', function(e) {\n // e.preventDefault(); // don't do the default browser action\n // logger.debug('manage sidebar action CLOSE');\n // $('nav.navbar.navigator > .side').removeClass('on');\n // $('body').removeClass('on-side');\n // // e.stopPropagation(); // don't bubble up the event\n // });\n\n // -----------------------------------------------------------------------\n // Wrapper\n // -----------------------------------------------------------------------\n $('body').wrapInner( '<div class=\\'wrapper\\'></div>');\n\n }, // end event\n\n // -------------------------------------------------------------------------\n // Manage the Menu Dropdowns for Desktop|Mobile\n // -------------------------------------------------------------------------\n manageDropdownMenu : function( defaultOptions, menuOptions ) {\n\n var navDefaultOptions = defaultOptions;\n var navMenuOptions = menuOptions;\n\n var $getNav = $('nav.navbar.navigator');\n var $windowOrientation = window.matchMedia('(orientation: landscape)').matches ? 'landscape' : 'portrait';\n var $getWindow = $(window).width();\n var $getNavWidth = $('nav').width();\n var $getIn = $getNav.find('ul.nav').data('in');\n var $getOut = $getNav.find('ul.nav').data('out');\n\n var menuSelector = '#' +navMenuOptions.xhr_container_id+ '.collapse';\n var delayMenuOpen = navMenuOptions.delay_menu_open;\n\n var $menu;\n var breakPoint;\n var $dropDown;\n var timeoutHandle;\n\n // BS4 @media MAX breakpoints\n // NOTE: a media query is always a range\n // -----------------------------------------------------------------------\n var gridBreakpoint_lg = 992; // bs-breakpoint-lg\n var gridBreakpoint_md = 768; // bs-breakpoint-md\n var gridBreakpoint_sm = 576; // bs-breakpoint-sm\n\n // BS4 @media MIN breakpoints\n // -----------------------------------------------------------------------\n // NOTE: a media query is always a range\n // var gridBreakpoint_lg = 991;\n // var gridBreakpoint_md = 767;\n // var gridBreakpoint_sm = 575;\n\n // @media ranges\n // -----------------------------------------------------------------------\n var small_range = {min: '0em', max: '40em'}; /* 0, 640px */\n var medium_range = {min: '40.063em', max: '64em'}; /* 641px, 1024px */\n var large_range = {min: '64.063em', max: '90em'}; /* 1025px, 1440px */\n var xlarge_range = {min: '90.063em', max: '120em'}; /* 1441px, 1920px */\n var xxlarge_range = {min: '120.063em'}; /* 1921px */\n\n\n // jadams, 2019-05-01: Set Media Breakpoint for Desktop|Mobile Navigation\n if ( navDefaultOptions.nav_bar.media_breakpoint === 'lg' ) {\n breakPoint = gridBreakpoint_lg;\n } else if ( navDefaultOptions.nav_bar.media_breakpoint === 'md' ) {\n breakPoint = gridBreakpoint_md;\n } else if ( navDefaultOptions.nav_bar.media_breakpoint === 'sm' ) {\n breakPoint = gridBreakpoint_sm;\n } else{\n breakPoint = gridBreakpoint_lg;\n }\n\n // -----------------------------------------------------------------------\n // Tablet or Mobile\n // NOTE:\n // Managing the mobile menu is moved to MMenu Plugin\n // Only base functions like QuickLinks are managed by\n // J1 Navigator\n // -----------------------------------------------------------------------\n // MIN media breakpoint\n if ( $getWindow <= breakPoint ) {\n\n // Collapse Navbar\n $(menuSelector).addClass('navbar-collapse');\n $(menuSelector).removeClass('show'); //\n $('#navigator_nav_quicklinks').addClass('show');\n\n // Enable click Quicklink Navigation\n $('nav.navbar.navigator .attr-nav').each(function() {\n $('.dropdown-menu', this).removeClass('animated');\n $('li.dropdown', this).off('mouseenter');\n $('li.dropdown', this).off('mouseleave');\n $('a.dropdown-toggle', this).off('click');\n $('a.dropdown-toggle', this).on('click', function (e) {\n // e.stopPropagation(); // don't bubble up the event\n $(this).closest('li.dropdown').find('.dropdown-menu').first().stop().fadeToggle();\n $('.navbar-toggle').each(function(){\n $('.mdi', this).removeClass('mdi-close');\n $('.mdi', this).addClass('mdi-menu');\n $('.navbar-collapse').removeClass('in');\n $('.navbar-collapse').removeClass('open');\n });\n });\n\n $(this).on('mouseleave', function(){\n $('.dropdown-menu', this).stop().fadeOut();\n $('li.dropdown', this).removeClass('open');\n // return false;\n });\n });\n\n $('#desktop_menu').hide();\n\n // -----------------------------------------------------------------------\n // Desktop Navigation does NOT work on physical devices like iPad|Pro\n // Config DISABLED\n //\n// } else if ( $getWindow > breakPoint || $getWindow <= 1024 && $windowOrientation == 'portrait' ) {\n } else if ( $getWindow > breakPoint ) {\n // -----------------------------------------------------------------------\n // Desktop\n // -----------------------------------------------------------------------\n $('#navigator_nav_quicklinks').removeClass('show');\n $('#desktop_menu').show();\n\n // TODO: Fix delayMenuOpen issue\n // TODO: scrollStart|Stop are to be moved to menu events\n //\n // var scrollStart = $('body').removeClass('stop-scrolling');\n // var scrollStop = $('body').addClass('stop-scrolling');\n\n // jadams, 2017-12-39: Workaround. Unclear why delayMenuOpen get lost for image|video headers\n // if ( delayMenuOpen === undefined ) { delayMenuOpen = 250; }\n\n // jadams, 2020-20-13: managing the dropdown menu lenght should be done\n // different. The current method cause an ugly extry lengt at the end of\n // the LAST menu item\n // Adding the height limiter DISABLED\n\n // limit the dropdown menu lenght if needed\n $('.dropdown-menu > li').hover(function() {\n var $container = $(this);\n var $list = $container.find('ul');\n\n // $('body').addClass('stop-scrolling');\n\n // continue on simple dropdowns only (no MM)\n if ( $list.length == 1 ) {\n var height = $list.height() * 1.1; // make sure there is valid space at the bottom\n var maxHeight;\n // typeof, make sure that test|if returns a string\n // see: https://stackoverflow.com/questions/3390396/how-can-i-check-for-undefined-in-javascript\n if ( typeof $list.css('max-height') !== 'undefined' ) {\n maxHeight = $list.css('max-height').match(/\\d+/)[0]; // get the value of (dropdown) maxHeight\n } else { maxHeight = 200; }\n var tooHeigh = height / maxHeight; // calc if the dropdown height exceeds the limit\n\n // limit the dropdown lenght to maxHeight (permanent)\n // jadams, 2020-20-13: height limiter DISABLED\n // if (tooHeigh > 1) {\n // $list.css({\n // 'height': maxHeight,\n // 'overflow-y': 'auto'\n // });\n // }\n }\n });\n\n $('.dropdown-menu > li').on('mouseleave', function(){\n $('body').removeClass('stop-scrolling');\n });\n\n // Height of scroll navigation sidebar (??? needed ???)\n // jadams: 2019-06-14, since HTML generation of the menubar changed\n // to \"id only\" jQuery of '.scroller' cause failures\n // What a hell is: '.scroller' (jQuery Scroller) ???\n //$('.scroller').css('height', $getHeight + 'px');\n // Removed module support this\n // $('body').removeClass('stop-scrolling');\n\n // jadams 2017-11-01: Menu button (toggler) shown|hide by BS4\n //$(buttonSelector).css('display','block');\n $(menuSelector).removeClass('navbar-collapse'); //.toggleClass(scrollStart);\n // jadams 2017-11-01: class 'in' replaced by 'show' for BS4\n $(menuSelector).addClass('show');\n\n // Navbar Sidebar\n // if ( $getNav.hasClass('navbar-sidebar')) {\n //\n // // Hover Open on Sidebar Menu\n // $('nav.navbar.navigator ul.nav').each(function () {\n //\n // $('a.dropdown-toggle', this).off('click');\n // $('a.dropdown-toggle', this).on('click', function (e) {\n // // e.stopPropagation(); // don't bubble up the event\n // });\n //\n // $('.dropdown-menu', this).addClass('animated');\n // $('li.dropdown', this).on('mouseenter', function () {\n // $('.dropdown-menu', this).eq(0).removeClass($getOut);\n // $('.dropdown-menu', this).eq(0).stop().fadeIn().addClass($getIn);\n // $(this).addClass('open');\n // // return false;\n // });\n //\n // $('.col_menu').each(function () {\n // $('.content', this).addClass('animated');\n // $('.title', this).on('mouseenter', function () {\n // $(this).closest('.col_menu').find('.content').stop().fadeIn().addClass($getIn);\n // $(this).closest('.col_menu').addClass('open');\n // // return false;\n // });\n // });\n //\n // $(this).on('mouseleave', function () {\n // $('.dropdown-menu', this).stop().removeClass($getIn);\n // $('.dropdown-menu', this).stop().addClass($getOut).fadeOut();\n // $('.col_menu', this).find('.content').stop().fadeOut().removeClass($getIn);\n // $('.col_menu', this).removeClass('open');\n // $('li.dropdown', this).removeClass('open');\n // // return false;\n // });\n // }); // fixed\n // } // END Navbar Sidebar\n\n // Hover Open on Default Menu\n $('nav.navbar.navigator ul.nav').each(function() {\n $('a.dropdown-toggle', this).off('click');\n $('a.dropdown-toggle', this).on('click', function (e) {\n // e.stopPropagation(); // don't bubble up the event\n });\n\n $('.megamenu-fw', this).each(function(){\n $('.title', this).off('click');\n $('a.dropdown-toggle', this).off('click');\n $('.content').removeClass('animated');\n });\n $('.dropdown-menu', this).addClass('animated');\n\n $('li.dropdown', this).on('mouseenter', function(){\n $menu = $('.dropdown-menu', this).eq(0);\n $dropDown = $(this);\n\n // stop scrolling if top search or any (mmenu) drawer is opened\n if ($('body').hasClass('stop-scrolling') || $('body').hasClass('mm-ocd-opened') ){ return false; }\n\n $menu.removeClass($getOut);\n $menu.removeClass('open');\n $dropDown.addClass('open');\n // Get|Set the timeout object to delay the dropdown open\n timeoutHandle = window.setTimeout(function () {\n if ($dropDown.hasClass('open')){\n $menu.stop().fadeIn().addClass($getIn);\n $menu.addClass('open');\n $dropDown.addClass('open');\n }\n }, delayMenuOpen);\n });\n\n $('li.dropdown', this).on('mouseleave', function(){\n window.clearTimeout(timeoutHandle); // Clear the timeout object\n $(this).removeClass('open').removeClass('open');\n\n $('.dropdown-menu', this).removeClass('open');\n $('.dropdown-menu', this).eq(0).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n });\n\n $(this).on('mouseleave', function(){\n window.clearTimeout(timeoutHandle);\n $('li.dropdown', this).removeClass('open');\n $('.dropdown-menu', this).removeClass('open');\n $('.dropdown-menu', this).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n });\n }); // END Default Menu\n\n } // end Desktop\n\n // -----------------------------------------------------------------------\n // Hover Open on Quicklink Navigation\n // -----------------------------------------------------------------------\n $('nav.navbar.navigator .attr-nav').each(function() {\n\n $('a.dropdown-toggle', this).off('click');\n $('a.dropdown-toggle', this).on('click', function (e) {\n // e.stopPropagation(); // don't bubble up the event\n });\n\n $('.dropdown-menu', this).addClass('animated');\n $('li.dropdown', this).on('mouseenter', function(){\n $('.dropdown-menu', this).eq(0).removeClass($getOut);\n $('.dropdown-menu', this).eq(0).stop().fadeIn().addClass($getIn);\n $(this).addClass('open');\n //return false;\n });\n\n $('li.dropdown', this).on('mouseleave', function(){\n $('.dropdown-menu', this).eq(0).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n $(this).removeClass('open');\n });\n\n $(this).on('mouseleave', function(){\n $('.dropdown-menu', this).removeClass($getIn);\n $('.dropdown-menu', this).eq(0).stop().fadeOut().addClass($getOut);\n $('li.dropdown', this).removeClass('open');\n //return false;\n });\n });\n\n // -----------------------------------------------------------------------\n // Fullscreen Menu\n // -----------------------------------------------------------------------\n if( $getNav.hasClass('navbar-full')){\n var windowHeight = $(window).height(),\n windowWidth = $(window).width();\n\n $('.nav-full').css('height', windowHeight + 'px');\n $('.wrap-full-menu').css('height', windowHeight + 'px');\n $('.wrap-full-menu').css('width', windowWidth + 'px');\n\n $('.navbar-collapse').addClass('animated');\n $('.navbar-toggle').each(function(){\n var getId = $(this).data('target');\n $(this).off('click');\n $(this).on('click', function(e){\n e.preventDefault();\n $(getId).removeClass($getOut);\n $(getId).addClass('in');\n $(getId).addClass($getIn);\n // e.stopPropagation(); // don't bubble up the event\n // return false;\n });\n\n $('li.close-full-menu').on('click', function(e){\n e.preventDefault();\n $(getId).addClass($getOut);\n setTimeout(function(){\n $(getId).removeClass('in');\n $(getId).removeClass($getIn);\n }, 500);\n //e.stopPropagation(); // don't bubble up the event\n // return false;\n });\n });\n }\n }, // end manageDropdownMenu\n\n // -------------------------------------------------------------------------\n // Sticky Navbar\n // -------------------------------------------------------------------------\n navbarSticky : function() {\n var $getNav = $('nav.navbar.navigator'),\n navSticky = $getNav.hasClass('navbar-sticky');\n\n if (navSticky) {\n // Set Height Navigation\n var $getHeight = $getNav.height();\n $('.wrap-sticky').height($getHeight);\n\n // Windown on scroll\n var getOffset = $('.wrap-sticky').offset().top;\n $(window).on('scroll', function(){\n var scrollTop = $(window).scrollTop();\n if(scrollTop > getOffset){\n $getNav.addClass('sticked');\n }else {\n $getNav.removeClass('sticked');\n }\n });\n }\n }, // end navbarSticky\n\n // -------------------------------------------------------------------------\n // Navbar Scrollspy\n // -------------------------------------------------------------------------\n // navbarScrollspy : function() {\n // var navScrollSpy = $('.navbar-scrollspy'),\n // $body = $('body'),\n // $getNav = $('nav.navbar.navigator'),\n // offset = $getNav.outerHeight();\n //\n // if( navScrollSpy.length ){\n // $body.scrollspy({target: '.navbar', offset: offset });\n //\n // // Animation Scrollspy\n // $('.scroll').on('click', function(event) {\n // event.preventDefault();\n //\n // // Active link\n // $('.scroll').removeClass('active');\n // $(this).addClass('active');\n //\n // // Remove navbar collapse\n // $('.navbar-collapse').removeClass('in');\n //\n // // Toggle Bars\n // $('.navbar-toggle').each(function(){\n // $('.mdi', this).removeClass('mdi-close');\n // $('.mdi', this).addClass('mdi-menu');\n // });\n //\n // // Scroll\n // var scrollTop = $(window).scrollTop(),\n // $anchor = $(this).find('a'),\n // $section = $($anchor.attr('href')).offset().top,\n // $window = $(window).width(),\n // $minusDesktop = $getNav.data('minus-value-desktop'),\n // $minusMobile = $getNav.data('minus-value-mobile'),\n // $speed = $getNav.data('speed'),\n // $position;\n //\n // if( $window > 992 ){\n // $position = $section - $minusDesktop;\n // }else{\n // $position = $section - $minusMobile;\n // }\n //\n // $('html, body').stop().animate({\n // scrollTop: $position\n // }, $speed);\n // });\n //\n // // Activate Navigation\n // var fixSpy = function() {\n // var data = $body.data('bs.scrollspy');\n // if (data) {\n // offset = $getNav.outerHeight();\n // data.options.offset = offset;\n // $body.data('bs.scrollspy', data);\n // $body.scrollspy('refresh');\n // }\n // };\n //\n // // Activate Navigation on resize\n // var resizeTimer;\n // $(window).on('resize', function() {\n // clearTimeout(resizeTimer);\n // var resizeTimer = setTimeout(fixSpy, 200);\n // });\n // }\n // }, // end navbarScrollspy\n\n // -------------------------------------------------------------------------\n // updateSidebar\n // Note:\n // -------------------------------------------------------------------------\n updateSidebar: function (user_data) {\n var logger = log4javascript.getLogger('j1.core.navigator.updateSidebar');\n var json_message;\n\n// json_message = JSON.stringify(user_data, undefined, 2); // multiline\n json_message = JSON.stringify(user_data);\n logText = 'user state data: ' + json_message;\n logger.debug(logText);\n\n // Replace Macro placeholders to values\n j1.resolveMacros(user_data);\n // Replace Macro values only\n j1.updateMacros(user_data);\n\n return true;\n\n }, // END updateSidebar\n\n }; // end return (object)\n}( jQuery );\n","/*\n # -----------------------------------------------------------------------------\n # ~/assets/themes/j1/modules/cookiebar/js/cookiebar.js\n # Provides Javascript functions for jQuery cookiebar\n #\n # Product/Info:\n # http://jekyll.one\n #\n # Copyright (C) 2021 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n # NOTE:\n # cb cookie disabled. Instead, j1 user state cookie is used.\n # -----------------------------------------------------------------------------\n # TODO:\n # Module needs to be rewritten to use j1 native BS modals.\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-redeclare: \"off\" */\n/* global window */\n\n// TODO:\n\n// -----------------------------------------------------------------------------\n// Cookie Consent core registered as \"cookiebar\"\n// -----------------------------------------------------------------------------\n/*!\n * J1 Cookiebar\n * Copyright (C) 2021 Juergen Adams\n * Licensed under MIT License.\n */\nmodule.exports = function cookiebar (options) {\n\n return {\n\n // -------------------------------------------------------------------------\n // Initialize cookie consent core\n // -------------------------------------------------------------------------\n init: function (options) {\n\n var moduleOptions = options;\n var logger = log4javascript.getLogger('j1.cookiebar');\n var cookie_names = j1.getCookieNames();\n const cookie_user_state = cookie_names.user_state;\n var user_state = {};\n\n var moduleDefaults = {\n renewOnVisit: false, // Renew the cookie upon revisit to website\n forceShow: false, // Force cookiebar to show regardless of user cookie preference\n domain: String(window.location.hostname), // Location of privacy policy\n referrer: String(document.referrer) // Where visitor has come from\n };\n\n var options = $.extend(moduleDefaults,moduleOptions);\n\n var dependencies_met_page_ready = setInterval (function (options) {\n if ( j1.getState() == 'finished' ) {\n\n // Set|Detect J1 UserState\n user_state_detected = j1.existsCookie (cookie_user_state);\n if ( user_state_detected ) {\n logger.info('User state cookie found');\n user_state = j1.readCookie(cookie_user_state);\n } else {\n logger.error('User state NOT cookie found');\n }\n\n // Show cookie (consent) icon\n if (user_state.cookies_accepted == 'accepted') {\n // Display cookie (consent) icon\n $('#quickLinksCookieButton').css('display', 'block');\n }\n\n // Hide cookie (consent) icon\n if (user_state.cookies_accepted == 'pending' || user_state.cookies_accepted == 'declined' ) {\n // Display cookie (consent) icon\n $('#quickLinksCookieButton').css('display', 'none');\n }\n\n // Sets expiration date for cookie\n // var expireDate = new Date();\n // expireDate.setTime(expireDate.getTime()+(options.expireDays*86400000));\n // expireDate = expireDate.toGMTString();\n\n if (\n user_state.cookies_accepted == 'pending' ||\n user_state.cookies_accepted == 'declined' ||\n user_state.cookies_accepted == '')\n {\n $('#topFullCookieConsent').modal('show');\n }\n clearInterval(dependencies_met_page_ready);\n }\n });\n },\n\n // -------------------------------------------------------------------------\n // eventHandler: EventHandler for J1 Cookie Consent\n // Manage button click events for all BS Modals\n // See: https://www.nickang.com/add-event-listener-for-loop-problem-in-javascript/\n // -------------------------------------------------------------------------\n eventHandler: function (options) {\n var logger = log4javascript.getLogger('cookiebar.eventHandler');\n var current_page = window.location.pathname;\n var modalButtons = document.querySelectorAll('a.btn');\n var appDetected = j1.appDetected();\n var deleteOnDecline = options.deleteOnDecline;\n var deleteOnDecline = true;\n var whitelistedPages = options.whitelistedPages;\n var whitelistedPages = [];\n var stopScrolling = options.stopScrolling;\n var cookie_names = j1.getCookieNames();\n const cookie_user_state = cookie_names.user_state;\n var user_state = {};\n var cookie_consent = j1.readCookie(cookie_user_state);\n var whitelisted;\n var json_data;\n\n logText = 'register button click events';\n logger.debug(logText);\n\n modalButtons.forEach(function(button, index) {\n button.addEventListener('click', function(e) {\n\n // CookieConsent policyButton\n // -------------------------------------------------------------------\n if (this.id === 'policyButton') {\n logger.debug('user clicked policyButton');\n // toggle|display cookie policy\n $('#cookiePolicyInfo').toggle( 'fast', function() {\n // toggle container classes\n $('#modal-footer').toggleClass('modal-footer-hidden modal-footer-show');\n });\n\n // return false behaves like preventDefault() to block\n // further event propagation (bubble up)\n return false;\n }\n\n // CookieConsent acceptButton\n // -------------------------------------------------------------------\n if (this.id === 'acceptButton') {\n logger.debug('user clicked acceptButton');\n\n // Set consent state\n cookie_consent = j1.readCookie(cookie_user_state);\n cookie_consent.cookies_accepted = 'accepted';\n\n // Update user state cookie\n\n // j1.writeCookie({\n // name: cookie_user_state,\n // data: cookie_consent,\n // expires: cookie_consent.live_span\n // });\n\n j1.writeCookie({\n name: cookie_user_state,\n data: cookie_consent,\n expires: 365\n });\n\n // update sidebar for changed consent|theme data\n logger.info('update sidebar');\n user_state = j1.readCookie(cookie_names.user_state);\n user_session = j1.readCookie(cookie_names.user_session);\n current_user_data = j1.mergeData(user_session, user_state);\n j1.core.navigator.updateSidebar(current_user_data);\n\n // Display cookie icon\n $('#quickLinksCookieButton').css('display', 'block');\n\n return false;\n }\n\n // CookieConsent declineButton\n // -------------------------------------------------------------------\n if (this.id === 'declineButton') {\n logger.debug('user clicked declineButton');\n\n // Set consent state|current_page\n cookie_consent.cookies_accepted = 'declined';\n current_page = window.location.pathname;\n whitelisted = (whitelistedPages.indexOf(current_page) > -1);\n\n // update sidebar for changed consent|theme data\n logger.info('update sidebar');\n user_state = j1.readCookie(cookie_names.user_state);\n user_session = j1.readCookie(cookie_names.user_session);\n current_user_data = j1.mergeData(user_session, user_state);\n j1.core.navigator.updateSidebar(current_user_data);\n\n if (deleteOnDecline) {\n // Delete cookies\n logger.warn('delete all cookies');\n j1.deleteCookie(cookie_user_state);\n }\n\n $('#quickLinksCookieButton').css('display', 'none');\n // Set route to home page if current page is NOT whitelisted\n if ( !whitelisted ) { j1.goHome(); }\n\n return false;\n }\n\n // revokeCookiesButton\n // -------------------------------------------------------------------\n if (this.id === 'revokeCookies') {\n logger.debug('user clicked revokeCookiesButton');\n\n current_page = window.location.pathname;\n whitelisted = (whitelistedPages.indexOf(current_page) > -1);\n\n // Set consent state\n cookie_consent = j1.readCookie(cookie_user_state);\n cookie_consent.cookies_accepted = 'declined';\n\n // Update user state cookie\n\n // j1.writeCookie({\n // name: cookie_user_state,\n // data: cookie_consent,\n // expires: cookie_consent.live_span\n // });\n\n j1.writeCookie({\n name: cookie_user_state,\n data: cookie_consent,\n expires: 365\n });\n\n // update sidebar for changed consent|theme data\n logger.info('update sidebar');\n user_state = j1.readCookie(cookie_names.user_state);\n user_session = j1.readCookie(cookie_names.user_session);\n current_user_data = j1.mergeData(user_session, user_state);\n j1.core.navigator.updateSidebar(current_user_data);\n\n // Hide cookie icon\n $('#quickLinksCookieButton').css('display', 'none');\n\n // Set route to home page if current page is NOT whitelisted\n if (!whitelisted) { j1.goHome(); }\n }\n\n // remainCookiesButton\n // -------------------------------------------------------------------\n if (this.id === 'remainCookies') {\n logger.debug('user clicked remainCookiesButton');\n return false;\n }\n });\n });\n\n // Register pre/post events for modal cookieRevokeCentralDanger\n // -----------------------------------------------------------------------\n $(document).on('shown.bs.modal','#cookieRevokeCentralDanger', function () {\n logger.debug('user opened modal: cookieRevokeCentralDanger');\n });\n\n $(document).on('hide.bs.modal','#cookieRevokeCentralDanger', function () {\n logger.debug('user closed cookieRevokeCentralDanger');\n });\n\n // Register pre/post events for modal topFullCookieConsent\n // -----------------------------------------------------------------------\n $(document).on('shown.bs.modal','#topFullCookieConsent', function () {\n if ( stopScrolling ) { $('body').addClass('stop-scrolling'); }\n //\n // place action here\n //\n });\n\n $(document).on('hide.bs.modal','#topFullCookieConsent', function () {\n logger.debug('user closed modal: topFullCookieConsent');\n $('body').removeClass('stop-scrolling');\n });\n\n logText = 'events registered';\n logger.debug(logText);\n\n return true;\n } // END eventHandler\n }; // END return\n}( jQuery );\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/scroll-smooth/scroll-smooth.js\n # Provides Javascript functions for smooth scrolling\n #\n # Product/Info:\n # http://jekyll.one\n #\n # Copyright (C) 2020 Juergen Adams\n #\n # J1 Template is licensed under the MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n'use strict';\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-redeclare: \"off\" */\n/* eslint indent: \"off\" */\n// -----------------------------------------------------------------------------\n\n// -----------------------------------------------------------------------------\n// scrollSmooth core registered as \"scrollSmooth\"\n// -----------------------------------------------------------------------------\nmodule.exports = function scrollSmooth ( options ) {\n\n // Default settings\n var settings = $.extend({\n foo: 'foo_option',\n bar: 'bar_option'\n }, options );\n\n // -----------------------------------------------------------------------\n // Helper functions\n // -----------------------------------------------------------------------\n function stripHash (url) {\n return url.slice(0, url.lastIndexOf('#'));\n }\n\n function isCssSmoothScrollSupported () {\n return 'scrollBehavior' in document.documentElement.style;\n }\n\n return {\n // -------------------------------------------------------------------------\n // Initialize scrollSmooth\n // -------------------------------------------------------------------------\n scroll: function ( target, options ) {\n\n var logger;\n var logText;\n\n logger = log4javascript.getLogger('j1.scrollSmooth.core');\n\n // indicator|check currently NOT used\n // if (isCssSmoothScrollSupported()) { }\n\n logText = 'run module scrollSmooth';\n logger.info(logText);\n\n var duration = options.duration;\n var offset = options.offset;\n\n // var pageUrl = options.location.hash\n // ? stripHash(options.location.href)\n // : options.location.href;\n\n this.scrollTo(target, {\n duration: duration,\n offset: offset,\n callback: null\n });\n\n logText = 'scrollSmooth finished';\n logger.info(logText);\n },\n\n // -------------------------------------------------------------------------\n // scrollTo\n // -------------------------------------------------------------------------\n scrollTo: function ( target, options ) {\n var start = window.pageYOffset;\n var opt = {\n duration: options.duration,\n offset: options.offset || 0,\n callback: options.callback,\n easing: options.easing || easeInOutQuad\n };\n\n // This makes ids that start with a number work: ('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n // DecodeURI for nonASCII hashes, they was encoded, but id was not encoded, it lead to not finding the tgt element by id.\n // And this is for IE: document.body.scrollTop\n var tgt = document.querySelector('[id=\"' + decodeURI(target).split('#').join('') + '\"]');\n var distance = typeof target === 'string'\n ? opt.offset + (\n target\n ? (tgt && tgt.getBoundingClientRect().top) || 0 // handle non-existent links better.\n : -(document.documentElement.scrollTop || document.body.scrollTop))\n : target;\n var duration = typeof opt.duration === 'function'\n ? opt.duration(distance)\n : opt.duration;\n var timeStart;\n var timeElapsed;\n\n requestAnimationFrame(function (time) { timeStart = time; loop(time); });\n function loop (time) {\n timeElapsed = time - timeStart;\n\n window.scrollTo(0, opt.easing(timeElapsed, start, distance, duration));\n\n if (timeElapsed < duration) { requestAnimationFrame(loop); } else { end(); }\n }\n\n function end () {\n window.scrollTo(0, start + distance);\n\n // jadams, 2020-07-04: on (some?) mobile devices, the navbar\n // background is NOT switched (always?) correctly on a\n // page RELOAD.\n //\n // Solution: scroll the page one pixel back and forth (trigger)\n // to get the right position for the Toccer and adjust the\n // Navigator to display the (tranparent) navbar correctly based\n // on their onscroll events registered.\n //\n $(window).scrollTop($(window).scrollTop()+1);\n $(window).scrollTop($(window).scrollTop()-1);\n\n if (typeof opt.callback === 'function') { opt.callback(); }\n }\n\n // Robert Penner's easeInOutQuad - http://robertpenner.com/easing/\n function easeInOutQuad (t, b, c, d) {\n t /= d / 2;\n if (t < 1) return c / 2 * t * t + b;\n t--;\n return -c / 2 * (t * (t - 2) - 1) + b;\n }\n } // END scrollTo\n\n }; // END return\n}( jQuery );\n","/*\n * anime.js v3.2.0\n * (c) 2020 Julian Garnier\n * Released under the MIT license\n * animejs.com\n */\n\n'use strict';\n\n// Defaults\n\nvar defaultInstanceSettings = {\n update: null,\n begin: null,\n loopBegin: null,\n changeBegin: null,\n change: null,\n changeComplete: null,\n loopComplete: null,\n complete: null,\n loop: 1,\n direction: 'normal',\n autoplay: true,\n timelineOffset: 0\n};\n\nvar defaultTweenSettings = {\n duration: 1000,\n delay: 0,\n endDelay: 0,\n easing: 'easeOutElastic(1, .5)',\n round: 0\n};\n\nvar validTransforms = ['translateX', 'translateY', 'translateZ', 'rotate', 'rotateX', 'rotateY', 'rotateZ', 'scale', 'scaleX', 'scaleY', 'scaleZ', 'skew', 'skewX', 'skewY', 'perspective', 'matrix', 'matrix3d'];\n\n// Caching\n\nvar cache = {\n CSS: {},\n springs: {}\n};\n\n// Utils\n\nfunction minMax(val, min, max) {\n return Math.min(Math.max(val, min), max);\n}\n\nfunction stringContains(str, text) {\n return str.indexOf(text) > -1;\n}\n\nfunction applyArguments(func, args) {\n return func.apply(null, args);\n}\n\nvar is = {\n arr: function (a) { return Array.isArray(a); },\n obj: function (a) { return stringContains(Object.prototype.toString.call(a), 'Object'); },\n pth: function (a) { return is.obj(a) && a.hasOwnProperty('totalLength'); },\n svg: function (a) { return a instanceof SVGElement; },\n inp: function (a) { return a instanceof HTMLInputElement; },\n dom: function (a) { return a.nodeType || is.svg(a); },\n str: function (a) { return typeof a === 'string'; },\n fnc: function (a) { return typeof a === 'function'; },\n und: function (a) { return typeof a === 'undefined'; },\n hex: function (a) { return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(a); },\n rgb: function (a) { return /^rgb/.test(a); },\n hsl: function (a) { return /^hsl/.test(a); },\n col: function (a) { return (is.hex(a) || is.rgb(a) || is.hsl(a)); },\n key: function (a) { return !defaultInstanceSettings.hasOwnProperty(a) && !defaultTweenSettings.hasOwnProperty(a) && a !== 'targets' && a !== 'keyframes'; }\n};\n\n// Easings\n\nfunction parseEasingParameters(string) {\n var match = /\\(([^)]+)\\)/.exec(string);\n return match ? match[1].split(',').map(function (p) { return parseFloat(p); }) : [];\n}\n\n// Spring solver inspired by Webkit Copyright © 2016 Apple Inc. All rights reserved. https://webkit.org/demos/spring/spring.js\n\nfunction spring(string, duration) {\n\n var params = parseEasingParameters(string);\n var mass = minMax(is.und(params[0]) ? 1 : params[0], .1, 100);\n var stiffness = minMax(is.und(params[1]) ? 100 : params[1], .1, 100);\n var damping = minMax(is.und(params[2]) ? 10 : params[2], .1, 100);\n var velocity = minMax(is.und(params[3]) ? 0 : params[3], .1, 100);\n var w0 = Math.sqrt(stiffness / mass);\n var zeta = damping / (2 * Math.sqrt(stiffness * mass));\n var wd = zeta < 1 ? w0 * Math.sqrt(1 - zeta * zeta) : 0;\n var a = 1;\n var b = zeta < 1 ? (zeta * w0 + -velocity) / wd : -velocity + w0;\n\n function solver(t) {\n var progress = duration ? (duration * t) / 1000 : t;\n if (zeta < 1) {\n progress = Math.exp(-progress * zeta * w0) * (a * Math.cos(wd * progress) + b * Math.sin(wd * progress));\n } else {\n progress = (a + b * progress) * Math.exp(-progress * w0);\n }\n if (t === 0 || t === 1) { return t; }\n return 1 - progress;\n }\n\n function getDuration() {\n var cached = cache.springs[string];\n if (cached) { return cached; }\n var frame = 1/6;\n var elapsed = 0;\n var rest = 0;\n while(true) {\n elapsed += frame;\n if (solver(elapsed) === 1) {\n rest++;\n if (rest >= 16) { break; }\n } else {\n rest = 0;\n }\n }\n var duration = elapsed * frame * 1000;\n cache.springs[string] = duration;\n return duration;\n }\n\n return duration ? solver : getDuration;\n\n}\n\n// Basic steps easing implementation https://developer.mozilla.org/fr/docs/Web/CSS/transition-timing-function\n\nfunction steps(steps) {\n if ( steps === void 0 ) steps = 10;\n\n return function (t) { return Math.ceil((minMax(t, 0.000001, 1)) * steps) * (1 / steps); };\n}\n\n// BezierEasing https://github.com/gre/bezier-easing\n\nvar bezier = (function () {\n\n var kSplineTableSize = 11;\n var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\n\n function A(aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1 }\n function B(aA1, aA2) { return 3.0 * aA2 - 6.0 * aA1 }\n function C(aA1) { return 3.0 * aA1 }\n\n function calcBezier(aT, aA1, aA2) { return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT }\n function getSlope(aT, aA1, aA2) { return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1) }\n\n function binarySubdivide(aX, aA, aB, mX1, mX2) {\n var currentX, currentT, i = 0;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) { aB = currentT; } else { aA = currentT; }\n } while (Math.abs(currentX) > 0.0000001 && ++i < 10);\n return currentT;\n }\n\n function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n for (var i = 0; i < 4; ++i) {\n var currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) { return aGuessT; }\n var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n }\n\n function bezier(mX1, mY1, mX2, mY2) {\n\n if (!(0 <= mX1 && mX1 <= 1 && 0 <= mX2 && mX2 <= 1)) { return; }\n var sampleValues = new Float32Array(kSplineTableSize);\n\n if (mX1 !== mY1 || mX2 !== mY2) {\n for (var i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n }\n\n function getTForX(aX) {\n\n var intervalStart = 0;\n var currentSample = 1;\n var lastSample = kSplineTableSize - 1;\n\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n\n --currentSample;\n\n var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n var guessForT = intervalStart + dist * kSampleStepSize;\n var initialSlope = getSlope(guessForT, mX1, mX2);\n\n if (initialSlope >= 0.001) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n } else if (initialSlope === 0.0) {\n return guessForT;\n } else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n\n }\n\n return function (x) {\n if (mX1 === mY1 && mX2 === mY2) { return x; }\n if (x === 0 || x === 1) { return x; }\n return calcBezier(getTForX(x), mY1, mY2);\n }\n\n }\n\n return bezier;\n\n})();\n\nvar penner = (function () {\n\n // Based on jQuery UI's implemenation of easing equations from Robert Penner (http://www.robertpenner.com/easing)\n\n var eases = { linear: function () { return function (t) { return t; }; } };\n\n var functionEasings = {\n Sine: function () { return function (t) { return 1 - Math.cos(t * Math.PI / 2); }; },\n Circ: function () { return function (t) { return 1 - Math.sqrt(1 - t * t); }; },\n Back: function () { return function (t) { return t * t * (3 * t - 2); }; },\n Bounce: function () { return function (t) {\n var pow2, b = 4;\n while (t < (( pow2 = Math.pow(2, --b)) - 1) / 11) {}\n return 1 / Math.pow(4, 3 - b) - 7.5625 * Math.pow(( pow2 * 3 - 2 ) / 22 - t, 2)\n }; },\n Elastic: function (amplitude, period) {\n if ( amplitude === void 0 ) amplitude = 1;\n if ( period === void 0 ) period = .5;\n\n var a = minMax(amplitude, 1, 10);\n var p = minMax(period, .1, 2);\n return function (t) {\n return (t === 0 || t === 1) ? t : \n -a * Math.pow(2, 10 * (t - 1)) * Math.sin((((t - 1) - (p / (Math.PI * 2) * Math.asin(1 / a))) * (Math.PI * 2)) / p);\n }\n }\n };\n\n var baseEasings = ['Quad', 'Cubic', 'Quart', 'Quint', 'Expo'];\n\n baseEasings.forEach(function (name, i) {\n functionEasings[name] = function () { return function (t) { return Math.pow(t, i + 2); }; };\n });\n\n Object.keys(functionEasings).forEach(function (name) {\n var easeIn = functionEasings[name];\n eases['easeIn' + name] = easeIn;\n eases['easeOut' + name] = function (a, b) { return function (t) { return 1 - easeIn(a, b)(1 - t); }; };\n eases['easeInOut' + name] = function (a, b) { return function (t) { return t < 0.5 ? easeIn(a, b)(t * 2) / 2 : \n 1 - easeIn(a, b)(t * -2 + 2) / 2; }; };\n });\n\n return eases;\n\n})();\n\nfunction parseEasings(easing, duration) {\n if (is.fnc(easing)) { return easing; }\n var name = easing.split('(')[0];\n var ease = penner[name];\n var args = parseEasingParameters(easing);\n switch (name) {\n case 'spring' : return spring(easing, duration);\n case 'cubicBezier' : return applyArguments(bezier, args);\n case 'steps' : return applyArguments(steps, args);\n default : return applyArguments(ease, args);\n }\n}\n\n// Strings\n\nfunction selectString(str) {\n try {\n var nodes = document.querySelectorAll(str);\n return nodes;\n } catch(e) {\n return;\n }\n}\n\n// Arrays\n\nfunction filterArray(arr, callback) {\n var len = arr.length;\n var thisArg = arguments.length >= 2 ? arguments[1] : void 0;\n var result = [];\n for (var i = 0; i < len; i++) {\n if (i in arr) {\n var val = arr[i];\n if (callback.call(thisArg, val, i, arr)) {\n result.push(val);\n }\n }\n }\n return result;\n}\n\nfunction flattenArray(arr) {\n return arr.reduce(function (a, b) { return a.concat(is.arr(b) ? flattenArray(b) : b); }, []);\n}\n\nfunction toArray(o) {\n if (is.arr(o)) { return o; }\n if (is.str(o)) { o = selectString(o) || o; }\n if (o instanceof NodeList || o instanceof HTMLCollection) { return [].slice.call(o); }\n return [o];\n}\n\nfunction arrayContains(arr, val) {\n return arr.some(function (a) { return a === val; });\n}\n\n// Objects\n\nfunction cloneObject(o) {\n var clone = {};\n for (var p in o) { clone[p] = o[p]; }\n return clone;\n}\n\nfunction replaceObjectProps(o1, o2) {\n var o = cloneObject(o1);\n for (var p in o1) { o[p] = o2.hasOwnProperty(p) ? o2[p] : o1[p]; }\n return o;\n}\n\nfunction mergeObjects(o1, o2) {\n var o = cloneObject(o1);\n for (var p in o2) { o[p] = is.und(o1[p]) ? o2[p] : o1[p]; }\n return o;\n}\n\n// Colors\n\nfunction rgbToRgba(rgbValue) {\n var rgb = /rgb\\((\\d+,\\s*[\\d]+,\\s*[\\d]+)\\)/g.exec(rgbValue);\n return rgb ? (\"rgba(\" + (rgb[1]) + \",1)\") : rgbValue;\n}\n\nfunction hexToRgba(hexValue) {\n var rgx = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n var hex = hexValue.replace(rgx, function (m, r, g, b) { return r + r + g + g + b + b; } );\n var rgb = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n var r = parseInt(rgb[1], 16);\n var g = parseInt(rgb[2], 16);\n var b = parseInt(rgb[3], 16);\n return (\"rgba(\" + r + \",\" + g + \",\" + b + \",1)\");\n}\n\nfunction hslToRgba(hslValue) {\n var hsl = /hsl\\((\\d+),\\s*([\\d.]+)%,\\s*([\\d.]+)%\\)/g.exec(hslValue) || /hsla\\((\\d+),\\s*([\\d.]+)%,\\s*([\\d.]+)%,\\s*([\\d.]+)\\)/g.exec(hslValue);\n var h = parseInt(hsl[1], 10) / 360;\n var s = parseInt(hsl[2], 10) / 100;\n var l = parseInt(hsl[3], 10) / 100;\n var a = hsl[4] || 1;\n function hue2rgb(p, q, t) {\n if (t < 0) { t += 1; }\n if (t > 1) { t -= 1; }\n if (t < 1/6) { return p + (q - p) * 6 * t; }\n if (t < 1/2) { return q; }\n if (t < 2/3) { return p + (q - p) * (2/3 - t) * 6; }\n return p;\n }\n var r, g, b;\n if (s == 0) {\n r = g = b = l;\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1/3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1/3);\n }\n return (\"rgba(\" + (r * 255) + \",\" + (g * 255) + \",\" + (b * 255) + \",\" + a + \")\");\n}\n\nfunction colorToRgb(val) {\n if (is.rgb(val)) { return rgbToRgba(val); }\n if (is.hex(val)) { return hexToRgba(val); }\n if (is.hsl(val)) { return hslToRgba(val); }\n}\n\n// Units\n\nfunction getUnit(val) {\n var split = /[+-]?\\d*\\.?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(val);\n if (split) { return split[1]; }\n}\n\nfunction getTransformUnit(propName) {\n if (stringContains(propName, 'translate') || propName === 'perspective') { return 'px'; }\n if (stringContains(propName, 'rotate') || stringContains(propName, 'skew')) { return 'deg'; }\n}\n\n// Values\n\nfunction getFunctionValue(val, animatable) {\n if (!is.fnc(val)) { return val; }\n return val(animatable.target, animatable.id, animatable.total);\n}\n\nfunction getAttribute(el, prop) {\n return el.getAttribute(prop);\n}\n\nfunction convertPxToUnit(el, value, unit) {\n var valueUnit = getUnit(value);\n if (arrayContains([unit, 'deg', 'rad', 'turn'], valueUnit)) { return value; }\n var cached = cache.CSS[value + unit];\n if (!is.und(cached)) { return cached; }\n var baseline = 100;\n var tempEl = document.createElement(el.tagName);\n var parentEl = (el.parentNode && (el.parentNode !== document)) ? el.parentNode : document.body;\n parentEl.appendChild(tempEl);\n tempEl.style.position = 'absolute';\n tempEl.style.width = baseline + unit;\n var factor = baseline / tempEl.offsetWidth;\n parentEl.removeChild(tempEl);\n var convertedUnit = factor * parseFloat(value);\n cache.CSS[value + unit] = convertedUnit;\n return convertedUnit;\n}\n\nfunction getCSSValue(el, prop, unit) {\n if (prop in el.style) {\n var uppercasePropName = prop.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n var value = el.style[prop] || getComputedStyle(el).getPropertyValue(uppercasePropName) || '0';\n return unit ? convertPxToUnit(el, value, unit) : value;\n }\n}\n\nfunction getAnimationType(el, prop) {\n if (is.dom(el) && !is.inp(el) && (getAttribute(el, prop) || (is.svg(el) && el[prop]))) { return 'attribute'; }\n if (is.dom(el) && arrayContains(validTransforms, prop)) { return 'transform'; }\n if (is.dom(el) && (prop !== 'transform' && getCSSValue(el, prop))) { return 'css'; }\n if (el[prop] != null) { return 'object'; }\n}\n\nfunction getElementTransforms(el) {\n if (!is.dom(el)) { return; }\n var str = el.style.transform || '';\n var reg = /(\\w+)\\(([^)]*)\\)/g;\n var transforms = new Map();\n var m; while (m = reg.exec(str)) { transforms.set(m[1], m[2]); }\n return transforms;\n}\n\nfunction getTransformValue(el, propName, animatable, unit) {\n var defaultVal = stringContains(propName, 'scale') ? 1 : 0 + getTransformUnit(propName);\n var value = getElementTransforms(el).get(propName) || defaultVal;\n if (animatable) {\n animatable.transforms.list.set(propName, value);\n animatable.transforms['last'] = propName;\n }\n return unit ? convertPxToUnit(el, value, unit) : value;\n}\n\nfunction getOriginalTargetValue(target, propName, unit, animatable) {\n switch (getAnimationType(target, propName)) {\n case 'transform': return getTransformValue(target, propName, animatable, unit);\n case 'css': return getCSSValue(target, propName, unit);\n case 'attribute': return getAttribute(target, propName);\n default: return target[propName] || 0;\n }\n}\n\nfunction getRelativeValue(to, from) {\n var operator = /^(\\*=|\\+=|-=)/.exec(to);\n if (!operator) { return to; }\n var u = getUnit(to) || 0;\n var x = parseFloat(from);\n var y = parseFloat(to.replace(operator[0], ''));\n switch (operator[0][0]) {\n case '+': return x + y + u;\n case '-': return x - y + u;\n case '*': return x * y + u;\n }\n}\n\nfunction validateValue(val, unit) {\n if (is.col(val)) { return colorToRgb(val); }\n if (/\\s/g.test(val)) { return val; }\n var originalUnit = getUnit(val);\n var unitLess = originalUnit ? val.substr(0, val.length - originalUnit.length) : val;\n if (unit) { return unitLess + unit; }\n return unitLess;\n}\n\n// getTotalLength() equivalent for circle, rect, polyline, polygon and line shapes\n// adapted from https://gist.github.com/SebLambla/3e0550c496c236709744\n\nfunction getDistance(p1, p2) {\n return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));\n}\n\nfunction getCircleLength(el) {\n return Math.PI * 2 * getAttribute(el, 'r');\n}\n\nfunction getRectLength(el) {\n return (getAttribute(el, 'width') * 2) + (getAttribute(el, 'height') * 2);\n}\n\nfunction getLineLength(el) {\n return getDistance(\n {x: getAttribute(el, 'x1'), y: getAttribute(el, 'y1')}, \n {x: getAttribute(el, 'x2'), y: getAttribute(el, 'y2')}\n );\n}\n\nfunction getPolylineLength(el) {\n var points = el.points;\n var totalLength = 0;\n var previousPos;\n for (var i = 0 ; i < points.numberOfItems; i++) {\n var currentPos = points.getItem(i);\n if (i > 0) { totalLength += getDistance(previousPos, currentPos); }\n previousPos = currentPos;\n }\n return totalLength;\n}\n\nfunction getPolygonLength(el) {\n var points = el.points;\n return getPolylineLength(el) + getDistance(points.getItem(points.numberOfItems - 1), points.getItem(0));\n}\n\n// Path animation\n\nfunction getTotalLength(el) {\n if (el.getTotalLength) { return el.getTotalLength(); }\n switch(el.tagName.toLowerCase()) {\n case 'circle': return getCircleLength(el);\n case 'rect': return getRectLength(el);\n case 'line': return getLineLength(el);\n case 'polyline': return getPolylineLength(el);\n case 'polygon': return getPolygonLength(el);\n }\n}\n\nfunction setDashoffset(el) {\n var pathLength = getTotalLength(el);\n el.setAttribute('stroke-dasharray', pathLength);\n return pathLength;\n}\n\n// Motion path\n\nfunction getParentSvgEl(el) {\n var parentEl = el.parentNode;\n while (is.svg(parentEl)) {\n if (!is.svg(parentEl.parentNode)) { break; }\n parentEl = parentEl.parentNode;\n }\n return parentEl;\n}\n\nfunction getParentSvg(pathEl, svgData) {\n var svg = svgData || {};\n var parentSvgEl = svg.el || getParentSvgEl(pathEl);\n var rect = parentSvgEl.getBoundingClientRect();\n var viewBoxAttr = getAttribute(parentSvgEl, 'viewBox');\n var width = rect.width;\n var height = rect.height;\n var viewBox = svg.viewBox || (viewBoxAttr ? viewBoxAttr.split(' ') : [0, 0, width, height]);\n return {\n el: parentSvgEl,\n viewBox: viewBox,\n x: viewBox[0] / 1,\n y: viewBox[1] / 1,\n w: width / viewBox[2],\n h: height / viewBox[3]\n }\n}\n\nfunction getPath(path, percent) {\n var pathEl = is.str(path) ? selectString(path)[0] : path;\n var p = percent || 100;\n return function(property) {\n return {\n property: property,\n el: pathEl,\n svg: getParentSvg(pathEl),\n totalLength: getTotalLength(pathEl) * (p / 100)\n }\n }\n}\n\nfunction getPathProgress(path, progress) {\n function point(offset) {\n if ( offset === void 0 ) offset = 0;\n\n var l = progress + offset >= 1 ? progress + offset : 0;\n return path.el.getPointAtLength(l);\n }\n var svg = getParentSvg(path.el, path.svg);\n var p = point();\n var p0 = point(-1);\n var p1 = point(+1);\n switch (path.property) {\n case 'x': return (p.x - svg.x) * svg.w;\n case 'y': return (p.y - svg.y) * svg.h;\n case 'angle': return Math.atan2(p1.y - p0.y, p1.x - p0.x) * 180 / Math.PI;\n }\n}\n\n// Decompose value\n\nfunction decomposeValue(val, unit) {\n // const rgx = /-?\\d*\\.?\\d+/g; // handles basic numbers\n // const rgx = /[+-]?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?/g; // handles exponents notation\n var rgx = /[+-]?\\d*\\.?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?/g; // handles exponents notation\n var value = validateValue((is.pth(val) ? val.totalLength : val), unit) + '';\n return {\n original: value,\n numbers: value.match(rgx) ? value.match(rgx).map(Number) : [0],\n strings: (is.str(val) || unit) ? value.split(rgx) : []\n }\n}\n\n// Animatables\n\nfunction parseTargets(targets) {\n var targetsArray = targets ? (flattenArray(is.arr(targets) ? targets.map(toArray) : toArray(targets))) : [];\n return filterArray(targetsArray, function (item, pos, self) { return self.indexOf(item) === pos; });\n}\n\nfunction getAnimatables(targets) {\n var parsed = parseTargets(targets);\n return parsed.map(function (t, i) {\n return {target: t, id: i, total: parsed.length, transforms: { list: getElementTransforms(t) } };\n });\n}\n\n// Properties\n\nfunction normalizePropertyTweens(prop, tweenSettings) {\n var settings = cloneObject(tweenSettings);\n // Override duration if easing is a spring\n if (/^spring/.test(settings.easing)) { settings.duration = spring(settings.easing); }\n if (is.arr(prop)) {\n var l = prop.length;\n var isFromTo = (l === 2 && !is.obj(prop[0]));\n if (!isFromTo) {\n // Duration divided by the number of tweens\n if (!is.fnc(tweenSettings.duration)) { settings.duration = tweenSettings.duration / l; }\n } else {\n // Transform [from, to] values shorthand to a valid tween value\n prop = {value: prop};\n }\n }\n var propArray = is.arr(prop) ? prop : [prop];\n return propArray.map(function (v, i) {\n var obj = (is.obj(v) && !is.pth(v)) ? v : {value: v};\n // Default delay value should only be applied to the first tween\n if (is.und(obj.delay)) { obj.delay = !i ? tweenSettings.delay : 0; }\n // Default endDelay value should only be applied to the last tween\n if (is.und(obj.endDelay)) { obj.endDelay = i === propArray.length - 1 ? tweenSettings.endDelay : 0; }\n return obj;\n }).map(function (k) { return mergeObjects(k, settings); });\n}\n\n\nfunction flattenKeyframes(keyframes) {\n var propertyNames = filterArray(flattenArray(keyframes.map(function (key) { return Object.keys(key); })), function (p) { return is.key(p); })\n .reduce(function (a,b) { if (a.indexOf(b) < 0) { a.push(b); } return a; }, []);\n var properties = {};\n var loop = function ( i ) {\n var propName = propertyNames[i];\n properties[propName] = keyframes.map(function (key) {\n var newKey = {};\n for (var p in key) {\n if (is.key(p)) {\n if (p == propName) { newKey.value = key[p]; }\n } else {\n newKey[p] = key[p];\n }\n }\n return newKey;\n });\n };\n\n for (var i = 0; i < propertyNames.length; i++) loop( i );\n return properties;\n}\n\nfunction getProperties(tweenSettings, params) {\n var properties = [];\n var keyframes = params.keyframes;\n if (keyframes) { params = mergeObjects(flattenKeyframes(keyframes), params); }\n for (var p in params) {\n if (is.key(p)) {\n properties.push({\n name: p,\n tweens: normalizePropertyTweens(params[p], tweenSettings)\n });\n }\n }\n return properties;\n}\n\n// Tweens\n\nfunction normalizeTweenValues(tween, animatable) {\n var t = {};\n for (var p in tween) {\n var value = getFunctionValue(tween[p], animatable);\n if (is.arr(value)) {\n value = value.map(function (v) { return getFunctionValue(v, animatable); });\n if (value.length === 1) { value = value[0]; }\n }\n t[p] = value;\n }\n t.duration = parseFloat(t.duration);\n t.delay = parseFloat(t.delay);\n return t;\n}\n\nfunction normalizeTweens(prop, animatable) {\n var previousTween;\n return prop.tweens.map(function (t) {\n var tween = normalizeTweenValues(t, animatable);\n var tweenValue = tween.value;\n var to = is.arr(tweenValue) ? tweenValue[1] : tweenValue;\n var toUnit = getUnit(to);\n var originalValue = getOriginalTargetValue(animatable.target, prop.name, toUnit, animatable);\n var previousValue = previousTween ? previousTween.to.original : originalValue;\n var from = is.arr(tweenValue) ? tweenValue[0] : previousValue;\n var fromUnit = getUnit(from) || getUnit(originalValue);\n var unit = toUnit || fromUnit;\n if (is.und(to)) { to = previousValue; }\n tween.from = decomposeValue(from, unit);\n tween.to = decomposeValue(getRelativeValue(to, from), unit);\n tween.start = previousTween ? previousTween.end : 0;\n tween.end = tween.start + tween.delay + tween.duration + tween.endDelay;\n tween.easing = parseEasings(tween.easing, tween.duration);\n tween.isPath = is.pth(tweenValue);\n tween.isColor = is.col(tween.from.original);\n if (tween.isColor) { tween.round = 1; }\n previousTween = tween;\n return tween;\n });\n}\n\n// Tween progress\n\nvar setProgressValue = {\n css: function (t, p, v) { return t.style[p] = v; },\n attribute: function (t, p, v) { return t.setAttribute(p, v); },\n object: function (t, p, v) { return t[p] = v; },\n transform: function (t, p, v, transforms, manual) {\n transforms.list.set(p, v);\n if (p === transforms.last || manual) {\n var str = '';\n transforms.list.forEach(function (value, prop) { str += prop + \"(\" + value + \") \"; });\n t.style.transform = str;\n }\n }\n};\n\n// Set Value helper\n\nfunction setTargetsValue(targets, properties) {\n var animatables = getAnimatables(targets);\n animatables.forEach(function (animatable) {\n for (var property in properties) {\n var value = getFunctionValue(properties[property], animatable);\n var target = animatable.target;\n var valueUnit = getUnit(value);\n var originalValue = getOriginalTargetValue(target, property, valueUnit, animatable);\n var unit = valueUnit || getUnit(originalValue);\n var to = getRelativeValue(validateValue(value, unit), originalValue);\n var animType = getAnimationType(target, property);\n setProgressValue[animType](target, property, to, animatable.transforms, true);\n }\n });\n}\n\n// Animations\n\nfunction createAnimation(animatable, prop) {\n var animType = getAnimationType(animatable.target, prop.name);\n if (animType) {\n var tweens = normalizeTweens(prop, animatable);\n var lastTween = tweens[tweens.length - 1];\n return {\n type: animType,\n property: prop.name,\n animatable: animatable,\n tweens: tweens,\n duration: lastTween.end,\n delay: tweens[0].delay,\n endDelay: lastTween.endDelay\n }\n }\n}\n\nfunction getAnimations(animatables, properties) {\n return filterArray(flattenArray(animatables.map(function (animatable) {\n return properties.map(function (prop) {\n return createAnimation(animatable, prop);\n });\n })), function (a) { return !is.und(a); });\n}\n\n// Create Instance\n\nfunction getInstanceTimings(animations, tweenSettings) {\n var animLength = animations.length;\n var getTlOffset = function (anim) { return anim.timelineOffset ? anim.timelineOffset : 0; };\n var timings = {};\n timings.duration = animLength ? Math.max.apply(Math, animations.map(function (anim) { return getTlOffset(anim) + anim.duration; })) : tweenSettings.duration;\n timings.delay = animLength ? Math.min.apply(Math, animations.map(function (anim) { return getTlOffset(anim) + anim.delay; })) : tweenSettings.delay;\n timings.endDelay = animLength ? timings.duration - Math.max.apply(Math, animations.map(function (anim) { return getTlOffset(anim) + anim.duration - anim.endDelay; })) : tweenSettings.endDelay;\n return timings;\n}\n\nvar instanceID = 0;\n\nfunction createNewInstance(params) {\n var instanceSettings = replaceObjectProps(defaultInstanceSettings, params);\n var tweenSettings = replaceObjectProps(defaultTweenSettings, params);\n var properties = getProperties(tweenSettings, params);\n var animatables = getAnimatables(params.targets);\n var animations = getAnimations(animatables, properties);\n var timings = getInstanceTimings(animations, tweenSettings);\n var id = instanceID;\n instanceID++;\n return mergeObjects(instanceSettings, {\n id: id,\n children: [],\n animatables: animatables,\n animations: animations,\n duration: timings.duration,\n delay: timings.delay,\n endDelay: timings.endDelay\n });\n}\n\n// Core\n\nvar activeInstances = [];\nvar pausedInstances = [];\nvar raf;\n\nvar engine = (function () {\n function play() { \n raf = requestAnimationFrame(step);\n }\n function step(t) {\n var activeInstancesLength = activeInstances.length;\n if (activeInstancesLength) {\n var i = 0;\n while (i < activeInstancesLength) {\n var activeInstance = activeInstances[i];\n if (!activeInstance.paused) {\n activeInstance.tick(t);\n } else {\n var instanceIndex = activeInstances.indexOf(activeInstance);\n if (instanceIndex > -1) {\n activeInstances.splice(instanceIndex, 1);\n activeInstancesLength = activeInstances.length;\n }\n }\n i++;\n }\n play();\n } else {\n raf = cancelAnimationFrame(raf);\n }\n }\n return play;\n})();\n\nfunction handleVisibilityChange() {\n if (document.hidden) {\n activeInstances.forEach(function (ins) { return ins.pause(); });\n pausedInstances = activeInstances.slice(0);\n anime.running = activeInstances = [];\n } else {\n pausedInstances.forEach(function (ins) { return ins.play(); });\n }\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('visibilitychange', handleVisibilityChange);\n}\n\n// Public Instance\n\nfunction anime(params) {\n if ( params === void 0 ) params = {};\n\n\n var startTime = 0, lastTime = 0, now = 0;\n var children, childrenLength = 0;\n var resolve = null;\n\n function makePromise(instance) {\n var promise = window.Promise && new Promise(function (_resolve) { return resolve = _resolve; });\n instance.finished = promise;\n return promise;\n }\n\n var instance = createNewInstance(params);\n var promise = makePromise(instance);\n\n function toggleInstanceDirection() {\n var direction = instance.direction;\n if (direction !== 'alternate') {\n instance.direction = direction !== 'normal' ? 'normal' : 'reverse';\n }\n instance.reversed = !instance.reversed;\n children.forEach(function (child) { return child.reversed = instance.reversed; });\n }\n\n function adjustTime(time) {\n return instance.reversed ? instance.duration - time : time;\n }\n\n function resetTime() {\n startTime = 0;\n lastTime = adjustTime(instance.currentTime) * (1 / anime.speed);\n }\n\n function seekChild(time, child) {\n if (child) { child.seek(time - child.timelineOffset); }\n }\n\n function syncInstanceChildren(time) {\n if (!instance.reversePlayback) {\n for (var i = 0; i < childrenLength; i++) { seekChild(time, children[i]); }\n } else {\n for (var i$1 = childrenLength; i$1--;) { seekChild(time, children[i$1]); }\n }\n }\n\n function setAnimationsProgress(insTime) {\n var i = 0;\n var animations = instance.animations;\n var animationsLength = animations.length;\n while (i < animationsLength) {\n var anim = animations[i];\n var animatable = anim.animatable;\n var tweens = anim.tweens;\n var tweenLength = tweens.length - 1;\n var tween = tweens[tweenLength];\n // Only check for keyframes if there is more than one tween\n if (tweenLength) { tween = filterArray(tweens, function (t) { return (insTime < t.end); })[0] || tween; }\n var elapsed = minMax(insTime - tween.start - tween.delay, 0, tween.duration) / tween.duration;\n var eased = isNaN(elapsed) ? 1 : tween.easing(elapsed);\n var strings = tween.to.strings;\n var round = tween.round;\n var numbers = [];\n var toNumbersLength = tween.to.numbers.length;\n var progress = (void 0);\n for (var n = 0; n < toNumbersLength; n++) {\n var value = (void 0);\n var toNumber = tween.to.numbers[n];\n var fromNumber = tween.from.numbers[n] || 0;\n if (!tween.isPath) {\n value = fromNumber + (eased * (toNumber - fromNumber));\n } else {\n value = getPathProgress(tween.value, eased * toNumber);\n }\n if (round) {\n if (!(tween.isColor && n > 2)) {\n value = Math.round(value * round) / round;\n }\n }\n numbers.push(value);\n }\n // Manual Array.reduce for better performances\n var stringsLength = strings.length;\n if (!stringsLength) {\n progress = numbers[0];\n } else {\n progress = strings[0];\n for (var s = 0; s < stringsLength; s++) {\n var a = strings[s];\n var b = strings[s + 1];\n var n$1 = numbers[s];\n if (!isNaN(n$1)) {\n if (!b) {\n progress += n$1 + ' ';\n } else {\n progress += n$1 + b;\n }\n }\n }\n }\n setProgressValue[anim.type](animatable.target, anim.property, progress, animatable.transforms);\n anim.currentValue = progress;\n i++;\n }\n }\n\n function setCallback(cb) {\n if (instance[cb] && !instance.passThrough) { instance[cb](instance); }\n }\n\n function countIteration() {\n if (instance.remaining && instance.remaining !== true) {\n instance.remaining--;\n }\n }\n\n function setInstanceProgress(engineTime) {\n var insDuration = instance.duration;\n var insDelay = instance.delay;\n var insEndDelay = insDuration - instance.endDelay;\n var insTime = adjustTime(engineTime);\n instance.progress = minMax((insTime / insDuration) * 100, 0, 100);\n instance.reversePlayback = insTime < instance.currentTime;\n if (children) { syncInstanceChildren(insTime); }\n if (!instance.began && instance.currentTime > 0) {\n instance.began = true;\n setCallback('begin');\n }\n if (!instance.loopBegan && instance.currentTime > 0) {\n instance.loopBegan = true;\n setCallback('loopBegin');\n }\n if (insTime <= insDelay && instance.currentTime !== 0) {\n setAnimationsProgress(0);\n }\n if ((insTime >= insEndDelay && instance.currentTime !== insDuration) || !insDuration) {\n setAnimationsProgress(insDuration);\n }\n if (insTime > insDelay && insTime < insEndDelay) {\n if (!instance.changeBegan) {\n instance.changeBegan = true;\n instance.changeCompleted = false;\n setCallback('changeBegin');\n }\n setCallback('change');\n setAnimationsProgress(insTime);\n } else {\n if (instance.changeBegan) {\n instance.changeCompleted = true;\n instance.changeBegan = false;\n setCallback('changeComplete');\n }\n }\n instance.currentTime = minMax(insTime, 0, insDuration);\n if (instance.began) { setCallback('update'); }\n if (engineTime >= insDuration) {\n lastTime = 0;\n countIteration();\n if (!instance.remaining) {\n instance.paused = true;\n if (!instance.completed) {\n instance.completed = true;\n setCallback('loopComplete');\n setCallback('complete');\n if (!instance.passThrough && 'Promise' in window) {\n resolve();\n promise = makePromise(instance);\n }\n }\n } else {\n startTime = now;\n setCallback('loopComplete');\n instance.loopBegan = false;\n if (instance.direction === 'alternate') {\n toggleInstanceDirection();\n }\n }\n }\n }\n\n instance.reset = function() {\n var direction = instance.direction;\n instance.passThrough = false;\n instance.currentTime = 0;\n instance.progress = 0;\n instance.paused = true;\n instance.began = false;\n instance.loopBegan = false;\n instance.changeBegan = false;\n instance.completed = false;\n instance.changeCompleted = false;\n instance.reversePlayback = false;\n instance.reversed = direction === 'reverse';\n instance.remaining = instance.loop;\n children = instance.children;\n childrenLength = children.length;\n for (var i = childrenLength; i--;) { instance.children[i].reset(); }\n if (instance.reversed && instance.loop !== true || (direction === 'alternate' && instance.loop === 1)) { instance.remaining++; }\n setAnimationsProgress(instance.reversed ? instance.duration : 0);\n };\n\n // Set Value helper\n\n instance.set = function(targets, properties) {\n setTargetsValue(targets, properties);\n return instance;\n };\n\n instance.tick = function(t) {\n now = t;\n if (!startTime) { startTime = now; }\n setInstanceProgress((now + (lastTime - startTime)) * anime.speed);\n };\n\n instance.seek = function(time) {\n setInstanceProgress(adjustTime(time));\n };\n\n instance.pause = function() {\n instance.paused = true;\n resetTime();\n };\n\n instance.play = function() {\n if (!instance.paused) { return; }\n if (instance.completed) { instance.reset(); }\n instance.paused = false;\n activeInstances.push(instance);\n resetTime();\n if (!raf) { engine(); }\n };\n\n instance.reverse = function() {\n toggleInstanceDirection();\n instance.completed = instance.reversed ? false : true;\n resetTime();\n };\n\n instance.restart = function() {\n instance.reset();\n instance.play();\n };\n\n instance.reset();\n\n if (instance.autoplay) { instance.play(); }\n\n return instance;\n\n}\n\n// Remove targets from animation\n\nfunction removeTargetsFromAnimations(targetsArray, animations) {\n for (var a = animations.length; a--;) {\n if (arrayContains(targetsArray, animations[a].animatable.target)) {\n animations.splice(a, 1);\n }\n }\n}\n\nfunction removeTargets(targets) {\n var targetsArray = parseTargets(targets);\n for (var i = activeInstances.length; i--;) {\n var instance = activeInstances[i];\n var animations = instance.animations;\n var children = instance.children;\n removeTargetsFromAnimations(targetsArray, animations);\n for (var c = children.length; c--;) {\n var child = children[c];\n var childAnimations = child.animations;\n removeTargetsFromAnimations(targetsArray, childAnimations);\n if (!childAnimations.length && !child.children.length) { children.splice(c, 1); }\n }\n if (!animations.length && !children.length) { instance.pause(); }\n }\n}\n\n// Stagger helpers\n\nfunction stagger(val, params) {\n if ( params === void 0 ) params = {};\n\n var direction = params.direction || 'normal';\n var easing = params.easing ? parseEasings(params.easing) : null;\n var grid = params.grid;\n var axis = params.axis;\n var fromIndex = params.from || 0;\n var fromFirst = fromIndex === 'first';\n var fromCenter = fromIndex === 'center';\n var fromLast = fromIndex === 'last';\n var isRange = is.arr(val);\n var val1 = isRange ? parseFloat(val[0]) : parseFloat(val);\n var val2 = isRange ? parseFloat(val[1]) : 0;\n var unit = getUnit(isRange ? val[1] : val) || 0;\n var start = params.start || 0 + (isRange ? val1 : 0);\n var values = [];\n var maxValue = 0;\n return function (el, i, t) {\n if (fromFirst) { fromIndex = 0; }\n if (fromCenter) { fromIndex = (t - 1) / 2; }\n if (fromLast) { fromIndex = t - 1; }\n if (!values.length) {\n for (var index = 0; index < t; index++) {\n if (!grid) {\n values.push(Math.abs(fromIndex - index));\n } else {\n var fromX = !fromCenter ? fromIndex%grid[0] : (grid[0]-1)/2;\n var fromY = !fromCenter ? Math.floor(fromIndex/grid[0]) : (grid[1]-1)/2;\n var toX = index%grid[0];\n var toY = Math.floor(index/grid[0]);\n var distanceX = fromX - toX;\n var distanceY = fromY - toY;\n var value = Math.sqrt(distanceX * distanceX + distanceY * distanceY);\n if (axis === 'x') { value = -distanceX; }\n if (axis === 'y') { value = -distanceY; }\n values.push(value);\n }\n maxValue = Math.max.apply(Math, values);\n }\n if (easing) { values = values.map(function (val) { return easing(val / maxValue) * maxValue; }); }\n if (direction === 'reverse') { values = values.map(function (val) { return axis ? (val < 0) ? val * -1 : -val : Math.abs(maxValue - val); }); }\n }\n var spacing = isRange ? (val2 - val1) / maxValue : val1;\n return start + (spacing * (Math.round(values[i] * 100) / 100)) + unit;\n }\n}\n\n// Timeline\n\nfunction timeline(params) {\n if ( params === void 0 ) params = {};\n\n var tl = anime(params);\n tl.duration = 0;\n tl.add = function(instanceParams, timelineOffset) {\n var tlIndex = activeInstances.indexOf(tl);\n var children = tl.children;\n if (tlIndex > -1) { activeInstances.splice(tlIndex, 1); }\n function passThrough(ins) { ins.passThrough = true; }\n for (var i = 0; i < children.length; i++) { passThrough(children[i]); }\n var insParams = mergeObjects(instanceParams, replaceObjectProps(defaultTweenSettings, params));\n insParams.targets = insParams.targets || params.targets;\n var tlDuration = tl.duration;\n insParams.autoplay = false;\n insParams.direction = tl.direction;\n insParams.timelineOffset = is.und(timelineOffset) ? tlDuration : getRelativeValue(timelineOffset, tlDuration);\n passThrough(tl);\n tl.seek(insParams.timelineOffset);\n var ins = anime(insParams);\n passThrough(ins);\n children.push(ins);\n var timings = getInstanceTimings(children, params);\n tl.delay = timings.delay;\n tl.endDelay = timings.endDelay;\n tl.duration = timings.duration;\n tl.seek(0);\n tl.reset();\n if (tl.autoplay) { tl.play(); }\n return tl;\n };\n return tl;\n}\n\nanime.version = '3.2.0';\nanime.speed = 1;\nanime.running = activeInstances;\nanime.remove = removeTargets;\nanime.get = getOriginalTargetValue;\nanime.set = setTargetsValue;\nanime.convertPx = convertPxToUnit;\nanime.path = getPath;\nanime.setDashoffset = setDashoffset;\nanime.stagger = stagger;\nanime.timeline = timeline;\nanime.easing = parseEasings;\nanime.penner = penner;\nanime.random = function (min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; };\n\nmodule.exports = anime;\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/tocbot/tocbot.js\n # Tocbot v4.12.0 implementation for J1 template\n #\n # Product/Info:\n # https://jekyll.one\n # https://tscanlin.github.io/tocbot\n # https://github.com/tscanlin/tocbot\n #\n # Copyright (C) 2021 Juergen Adams\n # Copyright (C) 2016 Tim Scanlin\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # Tocbot is licensed under the MIT License.\n # For details, https://github.com/tscanlin/tocbot/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n # rules:\n # \"eslint:tocbot\": \"eslint --ignore-path .eslintignore src/tocbot/js\"\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\n/**\n * Tocbot\n * Tocbot creates a toble of contents based on HTML headings on a page,\n * this allows users to easily jump to different sections of the document.\n * Tocbot was inspired by tocify (http://gregfranko.com/jquery.tocify.js/).\n * The main differences are that it works natively without any need for jquery or jquery UI).\n *\n * @author Tim Scanlin\n */\n\n/* globals define */\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n define([], factory(root))\n } else if (typeof exports === 'object') {\n module.exports = factory(root)\n } else {\n root.tocbot = factory(root)\n }\n})(typeof global !== 'undefined' ? global : this.window || this.global, function (root) {\n 'use strict'\n\n // Default options.\n var defaultOptions = require('./default-options.js')\n // Object to store current options.\n var options = {}\n // Object for public APIs.\n var tocbot = {}\n\n var BuildHtml = require('./build-html.js')\n var ParseContent = require('./parse-content.js')\n var updateTocScroll = require('./update-toc-scroll.js')\n // Keep these variables at top scope once options are passed in.\n var buildHtml\n var parseContent\n\n // Just return if its not a browser.\n var supports = !!root && !!root.document && !!root.document.querySelector && !!root.addEventListener // Feature test\n if (typeof window === 'undefined' && !supports) {\n return\n }\n var headingsArray\n\n // From: https://github.com/Raynos/xtend\n var hasOwnProperty = Object.prototype.hasOwnProperty\n function extend () {\n var target = {}\n for (var i = 0; i < arguments.length; i++) {\n var source = arguments[i]\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n target[key] = source[key]\n }\n }\n }\n return target\n }\n\n // From: https://remysharp.com/2010/07/21/throttling-function-calls\n function throttle (fn, threshold, scope) {\n threshold || (threshold = 250)\n var last\n var deferTimer\n return function () {\n var context = scope || this\n var now = +new Date()\n var args = arguments\n if (last && now < last + threshold) {\n // hold on to it\n clearTimeout(deferTimer)\n deferTimer = setTimeout(function () {\n last = now\n fn.apply(context, args)\n }, threshold)\n } else {\n last = now\n fn.apply(context, args)\n }\n }\n }\n\n /**\n * Destroy tocbot.\n */\n tocbot.destroy = function () {\n if (!options.skipRendering) {\n // Clear HTML.\n try {\n document.querySelector(options.tocSelector).innerHTML = ''\n } catch (e) {\n console.warn('Element not found: ' + options.tocSelector); // eslint-disable-line\n }\n }\n\n // Remove event listeners.\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n document.querySelector(options.scrollContainer).removeEventListener('scroll', this._scrollListener, false)\n document.querySelector(options.scrollContainer).removeEventListener('resize', this._scrollListener, false)\n if (buildHtml) {\n document.querySelector(options.scrollContainer).removeEventListener('click', this._clickListener, false)\n }\n } else {\n document.removeEventListener('scroll', this._scrollListener, false)\n document.removeEventListener('resize', this._scrollListener, false)\n if (buildHtml) {\n document.removeEventListener('click', this._clickListener, false)\n }\n }\n }\n\n /**\n * Initialize tocbot.\n * @param {object} customOptions\n */\n tocbot.init = function (customOptions) {\n // feature test\n if (!supports) {\n return\n }\n\n // Merge defaults with user options.\n // Set to options variable at the top.\n options = extend(defaultOptions, customOptions || {})\n this.options = options\n this.state = {}\n\n // Init smooth scroll if enabled (default).\n if (options.scrollSmooth) {\n options.duration = options.scrollSmoothDuration\n options.offset = options.scrollSmoothOffset\n tocbot.scrollSmooth = require('./scroll-smooth').initSmoothScrolling(options)\n }\n\n // Pass options to these modules.\n buildHtml = BuildHtml(options)\n parseContent = ParseContent(options)\n\n // For testing purposes.\n this._buildHtml = buildHtml\n this._parseContent = parseContent\n\n // Destroy it if it exists first.\n tocbot.destroy()\n\n // Get headings array.\n headingsArray = parseContent.selectHeadings(options.contentSelector, options.headingSelector)\n // Return if no headings are found.\n if (headingsArray === null) {\n return\n }\n\n // Build nested headings array.\n var nestedHeadingsObj = parseContent.nestHeadingsArray(headingsArray)\n var nestedHeadings = nestedHeadingsObj.nest\n\n // Render.\n if (!options.skipRendering) {\n buildHtml.render(options.tocSelector, nestedHeadings)\n }\n\n // Update Sidebar and bind listeners.\n this._scrollListener = throttle(function (e) {\n buildHtml.updateToc(headingsArray)\n !options.disableTocScrollSync && updateTocScroll(options)\n var isTop = e && e.target && e.target.scrollingElement && e.target.scrollingElement.scrollTop === 0\n if ((e && (e.eventPhase === 0 || e.currentTarget === null)) || isTop) {\n buildHtml.updateToc(headingsArray)\n if (options.scrollEndCallback) {\n options.scrollEndCallback(e)\n }\n }\n }, options.throttleTimeout)\n this._scrollListener()\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n document.querySelector(options.scrollContainer).addEventListener('scroll', this._scrollListener, false)\n document.querySelector(options.scrollContainer).addEventListener('resize', this._scrollListener, false)\n } else {\n document.addEventListener('scroll', this._scrollListener, false)\n document.addEventListener('resize', this._scrollListener, false)\n }\n\n // Bind click listeners to disable animation.\n var timeout = null\n this._clickListener = throttle(function (event) {\n if (options.scrollSmooth) {\n buildHtml.disableTocAnimation(event)\n }\n buildHtml.updateToc(headingsArray)\n // Timeout to re-enable the animation.\n timeout && clearTimeout(timeout)\n timeout = setTimeout(function () {\n buildHtml.enableTocAnimation()\n }, options.scrollSmoothDuration)\n }, options.throttleTimeout)\n\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n document.querySelector(options.scrollContainer).addEventListener('click', this._clickListener, false)\n } else {\n document.addEventListener('click', this._clickListener, false)\n }\n\n return this\n }\n\n /**\n * Refresh tocbot.\n */\n tocbot.refresh = function (customOptions) {\n tocbot.destroy()\n tocbot.init(customOptions || this.options)\n }\n\n // Make tocbot available globally.\n root.tocbot = tocbot\n\n return tocbot\n})\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = {\n // Where to render the table of contents.\n tocSelector: '.js-toc',\n // Where to grab the headings to build the table of contents.\n contentSelector: '.js-toc-content',\n // Which headings to grab inside of the contentSelector element.\n headingSelector: 'h1, h2, h3',\n // Headings that match the ignoreSelector will be skipped.\n ignoreSelector: '.js-toc-ignore',\n // For headings inside relative or absolute positioned containers within content\n hasInnerContainers: false,\n // Main class to add to links.\n linkClass: 'toc-link',\n // Extra classes to add to links.\n extraLinkClasses: '',\n // Class to add to active links,\n // the link corresponding to the top most heading on the page.\n activeLinkClass: 'is-active-link',\n // Main class to add to lists.\n listClass: 'toc-list',\n // Extra classes to add to lists.\n extraListClasses: '',\n // Class that gets added when a list should be collapsed.\n isCollapsedClass: 'is-collapsed',\n // Class that gets added when a list should be able\n // to be collapsed but isn't necessarily collapsed.\n collapsibleClass: 'is-collapsible',\n // Class to add to list items.\n listItemClass: 'toc-list-item',\n // Class to add to active list items.\n activeListItemClass: 'is-active-li',\n // How many heading levels should not be collapsed.\n // For example, number 6 will show everything since\n // there are only 6 heading levels and number 0 will collapse them all.\n // The sections that are hidden will open\n // and close as you scroll to headings within them.\n collapseDepth: 0,\n // Smooth scrolling enabled.\n scrollSmooth: true,\n // Smooth scroll duration.\n scrollSmoothDuration: 420,\n // Smooth scroll offset.\n scrollSmoothOffset: 0,\n // Callback for scroll end.\n scrollEndCallback: function (e) {},\n // Headings offset between the headings and the top of the document (this is meant for minor adjustments).\n headingsOffset: 1,\n // Timeout between events firing to make sure it's\n // not too rapid (for performance reasons).\n throttleTimeout: 50,\n // Element to add the positionFixedClass to.\n positionFixedSelector: null,\n // Fixed position class to add to make sidebar fixed after scrolling\n // down past the fixedSidebarOffset.\n positionFixedClass: 'is-position-fixed',\n // fixedSidebarOffset can be any number but by default is set\n // to auto which sets the fixedSidebarOffset to the sidebar\n // element's offsetTop from the top of the document on init.\n fixedSidebarOffset: 'auto',\n // includeHtml can be set to true to include the HTML markup from the\n // heading node instead of just including the textContent.\n includeHtml: false,\n // onclick function to apply to all links in toc. will be called with\n // the event as the first parameter, and this can be used to stop,\n // propagation, prevent default or perform action\n onClick: function (e) {},\n // orderedList can be set to false to generate unordered lists (ul)\n // instead of ordered lists (ol)\n orderedList: true,\n // If there is a fixed article scroll container, set to calculate titles' offset\n scrollContainer: null,\n // prevent ToC DOM rendering if it's already rendered by an external system\n skipRendering: false,\n // Optional callback to change heading labels.\n // For example it can be used to cut down and put ellipses on multiline headings you deem too long.\n // Called each time a heading is parsed. Expects a string in return, the modified label to display.\n // function (string) => string\n headingLabelCallback: false,\n // ignore headings that are hidden in DOM\n ignoreHiddenElements: false,\n // Optional callback to modify properties of parsed headings.\n // The heading element is passed in node parameter and information parsed by default parser is provided in obj parameter.\n // Function has to return the same or modified obj.\n // The heading will be excluded from TOC if nothing is returned.\n // function (object, HTMLElement) => object | void\n headingObjectCallback: null,\n // Set the base path, useful if you use a `base` tag in `head`.\n basePath: '',\n // Only takes affect when `tocSelector` is scrolling,\n // keep the toc scroll position in sync with the content.\n disableTocScrollSync: false,\n};\n","/**\n * This file is responsible for building the DOM and updating DOM state.\n *\n * @author Tim Scanlin\n */\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = function (options) {\n var forEach = [].forEach\n var some = [].some\n var body = document.body\n var currentlyHighlighting = true\n var SPACE_CHAR = ' '\n\n /**\n * Create link and list elements.\n * @param {Object} d\n * @param {HTMLElement} container\n * @return {HTMLElement}\n */\n function createEl (d, container) {\n var link = container.appendChild(createLink(d))\n if (d.children.length) {\n var list = createList(d.isCollapsed)\n d.children.forEach(function (child) {\n createEl(child, list)\n })\n link.appendChild(list)\n }\n }\n\n /**\n * Render nested heading array data into a given selector.\n * @param {String} selector\n * @param {Array} data\n * @return {HTMLElement}\n */\n function render (selector, data) {\n var collapsed = false\n var container = createList(collapsed)\n\n data.forEach(function (d) {\n createEl(d, container)\n })\n\n var parent = document.querySelector(selector)\n\n // Return if no parent is found.\n if (parent === null) {\n return\n }\n\n // Remove existing child if it exists.\n if (parent.firstChild) {\n parent.removeChild(parent.firstChild)\n }\n\n // Just return the parent and don't append the list if no links are found.\n if (data.length === 0) {\n return parent\n }\n\n // Append the Elements that have been created\n return parent.appendChild(container)\n }\n\n /**\n * Create link element.\n * @param {Object} data\n * @return {HTMLElement}\n */\n function createLink (data) {\n var item = document.createElement('li')\n var a = document.createElement('a')\n if (options.listItemClass) {\n item.setAttribute('class', options.listItemClass)\n }\n\n if (options.onClick) {\n a.onclick = options.onClick\n }\n\n if (options.includeHtml && data.childNodes.length) {\n forEach.call(data.childNodes, function (node) {\n a.appendChild(node.cloneNode(true))\n })\n } else {\n // Default behavior.\n a.textContent = data.textContent\n }\n a.setAttribute('href', options.basePath + '#' + data.id)\n a.setAttribute('class', options.linkClass +\n SPACE_CHAR + 'node-name--' + data.nodeName +\n SPACE_CHAR + options.extraLinkClasses)\n item.appendChild(a)\n return item\n }\n\n /**\n * Create list element.\n * @param {Boolean} isCollapsed\n * @return {HTMLElement}\n */\n function createList (isCollapsed) {\n var listElement = (options.orderedList) ? 'ol' : 'ul'\n var list = document.createElement(listElement)\n var classes = options.listClass +\n SPACE_CHAR + options.extraListClasses\n if (isCollapsed) {\n classes += SPACE_CHAR + options.collapsibleClass\n classes += SPACE_CHAR + options.isCollapsedClass\n }\n list.setAttribute('class', classes)\n return list\n }\n\n /**\n * Update fixed sidebar class.\n * @return {HTMLElement}\n */\n function updateFixedSidebarClass () {\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n var top\n top = document.querySelector(options.scrollContainer).scrollTop\n } else {\n top = document.documentElement.scrollTop || body.scrollTop\n }\n var posFixedEl = document.querySelector(options.positionFixedSelector)\n\n if (options.fixedSidebarOffset === 'auto') {\n options.fixedSidebarOffset = document.querySelector(options.tocSelector).offsetTop\n }\n\n if (top > options.fixedSidebarOffset) {\n if (posFixedEl.className.indexOf(options.positionFixedClass) === -1) {\n posFixedEl.className += SPACE_CHAR + options.positionFixedClass\n }\n } else {\n posFixedEl.className = posFixedEl.className.split(SPACE_CHAR + options.positionFixedClass).join('')\n }\n }\n\n /**\n * Get top position of heading\n * @param {HTMLElement}\n * @return {integer} position\n */\n function getHeadingTopPos (obj) {\n var position = 0\n if (obj !== document.querySelector(options.contentSelector && obj != null)) {\n position = obj.offsetTop\n if (options.hasInnerContainers) { position += getHeadingTopPos(obj.offsetParent) }\n }\n return position\n }\n\n /**\n * Update TOC highlighting and collapsed groups\n */\n function updateToc (headingsArray) {\n // If a fixed content container was set\n if (options.scrollContainer && document.querySelector(options.scrollContainer)) {\n var top\n top = document.querySelector(options.scrollContainer).scrollTop\n } else {\n top = document.documentElement.scrollTop || body.scrollTop\n }\n\n // Add fixed class at offset\n if (options.positionFixedSelector) {\n updateFixedSidebarClass()\n }\n\n // Get the most TOP heading currently visible on the page to\n // identify what element to be highlighted\n var headings = headingsArray;\n var topHeader;\n var headingTopPos;\n\n // Using some instead of each so that we can escape early\n if (currentlyHighlighting &&\n document.querySelector(options.tocSelector) !== null &&\n headings.length > 0) {\n some.call(headings, function (heading, i) {\n headingTopPos = getHeadingTopPos(heading)\n if (headingTopPos > top + options.headingsOffset + 10) {\n // Don't allow negative index value\n // var index = (i === 0) ? i : i - 1;\n // topHeader = headings[index];\n // jadams, index correction seems NOT needed\n topHeader = headings[i];\n return true\n } else if (i === headings.length - 1) {\n // This allows scrolling for the last heading on the page\n topHeader = headings[headings.length - 1]\n return true\n }\n })\n\n // Remove the active class from the other tocLinks.\n var tocLinks = document.querySelector(options.tocSelector)\n .querySelectorAll('.' + options.linkClass)\n forEach.call(tocLinks, function (tocLink) {\n tocLink.className = tocLink.className.split(SPACE_CHAR + options.activeLinkClass).join('')\n })\n var tocLis = document.querySelector(options.tocSelector)\n .querySelectorAll('.' + options.listItemClass)\n forEach.call(tocLis, function (tocLi) {\n tocLi.className = tocLi.className.split(SPACE_CHAR + options.activeListItemClass).join('')\n })\n\n // Add the active class to the active tocLink.\n var activeTocLink = document.querySelector(options.tocSelector)\n .querySelector('.' + options.linkClass +\n '.node-name--' + topHeader.nodeName +\n '[href=\"' + options.basePath + '#' + topHeader.id.replace(/([ #;&,.+*~':\"!^$[\\]()=>|/@])/g, '\\\\$1') + '\"]')\n if (activeTocLink.className.indexOf(options.activeLinkClass) === -1) {\n activeTocLink.className += SPACE_CHAR + options.activeLinkClass\n }\n var li = activeTocLink.parentNode\n if (li && li.className.indexOf(options.activeListItemClass) === -1) {\n li.className += SPACE_CHAR + options.activeListItemClass\n }\n\n var tocLists = document.querySelector(options.tocSelector)\n .querySelectorAll('.' + options.listClass + '.' + options.collapsibleClass)\n\n // Collapse the other collapsible lists.\n forEach.call(tocLists, function (list) {\n if (list.className.indexOf(options.isCollapsedClass) === -1) {\n list.className += SPACE_CHAR + options.isCollapsedClass\n }\n })\n\n // Expand the active link's collapsible list and its sibling if applicable.\n if (activeTocLink.nextSibling && activeTocLink.nextSibling.className.indexOf(options.isCollapsedClass) !== -1) {\n activeTocLink.nextSibling.className = activeTocLink.nextSibling.className.split(SPACE_CHAR + options.isCollapsedClass).join('')\n }\n removeCollapsedFromParents(activeTocLink.parentNode.parentNode)\n }\n }\n\n /**\n * Remove collpased class from parent elements.\n * @param {HTMLElement} element\n * @return {HTMLElement}\n */\n function removeCollapsedFromParents (element) {\n if (element.className.indexOf(options.collapsibleClass) !== -1 && element.className.indexOf(options.isCollapsedClass) !== -1) {\n element.className = element.className.split(SPACE_CHAR + options.isCollapsedClass).join('')\n return removeCollapsedFromParents(element.parentNode.parentNode)\n }\n return element\n }\n\n /**\n * Disable TOC Animation when a link is clicked.\n * @param {Event} event\n */\n function disableTocAnimation (event) {\n var target = event.target || event.srcElement\n if (typeof target.className !== 'string' || target.className.indexOf(options.linkClass) === -1) {\n return\n }\n // Bind to tocLink clicks to temporarily disable highlighting\n // while smoothScroll is animating.\n currentlyHighlighting = false\n }\n\n /**\n * Enable TOC Animation.\n */\n function enableTocAnimation () {\n currentlyHighlighting = true\n }\n\n return {\n enableTocAnimation: enableTocAnimation,\n disableTocAnimation: disableTocAnimation,\n render: render,\n updateToc: updateToc\n }\n}\n","/**\n * This file is responsible for parsing the content from the DOM and making\n * sure data is nested properly.\n *\n * @author Tim Scanlin\n */\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = function parseContent (options) {\n var reduce = [].reduce\n\n /**\n * Get the last item in an array and return a reference to it.\n * @param {Array} array\n * @return {Object}\n */\n function getLastItem (array) {\n return array[array.length - 1]\n }\n\n /**\n * Get heading level for a heading dom node.\n * @param {HTMLElement} heading\n * @return {Number}\n */\n function getHeadingLevel (heading) {\n return +heading.nodeName.split('H').join('')\n }\n\n /**\n * Get important properties from a heading element and store in a plain object.\n * @param {HTMLElement} heading\n * @return {Object}\n */\n function getHeadingObject (heading) {\n // each node is processed twice by this method because nestHeadingsArray() and addNode() calls it\n // first time heading is real DOM node element, second time it is obj\n // that is causing problem so I am processing only original DOM node\n if (!(heading instanceof window.HTMLElement)) return heading\n\n if (options.ignoreHiddenElements && (!heading.offsetHeight || !heading.offsetParent)) {\n return null\n }\n\n var obj = {\n id: heading.id,\n children: [],\n nodeName: heading.nodeName,\n headingLevel: getHeadingLevel(heading),\n textContent: options.headingLabelCallback ? String(options.headingLabelCallback(heading.textContent)) : heading.textContent.trim()\n }\n\n if (options.includeHtml) {\n obj.childNodes = heading.childNodes\n }\n\n if (options.headingObjectCallback) {\n return options.headingObjectCallback(obj, heading)\n }\n\n return obj\n }\n\n /**\n * Add a node to the nested array.\n * @param {Object} node\n * @param {Array} nest\n * @return {Array}\n */\n function addNode (node, nest) {\n var obj = getHeadingObject(node)\n var level = obj.headingLevel\n var array = nest\n var lastItem = getLastItem(array)\n var lastItemLevel = lastItem\n ? lastItem.headingLevel\n : 0\n var counter = level - lastItemLevel\n\n while (counter > 0) {\n lastItem = getLastItem(array)\n if (lastItem && lastItem.children !== undefined) {\n array = lastItem.children\n }\n counter--\n }\n\n if (level >= options.collapseDepth) {\n obj.isCollapsed = true\n }\n\n array.push(obj)\n return array\n }\n\n /**\n * Select headings in content area, exclude any selector in options.ignoreSelector\n * @param {String} contentSelector\n * @param {Array} headingSelector\n * @return {Array}\n */\n function selectHeadings (contentSelector, headingSelector) {\n var selectors = headingSelector\n if (options.ignoreSelector) {\n selectors = headingSelector.split(',')\n .map(function mapSelectors (selector) {\n return selector.trim() + ':not(' + options.ignoreSelector + ')'\n })\n }\n try {\n return document.querySelector(contentSelector)\n .querySelectorAll(selectors)\n } catch (e) {\n console.warn('Element not found: ' + contentSelector); // eslint-disable-line\n return null\n }\n }\n\n /**\n * Nest headings array into nested arrays with 'children' property.\n * @param {Array} headingsArray\n * @return {Object}\n */\n function nestHeadingsArray (headingsArray) {\n return reduce.call(headingsArray, function reducer (prev, curr) {\n var currentHeading = getHeadingObject(curr)\n if (currentHeading) {\n addNode(currentHeading, prev.nest)\n }\n return prev\n }, {\n nest: []\n })\n }\n\n return {\n nestHeadingsArray: nestHeadingsArray,\n selectHeadings: selectHeadings\n }\n}\n","// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n\nmodule.exports = function updateTocScroll(options) {\n var toc = document.querySelector(options.tocSelector);\n if (toc && toc.scrollHeight > toc.clientHeight) {\n var activeItem = toc.querySelector('.' + options.activeListItemClass);\n if (activeItem) {\n toc.scrollTop = activeItem.offsetTop;\n }\n }\n}\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/tocbot/scroll-smooth/index.js\n # Scroll-Smooth (Tocbot v4.12.0) implementation for J1 template\n #\n # Product/Info:\n # https://jekyll.one\n # https://tscanlin.github.io/tocbot\n # https://github.com/tscanlin/tocbot\n #\n # Copyright (C) 2021 Juergen Adams\n # Copyright (C) 2016 Tim Scanlin\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n # Tocbot is licensed under the MIT License.\n # For details, https://github.com/tscanlin/tocbot/blob/master/LICENSE\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint no-redeclare: \"off\" */\n/* eslint no-undef: \"off\" */\n/* eslint no-empty: \"off\" */\n/* eslint semi: \"off\" */\n// -----------------------------------------------------------------------------\n/* globals location, requestAnimationFrame */\n\nexports.initSmoothScrolling = initSmoothScrolling\n\nfunction initSmoothScrolling (options) {\n if (isCssSmoothSCrollSupported()) { }\n\n var duration = options.duration\n var offset = options.offset\n\n var pageUrl = location.hash\n ? stripHash(location.href)\n : location.href\n\n delegatedLinkHijacking()\n\n function delegatedLinkHijacking () {\n document.body.addEventListener('click', onClick, false)\n\n function onClick (e) {\n if (\n !isInPageLink(e.target) ||\n e.target.className.indexOf('no-smooth-scroll') > -1 ||\n (e.target.href.charAt(e.target.href.length - 2) === '#' &&\n e.target.href.charAt(e.target.href.length - 1) === '!') ||\n e.target.className.indexOf(options.linkClass) === -1) {\n return\n }\n\n // Don't prevent default or hash doesn't change.\n // e.preventDefault()\n\n jump(e.target.hash, {\n duration: duration,\n offset: offset,\n callback: function () {\n setFocus(e.target.hash)\n }\n })\n }\n }\n\n function isInPageLink (n) {\n return n.tagName.toLowerCase() === 'a' &&\n (n.hash.length > 0 || n.href.charAt(n.href.length - 1) === '#') &&\n (stripHash(n.href) === pageUrl || stripHash(n.href) + '#' === pageUrl)\n }\n\n function stripHash (url) {\n return url.slice(0, url.lastIndexOf('#'))\n }\n\n function isCssSmoothSCrollSupported () {\n return 'scrollBehavior' in document.documentElement.style\n }\n\n // Adapted from:\n // https://www.nczonline.net/blog/2013/01/15/fixing-skip-to-content-links/\n function setFocus (hash) {\n var element = document.getElementById(hash.substring(1))\n\n if (element) {\n if (!/^(?:a|select|input|button|textarea)$/i.test(element.tagName)) {\n element.tabIndex = -1\n }\n\n element.focus()\n }\n }\n}\n\nfunction jump (target, options) {\n var start = window.pageYOffset\n var opt = {\n duration: options.duration,\n offset: options.offset || 0,\n callback: options.callback,\n easing: options.easing || easeInOutQuad\n }\n // This makes ids that start with a number work: ('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n // DecodeURI for nonASCII hashes, they was encoded, but id was not encoded, it lead to not finding the tgt element by id.\n // And this is for IE: document.body.scrollTop\n var tgt = document.querySelector('[id=\"' + decodeURI(target).split('#').join('') + '\"]')\n var distance = typeof target === 'string'\n ? opt.offset + (\n target\n ? (tgt && tgt.getBoundingClientRect().top) || 0 // handle non-existent links better.\n : -(document.documentElement.scrollTop || document.body.scrollTop))\n : target\n var duration = typeof opt.duration === 'function'\n ? opt.duration(distance)\n : opt.duration\n var timeStart\n var timeElapsed\n\n requestAnimationFrame(function (time) { timeStart = time; loop(time) })\n function loop (time) {\n timeElapsed = time - timeStart\n\n window.scrollTo(0, opt.easing(timeElapsed, start, distance, duration))\n\n if (timeElapsed < duration) { requestAnimationFrame(loop) } else { end() }\n }\n\n function end () {\n window.scrollTo(0, start + distance)\n\n if (typeof opt.callback === 'function') { opt.callback() }\n }\n\n // Robert Penner's easeInOutQuad - http://robertpenner.com/easing/\n function easeInOutQuad (t, b, c, d) {\n t /= d / 2\n if (t < 1) return c / 2 * t * t + b\n t--\n return -c / 2 * (t * (t - 2) - 1) + b\n }\n}\n","/*\n # -----------------------------------------------------------------------------\n # ~/js/adoc_result_viewer/view_results.js\n # Provides JavaScript functions displaying results for Asciidoctor\n #\n # Product/Info:\n # https://jekyll.one\n #\n # Copyright (C) 2021 Juergen Adams\n #\n # J1 Template is licensed under MIT License.\n # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE\n #\n # -----------------------------------------------------------------------------\n*/\n\n// -----------------------------------------------------------------------------\n// ESLint shimming\n// -----------------------------------------------------------------------------\n/* eslint indent: \"off\" */\n/* global $ */\n// -----------------------------------------------------------------------------\n\n/*!\n * J1 ADoc ResultViewer\n * Copyright (C) 2021 Juergen Adams\n * Licensed under MIT License.\n */\n\nvar timeoutHandle;\n\nfunction toggle_result_block(result_block) {\n window.clearTimeout(timeoutHandle); // Clear the timeout object\n result_block.prev().toggleClass('stacked');\n result_block.toggle();\n // timeoutHandle = window.setTimeout(function () {\n // result_block.hide();\n // }, 5000);\n}\n\nfunction insert_result_links() {\n $('.result').each(function(idx, node) {\n var result_block = $(node);\n var title_div = result_block.prev().find('.title');\n var view_result_link = $('<div class=\"view-result j1-viewer\"><span class=\"btn-viewer j1-tooltip\" data-toggle=\"tooltip\" data-placement=\"left\" title=\"toggle results\" data-original-title=\"toggle results\">View</span></div>');\n title_div.append(view_result_link);\n view_result_link.on('click', function(event) {\n event.preventDefault();\n toggle_result_block(result_block);\n });\n });\n}\n\n$(insert_result_links);\n"],"sourceRoot":""}
|
@@ -1 +1,23 @@
|
|
1
|
-
!function(e){var n={};function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var r in e)t.d(o,r,function(n){return e[n]}.bind(null,r));return o},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/assets/themes/j1/core/js",t(t.s=0)}([function(e,n,t){window.j1.adapter=t(1),window.j1.core=t(2),window.j1.core.navigator=t(3),window.j1.core.cookiebar=t(4),window.j1.core.scrollSmooth=t(5),window.j1.anime=t(6);t(7),t(14)},function(e,n,t){"use strict";e.exports=(j1,window,{_init_:function(){}})},function(e,n,t){"use strict";e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},void 0);return{_init_:function(e){},getState:function(){return"loaded"},isMobile:function(e){var n,t=!1;return n=navigator.userAgent||navigator.vendor||window.opera,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(n)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm|cell|chtm|cldc|cmd|co(mp|nd)|craw|da(it|ll|ng)|dbte|dcs|devi|dica|dmob|do(c|p)o|ds(12|d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(|_)|g1 u|g560|gene|gf5|gmo|go(\.w|od)|gr(ad|un)|haie|hcit|hd(m|p|t)|hei|hi(pt|ta)|hp( i|ip)|hsc|ht(c(| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i(20|go|ma)|i230|iac( ||\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|[a-w])|libw|lynx|m1w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|mcr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|([1-8]|c))|phil|pire|pl(ay|uc)|pn2|po(ck|rt|se)|prox|psio|ptg|qaa|qc(07|12|21|32|60|[2-7]|i)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h|oo|p)|sdk\/|se(c(|0|1)|47|mc|nd|ri)|sgh|shar|sie(|m)|sk0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h|v|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl|tdg|tel(i|m)|tim|tmo|to(pl|sh)|ts(70|m|m3|m5)|tx9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas|your|zeto|zte/i.test(n.substr(0,4)))&&(t=!0),t},bsFormClearButton:function(){$(":input").on("keydown focus change mouseover",function(){$(this).val().length>0&&$(this).nextAll(".form-clear").removeClass("d-none")}).on("keydown keyup blur",function(){0===$(this).val().length&&$(this).nextAll(".form-clear").addClass("d-none")})}}}()},function(e,n){e.exports=function(e){var n,t,o=j1.getCookieNames(),r=(o.cookie_consent,o.user_session,{});$.extend({foo:"bar",bar:"foo"},e);return{init:function(e,o){return n=log4javascript.getLogger("j1.core.navigator"),t="core is being initialized",n.info(t),this.manageDropdownMenu(e,o),this.navbarSticky(),r.type="command",r.action="module_initialized",r.text="navigator core initialized successfully",j1.sendMessage("j1.core.navigator","j1.adapter.navigator",r),!0},eventHandler:function(){var e=log4javascript.getLogger("j1.core.navigator.eventHandler"),n=$("nav.navbar.navigator");if(n.hasClass("navbar-sticky")&&n.wrap("<div class='wrap-sticky'></div>"),n.hasClass("brand-center")){var t=new Array,o=$("nav.brand-center"),r=o.find("ul.navbar-nav");o.find("ul.navbar-nav > li").each(function(){t.push($(this).html())});var a=t.splice(0,Math.round(t.length/2)),i=t,s="",l=function(e){s="";for(var n=0;n<e.length;n++)s+="<li>"+e[n]+"</li>"};l(a),r.html(s),o.find("ul.nav").first().addClass("navbar-left"),l(i),r.after('<ul class="nav navbar-nav"></ul>').next().html(s),o.find("ul.nav").last().addClass("navbar-right"),o.find("ul.nav.navbar-left").wrap("<div class='col_half left'></div>"),o.find("ul.nav.navbar-right").wrap("<div class='col_half right'></div>"),o.find("ul.navbar-nav > li").each(function(){var e=$("ul.dropdown-menu",this),n=$("ul.megamenu-content",this);e.closest("li").addClass("dropdown"),n.closest("li").addClass("megamenu-fw")})}n.find("ul.nav").hasClass("navbar-center")&&n.addClass("menu-center"),n.hasClass("navbar-full")?($("nav.navbar.navigator").find("ul.nav").wrap("<div class='wrap-full-menu'></div>"),$(".wrap-full-menu").wrap("<div class='nav-full'></div>"),$("ul.nav.navbar-nav").prepend("<li class='close-full-menu'><a href='#'><i class='mdi mdi-close'></i></a></li>")):n.hasClass("navbar-mobile")?n.removeClass("no-full"):n.addClass("no-full"),n.hasClass("no-background")&&$(window).on("scroll",function(){var e=$("nav.navbar").outerHeight();$(window).scrollTop()>e?$(".navbar-fixed").removeClass("no-background"):$(".navbar-fixed").addClass("no-background")}),n.hasClass("navbar-transparent")&&$(window).on("scroll",function(){var e=$("nav.navbar").outerHeight();$(window).scrollTop()>e?($(".navbar-fixed").removeClass("navbar-transparent"),$(".navbar-fixed").addClass("navbar-scrolled")):($(".navbar-fixed").removeClass("navbar-scrolled"),$(".navbar-fixed").addClass("navbar-transparent"))}),$("nav.navbar.navigator .attr-nav").each(function(){e.debug("register OPEN event|s for QuickSearch"),$("li.search > a",this).on("click",function(n){e.debug("manage search action OPEN"),$("html,body").animate({scrollTop:0},0),$(".top-search").slideToggle("slow","swing",function(){$(".top-search").is(":visible")?($("body").addClass("stop-scrolling"),$("body").bind("touchmove",function(e){e.preventDefault()})):($("body").removeClass("stop-scrolling"),$("body").unbind("touchmove"))})})}),e.debug("register CLOSE event|s for QuickSearch"),$(".input-group-addon.close-search").on("click",function(n){n.preventDefault(),e.debug("manage search action CLOSE"),$(".top-search").slideUp("slow","swing"),$("html,body").animate({scrollTop:0},0),$("body").removeClass("stop-scrolling"),$("body").unbind("touchmove"),n.stopPropagation()}),$("nav.navbar.navigator .attr-nav").each(function(){e.debug("register SHOW|HIDE event|s for J1 Translator"),$("li.translator > a",this).on("click",function(n){e.debug("toggle translator icon SHOW|HIDE"),$("#google_translate_element").toggle(),"none"!==$("#google_translate_element").css("display")&&$("html,body").animate({scrollTop:0},"slow")})}),$("body").wrapInner("<div class='wrapper'></div>")},manageDropdownMenu:function(e,n){var t,o,r,a,i=e,s=n,l=$("nav.navbar.navigator"),c=(window.matchMedia("(orientation: landscape)").matches,$(window).width()),u=($("nav").width(),l.find("ul.nav").data("in")),d=l.find("ul.nav").data("out"),f="#"+s.xhr_container_id+".collapse",p=s.delay_menu_open;if(c<=(o="lg"===i.nav_bar.media_breakpoint?992:"md"===i.nav_bar.media_breakpoint?768:"sm"===i.nav_bar.media_breakpoint?576:992)?($(f).addClass("navbar-collapse"),$(f).removeClass("show"),$("#navigator_nav_quicklinks").addClass("show"),$("nav.navbar.navigator .attr-nav").each(function(){$(".dropdown-menu",this).removeClass("animated"),$("li.dropdown",this).off("mouseenter"),$("li.dropdown",this).off("mouseleave"),$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",function(e){$(this).closest("li.dropdown").find(".dropdown-menu").first().stop().fadeToggle(),$(".navbar-toggle").each(function(){$(".mdi",this).removeClass("mdi-close"),$(".mdi",this).addClass("mdi-menu"),$(".navbar-collapse").removeClass("in"),$(".navbar-collapse").removeClass("open")})}),$(this).on("mouseleave",function(){$(".dropdown-menu",this).stop().fadeOut(),$("li.dropdown",this).removeClass("open")})}),$("#desktop_menu").hide()):c>o&&($("#navigator_nav_quicklinks").removeClass("show"),$("#desktop_menu").show(),$(".dropdown-menu > li").hover(function(){var e=$(this).find("ul");if(1==e.length)e.height(),void 0!==e.css("max-height")&&e.css("max-height").match(/\d+/)[0]}),$(".dropdown-menu > li").on("mouseleave",function(){$("body").removeClass("stop-scrolling")}),$(f).removeClass("navbar-collapse"),$(f).addClass("show"),$("nav.navbar.navigator ul.nav").each(function(){$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",function(e){}),$(".megamenu-fw",this).each(function(){$(".title",this).off("click"),$("a.dropdown-toggle",this).off("click"),$(".content").removeClass("animated")}),$(".dropdown-menu",this).addClass("animated"),$("li.dropdown",this).on("mouseenter",function(){if(t=$(".dropdown-menu",this).eq(0),r=$(this),$("body").hasClass("stop-scrolling")||$("body").hasClass("mm-ocd-opened"))return!1;t.removeClass(d),t.removeClass("open"),r.addClass("open"),a=window.setTimeout(function(){r.hasClass("open")&&(t.stop().fadeIn().addClass(u),t.addClass("open"),r.addClass("open"))},p)}),$("li.dropdown",this).on("mouseleave",function(){window.clearTimeout(a),$(this).removeClass("open").removeClass("open"),$(".dropdown-menu",this).removeClass("open"),$(".dropdown-menu",this).eq(0).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d)}),$(this).on("mouseleave",function(){window.clearTimeout(a),$("li.dropdown",this).removeClass("open"),$(".dropdown-menu",this).removeClass("open"),$(".dropdown-menu",this).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d)})})),$("nav.navbar.navigator .attr-nav").each(function(){$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",function(e){}),$(".dropdown-menu",this).addClass("animated"),$("li.dropdown",this).on("mouseenter",function(){$(".dropdown-menu",this).eq(0).removeClass(d),$(".dropdown-menu",this).eq(0).stop().fadeIn().addClass(u),$(this).addClass("open")}),$("li.dropdown",this).on("mouseleave",function(){$(".dropdown-menu",this).eq(0).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d),$(this).removeClass("open")}),$(this).on("mouseleave",function(){$(".dropdown-menu",this).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d),$("li.dropdown",this).removeClass("open")})}),l.hasClass("navbar-full")){var m=$(window).height(),v=$(window).width();$(".nav-full").css("height",m+"px"),$(".wrap-full-menu").css("height",m+"px"),$(".wrap-full-menu").css("width",v+"px"),$(".navbar-collapse").addClass("animated"),$(".navbar-toggle").each(function(){var e=$(this).data("target");$(this).off("click"),$(this).on("click",function(n){n.preventDefault(),$(e).removeClass(d),$(e).addClass("in"),$(e).addClass(u)}),$("li.close-full-menu").on("click",function(n){n.preventDefault(),$(e).addClass(d),setTimeout(function(){$(e).removeClass("in"),$(e).removeClass(u)},500)})})}},navbarSticky:function(){var e=$("nav.navbar.navigator");if(e.hasClass("navbar-sticky")){var n=e.height();$(".wrap-sticky").height(n);var t=$(".wrap-sticky").offset().top;$(window).on("scroll",function(){$(window).scrollTop()>t?e.addClass("sticked"):e.removeClass("sticked")})}},updateSidebar:function(e){var n,o=log4javascript.getLogger("j1.core.navigator.updateSidebar");return n=JSON.stringify(e),t="user state data: "+n,o.debug(t),j1.resolveMacros(e),j1.updateMacros(e),!0}}}(jQuery)},function(e,n){e.exports=(jQuery,{init:function(e){var n=e,t=log4javascript.getLogger("j1.cookiebar"),o=j1.getCookieNames().user_state,r={},a={renewOnVisit:!1,forceShow:!1,domain:String(window.location.hostname),referrer:String(document.referrer)},i=(e=$.extend(a,n),setInterval(function(e){"finished"==j1.getState()&&(user_state_detected=j1.existsCookie(o),user_state_detected?(t.info("User state cookie found"),r=j1.readCookie(o)):t.error("User state NOT cookie found"),"accepted"==r.cookies_accepted&&$("#quickLinksCookieButton").css("display","block"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted||$("#quickLinksCookieButton").css("display","none"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted&&""!=r.cookies_accepted||$("#topFullCookieConsent").modal("show"),clearInterval(i))}))},eventHandler:function(e){var n,t=log4javascript.getLogger("cookiebar.eventHandler"),o=window.location.pathname,r=document.querySelectorAll("a.btn"),a=(j1.appDetected(),e.deleteOnDecline,e.whitelistedPages),i=(a=[],e.stopScrolling),s=j1.getCookieNames(),l=s.user_state,c={},u=j1.readCookie(l);return logText="register button click events",t.debug(logText),r.forEach(function(e,r){e.addEventListener("click",function(e){return"policyButton"===this.id?(t.debug("user clicked policyButton"),$("#cookiePolicyInfo").toggle("fast",function(){$("#modal-footer").toggleClass("modal-footer-hidden modal-footer-show")}),!1):"acceptButton"===this.id?(t.debug("user clicked acceptButton"),(u=j1.readCookie(l)).cookies_accepted="accepted",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","block"),!1):"declineButton"===this.id?(t.debug("user clicked declineButton"),u.cookies_accepted="declined",o=window.location.pathname,n=a.indexOf(o)>-1,t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),t.warn("delete all cookies"),j1.deleteCookie(l),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome(),!1):("revokeCookies"===this.id&&(t.debug("user clicked revokeCookiesButton"),o=window.location.pathname,n=a.indexOf(o)>-1,(u=j1.readCookie(l)).cookies_accepted="declined",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome()),"remainCookies"===this.id?(t.debug("user clicked remainCookiesButton"),!1):void 0)})}),$(document).on("shown.bs.modal","#cookieRevokeCentralDanger",function(){t.debug("user opened modal: cookieRevokeCentralDanger")}),$(document).on("hide.bs.modal","#cookieRevokeCentralDanger",function(){t.debug("user closed cookieRevokeCentralDanger")}),$(document).on("shown.bs.modal","#topFullCookieConsent",function(){i&&$("body").addClass("stop-scrolling")}),$(document).on("hide.bs.modal","#topFullCookieConsent",function(){t.debug("user closed modal: topFullCookieConsent"),$("body").removeClass("stop-scrolling")}),logText="events registered",t.debug(logText),!0}})},function(e,n,t){"use strict";e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},e);return{scroll:function(e,n){var t,o;o="run module scrollSmooth",(t=log4javascript.getLogger("j1.scrollSmooth.core")).info(o);var r=n.duration,a=n.offset;this.scrollTo(e,{duration:r,offset:a,callback:null}),o="scrollSmooth finished",t.info(o)},scrollTo:function(e,n){n.offset;var t,o,r=$(".attic"),a=$("nav.navbar"),i=$("#adblock"),s=a.hasClass("navbar-fixed")?"fixed":"scrolled",l=$("body").css("font-size").replace("px",""),c=window.pageYOffset,u=parseInt(l),d=r.length?r.height():0,f=a.length?a.height():0,p=i.length?i.height():0,m="fixed"==s?-1*(f+p+u):-1*(d+f+p+u),v={duration:n.duration,offset:m,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},h=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),g="string"==typeof e?v.offset+(e?h&&h.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,b="function"==typeof v.duration?v.duration(g):v.duration;function w(e){o=e-t,window.scrollTo(0,v.easing(o,c,g,b)),o<b?requestAnimationFrame(w):(window.scrollTo(0,c+g),$(window).scrollTop($(window).scrollTop()+1),$(window).scrollTop($(window).scrollTop()-1),"function"==typeof v.callback&&v.callback())}requestAnimationFrame(function(e){t=e,w(e)})}}}(jQuery)},function(e,n,t){"use strict";var o={update:null,begin:null,loopBegin:null,changeBegin:null,change:null,changeComplete:null,loopComplete:null,complete:null,loop:1,direction:"normal",autoplay:!0,timelineOffset:0},r={duration:1e3,delay:0,endDelay:0,easing:"easeOutElastic(1, .5)",round:0},a=["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","skew","skewX","skewY","perspective","matrix","matrix3d"],i={CSS:{},springs:{}};function s(e,n,t){return Math.min(Math.max(e,n),t)}function l(e,n){return e.indexOf(n)>-1}function c(e,n){return e.apply(null,n)}var u={arr:function(e){return Array.isArray(e)},obj:function(e){return l(Object.prototype.toString.call(e),"Object")},pth:function(e){return u.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},inp:function(e){return e instanceof HTMLInputElement},dom:function(e){return e.nodeType||u.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return u.hex(e)||u.rgb(e)||u.hsl(e)},key:function(e){return!o.hasOwnProperty(e)&&!r.hasOwnProperty(e)&&"targets"!==e&&"keyframes"!==e}};function d(e){var n=/\(([^)]+)\)/.exec(e);return n?n[1].split(",").map(function(e){return parseFloat(e)}):[]}function f(e,n){var t=d(e),o=s(u.und(t[0])?1:t[0],.1,100),r=s(u.und(t[1])?100:t[1],.1,100),a=s(u.und(t[2])?10:t[2],.1,100),l=s(u.und(t[3])?0:t[3],.1,100),c=Math.sqrt(r/o),f=a/(2*Math.sqrt(r*o)),p=f<1?c*Math.sqrt(1-f*f):0,m=f<1?(f*c-l)/p:-l+c;function v(e){var t=n?n*e/1e3:e;return t=f<1?Math.exp(-t*f*c)*(1*Math.cos(p*t)+m*Math.sin(p*t)):(1+m*t)*Math.exp(-t*c),0===e||1===e?e:1-t}return n?v:function(){var n=i.springs[e];if(n)return n;for(var t=0,o=0;;)if(1===v(t+=1/6)){if(++o>=16)break}else o=0;var r=t*(1/6)*1e3;return i.springs[e]=r,r}}function p(e){return void 0===e&&(e=10),function(n){return Math.ceil(s(n,1e-6,1)*e)*(1/e)}}var m,v,h=function(){function e(e,n){return 1-3*n+3*e}function n(e,n){return 3*n-6*e}function t(e){return 3*e}function o(o,r,a){return((e(r,a)*o+n(r,a))*o+t(r))*o}function r(o,r,a){return 3*e(r,a)*o*o+2*n(r,a)*o+t(r)}return function(e,n,t,a){if(0<=e&&e<=1&&0<=t&&t<=1){var i=new Float32Array(11);if(e!==n||t!==a)for(var s=0;s<11;++s)i[s]=o(.1*s,e,t);return function(r){return e===n&&t===a||0===r||1===r?r:o(l(r),n,a)}}function l(n){for(var a=0,s=1;10!==s&&i[s]<=n;++s)a+=.1;--s;var l=a+.1*((n-i[s])/(i[s+1]-i[s])),c=r(l,e,t);return c>=.001?function(e,n,t,a){for(var i=0;i<4;++i){var s=r(n,t,a);if(0===s)return n;n-=(o(n,t,a)-e)/s}return n}(n,l,e,t):0===c?l:function(e,n,t,r,a){var i,s,l=0;do{(i=o(s=n+(t-n)/2,r,a)-e)>0?t=s:n=s}while(Math.abs(i)>1e-7&&++l<10);return s}(n,a,a+.1,e,t)}}}(),g=(m={linear:function(){return function(e){return e}}},v={Sine:function(){return function(e){return 1-Math.cos(e*Math.PI/2)}},Circ:function(){return function(e){return 1-Math.sqrt(1-e*e)}},Back:function(){return function(e){return e*e*(3*e-2)}},Bounce:function(){return function(e){for(var n,t=4;e<((n=Math.pow(2,--t))-1)/11;);return 1/Math.pow(4,3-t)-7.5625*Math.pow((3*n-2)/22-e,2)}},Elastic:function(e,n){void 0===e&&(e=1),void 0===n&&(n=.5);var t=s(e,1,10),o=s(n,.1,2);return function(e){return 0===e||1===e?e:-t*Math.pow(2,10*(e-1))*Math.sin((e-1-o/(2*Math.PI)*Math.asin(1/t))*(2*Math.PI)/o)}}},["Quad","Cubic","Quart","Quint","Expo"].forEach(function(e,n){v[e]=function(){return function(e){return Math.pow(e,n+2)}}}),Object.keys(v).forEach(function(e){var n=v[e];m["easeIn"+e]=n,m["easeOut"+e]=function(e,t){return function(o){return 1-n(e,t)(1-o)}},m["easeInOut"+e]=function(e,t){return function(o){return o<.5?n(e,t)(2*o)/2:1-n(e,t)(-2*o+2)/2}}}),m);function b(e,n){if(u.fnc(e))return e;var t=e.split("(")[0],o=g[t],r=d(e);switch(t){case"spring":return f(e,n);case"cubicBezier":return c(h,r);case"steps":return c(p,r);default:return c(o,r)}}function w(e){try{return document.querySelectorAll(e)}catch(e){return}}function C(e,n){for(var t=e.length,o=arguments.length>=2?arguments[1]:void 0,r=[],a=0;a<t;a++)if(a in e){var i=e[a];n.call(o,i,a,e)&&r.push(i)}return r}function y(e){return e.reduce(function(e,n){return e.concat(u.arr(n)?y(n):n)},[])}function k(e){return u.arr(e)?e:(u.str(e)&&(e=w(e)||e),e instanceof NodeList||e instanceof HTMLCollection?[].slice.call(e):[e])}function $(e,n){return e.some(function(e){return e===n})}function x(e){var n={};for(var t in e)n[t]=e[t];return n}function S(e,n){var t=x(e);for(var o in e)t[o]=n.hasOwnProperty(o)?n[o]:e[o];return t}function _(e,n){var t=x(e);for(var o in n)t[o]=u.und(e[o])?n[o]:e[o];return t}function j(e){return u.rgb(e)?(t=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(n=e))?"rgba("+t[1]+",1)":n:u.hex(e)?function(e){var n=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(e,n,t,o){return n+n+t+t+o+o}),t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n);return"rgba("+parseInt(t[1],16)+","+parseInt(t[2],16)+","+parseInt(t[3],16)+",1)"}(e):u.hsl(e)?function(e){var n,t,o,r=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e),a=parseInt(r[1],10)/360,i=parseInt(r[2],10)/100,s=parseInt(r[3],10)/100,l=r[4]||1;function c(e,n,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?e+6*(n-e)*t:t<.5?n:t<2/3?e+(n-e)*(2/3-t)*6:e}if(0==i)n=t=o=s;else{var u=s<.5?s*(1+i):s+i-s*i,d=2*s-u;n=c(d,u,a+1/3),t=c(d,u,a),o=c(d,u,a-1/3)}return"rgba("+255*n+","+255*t+","+255*o+","+l+")"}(e):void 0;var n,t}function T(e){var n=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e);if(n)return n[1]}function L(e,n){return u.fnc(e)?e(n.target,n.id,n.total):e}function O(e,n){return e.getAttribute(n)}function q(e,n,t){if($([t,"deg","rad","turn"],T(n)))return n;var o=i.CSS[n+t];if(!u.und(o))return o;var r=document.createElement(e.tagName),a=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;a.appendChild(r),r.style.position="absolute",r.style.width=100+t;var s=100/r.offsetWidth;a.removeChild(r);var l=s*parseFloat(n);return i.CSS[n+t]=l,l}function M(e,n,t){if(n in e.style){var o=n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=e.style[n]||getComputedStyle(e).getPropertyValue(o)||"0";return t?q(e,r,t):r}}function N(e,n){return u.dom(e)&&!u.inp(e)&&(O(e,n)||u.svg(e)&&e[n])?"attribute":u.dom(e)&&$(a,n)?"transform":u.dom(e)&&"transform"!==n&&M(e,n)?"css":null!=e[n]?"object":void 0}function E(e){if(u.dom(e)){for(var n,t=e.style.transform||"",o=/(\w+)\(([^)]*)\)/g,r=new Map;n=o.exec(t);)r.set(n[1],n[2]);return r}}function I(e,n,t,o){var r=l(n,"scale")?1:0+function(e){return l(e,"translate")||"perspective"===e?"px":l(e,"rotate")||l(e,"skew")?"deg":void 0}(n),a=E(e).get(n)||r;return t&&(t.transforms.list.set(n,a),t.transforms.last=n),o?q(e,a,o):a}function D(e,n,t,o){switch(N(e,n)){case"transform":return I(e,n,o,t);case"css":return M(e,n,t);case"attribute":return O(e,n);default:return e[n]||0}}function A(e,n){var t=/^(\*=|\+=|-=)/.exec(e);if(!t)return e;var o=T(e)||0,r=parseFloat(n),a=parseFloat(e.replace(t[0],""));switch(t[0][0]){case"+":return r+a+o;case"-":return r-a+o;case"*":return r*a+o}}function B(e,n){if(u.col(e))return j(e);if(/\s/g.test(e))return e;var t=T(e),o=t?e.substr(0,e.length-t.length):e;return n?o+n:o}function P(e,n){return Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2))}function F(e){for(var n,t=e.points,o=0,r=0;r<t.numberOfItems;r++){var a=t.getItem(r);r>0&&(o+=P(n,a)),n=a}return o}function H(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return function(e){return 2*Math.PI*O(e,"r")}(e);case"rect":return function(e){return 2*O(e,"width")+2*O(e,"height")}(e);case"line":return function(e){return P({x:O(e,"x1"),y:O(e,"y1")},{x:O(e,"x2"),y:O(e,"y2")})}(e);case"polyline":return F(e);case"polygon":return function(e){var n=e.points;return F(e)+P(n.getItem(n.numberOfItems-1),n.getItem(0))}(e)}}function z(e,n){var t=n||{},o=t.el||function(e){for(var n=e.parentNode;u.svg(n)&&u.svg(n.parentNode);)n=n.parentNode;return n}(e),r=o.getBoundingClientRect(),a=O(o,"viewBox"),i=r.width,s=r.height,l=t.viewBox||(a?a.split(" "):[0,0,i,s]);return{el:o,viewBox:l,x:l[0]/1,y:l[1]/1,w:i/l[2],h:s/l[3]}}function R(e,n){function t(t){void 0===t&&(t=0);var o=n+t>=1?n+t:0;return e.el.getPointAtLength(o)}var o=z(e.el,e.svg),r=t(),a=t(-1),i=t(1);switch(e.property){case"x":return(r.x-o.x)*o.w;case"y":return(r.y-o.y)*o.h;case"angle":return 180*Math.atan2(i.y-a.y,i.x-a.x)/Math.PI}}function Q(e,n){var t=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?/g,o=B(u.pth(e)?e.totalLength:e,n)+"";return{original:o,numbers:o.match(t)?o.match(t).map(Number):[0],strings:u.str(e)||n?o.split(t):[]}}function Y(e){return C(e?y(u.arr(e)?e.map(k):k(e)):[],function(e,n,t){return t.indexOf(e)===n})}function U(e){var n=Y(e);return n.map(function(e,t){return{target:e,id:t,total:n.length,transforms:{list:E(e)}}})}function V(e,n){var t=x(n);if(/^spring/.test(t.easing)&&(t.duration=f(t.easing)),u.arr(e)){var o=e.length;2===o&&!u.obj(e[0])?e={value:e}:u.fnc(n.duration)||(t.duration=n.duration/o)}var r=u.arr(e)?e:[e];return r.map(function(e,t){var o=u.obj(e)&&!u.pth(e)?e:{value:e};return u.und(o.delay)&&(o.delay=t?0:n.delay),u.und(o.endDelay)&&(o.endDelay=t===r.length-1?n.endDelay:0),o}).map(function(e){return _(e,t)})}function X(e,n){var t=[],o=n.keyframes;for(var r in o&&(n=_(function(e){for(var n=C(y(e.map(function(e){return Object.keys(e)})),function(e){return u.key(e)}).reduce(function(e,n){return e.indexOf(n)<0&&e.push(n),e},[]),t={},o=function(o){var r=n[o];t[r]=e.map(function(e){var n={};for(var t in e)u.key(t)?t==r&&(n.value=e[t]):n[t]=e[t];return n})},r=0;r<n.length;r++)o(r);return t}(o),n)),n)u.key(r)&&t.push({name:r,tweens:V(n[r],e)});return t}function Z(e,n){var t;return e.tweens.map(function(o){var r=function(e,n){var t={};for(var o in e){var r=L(e[o],n);u.arr(r)&&1===(r=r.map(function(e){return L(e,n)})).length&&(r=r[0]),t[o]=r}return t.duration=parseFloat(t.duration),t.delay=parseFloat(t.delay),t}(o,n),a=r.value,i=u.arr(a)?a[1]:a,s=T(i),l=D(n.target,e.name,s,n),c=t?t.to.original:l,d=u.arr(a)?a[0]:c,f=T(d)||T(l),p=s||f;return u.und(i)&&(i=c),r.from=Q(d,p),r.to=Q(A(i,d),p),r.start=t?t.end:0,r.end=r.start+r.delay+r.duration+r.endDelay,r.easing=b(r.easing,r.duration),r.isPath=u.pth(a),r.isColor=u.col(r.from.original),r.isColor&&(r.round=1),t=r,r})}var W={css:function(e,n,t){return e.style[n]=t},attribute:function(e,n,t){return e.setAttribute(n,t)},object:function(e,n,t){return e[n]=t},transform:function(e,n,t,o,r){if(o.list.set(n,t),n===o.last||r){var a="";o.list.forEach(function(e,n){a+=n+"("+e+") "}),e.style.transform=a}}};function J(e,n){U(e).forEach(function(e){for(var t in n){var o=L(n[t],e),r=e.target,a=T(o),i=D(r,t,a,e),s=A(B(o,a||T(i)),i),l=N(r,t);W[l](r,t,s,e.transforms,!0)}})}function G(e,n){return C(y(e.map(function(e){return n.map(function(n){return function(e,n){var t=N(e.target,n.name);if(t){var o=Z(n,e),r=o[o.length-1];return{type:t,property:n.name,animatable:e,tweens:o,duration:r.end,delay:o[0].delay,endDelay:r.endDelay}}}(e,n)})})),function(e){return!u.und(e)})}function K(e,n){var t=e.length,o=function(e){return e.timelineOffset?e.timelineOffset:0},r={};return r.duration=t?Math.max.apply(Math,e.map(function(e){return o(e)+e.duration})):n.duration,r.delay=t?Math.min.apply(Math,e.map(function(e){return o(e)+e.delay})):n.delay,r.endDelay=t?r.duration-Math.max.apply(Math,e.map(function(e){return o(e)+e.duration-e.endDelay})):n.endDelay,r}var ee=0;var ne,te=[],oe=[],re=function(){function e(){ne=requestAnimationFrame(n)}function n(n){var t=te.length;if(t){for(var o=0;o<t;){var r=te[o];if(r.paused){var a=te.indexOf(r);a>-1&&(te.splice(a,1),t=te.length)}else r.tick(n);o++}e()}else ne=cancelAnimationFrame(ne)}return e}();function ae(e){void 0===e&&(e={});var n,t=0,a=0,i=0,l=0,c=null;function u(e){var n=window.Promise&&new Promise(function(e){return c=e});return e.finished=n,n}var d=function(e){var n=S(o,e),t=S(r,e),a=X(t,e),i=U(e.targets),s=G(i,a),l=K(s,t),c=ee;return ee++,_(n,{id:c,children:[],animatables:i,animations:s,duration:l.duration,delay:l.delay,endDelay:l.endDelay})}(e);u(d);function f(){var e=d.direction;"alternate"!==e&&(d.direction="normal"!==e?"normal":"reverse"),d.reversed=!d.reversed,n.forEach(function(e){return e.reversed=d.reversed})}function p(e){return d.reversed?d.duration-e:e}function m(){t=0,a=p(d.currentTime)*(1/ae.speed)}function v(e,n){n&&n.seek(e-n.timelineOffset)}function h(e){for(var n=0,t=d.animations,o=t.length;n<o;){var r=t[n],a=r.animatable,i=r.tweens,l=i.length-1,c=i[l];l&&(c=C(i,function(n){return e<n.end})[0]||c);for(var u=s(e-c.start-c.delay,0,c.duration)/c.duration,f=isNaN(u)?1:c.easing(u),p=c.to.strings,m=c.round,v=[],h=c.to.numbers.length,g=void 0,b=0;b<h;b++){var w=void 0,y=c.to.numbers[b],k=c.from.numbers[b]||0;w=c.isPath?R(c.value,f*y):k+f*(y-k),m&&(c.isColor&&b>2||(w=Math.round(w*m)/m)),v.push(w)}var $=p.length;if($){g=p[0];for(var x=0;x<$;x++){p[x];var S=p[x+1],_=v[x];isNaN(_)||(g+=S?_+S:_+" ")}}else g=v[0];W[r.type](a.target,r.property,g,a.transforms),r.currentValue=g,n++}}function g(e){d[e]&&!d.passThrough&&d[e](d)}function b(e){var o=d.duration,r=d.delay,m=o-d.endDelay,b=p(e);d.progress=s(b/o*100,0,100),d.reversePlayback=b<d.currentTime,n&&function(e){if(d.reversePlayback)for(var t=l;t--;)v(e,n[t]);else for(var o=0;o<l;o++)v(e,n[o])}(b),!d.began&&d.currentTime>0&&(d.began=!0,g("begin")),!d.loopBegan&&d.currentTime>0&&(d.loopBegan=!0,g("loopBegin")),b<=r&&0!==d.currentTime&&h(0),(b>=m&&d.currentTime!==o||!o)&&h(o),b>r&&b<m?(d.changeBegan||(d.changeBegan=!0,d.changeCompleted=!1,g("changeBegin")),g("change"),h(b)):d.changeBegan&&(d.changeCompleted=!0,d.changeBegan=!1,g("changeComplete")),d.currentTime=s(b,0,o),d.began&&g("update"),e>=o&&(a=0,d.remaining&&!0!==d.remaining&&d.remaining--,d.remaining?(t=i,g("loopComplete"),d.loopBegan=!1,"alternate"===d.direction&&f()):(d.paused=!0,d.completed||(d.completed=!0,g("loopComplete"),g("complete"),!d.passThrough&&"Promise"in window&&(c(),u(d)))))}return d.reset=function(){var e=d.direction;d.passThrough=!1,d.currentTime=0,d.progress=0,d.paused=!0,d.began=!1,d.loopBegan=!1,d.changeBegan=!1,d.completed=!1,d.changeCompleted=!1,d.reversePlayback=!1,d.reversed="reverse"===e,d.remaining=d.loop,n=d.children;for(var t=l=n.length;t--;)d.children[t].reset();(d.reversed&&!0!==d.loop||"alternate"===e&&1===d.loop)&&d.remaining++,h(d.reversed?d.duration:0)},d.set=function(e,n){return J(e,n),d},d.tick=function(e){i=e,t||(t=i),b((i+(a-t))*ae.speed)},d.seek=function(e){b(p(e))},d.pause=function(){d.paused=!0,m()},d.play=function(){d.paused&&(d.completed&&d.reset(),d.paused=!1,te.push(d),m(),ne||re())},d.reverse=function(){f(),d.completed=!d.reversed,m()},d.restart=function(){d.reset(),d.play()},d.reset(),d.autoplay&&d.play(),d}function ie(e,n){for(var t=n.length;t--;)$(e,n[t].animatable.target)&&n.splice(t,1)}"undefined"!=typeof document&&document.addEventListener("visibilitychange",function(){document.hidden?(te.forEach(function(e){return e.pause()}),oe=te.slice(0),ae.running=te=[]):oe.forEach(function(e){return e.play()})}),ae.version="3.2.0",ae.speed=1,ae.running=te,ae.remove=function(e){for(var n=Y(e),t=te.length;t--;){var o=te[t],r=o.animations,a=o.children;ie(n,r);for(var i=a.length;i--;){var s=a[i],l=s.animations;ie(n,l),l.length||s.children.length||a.splice(i,1)}r.length||a.length||o.pause()}},ae.get=D,ae.set=J,ae.convertPx=q,ae.path=function(e,n){var t=u.str(e)?w(e)[0]:e,o=n||100;return function(e){return{property:e,el:t,svg:z(t),totalLength:H(t)*(o/100)}}},ae.setDashoffset=function(e){var n=H(e);return e.setAttribute("stroke-dasharray",n),n},ae.stagger=function(e,n){void 0===n&&(n={});var t=n.direction||"normal",o=n.easing?b(n.easing):null,r=n.grid,a=n.axis,i=n.from||0,s="first"===i,l="center"===i,c="last"===i,d=u.arr(e),f=d?parseFloat(e[0]):parseFloat(e),p=d?parseFloat(e[1]):0,m=T(d?e[1]:e)||0,v=n.start||0+(d?f:0),h=[],g=0;return function(e,n,u){if(s&&(i=0),l&&(i=(u-1)/2),c&&(i=u-1),!h.length){for(var b=0;b<u;b++){if(r){var w=l?(r[0]-1)/2:i%r[0],C=l?(r[1]-1)/2:Math.floor(i/r[0]),y=w-b%r[0],k=C-Math.floor(b/r[0]),$=Math.sqrt(y*y+k*k);"x"===a&&($=-y),"y"===a&&($=-k),h.push($)}else h.push(Math.abs(i-b));g=Math.max.apply(Math,h)}o&&(h=h.map(function(e){return o(e/g)*g})),"reverse"===t&&(h=h.map(function(e){return a?e<0?-1*e:-e:Math.abs(g-e)}))}return v+(d?(p-f)/g:f)*(Math.round(100*h[n])/100)+m}},ae.timeline=function(e){void 0===e&&(e={});var n=ae(e);return n.duration=0,n.add=function(t,o){var a=te.indexOf(n),i=n.children;function s(e){e.passThrough=!0}a>-1&&te.splice(a,1);for(var l=0;l<i.length;l++)s(i[l]);var c=_(t,S(r,e));c.targets=c.targets||e.targets;var d=n.duration;c.autoplay=!1,c.direction=n.direction,c.timelineOffset=u.und(o)?d:A(o,d),s(n),n.seek(c.timelineOffset);var f=ae(c);s(f),i.push(f);var p=K(i,e);return n.delay=p.delay,n.endDelay=p.endDelay,n.duration=p.duration,n.seek(0),n.reset(),n.autoplay&&n.play(),n},n},ae.easing=b,ae.penner=g,ae.random=function(e,n){return Math.floor(Math.random()*(n-e+1))+e},e.exports=ae},function(e,n,t){(function(o){var r,a,i,s;s=void 0!==o?o:this.window||this.global,a=[],r=function(e){"use strict";var n,o,r,a=t(9),i={},s={},l=t(10),c=t(11),u=t(12),d=!!(e&&e.document&&e.document.querySelector&&e.addEventListener);if("undefined"!=typeof window||d){var f=Object.prototype.hasOwnProperty;return s.destroy=function(){if(!i.skipRendering)try{document.querySelector(i.tocSelector).innerHTML=""}catch(e){console.warn("Element not found: "+i.tocSelector)}i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).removeEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).removeEventListener("resize",this._scrollListener,!1),n&&document.querySelector(i.scrollContainer).removeEventListener("click",this._clickListener,!1)):(document.removeEventListener("scroll",this._scrollListener,!1),document.removeEventListener("resize",this._scrollListener,!1),n&&document.removeEventListener("click",this._clickListener,!1))},s.init=function(e){if(d&&(i=function(){for(var e={},n=0;n<arguments.length;n++){var t=arguments[n];for(var o in t)f.call(t,o)&&(e[o]=t[o])}return e}(a,e||{}),this.options=i,this.state={},i.scrollSmooth&&(i.duration=i.scrollSmoothDuration,i.offset=i.scrollSmoothOffset,s.scrollSmooth=t(13).initSmoothScrolling(i)),n=l(i),o=c(i),this._buildHtml=n,this._parseContent=o,s.destroy(),null!==(r=o.selectHeadings(i.contentSelector,i.headingSelector)))){var m=o.nestHeadingsArray(r).nest;i.skipRendering||n.render(i.tocSelector,m),this._scrollListener=p(function(e){n.updateToc(r),!i.disableTocScrollSync&&u(i);var t=e&&e.target&&e.target.scrollingElement&&0===e.target.scrollingElement.scrollTop;(e&&(0===e.eventPhase||null===e.currentTarget)||t)&&(n.updateToc(r),i.scrollEndCallback&&i.scrollEndCallback(e))},i.throttleTimeout),this._scrollListener(),i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).addEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).addEventListener("resize",this._scrollListener,!1)):(document.addEventListener("scroll",this._scrollListener,!1),document.addEventListener("resize",this._scrollListener,!1));var v=null;return this._clickListener=p(function(e){i.scrollSmooth&&n.disableTocAnimation(e),n.updateToc(r),v&&clearTimeout(v),v=setTimeout(function(){n.enableTocAnimation()},i.scrollSmoothDuration)},i.throttleTimeout),i.scrollContainer&&document.querySelector(i.scrollContainer)?document.querySelector(i.scrollContainer).addEventListener("click",this._clickListener,!1):document.addEventListener("click",this._clickListener,!1),this}},s.refresh=function(e){s.destroy(),s.init(e||this.options)},e.tocbot=s,s}function p(e,n,t){var o,r;return n||(n=250),function(){var a=t||this,i=+new Date,s=arguments;o&&i<o+n?(clearTimeout(r),r=setTimeout(function(){o=i,e.apply(a,s)},n)):(o=i,e.apply(a,s))}}}(s),void 0===(i="function"==typeof r?r.apply(n,a):r)||(e.exports=i)}).call(this,t(8))},function(e,n){var t;t=function(){return this}();try{t=t||new Function("return this")()}catch(e){"object"==typeof window&&(t=window)}e.exports=t},function(e,n){e.exports={tocSelector:".js-toc",contentSelector:".js-toc-content",headingSelector:"h1, h2, h3",ignoreSelector:".js-toc-ignore",hasInnerContainers:!1,linkClass:"toc-link",extraLinkClasses:"",activeLinkClass:"is-active-link",listClass:"toc-list",extraListClasses:"",isCollapsedClass:"is-collapsed",collapsibleClass:"is-collapsible",listItemClass:"toc-list-item",activeListItemClass:"is-active-li",collapseDepth:0,scrollSmooth:!0,scrollSmoothDuration:420,scrollSmoothOffset:0,scrollEndCallback:function(e){},headingsOffset:1,throttleTimeout:50,positionFixedSelector:null,positionFixedClass:"is-position-fixed",fixedSidebarOffset:"auto",includeHtml:!1,onClick:function(e){},orderedList:!0,scrollContainer:null,skipRendering:!1,headingLabelCallback:!1,ignoreHiddenElements:!1,headingObjectCallback:null,basePath:"",disableTocScrollSync:!1}},function(e,n){e.exports=function(e){var n=[].forEach,t=[].some,o=document.body,r=!0;function a(t,o){var r=o.appendChild(function(t){var o=document.createElement("li"),r=document.createElement("a");e.listItemClass&&o.setAttribute("class",e.listItemClass);e.onClick&&(r.onclick=e.onClick);e.includeHtml&&t.childNodes.length?n.call(t.childNodes,function(e){r.appendChild(e.cloneNode(!0))}):r.textContent=t.textContent;return r.setAttribute("href",e.basePath+"#"+t.id),r.setAttribute("class",e.linkClass+" node-name--"+t.nodeName+" "+e.extraLinkClasses),o.appendChild(r),o}(t));if(t.children.length){var s=i(t.isCollapsed);t.children.forEach(function(e){a(e,s)}),r.appendChild(s)}}function i(n){var t=e.orderedList?"ol":"ul",o=document.createElement(t),r=e.listClass+" "+e.extraListClasses;return n&&(r+=" "+e.collapsibleClass,r+=" "+e.isCollapsedClass),o.setAttribute("class",r),o}return{enableTocAnimation:function(){r=!0},disableTocAnimation:function(n){var t=n.target||n.srcElement;"string"==typeof t.className&&-1!==t.className.indexOf(e.linkClass)&&(r=!1)},render:function(e,n){var t=i(!1);n.forEach(function(e){a(e,t)});var o=document.querySelector(e);if(null!==o)return o.firstChild&&o.removeChild(o.firstChild),0===n.length?o:o.appendChild(t)},updateToc:function(a){var i;i=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop,e.positionFixedSelector&&function(){var n;n=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop;var t=document.querySelector(e.positionFixedSelector);"auto"===e.fixedSidebarOffset&&(e.fixedSidebarOffset=document.querySelector(e.tocSelector).offsetTop),n>e.fixedSidebarOffset?-1===t.className.indexOf(e.positionFixedClass)&&(t.className+=" "+e.positionFixedClass):t.className=t.className.split(" "+e.positionFixedClass).join("")}();var s,l=a;if(r&&null!==document.querySelector(e.tocSelector)&&l.length>0){t.call(l,function(n,t){return function n(t){var o=0;return t!==document.querySelector(e.contentSelector&&null!=t)&&(o=t.offsetTop,e.hasInnerContainers&&(o+=n(t.offsetParent))),o}(n)>i+e.headingsOffset+10?(s=l[t],!0):t===l.length-1?(s=l[l.length-1],!0):void 0});var c=document.querySelector(e.tocSelector).querySelectorAll("."+e.linkClass);n.call(c,function(n){n.className=n.className.split(" "+e.activeLinkClass).join("")});var u=document.querySelector(e.tocSelector).querySelectorAll("."+e.listItemClass);n.call(u,function(n){n.className=n.className.split(" "+e.activeListItemClass).join("")});var d=document.querySelector(e.tocSelector).querySelector("."+e.linkClass+".node-name--"+s.nodeName+'[href="'+e.basePath+"#"+s.id.replace(/([ #;&,.+*~':"!^$[\]()=>|/@])/g,"\\$1")+'"]');-1===d.className.indexOf(e.activeLinkClass)&&(d.className+=" "+e.activeLinkClass);var f=d.parentNode;f&&-1===f.className.indexOf(e.activeListItemClass)&&(f.className+=" "+e.activeListItemClass);var p=document.querySelector(e.tocSelector).querySelectorAll("."+e.listClass+"."+e.collapsibleClass);n.call(p,function(n){-1===n.className.indexOf(e.isCollapsedClass)&&(n.className+=" "+e.isCollapsedClass)}),d.nextSibling&&-1!==d.nextSibling.className.indexOf(e.isCollapsedClass)&&(d.nextSibling.className=d.nextSibling.className.split(" "+e.isCollapsedClass).join("")),function n(t){if(-1!==t.className.indexOf(e.collapsibleClass)&&-1!==t.className.indexOf(e.isCollapsedClass))return t.className=t.className.split(" "+e.isCollapsedClass).join(""),n(t.parentNode.parentNode);return t}(d.parentNode.parentNode)}}}}},function(e,n){e.exports=function(e){var n=[].reduce;function t(e){return e[e.length-1]}function o(e){return+e.nodeName.split("H").join("")}function r(n){if(!(n instanceof window.HTMLElement))return n;if(e.ignoreHiddenElements&&(!n.offsetHeight||!n.offsetParent))return null;var t={id:n.id,children:[],nodeName:n.nodeName,headingLevel:o(n),textContent:e.headingLabelCallback?String(e.headingLabelCallback(n.textContent)):n.textContent.trim()};return e.includeHtml&&(t.childNodes=n.childNodes),e.headingObjectCallback?e.headingObjectCallback(t,n):t}return{nestHeadingsArray:function(o){return n.call(o,function(n,o){var a=r(o);return a&&function(n,o){for(var a=r(n),i=a.headingLevel,s=o,l=t(s),c=i-(l?l.headingLevel:0);c>0;)(l=t(s))&&void 0!==l.children&&(s=l.children),c--;i>=e.collapseDepth&&(a.isCollapsed=!0),s.push(a)}(a,n.nest),n},{nest:[]})},selectHeadings:function(n,t){var o=t;e.ignoreSelector&&(o=t.split(",").map(function(n){return n.trim()+":not("+e.ignoreSelector+")"}));try{return document.querySelector(n).querySelectorAll(o)}catch(e){return console.warn("Element not found: "+n),null}}}}},function(e,n){e.exports=function(e){var n=document.querySelector(e.tocSelector);if(n&&n.scrollHeight>n.clientHeight){var t=n.querySelector("."+e.activeListItemClass);t&&(n.scrollTop=t.offsetTop)}}},function(e,n){n.initSmoothScrolling=function(e){document.documentElement.style;var n=e.duration,t=e.offset,o=location.hash?r(location.href):location.href;function r(e){return e.slice(0,e.lastIndexOf("#"))}document.body.addEventListener("click",function(a){var i;"a"!==(i=a.target).tagName.toLowerCase()||!(i.hash.length>0||"#"===i.href.charAt(i.href.length-1))||r(i.href)!==o&&r(i.href)+"#"!==o||a.target.className.indexOf("no-smooth-scroll")>-1||"#"===a.target.href.charAt(a.target.href.length-2)&&"!"===a.target.href.charAt(a.target.href.length-1)||-1===a.target.className.indexOf(e.linkClass)||function(e,n){var t,o,r=window.pageYOffset,a={duration:n.duration,offset:n.offset||0,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},i=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),s="string"==typeof e?a.offset+(e?i&&i.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,l="function"==typeof a.duration?a.duration(s):a.duration;function c(e){o=e-t,window.scrollTo(0,a.easing(o,r,s,l)),o<l?requestAnimationFrame(c):(window.scrollTo(0,r+s),"function"==typeof a.callback&&a.callback())}requestAnimationFrame(function(e){t=e,c(e)})}(a.target.hash,{duration:n,offset:t,callback:function(){var e,n;e=a.target.hash,(n=document.getElementById(e.substring(1)))&&(/^(?:a|select|input|button|textarea)$/i.test(n.tagName)||(n.tabIndex=-1),n.focus())}})},!1)}},function(e,n){$(function(){$(".result").each(function(e,n){var t=$(n),o=t.prev().find(".title"),r=$('<div class="view-result j1-viewer"><span class="btn-viewer j1-tooltip" data-toggle="tooltip" data-placement="left" title="toggle results" data-original-title="toggle results">View</span></div>');o.append(r),r.on("click",function(e){e.preventDefault(),function(e){window.clearTimeout(void 0),e.prev().toggleClass("stacked"),e.toggle()}(t)})})})}]);
|
1
|
+
!function(e){var n={};function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var r in e)t.d(o,r,function(n){return e[n]}.bind(null,r));return o},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/assets/themes/j1/core/js",t(t.s=0)}([function(e,n,t){window.j1.adapter=t(1),window.j1.core=t(2),window.j1.core.navigator=t(3),window.j1.core.cookiebar=t(4),window.j1.core.scrollSmooth=t(5),window.j1.anime=t(6);t(7),t(14)},function(e,n,t){"use strict";
|
2
|
+
/*!
|
3
|
+
* J1 Adapter
|
4
|
+
* Copyright (C) 2021 Juergen Adams
|
5
|
+
* Licensed under MIT License.
|
6
|
+
*/e.exports=(j1,window,{_init_:function(){}})},function(e,n,t){"use strict";
|
7
|
+
/*!
|
8
|
+
* J1 Core
|
9
|
+
* Copyright (C) 2021 Juergen Adams
|
10
|
+
* Licensed under MIT License.
|
11
|
+
*/e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},void 0);return{_init_:function(e){},getState:function(){return"loaded"},isMobile:function(e){var n,t=!1;return n=navigator.userAgent||navigator.vendor||window.opera,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(n)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm|cell|chtm|cldc|cmd|co(mp|nd)|craw|da(it|ll|ng)|dbte|dcs|devi|dica|dmob|do(c|p)o|ds(12|d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(|_)|g1 u|g560|gene|gf5|gmo|go(\.w|od)|gr(ad|un)|haie|hcit|hd(m|p|t)|hei|hi(pt|ta)|hp( i|ip)|hsc|ht(c(| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i(20|go|ma)|i230|iac( ||\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|[a-w])|libw|lynx|m1w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|mcr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|([1-8]|c))|phil|pire|pl(ay|uc)|pn2|po(ck|rt|se)|prox|psio|ptg|qaa|qc(07|12|21|32|60|[2-7]|i)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h|oo|p)|sdk\/|se(c(|0|1)|47|mc|nd|ri)|sgh|shar|sie(|m)|sk0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h|v|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl|tdg|tel(i|m)|tim|tmo|to(pl|sh)|ts(70|m|m3|m5)|tx9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas|your|zeto|zte/i.test(n.substr(0,4)))&&(t=!0),t},bsFormClearButton:function(){$(":input").on("keydown focus change mouseover",(function(){$(this).val().length>0&&$(this).nextAll(".form-clear").removeClass("d-none")})).on("keydown keyup blur",(function(){0===$(this).val().length&&$(this).nextAll(".form-clear").addClass("d-none")}))}}}()},function(e,n){
|
12
|
+
/*!
|
13
|
+
* J1 Navigator
|
14
|
+
* Copyright (C) 2021 Juergen Adams
|
15
|
+
* Licensed under MIT License.
|
16
|
+
*/
|
17
|
+
e.exports=function(e){var n,t,o=j1.getCookieNames(),r=(o.cookie_consent,o.user_session,{});$.extend({foo:"bar",bar:"foo"},e);return{init:function(e,o){return n=log4javascript.getLogger("j1.core.navigator"),t="core is being initialized",n.info(t),this.manageDropdownMenu(e,o),this.navbarSticky(),r.type="command",r.action="module_initialized",r.text="navigator core initialized successfully",j1.sendMessage("j1.core.navigator","j1.adapter.navigator",r),!0},eventHandler:function(){var e=log4javascript.getLogger("j1.core.navigator.eventHandler"),n=$("nav.navbar.navigator");if(n.hasClass("navbar-sticky")&&n.wrap("<div class='wrap-sticky'></div>"),n.hasClass("brand-center")){var t=new Array,o=$("nav.brand-center"),r=o.find("ul.navbar-nav");o.find("ul.navbar-nav > li").each((function(){t.push($(this).html())}));var a=t.splice(0,Math.round(t.length/2)),i=t,s="",l=function(e){s="";for(var n=0;n<e.length;n++)s+="<li>"+e[n]+"</li>"};l(a),r.html(s),o.find("ul.nav").first().addClass("navbar-left"),l(i),r.after('<ul class="nav navbar-nav"></ul>').next().html(s),o.find("ul.nav").last().addClass("navbar-right"),o.find("ul.nav.navbar-left").wrap("<div class='col_half left'></div>"),o.find("ul.nav.navbar-right").wrap("<div class='col_half right'></div>"),o.find("ul.navbar-nav > li").each((function(){var e=$("ul.dropdown-menu",this),n=$("ul.megamenu-content",this);e.closest("li").addClass("dropdown"),n.closest("li").addClass("megamenu-fw")}))}n.find("ul.nav").hasClass("navbar-center")&&n.addClass("menu-center"),n.hasClass("navbar-full")?($("nav.navbar.navigator").find("ul.nav").wrap("<div class='wrap-full-menu'></div>"),$(".wrap-full-menu").wrap("<div class='nav-full'></div>"),$("ul.nav.navbar-nav").prepend("<li class='close-full-menu'><a href='#'><i class='mdi mdi-close'></i></a></li>")):n.hasClass("navbar-mobile")?n.removeClass("no-full"):n.addClass("no-full"),n.hasClass("no-background")&&$(window).on("scroll",(function(){var e=$("nav.navbar").outerHeight();$(window).scrollTop()>e?$(".navbar-fixed").removeClass("no-background"):$(".navbar-fixed").addClass("no-background")})),n.hasClass("navbar-transparent")&&$(window).on("scroll",(function(){var e=$("nav.navbar").outerHeight();$(window).scrollTop()>e?($(".navbar-fixed").removeClass("navbar-transparent"),$(".navbar-fixed").addClass("navbar-scrolled")):($(".navbar-fixed").removeClass("navbar-scrolled"),$(".navbar-fixed").addClass("navbar-transparent"))})),$("nav.navbar.navigator .attr-nav").each((function(){e.debug("register OPEN event|s for QuickSearch"),$("li.search > a",this).on("click",(function(n){e.debug("manage search action OPEN"),$("html,body").animate({scrollTop:0},0),$(".top-search").slideToggle("slow","swing",(function(){$(".top-search").is(":visible")?($("body").addClass("stop-scrolling"),$("body").bind("touchmove",(function(e){e.preventDefault()}))):($("body").removeClass("stop-scrolling"),$("body").unbind("touchmove"))}))}))})),e.debug("register CLOSE event|s for QuickSearch"),$(".input-group-addon.close-search").on("click",(function(n){n.preventDefault(),e.debug("manage search action CLOSE"),$(".top-search").slideUp("slow","swing"),$("html,body").animate({scrollTop:0},0),$("body").removeClass("stop-scrolling"),$("body").unbind("touchmove"),n.stopPropagation()})),$("nav.navbar.navigator .attr-nav").each((function(){e.debug("register SHOW|HIDE event|s for J1 Translator"),$("li.translator > a",this).on("click",(function(n){e.debug("toggle translator icon SHOW|HIDE"),$("#google_translate_element").toggle(),"none"!==$("#google_translate_element").css("display")&&$("html,body").animate({scrollTop:0},"slow")}))})),$("body").wrapInner("<div class='wrapper'></div>")},manageDropdownMenu:function(e,n){var t,o,r,a,i=e,s=n,l=$("nav.navbar.navigator"),c=(window.matchMedia("(orientation: landscape)").matches,$(window).width()),u=($("nav").width(),l.find("ul.nav").data("in")),d=l.find("ul.nav").data("out"),f="#"+s.xhr_container_id+".collapse",p=s.delay_menu_open;if(c<=(o="lg"===i.nav_bar.media_breakpoint?992:"md"===i.nav_bar.media_breakpoint?768:"sm"===i.nav_bar.media_breakpoint?576:992)?($(f).addClass("navbar-collapse"),$(f).removeClass("show"),$("#navigator_nav_quicklinks").addClass("show"),$("nav.navbar.navigator .attr-nav").each((function(){$(".dropdown-menu",this).removeClass("animated"),$("li.dropdown",this).off("mouseenter"),$("li.dropdown",this).off("mouseleave"),$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",(function(e){$(this).closest("li.dropdown").find(".dropdown-menu").first().stop().fadeToggle(),$(".navbar-toggle").each((function(){$(".mdi",this).removeClass("mdi-close"),$(".mdi",this).addClass("mdi-menu"),$(".navbar-collapse").removeClass("in"),$(".navbar-collapse").removeClass("open")}))})),$(this).on("mouseleave",(function(){$(".dropdown-menu",this).stop().fadeOut(),$("li.dropdown",this).removeClass("open")}))})),$("#desktop_menu").hide()):c>o&&($("#navigator_nav_quicklinks").removeClass("show"),$("#desktop_menu").show(),$(".dropdown-menu > li").hover((function(){var e=$(this).find("ul");if(1==e.length)e.height(),void 0!==e.css("max-height")&&e.css("max-height").match(/\d+/)[0]})),$(".dropdown-menu > li").on("mouseleave",(function(){$("body").removeClass("stop-scrolling")})),$(f).removeClass("navbar-collapse"),$(f).addClass("show"),$("nav.navbar.navigator ul.nav").each((function(){$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",(function(e){})),$(".megamenu-fw",this).each((function(){$(".title",this).off("click"),$("a.dropdown-toggle",this).off("click"),$(".content").removeClass("animated")})),$(".dropdown-menu",this).addClass("animated"),$("li.dropdown",this).on("mouseenter",(function(){if(t=$(".dropdown-menu",this).eq(0),r=$(this),$("body").hasClass("stop-scrolling")||$("body").hasClass("mm-ocd-opened"))return!1;t.removeClass(d),t.removeClass("open"),r.addClass("open"),a=window.setTimeout((function(){r.hasClass("open")&&(t.stop().fadeIn().addClass(u),t.addClass("open"),r.addClass("open"))}),p)})),$("li.dropdown",this).on("mouseleave",(function(){window.clearTimeout(a),$(this).removeClass("open").removeClass("open"),$(".dropdown-menu",this).removeClass("open"),$(".dropdown-menu",this).eq(0).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d)})),$(this).on("mouseleave",(function(){window.clearTimeout(a),$("li.dropdown",this).removeClass("open"),$(".dropdown-menu",this).removeClass("open"),$(".dropdown-menu",this).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d)}))}))),$("nav.navbar.navigator .attr-nav").each((function(){$("a.dropdown-toggle",this).off("click"),$("a.dropdown-toggle",this).on("click",(function(e){})),$(".dropdown-menu",this).addClass("animated"),$("li.dropdown",this).on("mouseenter",(function(){$(".dropdown-menu",this).eq(0).removeClass(d),$(".dropdown-menu",this).eq(0).stop().fadeIn().addClass(u),$(this).addClass("open")})),$("li.dropdown",this).on("mouseleave",(function(){$(".dropdown-menu",this).eq(0).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d),$(this).removeClass("open")})),$(this).on("mouseleave",(function(){$(".dropdown-menu",this).removeClass(u),$(".dropdown-menu",this).eq(0).stop().fadeOut().addClass(d),$("li.dropdown",this).removeClass("open")}))})),l.hasClass("navbar-full")){var m=$(window).height(),v=$(window).width();$(".nav-full").css("height",m+"px"),$(".wrap-full-menu").css("height",m+"px"),$(".wrap-full-menu").css("width",v+"px"),$(".navbar-collapse").addClass("animated"),$(".navbar-toggle").each((function(){var e=$(this).data("target");$(this).off("click"),$(this).on("click",(function(n){n.preventDefault(),$(e).removeClass(d),$(e).addClass("in"),$(e).addClass(u)})),$("li.close-full-menu").on("click",(function(n){n.preventDefault(),$(e).addClass(d),setTimeout((function(){$(e).removeClass("in"),$(e).removeClass(u)}),500)}))}))}},navbarSticky:function(){var e=$("nav.navbar.navigator");if(e.hasClass("navbar-sticky")){var n=e.height();$(".wrap-sticky").height(n);var t=$(".wrap-sticky").offset().top;$(window).on("scroll",(function(){$(window).scrollTop()>t?e.addClass("sticked"):e.removeClass("sticked")}))}},updateSidebar:function(e){var n,o=log4javascript.getLogger("j1.core.navigator.updateSidebar");return n=JSON.stringify(e),t="user state data: "+n,o.debug(t),j1.resolveMacros(e),j1.updateMacros(e),!0}}}(jQuery)},function(e,n){
|
18
|
+
/*!
|
19
|
+
* J1 Cookiebar
|
20
|
+
* Copyright (C) 2021 Juergen Adams
|
21
|
+
* Licensed under MIT License.
|
22
|
+
*/
|
23
|
+
e.exports=(jQuery,{init:function(e){var n=e,t=log4javascript.getLogger("j1.cookiebar"),o=j1.getCookieNames().user_state,r={},a={renewOnVisit:!1,forceShow:!1,domain:String(window.location.hostname),referrer:String(document.referrer)},i=(e=$.extend(a,n),setInterval((function(e){"finished"==j1.getState()&&(user_state_detected=j1.existsCookie(o),user_state_detected?(t.info("User state cookie found"),r=j1.readCookie(o)):t.error("User state NOT cookie found"),"accepted"==r.cookies_accepted&&$("#quickLinksCookieButton").css("display","block"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted||$("#quickLinksCookieButton").css("display","none"),"pending"!=r.cookies_accepted&&"declined"!=r.cookies_accepted&&""!=r.cookies_accepted||$("#topFullCookieConsent").modal("show"),clearInterval(i))})))},eventHandler:function(e){var n,t=log4javascript.getLogger("cookiebar.eventHandler"),o=window.location.pathname,r=document.querySelectorAll("a.btn"),a=(j1.appDetected(),e.deleteOnDecline,e.whitelistedPages),i=(a=[],e.stopScrolling),s=j1.getCookieNames(),l=s.user_state,c={},u=j1.readCookie(l);return logText="register button click events",t.debug(logText),r.forEach((function(e,r){e.addEventListener("click",(function(e){return"policyButton"===this.id?(t.debug("user clicked policyButton"),$("#cookiePolicyInfo").toggle("fast",(function(){$("#modal-footer").toggleClass("modal-footer-hidden modal-footer-show")})),!1):"acceptButton"===this.id?(t.debug("user clicked acceptButton"),(u=j1.readCookie(l)).cookies_accepted="accepted",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","block"),!1):"declineButton"===this.id?(t.debug("user clicked declineButton"),u.cookies_accepted="declined",o=window.location.pathname,n=a.indexOf(o)>-1,t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),t.warn("delete all cookies"),j1.deleteCookie(l),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome(),!1):("revokeCookies"===this.id&&(t.debug("user clicked revokeCookiesButton"),o=window.location.pathname,n=a.indexOf(o)>-1,(u=j1.readCookie(l)).cookies_accepted="declined",j1.writeCookie({name:l,data:u,expires:365}),t.info("update sidebar"),c=j1.readCookie(s.user_state),user_session=j1.readCookie(s.user_session),current_user_data=j1.mergeData(user_session,c),j1.core.navigator.updateSidebar(current_user_data),$("#quickLinksCookieButton").css("display","none"),n||j1.goHome()),"remainCookies"===this.id?(t.debug("user clicked remainCookiesButton"),!1):void 0)}))})),$(document).on("shown.bs.modal","#cookieRevokeCentralDanger",(function(){t.debug("user opened modal: cookieRevokeCentralDanger")})),$(document).on("hide.bs.modal","#cookieRevokeCentralDanger",(function(){t.debug("user closed cookieRevokeCentralDanger")})),$(document).on("shown.bs.modal","#topFullCookieConsent",(function(){i&&$("body").addClass("stop-scrolling")})),$(document).on("hide.bs.modal","#topFullCookieConsent",(function(){t.debug("user closed modal: topFullCookieConsent"),$("body").removeClass("stop-scrolling")})),logText="events registered",t.debug(logText),!0}})},function(e,n,t){"use strict";e.exports=function(e){$.extend({foo:"foo_option",bar:"bar_option"},e);return{scroll:function(e,n){var t,o;o="run module scrollSmooth",(t=log4javascript.getLogger("j1.scrollSmooth.core")).info(o);var r=n.duration,a=n.offset;this.scrollTo(e,{duration:r,offset:a,callback:null}),o="scrollSmooth finished",t.info(o)},scrollTo:function(e,n){var t,o,r=window.pageYOffset,a={duration:n.duration,offset:n.offset||0,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},i=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),s="string"==typeof e?a.offset+(e?i&&i.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,l="function"==typeof a.duration?a.duration(s):a.duration;function c(e){o=e-t,window.scrollTo(0,a.easing(o,r,s,l)),o<l?requestAnimationFrame(c):(window.scrollTo(0,r+s),$(window).scrollTop($(window).scrollTop()+1),$(window).scrollTop($(window).scrollTop()-1),"function"==typeof a.callback&&a.callback())}requestAnimationFrame((function(e){t=e,c(e)}))}}}(jQuery)},function(e,n,t){"use strict";var o={update:null,begin:null,loopBegin:null,changeBegin:null,change:null,changeComplete:null,loopComplete:null,complete:null,loop:1,direction:"normal",autoplay:!0,timelineOffset:0},r={duration:1e3,delay:0,endDelay:0,easing:"easeOutElastic(1, .5)",round:0},a=["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","skew","skewX","skewY","perspective","matrix","matrix3d"],i={CSS:{},springs:{}};function s(e,n,t){return Math.min(Math.max(e,n),t)}function l(e,n){return e.indexOf(n)>-1}function c(e,n){return e.apply(null,n)}var u={arr:function(e){return Array.isArray(e)},obj:function(e){return l(Object.prototype.toString.call(e),"Object")},pth:function(e){return u.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},inp:function(e){return e instanceof HTMLInputElement},dom:function(e){return e.nodeType||u.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return u.hex(e)||u.rgb(e)||u.hsl(e)},key:function(e){return!o.hasOwnProperty(e)&&!r.hasOwnProperty(e)&&"targets"!==e&&"keyframes"!==e}};function d(e){var n=/\(([^)]+)\)/.exec(e);return n?n[1].split(",").map((function(e){return parseFloat(e)})):[]}function f(e,n){var t=d(e),o=s(u.und(t[0])?1:t[0],.1,100),r=s(u.und(t[1])?100:t[1],.1,100),a=s(u.und(t[2])?10:t[2],.1,100),l=s(u.und(t[3])?0:t[3],.1,100),c=Math.sqrt(r/o),f=a/(2*Math.sqrt(r*o)),p=f<1?c*Math.sqrt(1-f*f):0,m=f<1?(f*c-l)/p:-l+c;function v(e){var t=n?n*e/1e3:e;return t=f<1?Math.exp(-t*f*c)*(1*Math.cos(p*t)+m*Math.sin(p*t)):(1+m*t)*Math.exp(-t*c),0===e||1===e?e:1-t}return n?v:function(){var n=i.springs[e];if(n)return n;for(var t=0,o=0;;)if(1===v(t+=1/6)){if(++o>=16)break}else o=0;var r=t*(1/6)*1e3;return i.springs[e]=r,r}}function p(e){return void 0===e&&(e=10),function(n){return Math.ceil(s(n,1e-6,1)*e)*(1/e)}}var m,v,h=function(){function e(e,n){return 1-3*n+3*e}function n(e,n){return 3*n-6*e}function t(e){return 3*e}function o(o,r,a){return((e(r,a)*o+n(r,a))*o+t(r))*o}function r(o,r,a){return 3*e(r,a)*o*o+2*n(r,a)*o+t(r)}return function(e,n,t,a){if(0<=e&&e<=1&&0<=t&&t<=1){var i=new Float32Array(11);if(e!==n||t!==a)for(var s=0;s<11;++s)i[s]=o(.1*s,e,t);return function(r){return e===n&&t===a||0===r||1===r?r:o(l(r),n,a)}}function l(n){for(var a=0,s=1;10!==s&&i[s]<=n;++s)a+=.1;--s;var l=a+.1*((n-i[s])/(i[s+1]-i[s])),c=r(l,e,t);return c>=.001?function(e,n,t,a){for(var i=0;i<4;++i){var s=r(n,t,a);if(0===s)return n;n-=(o(n,t,a)-e)/s}return n}(n,l,e,t):0===c?l:function(e,n,t,r,a){var i,s,l=0;do{(i=o(s=n+(t-n)/2,r,a)-e)>0?t=s:n=s}while(Math.abs(i)>1e-7&&++l<10);return s}(n,a,a+.1,e,t)}}}(),g=(m={linear:function(){return function(e){return e}}},v={Sine:function(){return function(e){return 1-Math.cos(e*Math.PI/2)}},Circ:function(){return function(e){return 1-Math.sqrt(1-e*e)}},Back:function(){return function(e){return e*e*(3*e-2)}},Bounce:function(){return function(e){for(var n,t=4;e<((n=Math.pow(2,--t))-1)/11;);return 1/Math.pow(4,3-t)-7.5625*Math.pow((3*n-2)/22-e,2)}},Elastic:function(e,n){void 0===e&&(e=1),void 0===n&&(n=.5);var t=s(e,1,10),o=s(n,.1,2);return function(e){return 0===e||1===e?e:-t*Math.pow(2,10*(e-1))*Math.sin((e-1-o/(2*Math.PI)*Math.asin(1/t))*(2*Math.PI)/o)}}},["Quad","Cubic","Quart","Quint","Expo"].forEach((function(e,n){v[e]=function(){return function(e){return Math.pow(e,n+2)}}})),Object.keys(v).forEach((function(e){var n=v[e];m["easeIn"+e]=n,m["easeOut"+e]=function(e,t){return function(o){return 1-n(e,t)(1-o)}},m["easeInOut"+e]=function(e,t){return function(o){return o<.5?n(e,t)(2*o)/2:1-n(e,t)(-2*o+2)/2}}})),m);function b(e,n){if(u.fnc(e))return e;var t=e.split("(")[0],o=g[t],r=d(e);switch(t){case"spring":return f(e,n);case"cubicBezier":return c(h,r);case"steps":return c(p,r);default:return c(o,r)}}function w(e){try{return document.querySelectorAll(e)}catch(e){return}}function C(e,n){for(var t=e.length,o=arguments.length>=2?arguments[1]:void 0,r=[],a=0;a<t;a++)if(a in e){var i=e[a];n.call(o,i,a,e)&&r.push(i)}return r}function y(e){return e.reduce((function(e,n){return e.concat(u.arr(n)?y(n):n)}),[])}function k(e){return u.arr(e)?e:(u.str(e)&&(e=w(e)||e),e instanceof NodeList||e instanceof HTMLCollection?[].slice.call(e):[e])}function $(e,n){return e.some((function(e){return e===n}))}function x(e){var n={};for(var t in e)n[t]=e[t];return n}function S(e,n){var t=x(e);for(var o in e)t[o]=n.hasOwnProperty(o)?n[o]:e[o];return t}function _(e,n){var t=x(e);for(var o in n)t[o]=u.und(e[o])?n[o]:e[o];return t}function j(e){return u.rgb(e)?(t=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(n=e))?"rgba("+t[1]+",1)":n:u.hex(e)?function(e){var n=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,n,t,o){return n+n+t+t+o+o})),t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n);return"rgba("+parseInt(t[1],16)+","+parseInt(t[2],16)+","+parseInt(t[3],16)+",1)"}(e):u.hsl(e)?function(e){var n,t,o,r=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e),a=parseInt(r[1],10)/360,i=parseInt(r[2],10)/100,s=parseInt(r[3],10)/100,l=r[4]||1;function c(e,n,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?e+6*(n-e)*t:t<.5?n:t<2/3?e+(n-e)*(2/3-t)*6:e}if(0==i)n=t=o=s;else{var u=s<.5?s*(1+i):s+i-s*i,d=2*s-u;n=c(d,u,a+1/3),t=c(d,u,a),o=c(d,u,a-1/3)}return"rgba("+255*n+","+255*t+","+255*o+","+l+")"}(e):void 0;var n,t}function T(e){var n=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e);if(n)return n[1]}function L(e,n){return u.fnc(e)?e(n.target,n.id,n.total):e}function O(e,n){return e.getAttribute(n)}function q(e,n,t){if($([t,"deg","rad","turn"],T(n)))return n;var o=i.CSS[n+t];if(!u.und(o))return o;var r=document.createElement(e.tagName),a=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;a.appendChild(r),r.style.position="absolute",r.style.width=100+t;var s=100/r.offsetWidth;a.removeChild(r);var l=s*parseFloat(n);return i.CSS[n+t]=l,l}function M(e,n,t){if(n in e.style){var o=n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=e.style[n]||getComputedStyle(e).getPropertyValue(o)||"0";return t?q(e,r,t):r}}function N(e,n){return u.dom(e)&&!u.inp(e)&&(O(e,n)||u.svg(e)&&e[n])?"attribute":u.dom(e)&&$(a,n)?"transform":u.dom(e)&&"transform"!==n&&M(e,n)?"css":null!=e[n]?"object":void 0}function E(e){if(u.dom(e)){for(var n,t=e.style.transform||"",o=/(\w+)\(([^)]*)\)/g,r=new Map;n=o.exec(t);)r.set(n[1],n[2]);return r}}function I(e,n,t,o){var r=l(n,"scale")?1:0+function(e){return l(e,"translate")||"perspective"===e?"px":l(e,"rotate")||l(e,"skew")?"deg":void 0}(n),a=E(e).get(n)||r;return t&&(t.transforms.list.set(n,a),t.transforms.last=n),o?q(e,a,o):a}function D(e,n,t,o){switch(N(e,n)){case"transform":return I(e,n,o,t);case"css":return M(e,n,t);case"attribute":return O(e,n);default:return e[n]||0}}function A(e,n){var t=/^(\*=|\+=|-=)/.exec(e);if(!t)return e;var o=T(e)||0,r=parseFloat(n),a=parseFloat(e.replace(t[0],""));switch(t[0][0]){case"+":return r+a+o;case"-":return r-a+o;case"*":return r*a+o}}function B(e,n){if(u.col(e))return j(e);if(/\s/g.test(e))return e;var t=T(e),o=t?e.substr(0,e.length-t.length):e;return n?o+n:o}function P(e,n){return Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2))}function F(e){for(var n,t=e.points,o=0,r=0;r<t.numberOfItems;r++){var a=t.getItem(r);r>0&&(o+=P(n,a)),n=a}return o}function H(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return function(e){return 2*Math.PI*O(e,"r")}(e);case"rect":return function(e){return 2*O(e,"width")+2*O(e,"height")}(e);case"line":return function(e){return P({x:O(e,"x1"),y:O(e,"y1")},{x:O(e,"x2"),y:O(e,"y2")})}(e);case"polyline":return F(e);case"polygon":return function(e){var n=e.points;return F(e)+P(n.getItem(n.numberOfItems-1),n.getItem(0))}(e)}}function z(e,n){var t=n||{},o=t.el||function(e){for(var n=e.parentNode;u.svg(n)&&u.svg(n.parentNode);)n=n.parentNode;return n}(e),r=o.getBoundingClientRect(),a=O(o,"viewBox"),i=r.width,s=r.height,l=t.viewBox||(a?a.split(" "):[0,0,i,s]);return{el:o,viewBox:l,x:l[0]/1,y:l[1]/1,w:i/l[2],h:s/l[3]}}function R(e,n){function t(t){void 0===t&&(t=0);var o=n+t>=1?n+t:0;return e.el.getPointAtLength(o)}var o=z(e.el,e.svg),r=t(),a=t(-1),i=t(1);switch(e.property){case"x":return(r.x-o.x)*o.w;case"y":return(r.y-o.y)*o.h;case"angle":return 180*Math.atan2(i.y-a.y,i.x-a.x)/Math.PI}}function Q(e,n){var t=/[+-]?\d*\.?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?/g,o=B(u.pth(e)?e.totalLength:e,n)+"";return{original:o,numbers:o.match(t)?o.match(t).map(Number):[0],strings:u.str(e)||n?o.split(t):[]}}function Y(e){return C(e?y(u.arr(e)?e.map(k):k(e)):[],(function(e,n,t){return t.indexOf(e)===n}))}function U(e){var n=Y(e);return n.map((function(e,t){return{target:e,id:t,total:n.length,transforms:{list:E(e)}}}))}function V(e,n){var t=x(n);if(/^spring/.test(t.easing)&&(t.duration=f(t.easing)),u.arr(e)){var o=e.length;2===o&&!u.obj(e[0])?e={value:e}:u.fnc(n.duration)||(t.duration=n.duration/o)}var r=u.arr(e)?e:[e];return r.map((function(e,t){var o=u.obj(e)&&!u.pth(e)?e:{value:e};return u.und(o.delay)&&(o.delay=t?0:n.delay),u.und(o.endDelay)&&(o.endDelay=t===r.length-1?n.endDelay:0),o})).map((function(e){return _(e,t)}))}function X(e,n){var t=[],o=n.keyframes;for(var r in o&&(n=_(function(e){for(var n=C(y(e.map((function(e){return Object.keys(e)}))),(function(e){return u.key(e)})).reduce((function(e,n){return e.indexOf(n)<0&&e.push(n),e}),[]),t={},o=function(o){var r=n[o];t[r]=e.map((function(e){var n={};for(var t in e)u.key(t)?t==r&&(n.value=e[t]):n[t]=e[t];return n}))},r=0;r<n.length;r++)o(r);return t}(o),n)),n)u.key(r)&&t.push({name:r,tweens:V(n[r],e)});return t}function Z(e,n){var t;return e.tweens.map((function(o){var r=function(e,n){var t={};for(var o in e){var r=L(e[o],n);u.arr(r)&&1===(r=r.map((function(e){return L(e,n)}))).length&&(r=r[0]),t[o]=r}return t.duration=parseFloat(t.duration),t.delay=parseFloat(t.delay),t}(o,n),a=r.value,i=u.arr(a)?a[1]:a,s=T(i),l=D(n.target,e.name,s,n),c=t?t.to.original:l,d=u.arr(a)?a[0]:c,f=T(d)||T(l),p=s||f;return u.und(i)&&(i=c),r.from=Q(d,p),r.to=Q(A(i,d),p),r.start=t?t.end:0,r.end=r.start+r.delay+r.duration+r.endDelay,r.easing=b(r.easing,r.duration),r.isPath=u.pth(a),r.isColor=u.col(r.from.original),r.isColor&&(r.round=1),t=r,r}))}var W={css:function(e,n,t){return e.style[n]=t},attribute:function(e,n,t){return e.setAttribute(n,t)},object:function(e,n,t){return e[n]=t},transform:function(e,n,t,o,r){if(o.list.set(n,t),n===o.last||r){var a="";o.list.forEach((function(e,n){a+=n+"("+e+") "})),e.style.transform=a}}};function J(e,n){U(e).forEach((function(e){for(var t in n){var o=L(n[t],e),r=e.target,a=T(o),i=D(r,t,a,e),s=A(B(o,a||T(i)),i),l=N(r,t);W[l](r,t,s,e.transforms,!0)}}))}function G(e,n){return C(y(e.map((function(e){return n.map((function(n){return function(e,n){var t=N(e.target,n.name);if(t){var o=Z(n,e),r=o[o.length-1];return{type:t,property:n.name,animatable:e,tweens:o,duration:r.end,delay:o[0].delay,endDelay:r.endDelay}}}(e,n)}))}))),(function(e){return!u.und(e)}))}function K(e,n){var t=e.length,o=function(e){return e.timelineOffset?e.timelineOffset:0},r={};return r.duration=t?Math.max.apply(Math,e.map((function(e){return o(e)+e.duration}))):n.duration,r.delay=t?Math.min.apply(Math,e.map((function(e){return o(e)+e.delay}))):n.delay,r.endDelay=t?r.duration-Math.max.apply(Math,e.map((function(e){return o(e)+e.duration-e.endDelay}))):n.endDelay,r}var ee=0;var ne,te=[],oe=[],re=function(){function e(){ne=requestAnimationFrame(n)}function n(n){var t=te.length;if(t){for(var o=0;o<t;){var r=te[o];if(r.paused){var a=te.indexOf(r);a>-1&&(te.splice(a,1),t=te.length)}else r.tick(n);o++}e()}else ne=cancelAnimationFrame(ne)}return e}();function ae(e){void 0===e&&(e={});var n,t=0,a=0,i=0,l=0,c=null;function u(e){var n=window.Promise&&new Promise((function(e){return c=e}));return e.finished=n,n}var d=function(e){var n=S(o,e),t=S(r,e),a=X(t,e),i=U(e.targets),s=G(i,a),l=K(s,t),c=ee;return ee++,_(n,{id:c,children:[],animatables:i,animations:s,duration:l.duration,delay:l.delay,endDelay:l.endDelay})}(e);u(d);function f(){var e=d.direction;"alternate"!==e&&(d.direction="normal"!==e?"normal":"reverse"),d.reversed=!d.reversed,n.forEach((function(e){return e.reversed=d.reversed}))}function p(e){return d.reversed?d.duration-e:e}function m(){t=0,a=p(d.currentTime)*(1/ae.speed)}function v(e,n){n&&n.seek(e-n.timelineOffset)}function h(e){for(var n=0,t=d.animations,o=t.length;n<o;){var r=t[n],a=r.animatable,i=r.tweens,l=i.length-1,c=i[l];l&&(c=C(i,(function(n){return e<n.end}))[0]||c);for(var u=s(e-c.start-c.delay,0,c.duration)/c.duration,f=isNaN(u)?1:c.easing(u),p=c.to.strings,m=c.round,v=[],h=c.to.numbers.length,g=void 0,b=0;b<h;b++){var w=void 0,y=c.to.numbers[b],k=c.from.numbers[b]||0;w=c.isPath?R(c.value,f*y):k+f*(y-k),m&&(c.isColor&&b>2||(w=Math.round(w*m)/m)),v.push(w)}var $=p.length;if($){g=p[0];for(var x=0;x<$;x++){p[x];var S=p[x+1],_=v[x];isNaN(_)||(g+=S?_+S:_+" ")}}else g=v[0];W[r.type](a.target,r.property,g,a.transforms),r.currentValue=g,n++}}function g(e){d[e]&&!d.passThrough&&d[e](d)}function b(e){var o=d.duration,r=d.delay,m=o-d.endDelay,b=p(e);d.progress=s(b/o*100,0,100),d.reversePlayback=b<d.currentTime,n&&function(e){if(d.reversePlayback)for(var t=l;t--;)v(e,n[t]);else for(var o=0;o<l;o++)v(e,n[o])}(b),!d.began&&d.currentTime>0&&(d.began=!0,g("begin")),!d.loopBegan&&d.currentTime>0&&(d.loopBegan=!0,g("loopBegin")),b<=r&&0!==d.currentTime&&h(0),(b>=m&&d.currentTime!==o||!o)&&h(o),b>r&&b<m?(d.changeBegan||(d.changeBegan=!0,d.changeCompleted=!1,g("changeBegin")),g("change"),h(b)):d.changeBegan&&(d.changeCompleted=!0,d.changeBegan=!1,g("changeComplete")),d.currentTime=s(b,0,o),d.began&&g("update"),e>=o&&(a=0,d.remaining&&!0!==d.remaining&&d.remaining--,d.remaining?(t=i,g("loopComplete"),d.loopBegan=!1,"alternate"===d.direction&&f()):(d.paused=!0,d.completed||(d.completed=!0,g("loopComplete"),g("complete"),!d.passThrough&&"Promise"in window&&(c(),u(d)))))}return d.reset=function(){var e=d.direction;d.passThrough=!1,d.currentTime=0,d.progress=0,d.paused=!0,d.began=!1,d.loopBegan=!1,d.changeBegan=!1,d.completed=!1,d.changeCompleted=!1,d.reversePlayback=!1,d.reversed="reverse"===e,d.remaining=d.loop,n=d.children;for(var t=l=n.length;t--;)d.children[t].reset();(d.reversed&&!0!==d.loop||"alternate"===e&&1===d.loop)&&d.remaining++,h(d.reversed?d.duration:0)},d.set=function(e,n){return J(e,n),d},d.tick=function(e){i=e,t||(t=i),b((i+(a-t))*ae.speed)},d.seek=function(e){b(p(e))},d.pause=function(){d.paused=!0,m()},d.play=function(){d.paused&&(d.completed&&d.reset(),d.paused=!1,te.push(d),m(),ne||re())},d.reverse=function(){f(),d.completed=!d.reversed,m()},d.restart=function(){d.reset(),d.play()},d.reset(),d.autoplay&&d.play(),d}function ie(e,n){for(var t=n.length;t--;)$(e,n[t].animatable.target)&&n.splice(t,1)}"undefined"!=typeof document&&document.addEventListener("visibilitychange",(function(){document.hidden?(te.forEach((function(e){return e.pause()})),oe=te.slice(0),ae.running=te=[]):oe.forEach((function(e){return e.play()}))})),ae.version="3.2.0",ae.speed=1,ae.running=te,ae.remove=function(e){for(var n=Y(e),t=te.length;t--;){var o=te[t],r=o.animations,a=o.children;ie(n,r);for(var i=a.length;i--;){var s=a[i],l=s.animations;ie(n,l),l.length||s.children.length||a.splice(i,1)}r.length||a.length||o.pause()}},ae.get=D,ae.set=J,ae.convertPx=q,ae.path=function(e,n){var t=u.str(e)?w(e)[0]:e,o=n||100;return function(e){return{property:e,el:t,svg:z(t),totalLength:H(t)*(o/100)}}},ae.setDashoffset=function(e){var n=H(e);return e.setAttribute("stroke-dasharray",n),n},ae.stagger=function(e,n){void 0===n&&(n={});var t=n.direction||"normal",o=n.easing?b(n.easing):null,r=n.grid,a=n.axis,i=n.from||0,s="first"===i,l="center"===i,c="last"===i,d=u.arr(e),f=d?parseFloat(e[0]):parseFloat(e),p=d?parseFloat(e[1]):0,m=T(d?e[1]:e)||0,v=n.start||0+(d?f:0),h=[],g=0;return function(e,n,u){if(s&&(i=0),l&&(i=(u-1)/2),c&&(i=u-1),!h.length){for(var b=0;b<u;b++){if(r){var w=l?(r[0]-1)/2:i%r[0],C=l?(r[1]-1)/2:Math.floor(i/r[0]),y=w-b%r[0],k=C-Math.floor(b/r[0]),$=Math.sqrt(y*y+k*k);"x"===a&&($=-y),"y"===a&&($=-k),h.push($)}else h.push(Math.abs(i-b));g=Math.max.apply(Math,h)}o&&(h=h.map((function(e){return o(e/g)*g}))),"reverse"===t&&(h=h.map((function(e){return a?e<0?-1*e:-e:Math.abs(g-e)})))}return v+(d?(p-f)/g:f)*(Math.round(100*h[n])/100)+m}},ae.timeline=function(e){void 0===e&&(e={});var n=ae(e);return n.duration=0,n.add=function(t,o){var a=te.indexOf(n),i=n.children;function s(e){e.passThrough=!0}a>-1&&te.splice(a,1);for(var l=0;l<i.length;l++)s(i[l]);var c=_(t,S(r,e));c.targets=c.targets||e.targets;var d=n.duration;c.autoplay=!1,c.direction=n.direction,c.timelineOffset=u.und(o)?d:A(o,d),s(n),n.seek(c.timelineOffset);var f=ae(c);s(f),i.push(f);var p=K(i,e);return n.delay=p.delay,n.endDelay=p.endDelay,n.duration=p.duration,n.seek(0),n.reset(),n.autoplay&&n.play(),n},n},ae.easing=b,ae.penner=g,ae.random=function(e,n){return Math.floor(Math.random()*(n-e+1))+e},e.exports=ae},function(e,n,t){(function(o){var r,a,i,s;s=void 0!==o?o:this.window||this.global,a=[],r=function(e){"use strict";var n,o,r,a=t(9),i={},s={},l=t(10),c=t(11),u=t(12),d=!!(e&&e.document&&e.document.querySelector&&e.addEventListener);if("undefined"!=typeof window||d){var f=Object.prototype.hasOwnProperty;return s.destroy=function(){if(!i.skipRendering)try{document.querySelector(i.tocSelector).innerHTML=""}catch(e){console.warn("Element not found: "+i.tocSelector)}i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).removeEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).removeEventListener("resize",this._scrollListener,!1),n&&document.querySelector(i.scrollContainer).removeEventListener("click",this._clickListener,!1)):(document.removeEventListener("scroll",this._scrollListener,!1),document.removeEventListener("resize",this._scrollListener,!1),n&&document.removeEventListener("click",this._clickListener,!1))},s.init=function(e){if(d&&(i=function(){for(var e={},n=0;n<arguments.length;n++){var t=arguments[n];for(var o in t)f.call(t,o)&&(e[o]=t[o])}return e}(a,e||{}),this.options=i,this.state={},i.scrollSmooth&&(i.duration=i.scrollSmoothDuration,i.offset=i.scrollSmoothOffset,s.scrollSmooth=t(13).initSmoothScrolling(i)),n=l(i),o=c(i),this._buildHtml=n,this._parseContent=o,s.destroy(),null!==(r=o.selectHeadings(i.contentSelector,i.headingSelector)))){var m=o.nestHeadingsArray(r).nest;i.skipRendering||n.render(i.tocSelector,m),this._scrollListener=p((function(e){n.updateToc(r),!i.disableTocScrollSync&&u(i);var t=e&&e.target&&e.target.scrollingElement&&0===e.target.scrollingElement.scrollTop;(e&&(0===e.eventPhase||null===e.currentTarget)||t)&&(n.updateToc(r),i.scrollEndCallback&&i.scrollEndCallback(e))}),i.throttleTimeout),this._scrollListener(),i.scrollContainer&&document.querySelector(i.scrollContainer)?(document.querySelector(i.scrollContainer).addEventListener("scroll",this._scrollListener,!1),document.querySelector(i.scrollContainer).addEventListener("resize",this._scrollListener,!1)):(document.addEventListener("scroll",this._scrollListener,!1),document.addEventListener("resize",this._scrollListener,!1));var v=null;return this._clickListener=p((function(e){i.scrollSmooth&&n.disableTocAnimation(e),n.updateToc(r),v&&clearTimeout(v),v=setTimeout((function(){n.enableTocAnimation()}),i.scrollSmoothDuration)}),i.throttleTimeout),i.scrollContainer&&document.querySelector(i.scrollContainer)?document.querySelector(i.scrollContainer).addEventListener("click",this._clickListener,!1):document.addEventListener("click",this._clickListener,!1),this}},s.refresh=function(e){s.destroy(),s.init(e||this.options)},e.tocbot=s,s}function p(e,n,t){var o,r;return n||(n=250),function(){var a=t||this,i=+new Date,s=arguments;o&&i<o+n?(clearTimeout(r),r=setTimeout((function(){o=i,e.apply(a,s)}),n)):(o=i,e.apply(a,s))}}}(s),void 0===(i="function"==typeof r?r.apply(n,a):r)||(e.exports=i)}).call(this,t(8))},function(e,n){var t;t=function(){return this}();try{t=t||new Function("return this")()}catch(e){"object"==typeof window&&(t=window)}e.exports=t},function(e,n){e.exports={tocSelector:".js-toc",contentSelector:".js-toc-content",headingSelector:"h1, h2, h3",ignoreSelector:".js-toc-ignore",hasInnerContainers:!1,linkClass:"toc-link",extraLinkClasses:"",activeLinkClass:"is-active-link",listClass:"toc-list",extraListClasses:"",isCollapsedClass:"is-collapsed",collapsibleClass:"is-collapsible",listItemClass:"toc-list-item",activeListItemClass:"is-active-li",collapseDepth:0,scrollSmooth:!0,scrollSmoothDuration:420,scrollSmoothOffset:0,scrollEndCallback:function(e){},headingsOffset:1,throttleTimeout:50,positionFixedSelector:null,positionFixedClass:"is-position-fixed",fixedSidebarOffset:"auto",includeHtml:!1,onClick:function(e){},orderedList:!0,scrollContainer:null,skipRendering:!1,headingLabelCallback:!1,ignoreHiddenElements:!1,headingObjectCallback:null,basePath:"",disableTocScrollSync:!1}},function(e,n){e.exports=function(e){var n=[].forEach,t=[].some,o=document.body,r=!0;function a(t,o){var r=o.appendChild(function(t){var o=document.createElement("li"),r=document.createElement("a");e.listItemClass&&o.setAttribute("class",e.listItemClass);e.onClick&&(r.onclick=e.onClick);e.includeHtml&&t.childNodes.length?n.call(t.childNodes,(function(e){r.appendChild(e.cloneNode(!0))})):r.textContent=t.textContent;return r.setAttribute("href",e.basePath+"#"+t.id),r.setAttribute("class",e.linkClass+" node-name--"+t.nodeName+" "+e.extraLinkClasses),o.appendChild(r),o}(t));if(t.children.length){var s=i(t.isCollapsed);t.children.forEach((function(e){a(e,s)})),r.appendChild(s)}}function i(n){var t=e.orderedList?"ol":"ul",o=document.createElement(t),r=e.listClass+" "+e.extraListClasses;return n&&(r+=" "+e.collapsibleClass,r+=" "+e.isCollapsedClass),o.setAttribute("class",r),o}return{enableTocAnimation:function(){r=!0},disableTocAnimation:function(n){var t=n.target||n.srcElement;"string"==typeof t.className&&-1!==t.className.indexOf(e.linkClass)&&(r=!1)},render:function(e,n){var t=i(!1);n.forEach((function(e){a(e,t)}));var o=document.querySelector(e);if(null!==o)return o.firstChild&&o.removeChild(o.firstChild),0===n.length?o:o.appendChild(t)},updateToc:function(a){var i;i=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop,e.positionFixedSelector&&function(){var n;n=e.scrollContainer&&document.querySelector(e.scrollContainer)?document.querySelector(e.scrollContainer).scrollTop:document.documentElement.scrollTop||o.scrollTop;var t=document.querySelector(e.positionFixedSelector);"auto"===e.fixedSidebarOffset&&(e.fixedSidebarOffset=document.querySelector(e.tocSelector).offsetTop),n>e.fixedSidebarOffset?-1===t.className.indexOf(e.positionFixedClass)&&(t.className+=" "+e.positionFixedClass):t.className=t.className.split(" "+e.positionFixedClass).join("")}();var s,l=a;if(r&&null!==document.querySelector(e.tocSelector)&&l.length>0){t.call(l,(function(n,t){return function n(t){var o=0;return t!==document.querySelector(e.contentSelector&&null!=t)&&(o=t.offsetTop,e.hasInnerContainers&&(o+=n(t.offsetParent))),o}(n)>i+e.headingsOffset+10?(s=l[t],!0):t===l.length-1?(s=l[l.length-1],!0):void 0}));var c=document.querySelector(e.tocSelector).querySelectorAll("."+e.linkClass);n.call(c,(function(n){n.className=n.className.split(" "+e.activeLinkClass).join("")}));var u=document.querySelector(e.tocSelector).querySelectorAll("."+e.listItemClass);n.call(u,(function(n){n.className=n.className.split(" "+e.activeListItemClass).join("")}));var d=document.querySelector(e.tocSelector).querySelector("."+e.linkClass+".node-name--"+s.nodeName+'[href="'+e.basePath+"#"+s.id.replace(/([ #;&,.+*~':"!^$[\]()=>|/@])/g,"\\$1")+'"]');-1===d.className.indexOf(e.activeLinkClass)&&(d.className+=" "+e.activeLinkClass);var f=d.parentNode;f&&-1===f.className.indexOf(e.activeListItemClass)&&(f.className+=" "+e.activeListItemClass);var p=document.querySelector(e.tocSelector).querySelectorAll("."+e.listClass+"."+e.collapsibleClass);n.call(p,(function(n){-1===n.className.indexOf(e.isCollapsedClass)&&(n.className+=" "+e.isCollapsedClass)})),d.nextSibling&&-1!==d.nextSibling.className.indexOf(e.isCollapsedClass)&&(d.nextSibling.className=d.nextSibling.className.split(" "+e.isCollapsedClass).join("")),function n(t){if(-1!==t.className.indexOf(e.collapsibleClass)&&-1!==t.className.indexOf(e.isCollapsedClass))return t.className=t.className.split(" "+e.isCollapsedClass).join(""),n(t.parentNode.parentNode);return t}(d.parentNode.parentNode)}}}}},function(e,n){e.exports=function(e){var n=[].reduce;function t(e){return e[e.length-1]}function o(e){return+e.nodeName.split("H").join("")}function r(n){if(!(n instanceof window.HTMLElement))return n;if(e.ignoreHiddenElements&&(!n.offsetHeight||!n.offsetParent))return null;var t={id:n.id,children:[],nodeName:n.nodeName,headingLevel:o(n),textContent:e.headingLabelCallback?String(e.headingLabelCallback(n.textContent)):n.textContent.trim()};return e.includeHtml&&(t.childNodes=n.childNodes),e.headingObjectCallback?e.headingObjectCallback(t,n):t}return{nestHeadingsArray:function(o){return n.call(o,(function(n,o){var a=r(o);return a&&function(n,o){for(var a=r(n),i=a.headingLevel,s=o,l=t(s),c=i-(l?l.headingLevel:0);c>0;)(l=t(s))&&void 0!==l.children&&(s=l.children),c--;i>=e.collapseDepth&&(a.isCollapsed=!0),s.push(a)}(a,n.nest),n}),{nest:[]})},selectHeadings:function(n,t){var o=t;e.ignoreSelector&&(o=t.split(",").map((function(n){return n.trim()+":not("+e.ignoreSelector+")"})));try{return document.querySelector(n).querySelectorAll(o)}catch(e){return console.warn("Element not found: "+n),null}}}}},function(e,n){e.exports=function(e){var n=document.querySelector(e.tocSelector);if(n&&n.scrollHeight>n.clientHeight){var t=n.querySelector("."+e.activeListItemClass);t&&(n.scrollTop=t.offsetTop)}}},function(e,n){n.initSmoothScrolling=function(e){document.documentElement.style;var n=e.duration,t=e.offset,o=location.hash?r(location.href):location.href;function r(e){return e.slice(0,e.lastIndexOf("#"))}document.body.addEventListener("click",(function(a){var i;"a"!==(i=a.target).tagName.toLowerCase()||!(i.hash.length>0||"#"===i.href.charAt(i.href.length-1))||r(i.href)!==o&&r(i.href)+"#"!==o||a.target.className.indexOf("no-smooth-scroll")>-1||"#"===a.target.href.charAt(a.target.href.length-2)&&"!"===a.target.href.charAt(a.target.href.length-1)||-1===a.target.className.indexOf(e.linkClass)||function(e,n){var t,o,r=window.pageYOffset,a={duration:n.duration,offset:n.offset||0,callback:n.callback,easing:n.easing||function(e,n,t,o){return(e/=o/2)<1?t/2*e*e+n:(e--,-t/2*(e*(e-2)-1)+n)}},i=document.querySelector('[id="'+decodeURI(e).split("#").join("")+'"]'),s="string"==typeof e?a.offset+(e?i&&i.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):e,l="function"==typeof a.duration?a.duration(s):a.duration;function c(e){o=e-t,window.scrollTo(0,a.easing(o,r,s,l)),o<l?requestAnimationFrame(c):(window.scrollTo(0,r+s),"function"==typeof a.callback&&a.callback())}requestAnimationFrame((function(e){t=e,c(e)}))}(a.target.hash,{duration:n,offset:t,callback:function(){var e,n;e=a.target.hash,(n=document.getElementById(e.substring(1)))&&(/^(?:a|select|input|button|textarea)$/i.test(n.tagName)||(n.tabIndex=-1),n.focus())}})}),!1)}},function(e,n){$((function(){$(".result").each((function(e,n){var t=$(n),o=t.prev().find(".title"),r=$('<div class="view-result j1-viewer"><span class="btn-viewer j1-tooltip" data-toggle="tooltip" data-placement="left" title="toggle results" data-original-title="toggle results">View</span></div>');o.append(r),r.on("click",(function(e){e.preventDefault(),function(e){window.clearTimeout(void 0),e.prev().toggleClass("stacked"),e.toggle()}(t)}))}))}))}]);
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,1113 @@
|
|
1
|
+
/*
|
2
|
+
* This combined file was created by the DataTables downloader builder:
|
3
|
+
* https://datatables.net/download
|
4
|
+
*
|
5
|
+
* To rebuild or modify this file with the latest versions of the included
|
6
|
+
* software please visit:
|
7
|
+
* https://datatables.net/download/#dt/pdfmake-0.1.32/dt-1.10.16/af-2.2.2/b-1.4.2/b-colvis-1.4.2/b-html5-1.4.2/b-print-1.4.2/cr-1.4.1/fc-3.2.3/fh-3.1.3/kt-2.3.2/r-2.2.0/rg-1.0.2/rr-1.2.3/sc-1.4.3
|
8
|
+
*
|
9
|
+
* Included libraries:
|
10
|
+
* pdfmake 0.1.32, DataTables 1.10.16, AutoFill 2.2.2, Buttons 1.4.2, Column visibility 1.4.2, HTML5 export 1.4.2, Print view 1.4.2, ColReorder 1.4.1, FixedColumns 3.2.3, FixedHeader 3.1.3, KeyTable 2.3.2, Responsive 2.2.0, RowGroup 1.0.2, RowReorder 1.2.3, Scroller 1.4.3
|
11
|
+
*/
|
12
|
+
|
13
|
+
/*
|
14
|
+
* Table styles
|
15
|
+
*/
|
16
|
+
table.dataTable {
|
17
|
+
width: 100%;
|
18
|
+
margin: 0 auto;
|
19
|
+
clear: both;
|
20
|
+
border-collapse: separate;
|
21
|
+
border-spacing: 0;
|
22
|
+
/*
|
23
|
+
* Header and footer styles
|
24
|
+
*/
|
25
|
+
/*
|
26
|
+
* Body styles
|
27
|
+
*/
|
28
|
+
}
|
29
|
+
table.dataTable thead th,
|
30
|
+
table.dataTable tfoot th {
|
31
|
+
font-weight: bold;
|
32
|
+
}
|
33
|
+
table.dataTable thead th,
|
34
|
+
table.dataTable thead td {
|
35
|
+
padding: 10px 18px;
|
36
|
+
border-bottom: 1px solid #111;
|
37
|
+
}
|
38
|
+
table.dataTable thead th:active,
|
39
|
+
table.dataTable thead td:active {
|
40
|
+
outline: none;
|
41
|
+
}
|
42
|
+
table.dataTable tfoot th,
|
43
|
+
table.dataTable tfoot td {
|
44
|
+
padding: 10px 18px 6px 18px;
|
45
|
+
border-top: 1px solid #111;
|
46
|
+
}
|
47
|
+
table.dataTable thead .sorting,
|
48
|
+
table.dataTable thead .sorting_asc,
|
49
|
+
table.dataTable thead .sorting_desc,
|
50
|
+
table.dataTable thead .sorting_asc_disabled,
|
51
|
+
table.dataTable thead .sorting_desc_disabled {
|
52
|
+
cursor: pointer;
|
53
|
+
*cursor: hand;
|
54
|
+
background-repeat: no-repeat;
|
55
|
+
background-position: center right;
|
56
|
+
}
|
57
|
+
table.dataTable thead .sorting {
|
58
|
+
background-image: url("DataTables-1.10.16/images/sort_both.png");
|
59
|
+
}
|
60
|
+
table.dataTable thead .sorting_asc {
|
61
|
+
background-image: url("DataTables-1.10.16/images/sort_asc.png");
|
62
|
+
}
|
63
|
+
table.dataTable thead .sorting_desc {
|
64
|
+
background-image: url("DataTables-1.10.16/images/sort_desc.png");
|
65
|
+
}
|
66
|
+
table.dataTable thead .sorting_asc_disabled {
|
67
|
+
background-image: url("DataTables-1.10.16/images/sort_asc_disabled.png");
|
68
|
+
}
|
69
|
+
table.dataTable thead .sorting_desc_disabled {
|
70
|
+
background-image: url("DataTables-1.10.16/images/sort_desc_disabled.png");
|
71
|
+
}
|
72
|
+
table.dataTable tbody tr {
|
73
|
+
background-color: #ffffff;
|
74
|
+
}
|
75
|
+
table.dataTable tbody tr.selected {
|
76
|
+
background-color: #B0BED9;
|
77
|
+
}
|
78
|
+
table.dataTable tbody th,
|
79
|
+
table.dataTable tbody td {
|
80
|
+
padding: 8px 10px;
|
81
|
+
}
|
82
|
+
table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
|
83
|
+
border-top: 1px solid #ddd;
|
84
|
+
}
|
85
|
+
table.dataTable.row-border tbody tr:first-child th,
|
86
|
+
table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th,
|
87
|
+
table.dataTable.display tbody tr:first-child td {
|
88
|
+
border-top: none;
|
89
|
+
}
|
90
|
+
table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td {
|
91
|
+
border-top: 1px solid #ddd;
|
92
|
+
border-right: 1px solid #ddd;
|
93
|
+
}
|
94
|
+
table.dataTable.cell-border tbody tr th:first-child,
|
95
|
+
table.dataTable.cell-border tbody tr td:first-child {
|
96
|
+
border-left: 1px solid #ddd;
|
97
|
+
}
|
98
|
+
table.dataTable.cell-border tbody tr:first-child th,
|
99
|
+
table.dataTable.cell-border tbody tr:first-child td {
|
100
|
+
border-top: none;
|
101
|
+
}
|
102
|
+
table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
|
103
|
+
background-color: #f9f9f9;
|
104
|
+
}
|
105
|
+
table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected {
|
106
|
+
background-color: #acbad4;
|
107
|
+
}
|
108
|
+
table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
|
109
|
+
background-color: #f6f6f6;
|
110
|
+
}
|
111
|
+
table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected {
|
112
|
+
background-color: #aab7d1;
|
113
|
+
}
|
114
|
+
table.dataTable.order-column tbody tr > .sorting_1,
|
115
|
+
table.dataTable.order-column tbody tr > .sorting_2,
|
116
|
+
table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1,
|
117
|
+
table.dataTable.display tbody tr > .sorting_2,
|
118
|
+
table.dataTable.display tbody tr > .sorting_3 {
|
119
|
+
background-color: #fafafa;
|
120
|
+
}
|
121
|
+
table.dataTable.order-column tbody tr.selected > .sorting_1,
|
122
|
+
table.dataTable.order-column tbody tr.selected > .sorting_2,
|
123
|
+
table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1,
|
124
|
+
table.dataTable.display tbody tr.selected > .sorting_2,
|
125
|
+
table.dataTable.display tbody tr.selected > .sorting_3 {
|
126
|
+
background-color: #acbad5;
|
127
|
+
}
|
128
|
+
table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
|
129
|
+
background-color: #f1f1f1;
|
130
|
+
}
|
131
|
+
table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 {
|
132
|
+
background-color: #f3f3f3;
|
133
|
+
}
|
134
|
+
table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 {
|
135
|
+
background-color: whitesmoke;
|
136
|
+
}
|
137
|
+
table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 {
|
138
|
+
background-color: #a6b4cd;
|
139
|
+
}
|
140
|
+
table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 {
|
141
|
+
background-color: #a8b5cf;
|
142
|
+
}
|
143
|
+
table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 {
|
144
|
+
background-color: #a9b7d1;
|
145
|
+
}
|
146
|
+
table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
|
147
|
+
background-color: #fafafa;
|
148
|
+
}
|
149
|
+
table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 {
|
150
|
+
background-color: #fcfcfc;
|
151
|
+
}
|
152
|
+
table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 {
|
153
|
+
background-color: #fefefe;
|
154
|
+
}
|
155
|
+
table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 {
|
156
|
+
background-color: #acbad5;
|
157
|
+
}
|
158
|
+
table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 {
|
159
|
+
background-color: #aebcd6;
|
160
|
+
}
|
161
|
+
table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 {
|
162
|
+
background-color: #afbdd8;
|
163
|
+
}
|
164
|
+
table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
|
165
|
+
background-color: #eaeaea;
|
166
|
+
}
|
167
|
+
table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
|
168
|
+
background-color: #ececec;
|
169
|
+
}
|
170
|
+
table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
|
171
|
+
background-color: #efefef;
|
172
|
+
}
|
173
|
+
table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
|
174
|
+
background-color: #a2aec7;
|
175
|
+
}
|
176
|
+
table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
|
177
|
+
background-color: #a3b0c9;
|
178
|
+
}
|
179
|
+
table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
|
180
|
+
background-color: #a5b2cb;
|
181
|
+
}
|
182
|
+
table.dataTable.no-footer {
|
183
|
+
border-bottom: 1px solid #111;
|
184
|
+
}
|
185
|
+
table.dataTable.nowrap th, table.dataTable.nowrap td {
|
186
|
+
white-space: nowrap;
|
187
|
+
}
|
188
|
+
table.dataTable.compact thead th,
|
189
|
+
table.dataTable.compact thead td {
|
190
|
+
padding: 4px 17px 4px 4px;
|
191
|
+
}
|
192
|
+
table.dataTable.compact tfoot th,
|
193
|
+
table.dataTable.compact tfoot td {
|
194
|
+
padding: 4px;
|
195
|
+
}
|
196
|
+
table.dataTable.compact tbody th,
|
197
|
+
table.dataTable.compact tbody td {
|
198
|
+
padding: 4px;
|
199
|
+
}
|
200
|
+
table.dataTable th.dt-left,
|
201
|
+
table.dataTable td.dt-left {
|
202
|
+
text-align: left;
|
203
|
+
}
|
204
|
+
table.dataTable th.dt-center,
|
205
|
+
table.dataTable td.dt-center,
|
206
|
+
table.dataTable td.dataTables_empty {
|
207
|
+
text-align: center;
|
208
|
+
}
|
209
|
+
table.dataTable th.dt-right,
|
210
|
+
table.dataTable td.dt-right {
|
211
|
+
text-align: right;
|
212
|
+
}
|
213
|
+
table.dataTable th.dt-justify,
|
214
|
+
table.dataTable td.dt-justify {
|
215
|
+
text-align: justify;
|
216
|
+
}
|
217
|
+
table.dataTable th.dt-nowrap,
|
218
|
+
table.dataTable td.dt-nowrap {
|
219
|
+
white-space: nowrap;
|
220
|
+
}
|
221
|
+
table.dataTable thead th.dt-head-left,
|
222
|
+
table.dataTable thead td.dt-head-left,
|
223
|
+
table.dataTable tfoot th.dt-head-left,
|
224
|
+
table.dataTable tfoot td.dt-head-left {
|
225
|
+
text-align: left;
|
226
|
+
}
|
227
|
+
table.dataTable thead th.dt-head-center,
|
228
|
+
table.dataTable thead td.dt-head-center,
|
229
|
+
table.dataTable tfoot th.dt-head-center,
|
230
|
+
table.dataTable tfoot td.dt-head-center {
|
231
|
+
text-align: center;
|
232
|
+
}
|
233
|
+
table.dataTable thead th.dt-head-right,
|
234
|
+
table.dataTable thead td.dt-head-right,
|
235
|
+
table.dataTable tfoot th.dt-head-right,
|
236
|
+
table.dataTable tfoot td.dt-head-right {
|
237
|
+
text-align: right;
|
238
|
+
}
|
239
|
+
table.dataTable thead th.dt-head-justify,
|
240
|
+
table.dataTable thead td.dt-head-justify,
|
241
|
+
table.dataTable tfoot th.dt-head-justify,
|
242
|
+
table.dataTable tfoot td.dt-head-justify {
|
243
|
+
text-align: justify;
|
244
|
+
}
|
245
|
+
table.dataTable thead th.dt-head-nowrap,
|
246
|
+
table.dataTable thead td.dt-head-nowrap,
|
247
|
+
table.dataTable tfoot th.dt-head-nowrap,
|
248
|
+
table.dataTable tfoot td.dt-head-nowrap {
|
249
|
+
white-space: nowrap;
|
250
|
+
}
|
251
|
+
table.dataTable tbody th.dt-body-left,
|
252
|
+
table.dataTable tbody td.dt-body-left {
|
253
|
+
text-align: left;
|
254
|
+
}
|
255
|
+
table.dataTable tbody th.dt-body-center,
|
256
|
+
table.dataTable tbody td.dt-body-center {
|
257
|
+
text-align: center;
|
258
|
+
}
|
259
|
+
table.dataTable tbody th.dt-body-right,
|
260
|
+
table.dataTable tbody td.dt-body-right {
|
261
|
+
text-align: right;
|
262
|
+
}
|
263
|
+
table.dataTable tbody th.dt-body-justify,
|
264
|
+
table.dataTable tbody td.dt-body-justify {
|
265
|
+
text-align: justify;
|
266
|
+
}
|
267
|
+
table.dataTable tbody th.dt-body-nowrap,
|
268
|
+
table.dataTable tbody td.dt-body-nowrap {
|
269
|
+
white-space: nowrap;
|
270
|
+
}
|
271
|
+
|
272
|
+
table.dataTable,
|
273
|
+
table.dataTable th,
|
274
|
+
table.dataTable td {
|
275
|
+
box-sizing: content-box;
|
276
|
+
}
|
277
|
+
|
278
|
+
/*
|
279
|
+
* Control feature layout
|
280
|
+
*/
|
281
|
+
.dataTables_wrapper {
|
282
|
+
position: relative;
|
283
|
+
clear: both;
|
284
|
+
*zoom: 1;
|
285
|
+
zoom: 1;
|
286
|
+
}
|
287
|
+
.dataTables_wrapper .dataTables_length {
|
288
|
+
float: left;
|
289
|
+
}
|
290
|
+
.dataTables_wrapper .dataTables_filter {
|
291
|
+
float: right;
|
292
|
+
text-align: right;
|
293
|
+
}
|
294
|
+
.dataTables_wrapper .dataTables_filter input {
|
295
|
+
margin-left: 0.5em;
|
296
|
+
}
|
297
|
+
.dataTables_wrapper .dataTables_info {
|
298
|
+
clear: both;
|
299
|
+
float: left;
|
300
|
+
padding-top: 0.755em;
|
301
|
+
}
|
302
|
+
.dataTables_wrapper .dataTables_paginate {
|
303
|
+
float: right;
|
304
|
+
text-align: right;
|
305
|
+
padding-top: 0.25em;
|
306
|
+
}
|
307
|
+
.dataTables_wrapper .dataTables_paginate .paginate_button {
|
308
|
+
box-sizing: border-box;
|
309
|
+
display: inline-block;
|
310
|
+
min-width: 1.5em;
|
311
|
+
padding: 0.5em 1em;
|
312
|
+
margin-left: 2px;
|
313
|
+
text-align: center;
|
314
|
+
text-decoration: none !important;
|
315
|
+
cursor: pointer;
|
316
|
+
*cursor: hand;
|
317
|
+
color: #333 !important;
|
318
|
+
border: 1px solid transparent;
|
319
|
+
border-radius: 2px;
|
320
|
+
}
|
321
|
+
.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
|
322
|
+
color: #333 !important;
|
323
|
+
border: 1px solid #979797;
|
324
|
+
background-color: white;
|
325
|
+
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #dcdcdc));
|
326
|
+
/* Chrome,Safari4+ */
|
327
|
+
background: -webkit-linear-gradient(top, white 0%, #dcdcdc 100%);
|
328
|
+
/* Chrome10+,Safari5.1+ */
|
329
|
+
background: -moz-linear-gradient(top, white 0%, #dcdcdc 100%);
|
330
|
+
/* FF3.6+ */
|
331
|
+
background: -ms-linear-gradient(top, white 0%, #dcdcdc 100%);
|
332
|
+
/* IE10+ */
|
333
|
+
background: -o-linear-gradient(top, white 0%, #dcdcdc 100%);
|
334
|
+
/* Opera 11.10+ */
|
335
|
+
background: linear-gradient(to bottom, white 0%, #dcdcdc 100%);
|
336
|
+
/* W3C */
|
337
|
+
}
|
338
|
+
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
|
339
|
+
cursor: default;
|
340
|
+
color: #666 !important;
|
341
|
+
border: 1px solid transparent;
|
342
|
+
background: transparent;
|
343
|
+
box-shadow: none;
|
344
|
+
}
|
345
|
+
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
|
346
|
+
color: white !important;
|
347
|
+
border: 1px solid #111;
|
348
|
+
background-color: #585858;
|
349
|
+
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111));
|
350
|
+
/* Chrome,Safari4+ */
|
351
|
+
background: -webkit-linear-gradient(top, #585858 0%, #111 100%);
|
352
|
+
/* Chrome10+,Safari5.1+ */
|
353
|
+
background: -moz-linear-gradient(top, #585858 0%, #111 100%);
|
354
|
+
/* FF3.6+ */
|
355
|
+
background: -ms-linear-gradient(top, #585858 0%, #111 100%);
|
356
|
+
/* IE10+ */
|
357
|
+
background: -o-linear-gradient(top, #585858 0%, #111 100%);
|
358
|
+
/* Opera 11.10+ */
|
359
|
+
background: linear-gradient(to bottom, #585858 0%, #111 100%);
|
360
|
+
/* W3C */
|
361
|
+
}
|
362
|
+
.dataTables_wrapper .dataTables_paginate .paginate_button:active {
|
363
|
+
outline: none;
|
364
|
+
background-color: #2b2b2b;
|
365
|
+
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));
|
366
|
+
/* Chrome,Safari4+ */
|
367
|
+
background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
368
|
+
/* Chrome10+,Safari5.1+ */
|
369
|
+
background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
370
|
+
/* FF3.6+ */
|
371
|
+
background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
372
|
+
/* IE10+ */
|
373
|
+
background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
|
374
|
+
/* Opera 11.10+ */
|
375
|
+
background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
|
376
|
+
/* W3C */
|
377
|
+
box-shadow: inset 0 0 3px #111;
|
378
|
+
}
|
379
|
+
.dataTables_wrapper .dataTables_paginate .ellipsis {
|
380
|
+
padding: 0 1em;
|
381
|
+
}
|
382
|
+
.dataTables_wrapper .dataTables_processing {
|
383
|
+
position: absolute;
|
384
|
+
top: 50%;
|
385
|
+
left: 50%;
|
386
|
+
width: 100%;
|
387
|
+
height: 40px;
|
388
|
+
margin-left: -50%;
|
389
|
+
margin-top: -25px;
|
390
|
+
padding-top: 20px;
|
391
|
+
text-align: center;
|
392
|
+
font-size: 1.2em;
|
393
|
+
background-color: white;
|
394
|
+
background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));
|
395
|
+
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
396
|
+
background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
397
|
+
background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
398
|
+
background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
399
|
+
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
|
400
|
+
}
|
401
|
+
.dataTables_wrapper .dataTables_length,
|
402
|
+
.dataTables_wrapper .dataTables_filter,
|
403
|
+
.dataTables_wrapper .dataTables_info,
|
404
|
+
.dataTables_wrapper .dataTables_processing,
|
405
|
+
.dataTables_wrapper .dataTables_paginate {
|
406
|
+
color: #333;
|
407
|
+
}
|
408
|
+
.dataTables_wrapper .dataTables_scroll {
|
409
|
+
clear: both;
|
410
|
+
}
|
411
|
+
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
|
412
|
+
*margin-top: -1px;
|
413
|
+
-webkit-overflow-scrolling: touch;
|
414
|
+
}
|
415
|
+
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
|
416
|
+
vertical-align: middle;
|
417
|
+
}
|
418
|
+
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing,
|
419
|
+
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing,
|
420
|
+
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing {
|
421
|
+
height: 0;
|
422
|
+
overflow: hidden;
|
423
|
+
margin: 0 !important;
|
424
|
+
padding: 0 !important;
|
425
|
+
}
|
426
|
+
.dataTables_wrapper.no-footer .dataTables_scrollBody {
|
427
|
+
border-bottom: 1px solid #111;
|
428
|
+
}
|
429
|
+
.dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
|
430
|
+
.dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
|
431
|
+
border-bottom: none;
|
432
|
+
}
|
433
|
+
.dataTables_wrapper:after {
|
434
|
+
visibility: hidden;
|
435
|
+
display: block;
|
436
|
+
content: "";
|
437
|
+
clear: both;
|
438
|
+
height: 0;
|
439
|
+
}
|
440
|
+
|
441
|
+
@media screen and (max-width: 767px) {
|
442
|
+
.dataTables_wrapper .dataTables_info,
|
443
|
+
.dataTables_wrapper .dataTables_paginate {
|
444
|
+
float: none;
|
445
|
+
text-align: center;
|
446
|
+
}
|
447
|
+
.dataTables_wrapper .dataTables_paginate {
|
448
|
+
margin-top: 0.5em;
|
449
|
+
}
|
450
|
+
}
|
451
|
+
@media screen and (max-width: 640px) {
|
452
|
+
.dataTables_wrapper .dataTables_length,
|
453
|
+
.dataTables_wrapper .dataTables_filter {
|
454
|
+
float: none;
|
455
|
+
text-align: center;
|
456
|
+
}
|
457
|
+
.dataTables_wrapper .dataTables_filter {
|
458
|
+
margin-top: 0.5em;
|
459
|
+
}
|
460
|
+
}
|
461
|
+
|
462
|
+
|
463
|
+
div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #316ad1;background:linear-gradient(to bottom, #abcffb 0%, #4989de 100%)}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#4989de;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-button button{color:white;margin:0;padding:6px 12px;text-align:center;border:1px solid #2e6da4;background-color:#337ab7;border-radius:4px;cursor:pointer;vertical-align:middle}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10}
|
464
|
+
|
465
|
+
|
466
|
+
@keyframes dtb-spinner {
|
467
|
+
100% {
|
468
|
+
transform: rotate(360deg);
|
469
|
+
}
|
470
|
+
}
|
471
|
+
@-o-keyframes dtb-spinner {
|
472
|
+
100% {
|
473
|
+
-o-transform: rotate(360deg);
|
474
|
+
transform: rotate(360deg);
|
475
|
+
}
|
476
|
+
}
|
477
|
+
@-ms-keyframes dtb-spinner {
|
478
|
+
100% {
|
479
|
+
-ms-transform: rotate(360deg);
|
480
|
+
transform: rotate(360deg);
|
481
|
+
}
|
482
|
+
}
|
483
|
+
@-webkit-keyframes dtb-spinner {
|
484
|
+
100% {
|
485
|
+
-webkit-transform: rotate(360deg);
|
486
|
+
transform: rotate(360deg);
|
487
|
+
}
|
488
|
+
}
|
489
|
+
@-moz-keyframes dtb-spinner {
|
490
|
+
100% {
|
491
|
+
-moz-transform: rotate(360deg);
|
492
|
+
transform: rotate(360deg);
|
493
|
+
}
|
494
|
+
}
|
495
|
+
div.dt-button-info {
|
496
|
+
position: fixed;
|
497
|
+
top: 50%;
|
498
|
+
left: 50%;
|
499
|
+
width: 400px;
|
500
|
+
margin-top: -100px;
|
501
|
+
margin-left: -200px;
|
502
|
+
background-color: white;
|
503
|
+
border: 2px solid #111;
|
504
|
+
box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3);
|
505
|
+
border-radius: 3px;
|
506
|
+
text-align: center;
|
507
|
+
z-index: 21;
|
508
|
+
}
|
509
|
+
div.dt-button-info h2 {
|
510
|
+
padding: 0.5em;
|
511
|
+
margin: 0;
|
512
|
+
font-weight: normal;
|
513
|
+
border-bottom: 1px solid #ddd;
|
514
|
+
background-color: #f3f3f3;
|
515
|
+
}
|
516
|
+
div.dt-button-info > div {
|
517
|
+
padding: 1em;
|
518
|
+
}
|
519
|
+
|
520
|
+
button.dt-button,
|
521
|
+
div.dt-button,
|
522
|
+
a.dt-button {
|
523
|
+
position: relative;
|
524
|
+
display: inline-block;
|
525
|
+
box-sizing: border-box;
|
526
|
+
margin-right: 0.333em;
|
527
|
+
padding: 0.5em 1em;
|
528
|
+
border: 1px solid #999;
|
529
|
+
border-radius: 2px;
|
530
|
+
cursor: pointer;
|
531
|
+
font-size: 0.88em;
|
532
|
+
color: black;
|
533
|
+
white-space: nowrap;
|
534
|
+
overflow: hidden;
|
535
|
+
background-color: #e9e9e9;
|
536
|
+
/* Fallback */
|
537
|
+
background-image: -webkit-linear-gradient(top, white 0%, #e9e9e9 100%);
|
538
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
539
|
+
background-image: -moz-linear-gradient(top, white 0%, #e9e9e9 100%);
|
540
|
+
/* FF3.6 */
|
541
|
+
background-image: -ms-linear-gradient(top, white 0%, #e9e9e9 100%);
|
542
|
+
/* IE10 */
|
543
|
+
background-image: -o-linear-gradient(top, white 0%, #e9e9e9 100%);
|
544
|
+
/* Opera 11.10+ */
|
545
|
+
background-image: linear-gradient(to bottom, white 0%, #e9e9e9 100%);
|
546
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='white', EndColorStr='#e9e9e9');
|
547
|
+
-webkit-user-select: none;
|
548
|
+
-moz-user-select: none;
|
549
|
+
-ms-user-select: none;
|
550
|
+
user-select: none;
|
551
|
+
text-decoration: none;
|
552
|
+
outline: none;
|
553
|
+
}
|
554
|
+
button.dt-button.disabled,
|
555
|
+
div.dt-button.disabled,
|
556
|
+
a.dt-button.disabled {
|
557
|
+
color: #999;
|
558
|
+
border: 1px solid #d0d0d0;
|
559
|
+
cursor: default;
|
560
|
+
background-color: #f9f9f9;
|
561
|
+
/* Fallback */
|
562
|
+
background-image: -webkit-linear-gradient(top, #ffffff 0%, #f9f9f9 100%);
|
563
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
564
|
+
background-image: -moz-linear-gradient(top, #ffffff 0%, #f9f9f9 100%);
|
565
|
+
/* FF3.6 */
|
566
|
+
background-image: -ms-linear-gradient(top, #ffffff 0%, #f9f9f9 100%);
|
567
|
+
/* IE10 */
|
568
|
+
background-image: -o-linear-gradient(top, #ffffff 0%, #f9f9f9 100%);
|
569
|
+
/* Opera 11.10+ */
|
570
|
+
background-image: linear-gradient(to bottom, #ffffff 0%, #f9f9f9 100%);
|
571
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#ffffff', EndColorStr='#f9f9f9');
|
572
|
+
}
|
573
|
+
button.dt-button:active:not(.disabled), button.dt-button.active:not(.disabled),
|
574
|
+
div.dt-button:active:not(.disabled),
|
575
|
+
div.dt-button.active:not(.disabled),
|
576
|
+
a.dt-button:active:not(.disabled),
|
577
|
+
a.dt-button.active:not(.disabled) {
|
578
|
+
background-color: #e2e2e2;
|
579
|
+
/* Fallback */
|
580
|
+
background-image: -webkit-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);
|
581
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
582
|
+
background-image: -moz-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);
|
583
|
+
/* FF3.6 */
|
584
|
+
background-image: -ms-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);
|
585
|
+
/* IE10 */
|
586
|
+
background-image: -o-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);
|
587
|
+
/* Opera 11.10+ */
|
588
|
+
background-image: linear-gradient(to bottom, #f3f3f3 0%, #e2e2e2 100%);
|
589
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f3f3f3', EndColorStr='#e2e2e2');
|
590
|
+
box-shadow: inset 1px 1px 3px #999999;
|
591
|
+
}
|
592
|
+
button.dt-button:active:not(.disabled):hover:not(.disabled), button.dt-button.active:not(.disabled):hover:not(.disabled),
|
593
|
+
div.dt-button:active:not(.disabled):hover:not(.disabled),
|
594
|
+
div.dt-button.active:not(.disabled):hover:not(.disabled),
|
595
|
+
a.dt-button:active:not(.disabled):hover:not(.disabled),
|
596
|
+
a.dt-button.active:not(.disabled):hover:not(.disabled) {
|
597
|
+
box-shadow: inset 1px 1px 3px #999999;
|
598
|
+
background-color: #cccccc;
|
599
|
+
/* Fallback */
|
600
|
+
background-image: -webkit-linear-gradient(top, #eaeaea 0%, #cccccc 100%);
|
601
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
602
|
+
background-image: -moz-linear-gradient(top, #eaeaea 0%, #cccccc 100%);
|
603
|
+
/* FF3.6 */
|
604
|
+
background-image: -ms-linear-gradient(top, #eaeaea 0%, #cccccc 100%);
|
605
|
+
/* IE10 */
|
606
|
+
background-image: -o-linear-gradient(top, #eaeaea 0%, #cccccc 100%);
|
607
|
+
/* Opera 11.10+ */
|
608
|
+
background-image: linear-gradient(to bottom, #eaeaea 0%, #cccccc 100%);
|
609
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#eaeaea', EndColorStr='#cccccc');
|
610
|
+
}
|
611
|
+
button.dt-button:hover,
|
612
|
+
div.dt-button:hover,
|
613
|
+
a.dt-button:hover {
|
614
|
+
text-decoration: none;
|
615
|
+
}
|
616
|
+
button.dt-button:hover:not(.disabled),
|
617
|
+
div.dt-button:hover:not(.disabled),
|
618
|
+
a.dt-button:hover:not(.disabled) {
|
619
|
+
border: 1px solid #666;
|
620
|
+
background-color: #e0e0e0;
|
621
|
+
/* Fallback */
|
622
|
+
background-image: -webkit-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);
|
623
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
624
|
+
background-image: -moz-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);
|
625
|
+
/* FF3.6 */
|
626
|
+
background-image: -ms-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);
|
627
|
+
/* IE10 */
|
628
|
+
background-image: -o-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);
|
629
|
+
/* Opera 11.10+ */
|
630
|
+
background-image: linear-gradient(to bottom, #f9f9f9 0%, #e0e0e0 100%);
|
631
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f9f9f9', EndColorStr='#e0e0e0');
|
632
|
+
}
|
633
|
+
button.dt-button:focus:not(.disabled),
|
634
|
+
div.dt-button:focus:not(.disabled),
|
635
|
+
a.dt-button:focus:not(.disabled) {
|
636
|
+
border: 1px solid #426c9e;
|
637
|
+
text-shadow: 0 1px 0 #c4def1;
|
638
|
+
outline: none;
|
639
|
+
background-color: #79ace9;
|
640
|
+
/* Fallback */
|
641
|
+
background-image: -webkit-linear-gradient(top, #bddef4 0%, #79ace9 100%);
|
642
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
643
|
+
background-image: -moz-linear-gradient(top, #bddef4 0%, #79ace9 100%);
|
644
|
+
/* FF3.6 */
|
645
|
+
background-image: -ms-linear-gradient(top, #bddef4 0%, #79ace9 100%);
|
646
|
+
/* IE10 */
|
647
|
+
background-image: -o-linear-gradient(top, #bddef4 0%, #79ace9 100%);
|
648
|
+
/* Opera 11.10+ */
|
649
|
+
background-image: linear-gradient(to bottom, #bddef4 0%, #79ace9 100%);
|
650
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#bddef4', EndColorStr='#79ace9');
|
651
|
+
}
|
652
|
+
|
653
|
+
.dt-button embed {
|
654
|
+
outline: none;
|
655
|
+
}
|
656
|
+
|
657
|
+
div.dt-buttons {
|
658
|
+
position: relative;
|
659
|
+
float: left;
|
660
|
+
}
|
661
|
+
div.dt-buttons.buttons-right {
|
662
|
+
float: right;
|
663
|
+
}
|
664
|
+
|
665
|
+
div.dt-button-collection {
|
666
|
+
position: absolute;
|
667
|
+
top: 0;
|
668
|
+
left: 0;
|
669
|
+
width: 150px;
|
670
|
+
margin-top: 3px;
|
671
|
+
padding: 8px 8px 4px 8px;
|
672
|
+
border: 1px solid #ccc;
|
673
|
+
border: 1px solid rgba(0, 0, 0, 0.4);
|
674
|
+
background-color: white;
|
675
|
+
overflow: hidden;
|
676
|
+
z-index: 2002;
|
677
|
+
border-radius: 5px;
|
678
|
+
box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
|
679
|
+
z-index: 2002;
|
680
|
+
-webkit-column-gap: 8px;
|
681
|
+
-moz-column-gap: 8px;
|
682
|
+
-ms-column-gap: 8px;
|
683
|
+
-o-column-gap: 8px;
|
684
|
+
column-gap: 8px;
|
685
|
+
}
|
686
|
+
div.dt-button-collection button.dt-button,
|
687
|
+
div.dt-button-collection div.dt-button,
|
688
|
+
div.dt-button-collection a.dt-button {
|
689
|
+
position: relative;
|
690
|
+
left: 0;
|
691
|
+
right: 0;
|
692
|
+
display: block;
|
693
|
+
float: none;
|
694
|
+
margin-bottom: 4px;
|
695
|
+
margin-right: 0;
|
696
|
+
}
|
697
|
+
div.dt-button-collection button.dt-button:active:not(.disabled), div.dt-button-collection button.dt-button.active:not(.disabled),
|
698
|
+
div.dt-button-collection div.dt-button:active:not(.disabled),
|
699
|
+
div.dt-button-collection div.dt-button.active:not(.disabled),
|
700
|
+
div.dt-button-collection a.dt-button:active:not(.disabled),
|
701
|
+
div.dt-button-collection a.dt-button.active:not(.disabled) {
|
702
|
+
background-color: #dadada;
|
703
|
+
/* Fallback */
|
704
|
+
background-image: -webkit-linear-gradient(top, #f0f0f0 0%, #dadada 100%);
|
705
|
+
/* Chrome 10+, Saf5.1+, iOS 5+ */
|
706
|
+
background-image: -moz-linear-gradient(top, #f0f0f0 0%, #dadada 100%);
|
707
|
+
/* FF3.6 */
|
708
|
+
background-image: -ms-linear-gradient(top, #f0f0f0 0%, #dadada 100%);
|
709
|
+
/* IE10 */
|
710
|
+
background-image: -o-linear-gradient(top, #f0f0f0 0%, #dadada 100%);
|
711
|
+
/* Opera 11.10+ */
|
712
|
+
background-image: linear-gradient(to bottom, #f0f0f0 0%, #dadada 100%);
|
713
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f0f0f0', EndColorStr='#dadada');
|
714
|
+
box-shadow: inset 1px 1px 3px #666;
|
715
|
+
}
|
716
|
+
div.dt-button-collection.fixed {
|
717
|
+
position: fixed;
|
718
|
+
top: 50%;
|
719
|
+
left: 50%;
|
720
|
+
margin-left: -75px;
|
721
|
+
border-radius: 0;
|
722
|
+
}
|
723
|
+
div.dt-button-collection.fixed.two-column {
|
724
|
+
margin-left: -150px;
|
725
|
+
}
|
726
|
+
div.dt-button-collection.fixed.three-column {
|
727
|
+
margin-left: -225px;
|
728
|
+
}
|
729
|
+
div.dt-button-collection.fixed.four-column {
|
730
|
+
margin-left: -300px;
|
731
|
+
}
|
732
|
+
div.dt-button-collection > * {
|
733
|
+
-webkit-column-break-inside: avoid;
|
734
|
+
break-inside: avoid;
|
735
|
+
}
|
736
|
+
div.dt-button-collection.two-column {
|
737
|
+
width: 300px;
|
738
|
+
padding-bottom: 1px;
|
739
|
+
-webkit-column-count: 2;
|
740
|
+
-moz-column-count: 2;
|
741
|
+
-ms-column-count: 2;
|
742
|
+
-o-column-count: 2;
|
743
|
+
column-count: 2;
|
744
|
+
}
|
745
|
+
div.dt-button-collection.three-column {
|
746
|
+
width: 450px;
|
747
|
+
padding-bottom: 1px;
|
748
|
+
-webkit-column-count: 3;
|
749
|
+
-moz-column-count: 3;
|
750
|
+
-ms-column-count: 3;
|
751
|
+
-o-column-count: 3;
|
752
|
+
column-count: 3;
|
753
|
+
}
|
754
|
+
div.dt-button-collection.four-column {
|
755
|
+
width: 600px;
|
756
|
+
padding-bottom: 1px;
|
757
|
+
-webkit-column-count: 4;
|
758
|
+
-moz-column-count: 4;
|
759
|
+
-ms-column-count: 4;
|
760
|
+
-o-column-count: 4;
|
761
|
+
column-count: 4;
|
762
|
+
}
|
763
|
+
|
764
|
+
div.dt-button-background {
|
765
|
+
position: fixed;
|
766
|
+
top: 0;
|
767
|
+
left: 0;
|
768
|
+
width: 100%;
|
769
|
+
height: 100%;
|
770
|
+
background: rgba(0, 0, 0, 0.7);
|
771
|
+
/* Fallback */
|
772
|
+
background: -ms-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%);
|
773
|
+
/* IE10 Consumer Preview */
|
774
|
+
background: -moz-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%);
|
775
|
+
/* Firefox */
|
776
|
+
background: -o-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%);
|
777
|
+
/* Opera */
|
778
|
+
background: -webkit-gradient(radial, center center, 0, center center, 497, color-stop(0, rgba(0, 0, 0, 0.3)), color-stop(1, rgba(0, 0, 0, 0.7)));
|
779
|
+
/* Webkit (Safari/Chrome 10) */
|
780
|
+
background: -webkit-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%);
|
781
|
+
/* Webkit (Chrome 11+) */
|
782
|
+
background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%);
|
783
|
+
/* W3C Markup, IE10 Release Preview */
|
784
|
+
z-index: 2001;
|
785
|
+
}
|
786
|
+
|
787
|
+
@media screen and (max-width: 640px) {
|
788
|
+
div.dt-buttons {
|
789
|
+
float: none !important;
|
790
|
+
text-align: center;
|
791
|
+
}
|
792
|
+
}
|
793
|
+
button.dt-button.processing,
|
794
|
+
div.dt-button.processing,
|
795
|
+
a.dt-button.processing {
|
796
|
+
color: rgba(0, 0, 0, 0.2);
|
797
|
+
}
|
798
|
+
button.dt-button.processing:after,
|
799
|
+
div.dt-button.processing:after,
|
800
|
+
a.dt-button.processing:after {
|
801
|
+
position: absolute;
|
802
|
+
top: 50%;
|
803
|
+
left: 50%;
|
804
|
+
width: 16px;
|
805
|
+
height: 16px;
|
806
|
+
margin: -8px 0 0 -8px;
|
807
|
+
box-sizing: border-box;
|
808
|
+
display: block;
|
809
|
+
content: ' ';
|
810
|
+
border: 2px solid #282828;
|
811
|
+
border-radius: 50%;
|
812
|
+
border-left-color: transparent;
|
813
|
+
border-right-color: transparent;
|
814
|
+
animation: dtb-spinner 1500ms infinite linear;
|
815
|
+
-o-animation: dtb-spinner 1500ms infinite linear;
|
816
|
+
-ms-animation: dtb-spinner 1500ms infinite linear;
|
817
|
+
-webkit-animation: dtb-spinner 1500ms infinite linear;
|
818
|
+
-moz-animation: dtb-spinner 1500ms infinite linear;
|
819
|
+
}
|
820
|
+
|
821
|
+
|
822
|
+
table.DTCR_clonedTable.dataTable {
|
823
|
+
position: absolute !important;
|
824
|
+
background-color: rgba(255, 255, 255, 0.7);
|
825
|
+
z-index: 202;
|
826
|
+
}
|
827
|
+
|
828
|
+
div.DTCR_pointer {
|
829
|
+
width: 1px;
|
830
|
+
background-color: #0259C4;
|
831
|
+
z-index: 201;
|
832
|
+
}
|
833
|
+
|
834
|
+
|
835
|
+
table.DTFC_Cloned thead,
|
836
|
+
table.DTFC_Cloned tfoot {
|
837
|
+
background-color: white;
|
838
|
+
}
|
839
|
+
|
840
|
+
div.DTFC_Blocker {
|
841
|
+
background-color: white;
|
842
|
+
}
|
843
|
+
|
844
|
+
div.DTFC_LeftWrapper table.dataTable,
|
845
|
+
div.DTFC_RightWrapper table.dataTable {
|
846
|
+
margin-bottom: 0;
|
847
|
+
z-index: 2;
|
848
|
+
}
|
849
|
+
div.DTFC_LeftWrapper table.dataTable.no-footer,
|
850
|
+
div.DTFC_RightWrapper table.dataTable.no-footer {
|
851
|
+
border-bottom: none;
|
852
|
+
}
|
853
|
+
|
854
|
+
|
855
|
+
table.fixedHeader-floating {
|
856
|
+
position: fixed !important;
|
857
|
+
background-color: white;
|
858
|
+
}
|
859
|
+
|
860
|
+
table.fixedHeader-floating.no-footer {
|
861
|
+
border-bottom-width: 0;
|
862
|
+
}
|
863
|
+
|
864
|
+
table.fixedHeader-locked {
|
865
|
+
position: absolute !important;
|
866
|
+
background-color: white;
|
867
|
+
}
|
868
|
+
|
869
|
+
@media print {
|
870
|
+
table.fixedHeader-floating {
|
871
|
+
display: none;
|
872
|
+
}
|
873
|
+
}
|
874
|
+
|
875
|
+
|
876
|
+
table.dataTable th.focus,
|
877
|
+
table.dataTable td.focus {
|
878
|
+
outline: 3px solid #3366FF;
|
879
|
+
outline-offset: -1px;
|
880
|
+
}
|
881
|
+
|
882
|
+
|
883
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,
|
884
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,
|
885
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty {
|
886
|
+
cursor: default !important;
|
887
|
+
}
|
888
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,
|
889
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,
|
890
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before {
|
891
|
+
display: none !important;
|
892
|
+
}
|
893
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child,
|
894
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child {
|
895
|
+
position: relative;
|
896
|
+
padding-left: 30px;
|
897
|
+
cursor: pointer;
|
898
|
+
}
|
899
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child:before,
|
900
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child:before {
|
901
|
+
top: 9px;
|
902
|
+
left: 4px;
|
903
|
+
height: 14px;
|
904
|
+
width: 14px;
|
905
|
+
display: block;
|
906
|
+
position: absolute;
|
907
|
+
color: white;
|
908
|
+
border: 2px solid white;
|
909
|
+
border-radius: 14px;
|
910
|
+
box-shadow: 0 0 3px #444;
|
911
|
+
box-sizing: content-box;
|
912
|
+
text-align: center;
|
913
|
+
text-indent: 0 !important;
|
914
|
+
font-family: 'Courier New', Courier, monospace;
|
915
|
+
line-height: 14px;
|
916
|
+
content: '+';
|
917
|
+
background-color: #31b131;
|
918
|
+
}
|
919
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before,
|
920
|
+
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before {
|
921
|
+
content: '-';
|
922
|
+
background-color: #d33333;
|
923
|
+
}
|
924
|
+
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child,
|
925
|
+
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child {
|
926
|
+
padding-left: 27px;
|
927
|
+
}
|
928
|
+
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child:before,
|
929
|
+
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child:before {
|
930
|
+
top: 5px;
|
931
|
+
left: 4px;
|
932
|
+
height: 14px;
|
933
|
+
width: 14px;
|
934
|
+
border-radius: 14px;
|
935
|
+
line-height: 14px;
|
936
|
+
text-indent: 3px;
|
937
|
+
}
|
938
|
+
table.dataTable.dtr-column > tbody > tr > td.control,
|
939
|
+
table.dataTable.dtr-column > tbody > tr > th.control {
|
940
|
+
position: relative;
|
941
|
+
cursor: pointer;
|
942
|
+
}
|
943
|
+
table.dataTable.dtr-column > tbody > tr > td.control:before,
|
944
|
+
table.dataTable.dtr-column > tbody > tr > th.control:before {
|
945
|
+
top: 50%;
|
946
|
+
left: 50%;
|
947
|
+
height: 16px;
|
948
|
+
width: 16px;
|
949
|
+
margin-top: -10px;
|
950
|
+
margin-left: -10px;
|
951
|
+
display: block;
|
952
|
+
position: absolute;
|
953
|
+
color: white;
|
954
|
+
border: 2px solid white;
|
955
|
+
border-radius: 14px;
|
956
|
+
box-shadow: 0 0 3px #444;
|
957
|
+
box-sizing: content-box;
|
958
|
+
text-align: center;
|
959
|
+
text-indent: 0 !important;
|
960
|
+
font-family: 'Courier New', Courier, monospace;
|
961
|
+
line-height: 14px;
|
962
|
+
content: '+';
|
963
|
+
background-color: #31b131;
|
964
|
+
}
|
965
|
+
table.dataTable.dtr-column > tbody > tr.parent td.control:before,
|
966
|
+
table.dataTable.dtr-column > tbody > tr.parent th.control:before {
|
967
|
+
content: '-';
|
968
|
+
background-color: #d33333;
|
969
|
+
}
|
970
|
+
table.dataTable > tbody > tr.child {
|
971
|
+
padding: 0.5em 1em;
|
972
|
+
}
|
973
|
+
table.dataTable > tbody > tr.child:hover {
|
974
|
+
background: transparent !important;
|
975
|
+
}
|
976
|
+
table.dataTable > tbody > tr.child ul.dtr-details {
|
977
|
+
display: inline-block;
|
978
|
+
list-style-type: none;
|
979
|
+
margin: 0;
|
980
|
+
padding: 0;
|
981
|
+
}
|
982
|
+
table.dataTable > tbody > tr.child ul.dtr-details > li {
|
983
|
+
border-bottom: 1px solid #efefef;
|
984
|
+
padding: 0.5em 0;
|
985
|
+
}
|
986
|
+
table.dataTable > tbody > tr.child ul.dtr-details > li:first-child {
|
987
|
+
padding-top: 0;
|
988
|
+
}
|
989
|
+
table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {
|
990
|
+
border-bottom: none;
|
991
|
+
}
|
992
|
+
table.dataTable > tbody > tr.child span.dtr-title {
|
993
|
+
display: inline-block;
|
994
|
+
min-width: 75px;
|
995
|
+
font-weight: bold;
|
996
|
+
}
|
997
|
+
|
998
|
+
div.dtr-modal {
|
999
|
+
position: fixed;
|
1000
|
+
box-sizing: border-box;
|
1001
|
+
top: 0;
|
1002
|
+
left: 0;
|
1003
|
+
height: 100%;
|
1004
|
+
width: 100%;
|
1005
|
+
z-index: 100;
|
1006
|
+
padding: 10em 1em;
|
1007
|
+
}
|
1008
|
+
div.dtr-modal div.dtr-modal-display {
|
1009
|
+
position: absolute;
|
1010
|
+
top: 0;
|
1011
|
+
left: 0;
|
1012
|
+
bottom: 0;
|
1013
|
+
right: 0;
|
1014
|
+
width: 50%;
|
1015
|
+
height: 50%;
|
1016
|
+
overflow: auto;
|
1017
|
+
margin: auto;
|
1018
|
+
z-index: 102;
|
1019
|
+
overflow: auto;
|
1020
|
+
background-color: #f5f5f7;
|
1021
|
+
border: 1px solid black;
|
1022
|
+
border-radius: 0.5em;
|
1023
|
+
box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
|
1024
|
+
}
|
1025
|
+
div.dtr-modal div.dtr-modal-content {
|
1026
|
+
position: relative;
|
1027
|
+
padding: 1em;
|
1028
|
+
}
|
1029
|
+
div.dtr-modal div.dtr-modal-close {
|
1030
|
+
position: absolute;
|
1031
|
+
top: 6px;
|
1032
|
+
right: 6px;
|
1033
|
+
width: 22px;
|
1034
|
+
height: 22px;
|
1035
|
+
border: 1px solid #eaeaea;
|
1036
|
+
background-color: #f9f9f9;
|
1037
|
+
text-align: center;
|
1038
|
+
border-radius: 3px;
|
1039
|
+
cursor: pointer;
|
1040
|
+
z-index: 12;
|
1041
|
+
}
|
1042
|
+
div.dtr-modal div.dtr-modal-close:hover {
|
1043
|
+
background-color: #eaeaea;
|
1044
|
+
}
|
1045
|
+
div.dtr-modal div.dtr-modal-background {
|
1046
|
+
position: fixed;
|
1047
|
+
top: 0;
|
1048
|
+
left: 0;
|
1049
|
+
right: 0;
|
1050
|
+
bottom: 0;
|
1051
|
+
z-index: 101;
|
1052
|
+
background: rgba(0, 0, 0, 0.6);
|
1053
|
+
}
|
1054
|
+
|
1055
|
+
@media screen and (max-width: 767px) {
|
1056
|
+
div.dtr-modal div.dtr-modal-display {
|
1057
|
+
width: 95%;
|
1058
|
+
}
|
1059
|
+
}
|
1060
|
+
|
1061
|
+
|
1062
|
+
table.dataTable tr.group td {
|
1063
|
+
font-weight: bold;
|
1064
|
+
background-color: #e0e0e0;
|
1065
|
+
}
|
1066
|
+
|
1067
|
+
|
1068
|
+
table.dt-rowReorder-float {
|
1069
|
+
position: absolute !important;
|
1070
|
+
opacity: 0.8;
|
1071
|
+
table-layout: fixed;
|
1072
|
+
outline: 2px solid #888;
|
1073
|
+
outline-offset: -2px;
|
1074
|
+
z-index: 2001;
|
1075
|
+
}
|
1076
|
+
|
1077
|
+
tr.dt-rowReorder-moving {
|
1078
|
+
outline: 2px solid #555;
|
1079
|
+
outline-offset: -2px;
|
1080
|
+
}
|
1081
|
+
|
1082
|
+
body.dt-rowReorder-noOverflow {
|
1083
|
+
overflow-x: hidden;
|
1084
|
+
}
|
1085
|
+
|
1086
|
+
table.dataTable td.reorder {
|
1087
|
+
text-align: center;
|
1088
|
+
cursor: move;
|
1089
|
+
}
|
1090
|
+
|
1091
|
+
|
1092
|
+
div.DTS {
|
1093
|
+
display: block !important;
|
1094
|
+
}
|
1095
|
+
div.DTS tbody th,
|
1096
|
+
div.DTS tbody td {
|
1097
|
+
white-space: nowrap;
|
1098
|
+
}
|
1099
|
+
div.DTS div.DTS_Loading {
|
1100
|
+
z-index: 1;
|
1101
|
+
}
|
1102
|
+
div.DTS div.dataTables_scrollBody {
|
1103
|
+
background: repeating-linear-gradient(45deg, #edeeff, #edeeff 10px, white 10px, white 20px);
|
1104
|
+
}
|
1105
|
+
div.DTS div.dataTables_scrollBody table {
|
1106
|
+
z-index: 2;
|
1107
|
+
}
|
1108
|
+
div.DTS div.dataTables_paginate,
|
1109
|
+
div.DTS div.dataTables_length {
|
1110
|
+
display: none;
|
1111
|
+
}
|
1112
|
+
|
1113
|
+
|