diff --git a/business_objects/project_hub/contact_form.py b/business_objects/project_hub/contact_form.py index f8b81fa..cb1dc19 100644 --- a/business_objects/project_hub/contact_form.py +++ b/business_objects/project_hub/contact_form.py @@ -66,11 +66,11 @@ class Contact_Form(SQLAlchemy_ABC, Base): if json is None: return form form.id_contact_form = -1 form.email = json[cls.FLAG_EMAIL] - form.name_contact = json[cls.FLAG_NAME_CONTACT] - form.name_company = json[cls.FLAG_NAME_COMPANY] - form.message = json[cls.FLAG_MESSAGE] - form.receive_marketing_communications = json[cls.FLAG_RECEIVE_MARKETING_COMMUNICATIONS] - form.active = av.input_bool(json[cls.FLAG_ACTIVE], cls.FLAG_ACTIVE, _m) + form.name_contact = json.get(cls.FLAG_NAME_CONTACT, 'No Contact Name') + form.name_company = json.get(cls.FLAG_NAME_COMPANY, 'No Company Name') + form.message = json.get(cls.FLAG_MESSAGE, 'No Message') + form.receive_marketing_communications = json.get(cls.FLAG_RECEIVE_MARKETING_COMMUNICATIONS, True) + form.active = av.input_bool(json.get(cls.FLAG_ACTIVE, True), cls.FLAG_ACTIVE, _m) form.created_on = json.get(cls.FLAG_CREATED_ON, None) return form diff --git a/controllers/blog/blog.py b/controllers/blog/blog.py index 1963365..ee13746 100644 --- a/controllers/blog/blog.py +++ b/controllers/blog/blog.py @@ -12,9 +12,15 @@ Home Page Controller. # internal from business_objects.api import API +from business_objects.project_hub.contact_form import Contact_Form +from datastores.datastore_project_hub import DataStore_Project_Hub_Contact_Form +from extensions import db, oauth, mail +from forms.project_hub.contact import Form_Contact +from forms.project_hub.newsletter import Form_Newsletter from models.model_view_blog_home import Model_View_Blog_Home # external -from flask import render_template, jsonify, Blueprint, send_from_directory +from flask import render_template, jsonify, Blueprint, send_from_directory, current_app, redirect, url_for +from flask_mail import Mail, Message routes_blog = Blueprint('routes_blog', __name__) @@ -23,9 +29,128 @@ routes_blog = Blueprint('routes_blog', __name__) @routes_blog.route(Model_View_Blog_Home.HASH_PAGE_BLOG_HOME, methods=['GET']) def blog_home(): try: - model = Model_View_Blog_Home() - html_body = render_template('layouts/layout_blog.html', model = model) # 'pages/blog/_home.html' + form = Form_Newsletter() + model = Model_View_Blog_Home(form) + html_body = render_template('pages/blog/_home.html', model = model) # 'pages/blog/_home.html' except Exception as e: return jsonify(error=str(e)), 403 return html_body + +@routes_blog.route(Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_25_TO_100_PLUS_CLIENTS, methods=['GET']) +def blog_article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients(): + try: + form = Form_Newsletter() + model = Model_View_Blog_Home(form_newsletter = form, hash_page_current = Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_25_TO_100_PLUS_CLIENTS) + model._title = 'Blog Article' + html_body = render_template('pages/blog/_article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.html', model = model) + except Exception as e: + return jsonify(error=str(e)), 403 + return html_body + +@routes_blog.route(Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_SOLO_TO_MULTI_TRAINER_SUCCESS, methods=['GET']) +def blog_article_how_to_scale_your_dog_training_business_from_solo_to_multi_trainer_success(): + try: + form = Form_Newsletter() + model = Model_View_Blog_Home(form_newsletter = form, hash_page_current = Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_SOLO_TO_MULTI_TRAINER_SUCCESS) + model._title = 'Blog Article' + html_body = render_template('pages/blog/_article_how_to_scale_your_dog_training_business_from_solo_to_multi_trainer_success.html', model = model) + except Exception as e: + return jsonify(error=str(e)), 403 + return html_body + +@routes_blog.route(Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_THE_SCIENCE_BEHIND_DOG_TRAINING_ASSESSMENTS_HOW_TRACK_REAL_PROGRESS, methods=['GET']) +def blog_article_the_science_behind_dog_training_assessments_how_to_track_real_progress(): + try: + form = Form_Newsletter() + model = Model_View_Blog_Home(form_newsletter = form, hash_page_current = Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_THE_SCIENCE_BEHIND_DOG_TRAINING_ASSESSMENTS_HOW_TRACK_REAL_PROGRESS) + model._title = 'Blog Article' + html_body = render_template('pages/blog/_article_the_science_behind_dog_training_assessments_how_to_track_real_progress.html', model = model) + except Exception as e: + return jsonify(error=str(e)), 403 + return html_body + +@routes_blog.route(Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_WHY_EVERY_PROFESSIONAL_TRAINER_NEEDS_A_COMMAND_DICTIONARY_IN_2025, methods=['GET']) +def blog_article_why_every_professional_trainer_needs_a_command_dictionary_in_2025(): + try: + form = Form_Newsletter() + model = Model_View_Blog_Home(form_newsletter = form, hash_page_current = Model_View_Blog_Home.HASH_PAGE_BLOG_ARTICLE_WHY_EVERY_PROFESSIONAL_TRAINER_NEEDS_A_COMMAND_DICTIONARY_IN_2025) + model._title = 'Blog Article' + html_body = render_template('pages/blog/_article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.html', model = model) + except Exception as e: + return jsonify(error=str(e)), 403 + return html_body + +@routes_blog.route(Model_View_Blog_Home.HASH_POST_BLOG_NEWSLETTER, methods=['POST']) +def blog_newsletter_post(): + try: + form = Form_Newsletter() + if form.validate_on_submit(): + try: + email = form.email.data + # send email + mailItem = Message("PARTS Website Contact Us Message", recipients=[current_app.config['MAIL_CONTACT_PUBLIC']]) + mailItem.body = f"Dear Lord Edward Middleton-Smith,\n\nI would like to receive marketing emails.\n\nKind regards,\n{email}" + mail.send(mailItem) + # save to database + datastore = DataStore_Project_Hub_Contact_Form() + contact_form = Contact_Form.from_json(form.to_json()) + datastore.save_contact_forms( + comment = f'Email joining newsletter: {email}' + , contact_forms = [contact_form] + ) + return redirect(url_for(Model_View_Blog_Home.ENDPOINT_PAGE_BLOG_NEWSLETTER_SUCCESS)) + """ + return API.get_standard_response( + success = True, + status_code = 200, + message = f"Email subscribed to newsletter.", + data = None, + errors = [], + meta = None + ) + """ + except Exception as e: + return API.get_standard_response( + success = False, + status_code = 500, + message = f"Error: {e}", + data = None, + errors = [str(e)], + meta = None + ) + return API.get_standard_response( + success = False, + status_code = 500, + message = f"Error: {form.errors}", + data = None, + errors = [str(form.errors)], + meta = None + ) + # html_body = render_template('pages/core/_contact.html', model = model) + except Exception as e: + return API.get_standard_response( + success = False, + status_code = 500, + message = f"Error: {e}", + data = None, + errors = [str(e)], + meta = None + ) + +@routes_blog.route(Model_View_Blog_Home.HASH_PAGE_BLOG_NEWSLETTER_SUCCESS, methods=['GET']) +def blog_newsletter_success(): + try: + form = Form_Newsletter() + model = Model_View_Blog_Home(form_newsletter = form, hash_page_current = Model_View_Blog_Home.HASH_PAGE_BLOG_NEWSLETTER_SUCCESS) + html_body = render_template('pages/blog/_newsletter_success.html', model = model) + return html_body + except Exception as e: + return API.get_standard_response( + success = False, + status_code = 500, + message = f"Error: {e}", + data = None, + errors = [str(e)], + meta = None + ) diff --git a/controllers/core/contact.py b/controllers/core/contact.py index e0d5dfb..06aa183 100644 --- a/controllers/core/contact.py +++ b/controllers/core/contact.py @@ -15,6 +15,7 @@ Contact Page Controller. from business_objects.api import API from business_objects.project_hub.contact_form import Contact_Form from datastores.datastore_project_hub import DataStore_Project_Hub_Contact_Form +from extensions import db, oauth, mail from forms.project_hub.contact import Form_Contact from helpers.helper_app import Helper_App from models.model_view_contact import Model_View_Contact @@ -24,7 +25,6 @@ import lib.argument_validation as av # external from flask import Flask, render_template, jsonify, request, render_template_string, send_from_directory, redirect, url_for, session, Blueprint, current_app, flash from flask_mail import Mail, Message -from extensions import db, oauth, mail from urllib.parse import quote_plus, urlencode from authlib.integrations.flask_client import OAuth from authlib.integrations.base_client import OAuthError diff --git a/forms/project_hub/contact.py b/forms/project_hub/contact.py index 610923e..93ef224 100644 --- a/forms/project_hub/contact.py +++ b/forms/project_hub/contact.py @@ -21,7 +21,7 @@ from forms.base import Form_Base from flask import Flask, render_template, request, flash, redirect, url_for, current_app from flask_wtf import FlaskForm from wtforms import StringField, TextAreaField, SubmitField, HiddenField, BooleanField, Field, EmailField -from wtforms.validators import DataRequired, Email, ValidationError +from wtforms.validators import DataRequired, Email, ValidationError, Optional import markupsafe from flask_wtf.recaptcha import RecaptchaField from abc import ABCMeta, abstractmethod @@ -77,11 +77,26 @@ class AltchaField(Field): class Form_Contact(FlaskForm): - email = EmailField('Email') - contact_name = StringField('Name') - company_name = StringField('Company') - message = TextAreaField('Message') - receive_marketing = BooleanField('I would like to receive marketing emails.') + email = EmailField( + 'Email' + , validators = [DataRequired()] + ) + contact_name = StringField( + 'Name' + , validators = [DataRequired()] + ) + company_name = StringField( + 'Company' + , validators = [Optional()] + ) + message = TextAreaField( + 'Message' + , validators = [Optional()] + ) + receive_marketing = BooleanField( + 'I would like to receive marketing emails.' + , validators = [DataRequired()] + ) # recaptcha = RecaptchaField() # altcha = HiddenField('ALTCHA') # , validators=[validate_altcha] altcha = AltchaField('Verify you are human') diff --git a/forms/project_hub/newsletter.py b/forms/project_hub/newsletter.py new file mode 100644 index 0000000..6e65cc0 --- /dev/null +++ b/forms/project_hub/newsletter.py @@ -0,0 +1,52 @@ +""" +Project: PARTS Website +Author: Edward Middleton-Smith + Precision And Research Technology Systems Limited + +Technology: Backend +Feature: Contact Us Form + +Description: +Defines Flask-WTF form for handling user input on Contact Us page. +""" + +# IMPORTS +# internal +from business_objects.base import Base +from business_objects.project_hub.contact_form import Contact_Form +from forms.project_hub.contact import AltchaField, AltchaValidator +# from models.model_view_store import Model_View_Store # circular +from models.model_view_base import Model_View_Base +from forms.base import Form_Base +# external +from flask import Flask, render_template, request, flash, redirect, url_for, current_app +from flask_wtf import FlaskForm +from wtforms import StringField, TextAreaField, SubmitField, HiddenField, BooleanField, Field, EmailField +from wtforms.validators import DataRequired, Email, ValidationError, Optional +import markupsafe +from flask_wtf.recaptcha import RecaptchaField +from abc import ABCMeta, abstractmethod +import json +from altcha import verify_solution +import base64 + + +class Form_Newsletter(FlaskForm): + email = EmailField( + 'Email' + , validators = [DataRequired()] + ) + altcha = AltchaField('Verify you are human') + submit = SubmitField('Subscribe Now') + + def to_json(self): + return { + Base.FLAG_EMAIL: self.email.data + , Contact_Form.FLAG_NAME_CONTACT: 'No Contact Name' + , Contact_Form.FLAG_NAME_COMPANY: 'No Company Name' + , Contact_Form.FLAG_MESSAGE: 'No Message' + , Contact_Form.FLAG_RECEIVE_MARKETING_COMMUNICATIONS: True + , Contact_Form.FLAG_ALTCHA: self.altcha.data + , Base.FLAG_ACTIVE: True + , Base.FLAG_CREATED_ON: None + } diff --git a/models/model_view_base.py b/models/model_view_base.py index aa8dcb9..99ed4c6 100644 --- a/models/model_view_base.py +++ b/models/model_view_base.py @@ -111,6 +111,8 @@ class Model_View_Base(BaseModel, ABC): ENDPOINT_PAGE_ACCESSIBILITY_STATEMENT: ClassVar[str] = 'routes_legal.accessibility_statement' ENDPOINT_PAGE_APPLY_FOUNDING_PARTNER: ClassVar[str] = 'routes_core_apply_founding_partner.apply_founding_partner' ENDPOINT_PAGE_APPLY_FOUNDING_PARTNER_SUCCESS: ClassVar[str] = 'routes_core_apply_founding_partner.apply_founding_partner_success' + # ENDPOINT_PAGE_BLOG_NEWSLETTER: ClassVar[str] = 'routes_blog.blog_newsletter' + ENDPOINT_PAGE_BLOG_NEWSLETTER_SUCCESS: ClassVar[str] = 'routes_blog.blog_newsletter_success' ENDPOINT_PAGE_CONTACT: ClassVar[str] = 'routes_core_contact.contact' ENDPOINT_PAGE_CONTACT_SUCCESS: ClassVar[str] = 'routes_core_contact.contact_success' ENDPOINT_PAGE_DATA_RETENTION_SCHEDULE: ClassVar[str] = 'routes_legal.retention_schedule' @@ -273,12 +275,14 @@ class Model_View_Base(BaseModel, ABC): HASH_PAGE_ADMIN_HOME: ClassVar[str] = '/admin' HASH_PAGE_APPLY_FOUNDING_PARTNER: ClassVar[str] = '/apply-founding-partner' HASH_PAGE_APPLY_FOUNDING_PARTNER_SUCCESS: ClassVar[str] = '/apply-founding-partner-success'# - HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS: ClassVar[str] = '/blog/article/how-to-scale-your-dog-training-business-from-solo-to-multi-trainer-success' - HASH_PAGE_BLOG_ARTICLE_THE_SCIENCE_BEHIND_DOG_TRAINING_ASSESSMENTS: ClassVar[str] = '/blog/article/the-science-behind-dog-training-assessments-how-to-track-real-progress' - HASH_PAGE_BLOG_ARTICLE_WHY_EVERY_TRAINER_NEEDS_A_COMMAND_DICTIONARY: ClassVar[str] = '/blog/article/why-every-professional-trainer-needs-a-command-dictionary-in-2025' + HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_25_TO_100_PLUS_CLIENTS: ClassVar[str] = '/blog/article/how-to-scale-your-dog-training-business-from-25-to-100-plus-clients' + HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_SOLO_TO_MULTI_TRAINER_SUCCESS: ClassVar[str] = '/blog/article/how-to-scale-your-dog-training-business-from-solo-to-multi-trainer-success' + HASH_PAGE_BLOG_ARTICLE_THE_SCIENCE_BEHIND_DOG_TRAINING_ASSESSMENTS_HOW_TRACK_REAL_PROGRESS: ClassVar[str] = '/blog/article/the-science-behind-dog-training-assessments-how-to-track-real-progress' + HASH_PAGE_BLOG_ARTICLE_WHY_EVERY_PROFESSIONAL_TRAINER_NEEDS_A_COMMAND_DICTIONARY_IN_2025: ClassVar[str] = '/blog/article/why-every-professional-trainer-needs-a-command-dictionary-in-2025' HASH_PAGE_BLOG_CATEGORY_MARKETING_AND_GROWTH: ClassVar[str] = '/blog/category/marketing-and-growth' HASH_PAGE_BLOG_CATEGORY_TRAINING_TECHNIQUES: ClassVar[str] = '/blog/category/training-techniques' HASH_PAGE_BLOG_HOME: ClassVar[str] = '/blog/home' + HASH_PAGE_BLOG_NEWSLETTER_SUCCESS: ClassVar[str] = '/blog/newsletter-success' HASH_PAGE_CONTACT: ClassVar[str] = '/contact' HASH_PAGE_CONTACT_SUCCESS: ClassVar[str] = '/contact-success' HASH_PAGE_DATA_RETENTION_SCHEDULE: ClassVar[str] = '/retention-schedule' @@ -302,6 +306,7 @@ class Model_View_Base(BaseModel, ABC): HASH_PAGE_USER_COMPANY: ClassVar[str] = '/user/company' HASH_PAGE_USER_LOGIN: ClassVar[str] = '/login' HASH_PAGE_USER_LOGOUT: ClassVar[str] = '/logout' + HASH_POST_BLOG_NEWSLETTER: ClassVar[str] = '/blog/post-newletter-form' # HASH_SAVE_DOG_ASSESSMENT: ClassVar[str] = '/dog/save-assessment' HASH_SAVE_DOG_ASSESSMENT_DISTRACTION_AND_RESPONSE: ClassVar[str] = '/dog/save-assessment-distraction-and-response' HASH_SAVE_DOG_BUTTON_ICON: ClassVar[str] = '/dog/save-button-icon' diff --git a/models/model_view_blog_home.py b/models/model_view_blog_home.py index fc80467..9a50309 100644 --- a/models/model_view_blog_home.py +++ b/models/model_view_blog_home.py @@ -11,6 +11,8 @@ Data model for home view """ # internal +# from forms.project_hub.contact import Form_Contact +from forms.project_hub.newsletter import Form_Newsletter from models.model_view_base import Model_View_Base # from routes import bp_home # external @@ -18,8 +20,12 @@ from typing import ClassVar class Model_View_Blog_Home(Model_View_Base): + HASH_POST_NEWSLETTER_FORM: ClassVar[str] = '/blog/post-newsletter-form' + ID_NEWSLETTER_FORM: ClassVar[str] = 'form_newsletter' - def __init__(self, hash_page_current=Model_View_Base.HASH_PAGE_BLOG_HOME): - super().__init__(hash_page_current=hash_page_current) + form_newsletter: Form_Newsletter + + def __init__(self, form_newsletter, hash_page_current=Model_View_Base.HASH_PAGE_BLOG_HOME): + super().__init__(hash_page_current = hash_page_current, form_newsletter = form_newsletter) self._title = 'Blog Home' \ No newline at end of file diff --git a/static/css/components/overlay.css b/static/css/components/overlay.css index 0f6bf30..f21d464 100644 --- a/static/css/components/overlay.css +++ b/static/css/components/overlay.css @@ -89,15 +89,17 @@ font-size: 15px; /* height: 18px; */ cursor: pointer; - padding-top: 5vh; + padding: 4.5px 0; } #overlayHamburger .container:hover { color: var(--colour-page-background); background-color: var(--colour-primary); } #overlayHamburger > .container { + /* padding-top: 4.5px; padding-bottom: 4.5px; + */ } #overlayHamburger .container a { width: 100%; @@ -107,6 +109,7 @@ */ color: var(--colour-text); text-decoration: none; + line-height: initial; } #overlayHamburger .container a:hover { color: var(--colour-page-background); diff --git a/static/css/pages/blog/article.css b/static/css/pages/blog/article.css index 5618098..2f2da7b 100644 --- a/static/css/pages/blog/article.css +++ b/static/css/pages/blog/article.css @@ -1,15 +1,17 @@ +#pageBody { + padding-top: 2vh; +} + * { margin: 0; padding: 0; - box-sizing: border-box; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: #333; - background-color: #f8f9fa; } /* Header */ diff --git a/static/css/pages/blog/newsletter_success.css b/static/css/pages/blog/newsletter_success.css new file mode 100644 index 0000000..e69de29 diff --git a/static/css/pages/core/contact.css b/static/css/pages/core/contact.css index b00cb6f..d1ee32a 100644 --- a/static/css/pages/core/contact.css +++ b/static/css/pages/core/contact.css @@ -17,6 +17,7 @@ padding: 2rem; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); + text-align: center; } .contact-form textarea { max-width: 40vw; @@ -38,6 +39,7 @@ border: 2px solid var(--colour-accent); border-radius: 4px; font-size: 1rem; + max-width: 40vw; } textarea.form-input { min-height: 120px; @@ -45,7 +47,7 @@ textarea.form-input { .marketing-consent input { display: inline-block; - margin-left: 20%; + /* margin-left: 20%; */ margin-bottom: 1.25rem; } diff --git a/static/css/sections/blog.css b/static/css/sections/blog.css index f9b675e..8d5817e 100644 --- a/static/css/sections/blog.css +++ b/static/css/sections/blog.css @@ -2,14 +2,13 @@ * { margin: 0; padding: 0; - box-sizing: border-box; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: #333; - background-color: #f8f9fa; + background: var(--colour-page-background-1); } /* Header */ @@ -84,6 +83,38 @@ body { margin-bottom: 3rem; } + +/* Hero Section */ +.hero { + padding: 8rem 2rem 4rem; + background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */ +} +.hero-content { + max-width: 600px; +} +.hero h1 { + line-height: 1.2; + margin-bottom: 1.5rem; + color: var(--colour-text); +} +.hero p { + font-size: 1.25rem; + margin-bottom: 2rem; + color: var(--colour-secondary); +} +section.hero .button { + margin: 0 auto; + margin-bottom: 2vh; + display: block; + background-color: var(--colour-success-title); + color: var(--colour-text-background); +} +section.hero .button:hover { + background-color: var(--colour-success-highlight); + color: var(--colour-success-title); +} + + /* Featured Post */ .featured-post { background: white; @@ -332,6 +363,13 @@ body { background: #e55a2b; } +#form_newsletter input[type="email"] { + width: 80%; + margin: 0 10%; + padding: 0.5vh; + font-size: 1rem; +} + /* Footer */ .footer { background: #2d3748; diff --git a/static/dist/css/blog_article.bundle.css b/static/dist/css/blog_article.bundle.css new file mode 100644 index 0000000..46cb4a6 --- /dev/null +++ b/static/dist/css/blog_article.bundle.css @@ -0,0 +1,1020 @@ + +/* Home page +*/ + +/* Footer */ +.footer { + background: #1f2937; + color: #f3f4f6; + padding: 4rem 2rem 2rem; +} + +.footer-content { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 2rem; + margin-bottom: 2rem; +} + +.footer-section h3 { + color: #fff; + margin-bottom: 1rem; + font-size: 1.2rem; + text-align: center; +} + +.footer-section ul { + list-style: none; + padding: 0; +} + +.footer-section ul li { + margin-bottom: 0.5rem; +} + +.footer-section a { + color: #f3f4f6; + text-decoration: none; + transition: color 0.3s ease; +} + +.footer-section a:hover { + color: #fff; + text-decoration: underline; +} + +.footer-bottom { + border-top: 1px solid #374151; + padding-top: 2rem; + text-align: center; + font-size: 0.9rem; +} + +.footer-bottom a { + color: aquamarine; +} + +.footer-section.contact { + width: 100%; +} +.footer-section .container { + padding: 0; +} +.footer-section .container.row .container.column { + padding: 1vh 2vw; +} + +@media (max-width: 768px) { + .footer-content { + grid-template-columns: 1fr; + text-align: center; + } +} + +@media (max-width: 540px) { + .nav-links { + display: none; + } +} + +* { + margin: 0; + padding: 0; +} + +body { + font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; + line-height: 1.6; + color: #333; + background: var(--colour-page-background-1); +} + +/* Header */ +.header { + background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%); + color: white; + padding: 1rem 0; + box-shadow: 0 2px 10px rgba(0,0,0,0.1); +} + +.container { + max-width: 1200px; + margin: 0 auto; + padding: 0 20px; +} + +.nav { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 2rem; +} + +.logo { + font-size: 1.5rem; + font-weight: bold; + color: #ff6b35; +} + +.nav-links { + display: flex; + list-style: none; + gap: 2rem; +} + +.nav-links a { + color: white; + text-decoration: none; + transition: color 0.3s; +} + +.nav-links a:hover { + color: #ff6b35; +} + +.blog-header { + text-align: center; + padding: 2rem 0; +} + +.blog-header h1 { + font-size: 2.5rem; + margin-bottom: 1rem; +} + +.blog-header p { + font-size: 1.2rem; + opacity: 0.9; + max-width: 600px; + margin: 0 auto; +} + +/* Main Content */ +.main-content { + padding: 3rem 0; +} + +.blog-grid { + display: grid; + grid-template-columns: 2fr 1fr; + gap: 3rem; + margin-bottom: 3rem; +} + + +/* Hero Section */ +.hero { + padding: 8rem 2rem 4rem; + background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */ +} +.hero-content { + max-width: 600px; +} +.hero h1 { + line-height: 1.2; + margin-bottom: 1.5rem; + color: var(--colour-text); +} +.hero p { + font-size: 1.25rem; + margin-bottom: 2rem; + color: var(--colour-secondary); +} +section.hero .button { + margin: 0 auto; + margin-bottom: 2vh; + display: block; + background-color: var(--colour-success-title); + color: var(--colour-text-background); +} +section.hero .button:hover { + background-color: var(--colour-success-highlight); + color: var(--colour-success-title); +} + + +/* Featured Post */ +.featured-post { + background: white; + border-radius: 12px; + overflow: hidden; + box-shadow: 0 4px 20px rgba(0,0,0,0.1); + transition: transform 0.3s, box-shadow 0.3s; +} + +.featured-post:hover { + transform: translateY(-5px); + box-shadow: 0 8px 30px rgba(0,0,0,0.15); +} + +.featured-image { + height: 300px; + background: linear-gradient(45deg, #ff6b35, #f093fb); + display: flex; + align-items: center; + justify-content: center; + color: white; + font-size: 3rem; +} + +.featured-content { + padding: 2rem; +} + +.post-category { + display: inline-block; + background: #ff6b35; + color: white; + padding: 0.3rem 1rem; + border-radius: 20px; + font-size: 0.8rem; + font-weight: 600; + margin-bottom: 1rem; +} + +.featured-content h2 { + font-size: 1.8rem; + margin-bottom: 1rem; + color: #2d3748; + line-height: 1.3; +} + +.post-excerpt { + color: #666; + margin-bottom: 1.5rem; + line-height: 1.7; +} + +.post-meta { + display: flex; + align-items: center; + gap: 1rem; + font-size: 0.9rem; + color: #888; + margin-bottom: 1rem; +} + +.read-more { + display: inline-flex; + align-items: center; + color: #3182ce; + text-decoration: none; + font-weight: 600; + transition: color 0.3s; +} + +.read-more:hover { + color: #2c5282; +} + +.read-more::after { + content: ' β†’'; + margin-left: 0.5rem; + transition: margin-left 0.3s; +} + +.read-more:hover::after { + margin-left: 1rem; +} + +/* Sidebar */ +.sidebar { + display: flex; + flex-direction: column; + gap: 2rem; +} + +.sidebar-widget { + background: white; + padding: 2rem; + border-radius: 12px; + box-shadow: 0 2px 15px rgba(0,0,0,0.08); +} + +.widget-title { + font-size: 1.3rem; + margin-bottom: 1.5rem; + color: #2d3748; + border-bottom: 2px solid #ff6b35; + padding-bottom: 0.5rem; +} + +.category-list { + list-style: none; +} + +.category-list li { + padding: 0.8rem 0; + border-bottom: 1px solid #e2e8f0; + display: flex; + justify-content: space-between; +} + +.category-list li:last-child { + border-bottom: none; +} + +.category-list a { + color: #4a5568; + text-decoration: none; + transition: color 0.3s; +} + +.category-list a:hover { + color: #3182ce; +} + +.post-count { + background: #e2e8f0; + color: #4a5568; + padding: 0.2rem 0.6rem; + border-radius: 12px; + font-size: 0.8rem; +} + +.recent-posts { + list-style: none; +} + +.recent-post-item { + padding: 1rem 0; + border-bottom: 1px solid #e2e8f0; +} + +.recent-post-item:last-child { + border-bottom: none; +} + +.recent-post-title { + font-weight: 600; + color: #2d3748; + text-decoration: none; + transition: color 0.3s; + display: block; + margin-bottom: 0.3rem; +} + +.recent-post-title:hover { + color: #3182ce; +} + +.recent-post-date { + font-size: 0.8rem; + color: #888; +} + +/* Blog Posts Grid */ +.blog-posts-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); + gap: 2rem; + margin-top: 2rem; +} + +.blog-post-card { + background: white; + border-radius: 12px; + overflow: hidden; + box-shadow: 0 2px 15px rgba(0,0,0,0.08); + transition: transform 0.3s, box-shadow 0.3s; +} + +.blog-post-card:hover { + transform: translateY(-3px); + box-shadow: 0 6px 25px rgba(0,0,0,0.12); +} + +.post-image { + height: 200px; + background: linear-gradient(45deg, #667eea, #764ba2); + display: flex; + align-items: center; + justify-content: center; + color: white; + font-size: 2rem; +} + +.post-content { + padding: 1.5rem; +} + +.post-content h3 { + font-size: 1.3rem; + margin-bottom: 1rem; + color: #2d3748; + line-height: 1.3; +} + +/* Newsletter Signup */ +.newsletter-form { + display: flex; + flex-direction: column; + gap: 1rem; +} + +.newsletter-input { + padding: 1rem; + border: 2px solid #e2e8f0; + border-radius: 8px; + font-size: 1rem; + transition: border-color 0.3s; +} + +.newsletter-input:focus { + outline: none; + border-color: #3182ce; +} + +.newsletter-btn { + background: #ff6b35; + color: white; + border: none; + padding: 1rem; + border-radius: 8px; + font-size: 1rem; + font-weight: 600; + cursor: pointer; + transition: background 0.3s; +} + +.newsletter-btn:hover { + background: #e55a2b; +} + +#form_newsletter input[type="email"] { + width: 80%; + margin: 0 10%; + padding: 0.5vh; + font-size: 1rem; +} + +/* Footer */ +.footer { + background: #2d3748; + color: white; + text-align: center; + padding: 2rem 0; + margin-top: 4rem; +} + +/* Responsive */ +@media (max-width: 768px) { + .nav { + flex-direction: column; + gap: 1rem; + text-align: center; + } + + .nav-links { + flex-wrap: wrap; + justify-content: center; + } + + .blog-header h1 { + font-size: 2rem; + } + + .blog-grid { + grid-template-columns: 1fr; + gap: 2rem; + } + + .blog-posts-grid { + grid-template-columns: 1fr; + } + + .featured-content h2 { + font-size: 1.5rem; + } +} + +#pageBody { + padding-top: 2vh; +} + +* { + margin: 0; + padding: 0; +} + +body { + font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; + line-height: 1.6; + color: #333; +} + +/* Header */ +.header { + background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%); + color: white; + padding: 1rem 0; + box-shadow: 0 2px 10px rgba(0,0,0,0.1); +} + +.container { + max-width: 1200px; + margin: 0 auto; + padding: 0 20px; +} + +.nav { + display: flex; + justify-content: space-between; + align-items: center; +} + +.logo { + font-size: 1.5rem; + font-weight: bold; + color: #ff6b35; +} + +.nav-links { + display: flex; + list-style: none; + gap: 2rem; +} + +.nav-links a { + color: white; + text-decoration: none; + transition: color 0.3s; +} + +.nav-links a:hover { + color: #ff6b35; +} + +/* Breadcrumb */ +.breadcrumb { + background: white; + padding: 1rem 0; + border-bottom: 1px solid #e2e8f0; +} + +.breadcrumb-nav { + display: flex; + align-items: center; + gap: 0.5rem; + font-size: 0.9rem; + color: #666; +} + +.breadcrumb-nav a { + color: #3182ce; + text-decoration: none; +} + +.breadcrumb-nav a:hover { + text-decoration: underline; +} + +/* Main Content */ +.main-content { + padding: 3rem 0; +} + +.content-grid { + display: grid; + grid-template-columns: 2fr 1fr; + gap: 3rem; +} + +/* Article */ +.article { + background: white; + border-radius: 12px; + overflow: hidden; + box-shadow: 0 4px 20px rgba(0,0,0,0.1); +} + +.article-header { + padding: 2rem 2rem 1rem; +} + +.article-category { + display: inline-block; + background: #ff6b35; + color: white; + padding: 0.4rem 1.2rem; + border-radius: 25px; + font-size: 0.9rem; + font-weight: 600; + margin-bottom: 1.5rem; +} + +.article-title { + font-size: 2.2rem; + color: #2d3748; + line-height: 1.3; + margin-bottom: 1.5rem; +} + +.article-meta { + display: flex; + align-items: center; + gap: 2rem; + padding-bottom: 1.5rem; + border-bottom: 2px solid #e2e8f0; + margin-bottom: 2rem; +} + +.meta-item { + display: flex; + align-items: center; + gap: 0.5rem; + font-size: 0.95rem; + color: #666; +} + +.author-info { + display: flex; + align-items: center; + gap: 1rem; +} + +.author-avatar { + width: 50px; + height: 50px; + border-radius: 50%; + background: linear-gradient(45deg, #ff6b35, #3182ce); + display: flex; + align-items: center; + justify-content: center; + color: white; + font-weight: bold; + font-size: 1.2rem; +} + +.author-details h4 { + color: #2d3748; + margin-bottom: 0.2rem; +} + +.author-details p { + color: #666; + font-size: 0.9rem; +} + +.featured-image { + height: 400px; + background: linear-gradient(45deg, #ff6b35, #f093fb); + display: flex; + align-items: center; + justify-content: center; + color: white; + font-size: 4rem; + margin-bottom: 2rem; +} + +.article-content { + padding: 0 2rem 2rem; +} + +.article-content h2 { + font-size: 1.6rem; + color: #2d3748; + margin: 2rem 0 1rem; + padding-bottom: 0.5rem; + border-bottom: 2px solid #ff6b35; +} + +.article-content h3 { + font-size: 1.3rem; + color: #2d3748; + margin: 1.5rem 0 0.8rem; +} + +.article-content p { + margin-bottom: 1.5rem; + line-height: 1.8; + color: #4a5568; +} + +.article-content ul, .article-content ol { + margin: 1rem 0 1.5rem 2rem; + color: #4a5568; +} + +.article-content li { + margin-bottom: 0.5rem; + line-height: 1.7; +} + +.callout-box { + background: linear-gradient(135deg, #e6fffa 0%, #f0fff4 100%); + border-left: 4px solid #38a169; + padding: 1.5rem; + margin: 2rem 0; + border-radius: 0 8px 8px 0; +} + +.callout-box h4 { + color: #2f855a; + margin-bottom: 0.8rem; + font-size: 1.1rem; +} + +.quote-box { + background: #f7fafc; + border-left: 4px solid #3182ce; + padding: 1.5rem; + margin: 2rem 0; + font-style: italic; + font-size: 1.1rem; + color: #2d3748; +} + +/* Tags */ +.article-tags { + padding: 0 2rem 2rem; + border-top: 1px solid #e2e8f0; + margin-top: 2rem; + padding-top: 2rem; +} + +.tags-label { + font-weight: 600; + color: #2d3748; + margin-bottom: 1rem; + display: block; +} + +.tags-list { + display: flex; + flex-wrap: wrap; + gap: 0.8rem; +} + +.tag { + background: #e2e8f0; + color: #4a5568; + padding: 0.4rem 1rem; + border-radius: 20px; + text-decoration: none; + font-size: 0.9rem; + transition: all 0.3s; +} + +.tag:hover { + background: #3182ce; + color: white; +} + +/* Social Share */ +.social-share { + background: white; + padding: 1.5rem; + border-radius: 12px; + box-shadow: 0 2px 15px rgba(0,0,0,0.08); + margin-bottom: 2rem; +} + +.share-title { + font-weight: 600; + color: #2d3748; + margin-bottom: 1rem; +} + +.share-buttons { + display: flex; + gap: 1rem; +} + +.share-btn { + padding: 0.8rem 1.2rem; + border-radius: 8px; + text-decoration: none; + color: white; + font-weight: 500; + transition: transform 0.3s; + display: flex; + align-items: center; + gap: 0.5rem; +} + +.share-btn:hover { + transform: translateY(-2px); +} + +.share-twitter { background: #1da1f2; } +.share-linkedin { background: #0077b5; } +.share-facebook { background: #1877f2; } + +/* Sidebar */ +.sidebar { + display: flex; + flex-direction: column; + gap: 2rem; +} + +.sidebar-widget { + background: white; + padding: 2rem; + border-radius: 12px; + box-shadow: 0 2px 15px rgba(0,0,0,0.08); +} + +.widget-title { + font-size: 1.3rem; + margin-bottom: 1.5rem; + color: #2d3748; + border-bottom: 2px solid #ff6b35; + padding-bottom: 0.5rem; +} + +.author-bio { + text-align: center; +} + +.author-bio-avatar { + width: 80px; + height: 80px; + border-radius: 50%; + background: linear-gradient(45deg, #ff6b35, #3182ce); + display: flex; + align-items: center; + justify-content: center; + color: white; + font-weight: bold; + font-size: 2rem; + margin: 0 auto 1rem; +} + +.author-bio h4 { + color: #2d3748; + margin-bottom: 0.5rem; +} + +.author-bio p { + color: #666; + line-height: 1.6; + margin-bottom: 1rem; +} + +.related-posts { + list-style: none; +} + +.related-post-item { + padding: 1rem 0; + border-bottom: 1px solid #e2e8f0; +} + +.related-post-item:last-child { + border-bottom: none; +} + +.related-post-title { + font-weight: 600; + color: #2d3748; + text-decoration: none; + transition: color 0.3s; + display: block; + margin-bottom: 0.3rem; + line-height: 1.4; +} + +.related-post-title:hover { + color: #3182ce; +} + +.related-post-date { + font-size: 0.8rem; + color: #888; +} + +/* Newsletter Signup */ +.newsletter-form { + display: flex; + flex-direction: column; + gap: 1rem; +} + +.newsletter-input { + padding: 1rem; + border: 2px solid #e2e8f0; + border-radius: 8px; + font-size: 1rem; + transition: border-color 0.3s; +} + +.newsletter-input:focus { + outline: none; + border-color: #3182ce; +} + +.newsletter-btn { + background: #ff6b35; + color: white; + border: none; + padding: 1rem; + border-radius: 8px; + font-size: 1rem; + font-weight: 600; + cursor: pointer; + transition: background 0.3s; +} + +.newsletter-btn:hover { + background: #e55a2b; +} + +/* Navigation */ +.post-navigation { + background: white; + padding: 2rem; + border-radius: 12px; + box-shadow: 0 2px 15px rgba(0,0,0,0.08); + margin-top: 2rem; + display: grid; + grid-template-columns: 1fr 1fr; + gap: 2rem; +} + +.nav-post { + text-decoration: none; + color: #4a5568; + transition: color 0.3s; +} + +.nav-post:hover { + color: #3182ce; +} + +.nav-post.prev { + text-align: left; +} + +.nav-post.next { + text-align: right; +} + +.nav-label { + font-size: 0.9rem; + color: #888; + margin-bottom: 0.5rem; + display: block; +} + +.nav-title { + font-weight: 600; + line-height: 1.4; +} + +/* Footer */ +.footer { + background: #2d3748; + color: white; + text-align: center; + padding: 2rem 0; + margin-top: 4rem; +} + +/* Responsive */ +@media (max-width: 768px) { + .nav { + flex-direction: column; + gap: 1rem; + text-align: center; + } + + .nav-links { + flex-wrap: wrap; + justify-content: center; + } + + .content-grid { + grid-template-columns: 1fr; + gap: 2rem; + } + + .article-title { + font-size: 1.8rem; + } + + .article-meta { + flex-direction: column; + gap: 1rem; + align-items: flex-start; + } + + .author-info { + flex-direction: row; + } + + .share-buttons { + flex-direction: column; + } + + .post-navigation { + grid-template-columns: 1fr; + gap: 1rem; + } + + .nav-post.next { + text-align: left; + } +} + +/*# sourceMappingURL=blog_article.bundle.css.map*/ \ No newline at end of file diff --git a/static/dist/css/blog_article.bundle.css.map b/static/dist/css/blog_article.bundle.css.map new file mode 100644 index 0000000..b058880 --- /dev/null +++ b/static/dist/css/blog_article.bundle.css.map @@ -0,0 +1 @@ +{"version":3,"file":"css/blog_article.bundle.css","mappings":"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","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/sections/blog.css","webpack://app/./static/css/pages/blog/article.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n* {\n margin: 0;\n padding: 0;\n}\n\nbody {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n line-height: 1.6;\n color: #333;\n background: var(--colour-page-background-1);\n}\n\n/* Header */\n.header {\n background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%);\n color: white;\n padding: 1rem 0;\n box-shadow: 0 2px 10px rgba(0,0,0,0.1);\n}\n\n.container {\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.nav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 2rem;\n}\n\n.logo {\n font-size: 1.5rem;\n font-weight: bold;\n color: #ff6b35;\n}\n\n.nav-links {\n display: flex;\n list-style: none;\n gap: 2rem;\n}\n\n.nav-links a {\n color: white;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.nav-links a:hover {\n color: #ff6b35;\n}\n\n.blog-header {\n text-align: center;\n padding: 2rem 0;\n}\n\n.blog-header h1 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n}\n\n.blog-header p {\n font-size: 1.2rem;\n opacity: 0.9;\n max-width: 600px;\n margin: 0 auto;\n}\n\n/* Main Content */\n.main-content {\n padding: 3rem 0;\n}\n\n.blog-grid {\n display: grid;\n grid-template-columns: 2fr 1fr;\n gap: 3rem;\n margin-bottom: 3rem;\n}\n\n\n/* Hero Section */\n.hero {\n padding: 8rem 2rem 4rem;\n background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */\n}\n.hero-content {\n max-width: 600px;\n}\n.hero h1 {\n line-height: 1.2;\n margin-bottom: 1.5rem;\n color: var(--colour-text);\n}\n.hero p {\n font-size: 1.25rem;\n margin-bottom: 2rem;\n color: var(--colour-secondary);\n}\nsection.hero .button {\n margin: 0 auto;\n margin-bottom: 2vh;\n display: block;\n background-color: var(--colour-success-title);\n color: var(--colour-text-background);\n}\nsection.hero .button:hover {\n background-color: var(--colour-success-highlight);\n color: var(--colour-success-title);\n}\n\n\n/* Featured Post */\n.featured-post {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 4px 20px rgba(0,0,0,0.1);\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.featured-post:hover {\n transform: translateY(-5px);\n box-shadow: 0 8px 30px rgba(0,0,0,0.15);\n}\n\n.featured-image {\n height: 300px;\n background: linear-gradient(45deg, #ff6b35, #f093fb);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 3rem;\n}\n\n.featured-content {\n padding: 2rem;\n}\n\n.post-category {\n display: inline-block;\n background: #ff6b35;\n color: white;\n padding: 0.3rem 1rem;\n border-radius: 20px;\n font-size: 0.8rem;\n font-weight: 600;\n margin-bottom: 1rem;\n}\n\n.featured-content h2 {\n font-size: 1.8rem;\n margin-bottom: 1rem;\n color: #2d3748;\n line-height: 1.3;\n}\n\n.post-excerpt {\n color: #666;\n margin-bottom: 1.5rem;\n line-height: 1.7;\n}\n\n.post-meta {\n display: flex;\n align-items: center;\n gap: 1rem;\n font-size: 0.9rem;\n color: #888;\n margin-bottom: 1rem;\n}\n\n.read-more {\n display: inline-flex;\n align-items: center;\n color: #3182ce;\n text-decoration: none;\n font-weight: 600;\n transition: color 0.3s;\n}\n\n.read-more:hover {\n color: #2c5282;\n}\n\n.read-more::after {\n content: ' β†’';\n margin-left: 0.5rem;\n transition: margin-left 0.3s;\n}\n\n.read-more:hover::after {\n margin-left: 1rem;\n}\n\n/* Sidebar */\n.sidebar {\n display: flex;\n flex-direction: column;\n gap: 2rem;\n}\n\n.sidebar-widget {\n background: white;\n padding: 2rem;\n border-radius: 12px;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n}\n\n.widget-title {\n font-size: 1.3rem;\n margin-bottom: 1.5rem;\n color: #2d3748;\n border-bottom: 2px solid #ff6b35;\n padding-bottom: 0.5rem;\n}\n\n.category-list {\n list-style: none;\n}\n\n.category-list li {\n padding: 0.8rem 0;\n border-bottom: 1px solid #e2e8f0;\n display: flex;\n justify-content: space-between;\n}\n\n.category-list li:last-child {\n border-bottom: none;\n}\n\n.category-list a {\n color: #4a5568;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.category-list a:hover {\n color: #3182ce;\n}\n\n.post-count {\n background: #e2e8f0;\n color: #4a5568;\n padding: 0.2rem 0.6rem;\n border-radius: 12px;\n font-size: 0.8rem;\n}\n\n.recent-posts {\n list-style: none;\n}\n\n.recent-post-item {\n padding: 1rem 0;\n border-bottom: 1px solid #e2e8f0;\n}\n\n.recent-post-item:last-child {\n border-bottom: none;\n}\n\n.recent-post-title {\n font-weight: 600;\n color: #2d3748;\n text-decoration: none;\n transition: color 0.3s;\n display: block;\n margin-bottom: 0.3rem;\n}\n\n.recent-post-title:hover {\n color: #3182ce;\n}\n\n.recent-post-date {\n font-size: 0.8rem;\n color: #888;\n}\n\n/* Blog Posts Grid */\n.blog-posts-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));\n gap: 2rem;\n margin-top: 2rem;\n}\n\n.blog-post-card {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.blog-post-card:hover {\n transform: translateY(-3px);\n box-shadow: 0 6px 25px rgba(0,0,0,0.12);\n}\n\n.post-image {\n height: 200px;\n background: linear-gradient(45deg, #667eea, #764ba2);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 2rem;\n}\n\n.post-content {\n padding: 1.5rem;\n}\n\n.post-content h3 {\n font-size: 1.3rem;\n margin-bottom: 1rem;\n color: #2d3748;\n line-height: 1.3;\n}\n\n/* Newsletter Signup */\n.newsletter-form {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.newsletter-input {\n padding: 1rem;\n border: 2px solid #e2e8f0;\n border-radius: 8px;\n font-size: 1rem;\n transition: border-color 0.3s;\n}\n\n.newsletter-input:focus {\n outline: none;\n border-color: #3182ce;\n}\n\n.newsletter-btn {\n background: #ff6b35;\n color: white;\n border: none;\n padding: 1rem;\n border-radius: 8px;\n font-size: 1rem;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.3s;\n}\n\n.newsletter-btn:hover {\n background: #e55a2b;\n}\n\n#form_newsletter input[type=\"email\"] {\n width: 80%;\n margin: 0 10%;\n padding: 0.5vh;\n font-size: 1rem;\n}\n\n/* Footer */\n.footer {\n background: #2d3748;\n color: white;\n text-align: center;\n padding: 2rem 0;\n margin-top: 4rem;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n .nav {\n flex-direction: column;\n gap: 1rem;\n text-align: center;\n }\n\n .nav-links {\n flex-wrap: wrap;\n justify-content: center;\n }\n\n .blog-header h1 {\n font-size: 2rem;\n }\n\n .blog-grid {\n grid-template-columns: 1fr;\n gap: 2rem;\n }\n\n .blog-posts-grid {\n grid-template-columns: 1fr;\n }\n\n .featured-content h2 {\n font-size: 1.5rem;\n }\n}","\n#pageBody {\n padding-top: 2vh;\n}\n\n* {\n margin: 0;\n padding: 0;\n}\n\nbody {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n line-height: 1.6;\n color: #333;\n}\n\n/* Header */\n.header {\n background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%);\n color: white;\n padding: 1rem 0;\n box-shadow: 0 2px 10px rgba(0,0,0,0.1);\n}\n\n.container {\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.nav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.logo {\n font-size: 1.5rem;\n font-weight: bold;\n color: #ff6b35;\n}\n\n.nav-links {\n display: flex;\n list-style: none;\n gap: 2rem;\n}\n\n.nav-links a {\n color: white;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.nav-links a:hover {\n color: #ff6b35;\n}\n\n/* Breadcrumb */\n.breadcrumb {\n background: white;\n padding: 1rem 0;\n border-bottom: 1px solid #e2e8f0;\n}\n\n.breadcrumb-nav {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 0.9rem;\n color: #666;\n}\n\n.breadcrumb-nav a {\n color: #3182ce;\n text-decoration: none;\n}\n\n.breadcrumb-nav a:hover {\n text-decoration: underline;\n}\n\n/* Main Content */\n.main-content {\n padding: 3rem 0;\n}\n\n.content-grid {\n display: grid;\n grid-template-columns: 2fr 1fr;\n gap: 3rem;\n}\n\n/* Article */\n.article {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 4px 20px rgba(0,0,0,0.1);\n}\n\n.article-header {\n padding: 2rem 2rem 1rem;\n}\n\n.article-category {\n display: inline-block;\n background: #ff6b35;\n color: white;\n padding: 0.4rem 1.2rem;\n border-radius: 25px;\n font-size: 0.9rem;\n font-weight: 600;\n margin-bottom: 1.5rem;\n}\n\n.article-title {\n font-size: 2.2rem;\n color: #2d3748;\n line-height: 1.3;\n margin-bottom: 1.5rem;\n}\n\n.article-meta {\n display: flex;\n align-items: center;\n gap: 2rem;\n padding-bottom: 1.5rem;\n border-bottom: 2px solid #e2e8f0;\n margin-bottom: 2rem;\n}\n\n.meta-item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 0.95rem;\n color: #666;\n}\n\n.author-info {\n display: flex;\n align-items: center;\n gap: 1rem;\n}\n\n.author-avatar {\n width: 50px;\n height: 50px;\n border-radius: 50%;\n background: linear-gradient(45deg, #ff6b35, #3182ce);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-weight: bold;\n font-size: 1.2rem;\n}\n\n.author-details h4 {\n color: #2d3748;\n margin-bottom: 0.2rem;\n}\n\n.author-details p {\n color: #666;\n font-size: 0.9rem;\n}\n\n.featured-image {\n height: 400px;\n background: linear-gradient(45deg, #ff6b35, #f093fb);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 4rem;\n margin-bottom: 2rem;\n}\n\n.article-content {\n padding: 0 2rem 2rem;\n}\n\n.article-content h2 {\n font-size: 1.6rem;\n color: #2d3748;\n margin: 2rem 0 1rem;\n padding-bottom: 0.5rem;\n border-bottom: 2px solid #ff6b35;\n}\n\n.article-content h3 {\n font-size: 1.3rem;\n color: #2d3748;\n margin: 1.5rem 0 0.8rem;\n}\n\n.article-content p {\n margin-bottom: 1.5rem;\n line-height: 1.8;\n color: #4a5568;\n}\n\n.article-content ul, .article-content ol {\n margin: 1rem 0 1.5rem 2rem;\n color: #4a5568;\n}\n\n.article-content li {\n margin-bottom: 0.5rem;\n line-height: 1.7;\n}\n\n.callout-box {\n background: linear-gradient(135deg, #e6fffa 0%, #f0fff4 100%);\n border-left: 4px solid #38a169;\n padding: 1.5rem;\n margin: 2rem 0;\n border-radius: 0 8px 8px 0;\n}\n\n.callout-box h4 {\n color: #2f855a;\n margin-bottom: 0.8rem;\n font-size: 1.1rem;\n}\n\n.quote-box {\n background: #f7fafc;\n border-left: 4px solid #3182ce;\n padding: 1.5rem;\n margin: 2rem 0;\n font-style: italic;\n font-size: 1.1rem;\n color: #2d3748;\n}\n\n/* Tags */\n.article-tags {\n padding: 0 2rem 2rem;\n border-top: 1px solid #e2e8f0;\n margin-top: 2rem;\n padding-top: 2rem;\n}\n\n.tags-label {\n font-weight: 600;\n color: #2d3748;\n margin-bottom: 1rem;\n display: block;\n}\n\n.tags-list {\n display: flex;\n flex-wrap: wrap;\n gap: 0.8rem;\n}\n\n.tag {\n background: #e2e8f0;\n color: #4a5568;\n padding: 0.4rem 1rem;\n border-radius: 20px;\n text-decoration: none;\n font-size: 0.9rem;\n transition: all 0.3s;\n}\n\n.tag:hover {\n background: #3182ce;\n color: white;\n}\n\n/* Social Share */\n.social-share {\n background: white;\n padding: 1.5rem;\n border-radius: 12px;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n margin-bottom: 2rem;\n}\n\n.share-title {\n font-weight: 600;\n color: #2d3748;\n margin-bottom: 1rem;\n}\n\n.share-buttons {\n display: flex;\n gap: 1rem;\n}\n\n.share-btn {\n padding: 0.8rem 1.2rem;\n border-radius: 8px;\n text-decoration: none;\n color: white;\n font-weight: 500;\n transition: transform 0.3s;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.share-btn:hover {\n transform: translateY(-2px);\n}\n\n.share-twitter { background: #1da1f2; }\n.share-linkedin { background: #0077b5; }\n.share-facebook { background: #1877f2; }\n\n/* Sidebar */\n.sidebar {\n display: flex;\n flex-direction: column;\n gap: 2rem;\n}\n\n.sidebar-widget {\n background: white;\n padding: 2rem;\n border-radius: 12px;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n}\n\n.widget-title {\n font-size: 1.3rem;\n margin-bottom: 1.5rem;\n color: #2d3748;\n border-bottom: 2px solid #ff6b35;\n padding-bottom: 0.5rem;\n}\n\n.author-bio {\n text-align: center;\n}\n\n.author-bio-avatar {\n width: 80px;\n height: 80px;\n border-radius: 50%;\n background: linear-gradient(45deg, #ff6b35, #3182ce);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-weight: bold;\n font-size: 2rem;\n margin: 0 auto 1rem;\n}\n\n.author-bio h4 {\n color: #2d3748;\n margin-bottom: 0.5rem;\n}\n\n.author-bio p {\n color: #666;\n line-height: 1.6;\n margin-bottom: 1rem;\n}\n\n.related-posts {\n list-style: none;\n}\n\n.related-post-item {\n padding: 1rem 0;\n border-bottom: 1px solid #e2e8f0;\n}\n\n.related-post-item:last-child {\n border-bottom: none;\n}\n\n.related-post-title {\n font-weight: 600;\n color: #2d3748;\n text-decoration: none;\n transition: color 0.3s;\n display: block;\n margin-bottom: 0.3rem;\n line-height: 1.4;\n}\n\n.related-post-title:hover {\n color: #3182ce;\n}\n\n.related-post-date {\n font-size: 0.8rem;\n color: #888;\n}\n\n/* Newsletter Signup */\n.newsletter-form {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.newsletter-input {\n padding: 1rem;\n border: 2px solid #e2e8f0;\n border-radius: 8px;\n font-size: 1rem;\n transition: border-color 0.3s;\n}\n\n.newsletter-input:focus {\n outline: none;\n border-color: #3182ce;\n}\n\n.newsletter-btn {\n background: #ff6b35;\n color: white;\n border: none;\n padding: 1rem;\n border-radius: 8px;\n font-size: 1rem;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.3s;\n}\n\n.newsletter-btn:hover {\n background: #e55a2b;\n}\n\n/* Navigation */\n.post-navigation {\n background: white;\n padding: 2rem;\n border-radius: 12px;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n margin-top: 2rem;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 2rem;\n}\n\n.nav-post {\n text-decoration: none;\n color: #4a5568;\n transition: color 0.3s;\n}\n\n.nav-post:hover {\n color: #3182ce;\n}\n\n.nav-post.prev {\n text-align: left;\n}\n\n.nav-post.next {\n text-align: right;\n}\n\n.nav-label {\n font-size: 0.9rem;\n color: #888;\n margin-bottom: 0.5rem;\n display: block;\n}\n\n.nav-title {\n font-weight: 600;\n line-height: 1.4;\n}\n\n/* Footer */\n.footer {\n background: #2d3748;\n color: white;\n text-align: center;\n padding: 2rem 0;\n margin-top: 4rem;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n .nav {\n flex-direction: column;\n gap: 1rem;\n text-align: center;\n }\n\n .nav-links {\n flex-wrap: wrap;\n justify-content: center;\n }\n\n .content-grid {\n grid-template-columns: 1fr;\n gap: 2rem;\n }\n\n .article-title {\n font-size: 1.8rem;\n }\n\n .article-meta {\n flex-direction: column;\n gap: 1rem;\n align-items: flex-start;\n }\n\n .author-info {\n flex-direction: row;\n }\n\n .share-buttons {\n flex-direction: column;\n }\n\n .post-navigation {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n\n .nav-post.next {\n text-align: left;\n }\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/css/blog_home.bundle.css b/static/dist/css/blog_home.bundle.css index 685655c..a4b78af 100644 --- a/static/dist/css/blog_home.bundle.css +++ b/static/dist/css/blog_home.bundle.css @@ -76,369 +76,17 @@ display: none; } } -/* Common */ -section { - padding: 2rem; -} -p { - width: 100%; - font-size: 16px; -} -p.section-title, -p.section-subtitle { - margin: 0 auto; -} -.section-subtitle { - font-size: 18px; -} -ul li { - font-size: 16px; -} - -section.benefits .card.benefits, -section.social-proof .card.social-proof { - display: flex; -} - -section.problem, -section.benefits, -section.solution, -section.testimonial { - padding: 4rem 2rem; - background: var(--colour-page-background-1); -} -section.problem .card.problem, -section.benefits .card.benefits, -section.solution .card.solution, -section.testimonial .card.testimonial { - background: var(--colour-text-background); - border-radius: 8px; - max-width: 800px; - margin: 3rem auto 0; - box-shadow: 0 4px 6px rgba(0,0,0,0.1); -} - - -/* Hero Section */ -.hero { - padding: 8rem 2rem 4rem; - background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */ -} -.hero-content { - max-width: 600px; -} -.hero h1 { - line-height: 1.2; - margin-bottom: 1.5rem; - color: var(--colour-text); -} -.hero p { - font-size: 1.25rem; - margin-bottom: 2rem; - color: var(--colour-secondary); -} -section.hero .button { - margin: 0 auto; - margin-bottom: 2vh; - display: block; - background-color: var(--colour-success-title); - color: var(--colour-text-background); -} -section.hero .button:hover { - background-color: var(--colour-success-highlight); - color: var(--colour-success-title); -} - - -/* Problem Section */ -section.problem { - background-color: var(--colour-error-highlight); -} -section.problem h2 { - color: var(--colour-error-title); -} -section.problem .card { - border-left: 4px solid var(--colour-error-accent); -} -section.problem ul li { - list-style: none; -} - - -/* -section.problem .problem.card:hover { - transform: translateY(-5px); -} -*/ -section.problem .section-subtitle { - /* font-size: 18px; */ - font-weight: bold; -} -/* -section.problem ul li::before { - content: "😀"; - position: absolute; - left: 0; - } -*/ - - -/* Benefits Section * / -section.benefits .section-subtitle { - font-size: 18px; - font-weight: bold; -} -*/ -section.benefits { - background-color: var(--colour-success-highlight); -} -section.benefits .container .card .container { - min-width: 250px; -} -section.benefits h2 { - color: var(--colour-success); -} -section.benefits .card { - border-left: 4px solid var(--colour-success); -} - -/* Solution Section */ -section.solution .container .card { - margin-top: 1vh; - max-width: min(2000px, 80vw); -} - -section.benefits .card.benefits .container, -section.solution .container .card .container { - padding: 1vh 2vw; - max-width: min(500px, 80vw); -} -section.solution .container .card .container p { - margin-bottom: 1vh; -} -section.solution .project-thumbnail img { - max-width: min(500px, 80vw); - max-height: min(500px, 80vw); - border-radius: 1vh; -} - -section.solution .project-thumbnail img { - overflow: hidden; - transition: transform 0.3s ease; -} -section.solution .project-thumbnail:hover { - transform: scale(1.75); -} - -/* Social Proof Section * / -section.social-proof { - padding: 6rem 0; - background: white; -} - -section.social-proof .card.social-proof { - background: var(--colour-page-background); - padding: 2rem; - border-radius: 8px; - text-align: center; - max-width: 400px; - margin: 3rem auto 0; -} - -section.social-proof ul { - list-style: none; - margin: 0; -} -* / - -section.social-proof .section-subtitle { - font-size: 16px; -} -section.social-proof ul li { - font-size: 14px; -} -*/ -section.social-proof { - padding: 4rem 0; - background: var(--colour-text-background); -} -section.social-proof .card.social-proof { - background: var(--colour-page-background); - border-radius: 8px; - transition: transform 0.3s ease; - padding: 1.5vh; -} -section.social-proof .section-title { - font-weight: bold; - color: var(--colour-text-link-visited); - margin-bottom: 0.25vh; -} -section.social-proof .section-subtitle { - margin: 0 1vw 1vh; -} -section.social-proof .container { - width: fit-content; - margin: 0 2vw; - min-width: 175px; -} -section.social-proof > .container { - max-width: min(900px, 90vw); - margin: 1vh auto; -} - -/* Early Access Section * / -section.early-access { - padding: 6rem 0; - background: white; -} - -section.early-access .card.early-access { - background: var(--colour-page-background); - padding: 2rem; - border-radius: 8px; - text-align: center; - max-width: 400px; - margin: 3rem auto 0; -} - -section.early-access ul { - list-style: none; - margin: 0; -} -section.early-access a.button { - margin: 0.25rem; -} -*/ - -/* Features section * / -section.features .button { - margin-top: 0; -} -*/ - -/* Testimonials section */ -section.testimonial p { - margin-bottom: 1vh; -} -section.testimonial h2 { - margin: 0 auto; -} - -/* CTA Section */ -.cta-1, -.cta-2 { - padding: 6rem 2rem; - background: linear-gradient(135deg, var(--colour-primary), var(--colour-text-link-visited)); - color: white; - text-align: center; -} - -section.cta-2 .button { - margin: 2vh 1vw; -} -section.cta-2 .card { - background-color: transparent; - margin: 1vh auto; -} -section.cta-2 .card .container { - background-color: var(--colour-page-background); - color: var(--colour-primary); - border-radius: 1vh; - padding: 1.5vh 3vw; - margin: 1vh; - min-width: 200px; - min-height: 120px; -} -section.cta-2 .card .container h3 { - margin: 0 auto; -} -section.cta-2 .container p { - margin-top: 1vh; -} -/* FAQs * / -section.faq .button { - margin-bottom: 0.25rem; -} -*/ - - -/* Animations */ -/* Fallback styles to ensure content is visible without JS */ -.reveal { - opacity: 1; /* Default visible state */ -} - -/* Only hide elements if browser supports Intersection Observer */ -@supports (animation-name: fade) { - .reveal { - opacity: 0; - } - - .reveal.active { - animation: fade-up 0.8s ease-out forwards; - } -} - -@keyframes fade-up { - 0% { - opacity: 0; - transform: translateY(30px); - } - 100% { - opacity: 1; - transform: translateY(0); - } -} - -.delay-1 { animation-delay: 0.1s; } -.delay-2 { animation-delay: 0.2s; } -.delay-3 { animation-delay: 0.3s; } -.delay-4 { animation-delay: 0.4s; } - -/* Buttons */ -.topnav .nav-links .button { - padding: 0.5vh 0.75vh; -} -.button { - padding: 0.75rem 1.5rem; - /* border-radius: 6px; * / - margin: 0.75rem; */ - font-size: 1.2rem; -} - -.button-primary { - background: var(--colour-primary); - color: white; -} - -.button-primary:hover { - background: var(--colour-secondary); -} - -.button-light { - background: white; - color: var(--colour-primary); -} - -.button-light:hover { - background: var(--colour-page-background); -} - -.logo:hover{ - cursor: pointer; -} * { margin: 0; padding: 0; - box-sizing: border-box; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: #333; - background-color: #f8f9fa; + background: var(--colour-page-background-1); } /* Header */ @@ -513,6 +161,38 @@ body { margin-bottom: 3rem; } + +/* Hero Section */ +.hero { + padding: 8rem 2rem 4rem; + background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */ +} +.hero-content { + max-width: 600px; +} +.hero h1 { + line-height: 1.2; + margin-bottom: 1.5rem; + color: var(--colour-text); +} +.hero p { + font-size: 1.25rem; + margin-bottom: 2rem; + color: var(--colour-secondary); +} +section.hero .button { + margin: 0 auto; + margin-bottom: 2vh; + display: block; + background-color: var(--colour-success-title); + color: var(--colour-text-background); +} +section.hero .button:hover { + background-color: var(--colour-success-highlight); + color: var(--colour-success-title); +} + + /* Featured Post */ .featured-post { background: white; @@ -761,6 +441,13 @@ body { background: #e55a2b; } +#form_newsletter input[type="email"] { + width: 80%; + margin: 0 10%; + padding: 0.5vh; + font-size: 1rem; +} + /* Footer */ .footer { background: #2d3748; diff --git a/static/dist/css/blog_home.bundle.css.map b/static/dist/css/blog_home.bundle.css.map index de24ed1..fd56856 100644 --- a/static/dist/css/blog_home.bundle.css.map +++ b/static/dist/css/blog_home.bundle.css.map @@ -1 +1 @@ -{"version":3,"file":"css/blog_home.bundle.css","mappings":"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","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/pages/core/home.css","webpack://app/./static/css/sections/blog.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","/* Common */\nsection {\n padding: 2rem;\n}\np {\n width: 100%;\n font-size: 16px;\n}\np.section-title,\np.section-subtitle {\n margin: 0 auto;\n}\n.section-subtitle {\n font-size: 18px;\n}\nul li {\n font-size: 16px;\n}\n\nsection.benefits .card.benefits,\nsection.social-proof .card.social-proof {\n display: flex;\n}\n\nsection.problem,\nsection.benefits,\nsection.solution,\nsection.testimonial {\n padding: 4rem 2rem;\n background: var(--colour-page-background-1);\n}\nsection.problem .card.problem,\nsection.benefits .card.benefits,\nsection.solution .card.solution,\nsection.testimonial .card.testimonial {\n background: var(--colour-text-background);\n border-radius: 8px;\n max-width: 800px;\n margin: 3rem auto 0;\n box-shadow: 0 4px 6px rgba(0,0,0,0.1);\n}\n\n\n/* Hero Section */\n.hero {\n padding: 8rem 2rem 4rem;\n background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */\n}\n.hero-content {\n max-width: 600px;\n}\n.hero h1 {\n line-height: 1.2;\n margin-bottom: 1.5rem;\n color: var(--colour-text);\n}\n.hero p {\n font-size: 1.25rem;\n margin-bottom: 2rem;\n color: var(--colour-secondary);\n}\nsection.hero .button {\n margin: 0 auto;\n margin-bottom: 2vh;\n display: block;\n background-color: var(--colour-success-title);\n color: var(--colour-text-background);\n}\nsection.hero .button:hover {\n background-color: var(--colour-success-highlight);\n color: var(--colour-success-title);\n}\n\n\n/* Problem Section */\nsection.problem {\n background-color: var(--colour-error-highlight);\n}\nsection.problem h2 {\n color: var(--colour-error-title);\n}\nsection.problem .card {\n border-left: 4px solid var(--colour-error-accent);\n}\nsection.problem ul li {\n list-style: none;\n}\n\n\n/*\nsection.problem .problem.card:hover {\n transform: translateY(-5px);\n}\n*/\nsection.problem .section-subtitle {\n /* font-size: 18px; */\n font-weight: bold;\n}\n/*\nsection.problem ul li::before {\n content: \"😀\";\n position: absolute;\n left: 0;\n }\n*/\n\n\n/* Benefits Section * /\nsection.benefits .section-subtitle {\n font-size: 18px;\n font-weight: bold;\n}\n*/\nsection.benefits {\n background-color: var(--colour-success-highlight);\n}\nsection.benefits .container .card .container {\n min-width: 250px;\n}\nsection.benefits h2 {\n color: var(--colour-success);\n}\nsection.benefits .card {\n border-left: 4px solid var(--colour-success);\n}\n\n/* Solution Section */\nsection.solution .container .card {\n margin-top: 1vh;\n max-width: min(2000px, 80vw);\n}\n\nsection.benefits .card.benefits .container,\nsection.solution .container .card .container {\n padding: 1vh 2vw;\n max-width: min(500px, 80vw);\n}\nsection.solution .container .card .container p {\n margin-bottom: 1vh;\n}\nsection.solution .project-thumbnail img {\n max-width: min(500px, 80vw);\n max-height: min(500px, 80vw);\n border-radius: 1vh;\n}\n\nsection.solution .project-thumbnail img {\n overflow: hidden;\n transition: transform 0.3s ease;\n}\nsection.solution .project-thumbnail:hover {\n transform: scale(1.75);\n}\n\n/* Social Proof Section * /\nsection.social-proof {\n padding: 6rem 0;\n background: white;\n}\n\nsection.social-proof .card.social-proof {\n background: var(--colour-page-background);\n padding: 2rem;\n border-radius: 8px;\n text-align: center;\n max-width: 400px;\n margin: 3rem auto 0;\n}\n\nsection.social-proof ul {\n list-style: none;\n margin: 0;\n}\n* /\n\nsection.social-proof .section-subtitle {\n font-size: 16px;\n}\nsection.social-proof ul li {\n font-size: 14px;\n}\n*/\nsection.social-proof {\n padding: 4rem 0;\n background: var(--colour-text-background);\n}\nsection.social-proof .card.social-proof { \n background: var(--colour-page-background);\n border-radius: 8px;\n transition: transform 0.3s ease;\n padding: 1.5vh;\n}\nsection.social-proof .section-title {\n font-weight: bold;\n color: var(--colour-text-link-visited);\n margin-bottom: 0.25vh;\n}\nsection.social-proof .section-subtitle {\n margin: 0 1vw 1vh;\n}\nsection.social-proof .container {\n width: fit-content;\n margin: 0 2vw;\n min-width: 175px;\n}\nsection.social-proof > .container {\n max-width: min(900px, 90vw);\n margin: 1vh auto;\n}\n\n/* Early Access Section * /\nsection.early-access {\n padding: 6rem 0;\n background: white;\n}\n\nsection.early-access .card.early-access {\n background: var(--colour-page-background);\n padding: 2rem;\n border-radius: 8px;\n text-align: center;\n max-width: 400px;\n margin: 3rem auto 0;\n}\n\nsection.early-access ul {\n list-style: none;\n margin: 0;\n}\nsection.early-access a.button {\n margin: 0.25rem;\n}\n*/\n\n/* Features section * /\nsection.features .button {\n margin-top: 0;\n}\n*/\n\n/* Testimonials section */\nsection.testimonial p {\n margin-bottom: 1vh;\n}\nsection.testimonial h2 {\n margin: 0 auto;\n}\n\n/* CTA Section */\n.cta-1,\n.cta-2 {\n padding: 6rem 2rem;\n background: linear-gradient(135deg, var(--colour-primary), var(--colour-text-link-visited));\n color: white;\n text-align: center;\n}\n\nsection.cta-2 .button {\n margin: 2vh 1vw;\n}\nsection.cta-2 .card {\n background-color: transparent;\n margin: 1vh auto;\n}\nsection.cta-2 .card .container {\n background-color: var(--colour-page-background);\n color: var(--colour-primary);\n border-radius: 1vh;\n padding: 1.5vh 3vw;\n margin: 1vh;\n min-width: 200px;\n min-height: 120px;\n}\nsection.cta-2 .card .container h3 {\n margin: 0 auto;\n}\nsection.cta-2 .container p {\n margin-top: 1vh;\n}\n/* FAQs * /\nsection.faq .button {\n margin-bottom: 0.25rem;\n}\n*/\n\n\n/* Animations */\n/* Fallback styles to ensure content is visible without JS */\n.reveal {\n opacity: 1; /* Default visible state */\n}\n\n/* Only hide elements if browser supports Intersection Observer */\n@supports (animation-name: fade) {\n .reveal {\n opacity: 0;\n }\n\n .reveal.active {\n animation: fade-up 0.8s ease-out forwards;\n }\n}\n\n@keyframes fade-up {\n 0% {\n opacity: 0;\n transform: translateY(30px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.delay-1 { animation-delay: 0.1s; }\n.delay-2 { animation-delay: 0.2s; }\n.delay-3 { animation-delay: 0.3s; }\n.delay-4 { animation-delay: 0.4s; }\n\n/* Buttons */\n.topnav .nav-links .button {\n padding: 0.5vh 0.75vh;\n}\n.button {\n padding: 0.75rem 1.5rem;\n /* border-radius: 6px; * /\n margin: 0.75rem; */\n font-size: 1.2rem;\n}\n\n.button-primary {\n background: var(--colour-primary);\n color: white;\n}\n\n.button-primary:hover {\n background: var(--colour-secondary);\n}\n\n.button-light {\n background: white;\n color: var(--colour-primary);\n}\n\n.button-light:hover {\n background: var(--colour-page-background);\n}\n\n.logo:hover{\n cursor: pointer;\n}","\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\nbody {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n line-height: 1.6;\n color: #333;\n background-color: #f8f9fa;\n}\n\n/* Header */\n.header {\n background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%);\n color: white;\n padding: 1rem 0;\n box-shadow: 0 2px 10px rgba(0,0,0,0.1);\n}\n\n.container {\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.nav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 2rem;\n}\n\n.logo {\n font-size: 1.5rem;\n font-weight: bold;\n color: #ff6b35;\n}\n\n.nav-links {\n display: flex;\n list-style: none;\n gap: 2rem;\n}\n\n.nav-links a {\n color: white;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.nav-links a:hover {\n color: #ff6b35;\n}\n\n.blog-header {\n text-align: center;\n padding: 2rem 0;\n}\n\n.blog-header h1 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n}\n\n.blog-header p {\n font-size: 1.2rem;\n opacity: 0.9;\n max-width: 600px;\n margin: 0 auto;\n}\n\n/* Main Content */\n.main-content {\n padding: 3rem 0;\n}\n\n.blog-grid {\n display: grid;\n grid-template-columns: 2fr 1fr;\n gap: 3rem;\n margin-bottom: 3rem;\n}\n\n/* Featured Post */\n.featured-post {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 4px 20px rgba(0,0,0,0.1);\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.featured-post:hover {\n transform: translateY(-5px);\n box-shadow: 0 8px 30px rgba(0,0,0,0.15);\n}\n\n.featured-image {\n height: 300px;\n background: linear-gradient(45deg, #ff6b35, #f093fb);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 3rem;\n}\n\n.featured-content {\n padding: 2rem;\n}\n\n.post-category {\n display: inline-block;\n background: #ff6b35;\n color: white;\n padding: 0.3rem 1rem;\n border-radius: 20px;\n font-size: 0.8rem;\n font-weight: 600;\n margin-bottom: 1rem;\n}\n\n.featured-content h2 {\n font-size: 1.8rem;\n margin-bottom: 1rem;\n color: #2d3748;\n line-height: 1.3;\n}\n\n.post-excerpt {\n color: #666;\n margin-bottom: 1.5rem;\n line-height: 1.7;\n}\n\n.post-meta {\n display: flex;\n align-items: center;\n gap: 1rem;\n font-size: 0.9rem;\n color: #888;\n margin-bottom: 1rem;\n}\n\n.read-more {\n display: inline-flex;\n align-items: center;\n color: #3182ce;\n text-decoration: none;\n font-weight: 600;\n transition: color 0.3s;\n}\n\n.read-more:hover {\n color: #2c5282;\n}\n\n.read-more::after {\n content: ' β†’';\n margin-left: 0.5rem;\n transition: margin-left 0.3s;\n}\n\n.read-more:hover::after {\n margin-left: 1rem;\n}\n\n/* Sidebar */\n.sidebar {\n display: flex;\n flex-direction: column;\n gap: 2rem;\n}\n\n.sidebar-widget {\n background: white;\n padding: 2rem;\n border-radius: 12px;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n}\n\n.widget-title {\n font-size: 1.3rem;\n margin-bottom: 1.5rem;\n color: #2d3748;\n border-bottom: 2px solid #ff6b35;\n padding-bottom: 0.5rem;\n}\n\n.category-list {\n list-style: none;\n}\n\n.category-list li {\n padding: 0.8rem 0;\n border-bottom: 1px solid #e2e8f0;\n display: flex;\n justify-content: space-between;\n}\n\n.category-list li:last-child {\n border-bottom: none;\n}\n\n.category-list a {\n color: #4a5568;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.category-list a:hover {\n color: #3182ce;\n}\n\n.post-count {\n background: #e2e8f0;\n color: #4a5568;\n padding: 0.2rem 0.6rem;\n border-radius: 12px;\n font-size: 0.8rem;\n}\n\n.recent-posts {\n list-style: none;\n}\n\n.recent-post-item {\n padding: 1rem 0;\n border-bottom: 1px solid #e2e8f0;\n}\n\n.recent-post-item:last-child {\n border-bottom: none;\n}\n\n.recent-post-title {\n font-weight: 600;\n color: #2d3748;\n text-decoration: none;\n transition: color 0.3s;\n display: block;\n margin-bottom: 0.3rem;\n}\n\n.recent-post-title:hover {\n color: #3182ce;\n}\n\n.recent-post-date {\n font-size: 0.8rem;\n color: #888;\n}\n\n/* Blog Posts Grid */\n.blog-posts-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));\n gap: 2rem;\n margin-top: 2rem;\n}\n\n.blog-post-card {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.blog-post-card:hover {\n transform: translateY(-3px);\n box-shadow: 0 6px 25px rgba(0,0,0,0.12);\n}\n\n.post-image {\n height: 200px;\n background: linear-gradient(45deg, #667eea, #764ba2);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 2rem;\n}\n\n.post-content {\n padding: 1.5rem;\n}\n\n.post-content h3 {\n font-size: 1.3rem;\n margin-bottom: 1rem;\n color: #2d3748;\n line-height: 1.3;\n}\n\n/* Newsletter Signup */\n.newsletter-form {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.newsletter-input {\n padding: 1rem;\n border: 2px solid #e2e8f0;\n border-radius: 8px;\n font-size: 1rem;\n transition: border-color 0.3s;\n}\n\n.newsletter-input:focus {\n outline: none;\n border-color: #3182ce;\n}\n\n.newsletter-btn {\n background: #ff6b35;\n color: white;\n border: none;\n padding: 1rem;\n border-radius: 8px;\n font-size: 1rem;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.3s;\n}\n\n.newsletter-btn:hover {\n background: #e55a2b;\n}\n\n/* Footer */\n.footer {\n background: #2d3748;\n color: white;\n text-align: center;\n padding: 2rem 0;\n margin-top: 4rem;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n .nav {\n flex-direction: column;\n gap: 1rem;\n text-align: center;\n }\n\n .nav-links {\n flex-wrap: wrap;\n justify-content: center;\n }\n\n .blog-header h1 {\n font-size: 2rem;\n }\n\n .blog-grid {\n grid-template-columns: 1fr;\n gap: 2rem;\n }\n\n .blog-posts-grid {\n grid-template-columns: 1fr;\n }\n\n .featured-content h2 {\n font-size: 1.5rem;\n }\n}"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/blog_home.bundle.css","mappings":"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","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/sections/blog.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n* {\n margin: 0;\n padding: 0;\n}\n\nbody {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n line-height: 1.6;\n color: #333;\n background: var(--colour-page-background-1);\n}\n\n/* Header */\n.header {\n background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%);\n color: white;\n padding: 1rem 0;\n box-shadow: 0 2px 10px rgba(0,0,0,0.1);\n}\n\n.container {\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.nav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 2rem;\n}\n\n.logo {\n font-size: 1.5rem;\n font-weight: bold;\n color: #ff6b35;\n}\n\n.nav-links {\n display: flex;\n list-style: none;\n gap: 2rem;\n}\n\n.nav-links a {\n color: white;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.nav-links a:hover {\n color: #ff6b35;\n}\n\n.blog-header {\n text-align: center;\n padding: 2rem 0;\n}\n\n.blog-header h1 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n}\n\n.blog-header p {\n font-size: 1.2rem;\n opacity: 0.9;\n max-width: 600px;\n margin: 0 auto;\n}\n\n/* Main Content */\n.main-content {\n padding: 3rem 0;\n}\n\n.blog-grid {\n display: grid;\n grid-template-columns: 2fr 1fr;\n gap: 3rem;\n margin-bottom: 3rem;\n}\n\n\n/* Hero Section */\n.hero {\n padding: 8rem 2rem 4rem;\n background: linear-gradient(45deg, var(--colour-page-background-1), var(--colour-page-background-2)); /* linear-gradient(45deg, #f8fafc, #eff6ff); */\n}\n.hero-content {\n max-width: 600px;\n}\n.hero h1 {\n line-height: 1.2;\n margin-bottom: 1.5rem;\n color: var(--colour-text);\n}\n.hero p {\n font-size: 1.25rem;\n margin-bottom: 2rem;\n color: var(--colour-secondary);\n}\nsection.hero .button {\n margin: 0 auto;\n margin-bottom: 2vh;\n display: block;\n background-color: var(--colour-success-title);\n color: var(--colour-text-background);\n}\nsection.hero .button:hover {\n background-color: var(--colour-success-highlight);\n color: var(--colour-success-title);\n}\n\n\n/* Featured Post */\n.featured-post {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 4px 20px rgba(0,0,0,0.1);\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.featured-post:hover {\n transform: translateY(-5px);\n box-shadow: 0 8px 30px rgba(0,0,0,0.15);\n}\n\n.featured-image {\n height: 300px;\n background: linear-gradient(45deg, #ff6b35, #f093fb);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 3rem;\n}\n\n.featured-content {\n padding: 2rem;\n}\n\n.post-category {\n display: inline-block;\n background: #ff6b35;\n color: white;\n padding: 0.3rem 1rem;\n border-radius: 20px;\n font-size: 0.8rem;\n font-weight: 600;\n margin-bottom: 1rem;\n}\n\n.featured-content h2 {\n font-size: 1.8rem;\n margin-bottom: 1rem;\n color: #2d3748;\n line-height: 1.3;\n}\n\n.post-excerpt {\n color: #666;\n margin-bottom: 1.5rem;\n line-height: 1.7;\n}\n\n.post-meta {\n display: flex;\n align-items: center;\n gap: 1rem;\n font-size: 0.9rem;\n color: #888;\n margin-bottom: 1rem;\n}\n\n.read-more {\n display: inline-flex;\n align-items: center;\n color: #3182ce;\n text-decoration: none;\n font-weight: 600;\n transition: color 0.3s;\n}\n\n.read-more:hover {\n color: #2c5282;\n}\n\n.read-more::after {\n content: ' β†’';\n margin-left: 0.5rem;\n transition: margin-left 0.3s;\n}\n\n.read-more:hover::after {\n margin-left: 1rem;\n}\n\n/* Sidebar */\n.sidebar {\n display: flex;\n flex-direction: column;\n gap: 2rem;\n}\n\n.sidebar-widget {\n background: white;\n padding: 2rem;\n border-radius: 12px;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n}\n\n.widget-title {\n font-size: 1.3rem;\n margin-bottom: 1.5rem;\n color: #2d3748;\n border-bottom: 2px solid #ff6b35;\n padding-bottom: 0.5rem;\n}\n\n.category-list {\n list-style: none;\n}\n\n.category-list li {\n padding: 0.8rem 0;\n border-bottom: 1px solid #e2e8f0;\n display: flex;\n justify-content: space-between;\n}\n\n.category-list li:last-child {\n border-bottom: none;\n}\n\n.category-list a {\n color: #4a5568;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.category-list a:hover {\n color: #3182ce;\n}\n\n.post-count {\n background: #e2e8f0;\n color: #4a5568;\n padding: 0.2rem 0.6rem;\n border-radius: 12px;\n font-size: 0.8rem;\n}\n\n.recent-posts {\n list-style: none;\n}\n\n.recent-post-item {\n padding: 1rem 0;\n border-bottom: 1px solid #e2e8f0;\n}\n\n.recent-post-item:last-child {\n border-bottom: none;\n}\n\n.recent-post-title {\n font-weight: 600;\n color: #2d3748;\n text-decoration: none;\n transition: color 0.3s;\n display: block;\n margin-bottom: 0.3rem;\n}\n\n.recent-post-title:hover {\n color: #3182ce;\n}\n\n.recent-post-date {\n font-size: 0.8rem;\n color: #888;\n}\n\n/* Blog Posts Grid */\n.blog-posts-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));\n gap: 2rem;\n margin-top: 2rem;\n}\n\n.blog-post-card {\n background: white;\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 2px 15px rgba(0,0,0,0.08);\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.blog-post-card:hover {\n transform: translateY(-3px);\n box-shadow: 0 6px 25px rgba(0,0,0,0.12);\n}\n\n.post-image {\n height: 200px;\n background: linear-gradient(45deg, #667eea, #764ba2);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 2rem;\n}\n\n.post-content {\n padding: 1.5rem;\n}\n\n.post-content h3 {\n font-size: 1.3rem;\n margin-bottom: 1rem;\n color: #2d3748;\n line-height: 1.3;\n}\n\n/* Newsletter Signup */\n.newsletter-form {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.newsletter-input {\n padding: 1rem;\n border: 2px solid #e2e8f0;\n border-radius: 8px;\n font-size: 1rem;\n transition: border-color 0.3s;\n}\n\n.newsletter-input:focus {\n outline: none;\n border-color: #3182ce;\n}\n\n.newsletter-btn {\n background: #ff6b35;\n color: white;\n border: none;\n padding: 1rem;\n border-radius: 8px;\n font-size: 1rem;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.3s;\n}\n\n.newsletter-btn:hover {\n background: #e55a2b;\n}\n\n#form_newsletter input[type=\"email\"] {\n width: 80%;\n margin: 0 10%;\n padding: 0.5vh;\n font-size: 1rem;\n}\n\n/* Footer */\n.footer {\n background: #2d3748;\n color: white;\n text-align: center;\n padding: 2rem 0;\n margin-top: 4rem;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n .nav {\n flex-direction: column;\n gap: 1rem;\n text-align: center;\n }\n\n .nav-links {\n flex-wrap: wrap;\n justify-content: center;\n }\n\n .blog-header h1 {\n font-size: 2rem;\n }\n\n .blog-grid {\n grid-template-columns: 1fr;\n gap: 2rem;\n }\n\n .blog-posts-grid {\n grid-template-columns: 1fr;\n }\n\n .featured-content h2 {\n font-size: 1.5rem;\n }\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/css/blog_newsletter_success.bundle.css b/static/dist/css/blog_newsletter_success.bundle.css new file mode 100644 index 0000000..bef9536 --- /dev/null +++ b/static/dist/css/blog_newsletter_success.bundle.css @@ -0,0 +1,228 @@ + +/* Home page +*/ + +/* Footer */ +.footer { + background: #1f2937; + color: #f3f4f6; + padding: 4rem 2rem 2rem; +} + +.footer-content { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 2rem; + margin-bottom: 2rem; +} + +.footer-section h3 { + color: #fff; + margin-bottom: 1rem; + font-size: 1.2rem; + text-align: center; +} + +.footer-section ul { + list-style: none; + padding: 0; +} + +.footer-section ul li { + margin-bottom: 0.5rem; +} + +.footer-section a { + color: #f3f4f6; + text-decoration: none; + transition: color 0.3s ease; +} + +.footer-section a:hover { + color: #fff; + text-decoration: underline; +} + +.footer-bottom { + border-top: 1px solid #374151; + padding-top: 2rem; + text-align: center; + font-size: 0.9rem; +} + +.footer-bottom a { + color: aquamarine; +} + +.footer-section.contact { + width: 100%; +} +.footer-section .container { + padding: 0; +} +.footer-section .container.row .container.column { + padding: 1vh 2vw; +} + +@media (max-width: 768px) { + .footer-content { + grid-template-columns: 1fr; + text-align: center; + } +} + +@media (max-width: 540px) { + .nav-links { + display: none; + } +} + +.contact-section { + padding: 2rem 2rem 4rem; +} +.contact-section h1 { + margin: 1rem auto; +} +.contact-section p { + margin: 0.5rem auto; +} + +.contact-form { + max-width: 60vw; + width: fit-content; + margin: 0 auto; + background: var(--colour-text-background); + padding: 2rem; + border-radius: 8px; + box-shadow: 0 2px 4px rgba(0,0,0,0.1); + text-align: center; +} +.contact-form textarea { + max-width: 40vw; +} + +.form-grid { + display: grid; + grid-template-columns: 200px 1fr; + gap: 1.5rem; + margin-bottom: 1rem; +} +.form-label { + padding-top: 0.5rem; + font-weight: 500; +} +.form-input { + width: 100%; + padding: 0.5rem; + border: 2px solid var(--colour-accent); + border-radius: 4px; + font-size: 1rem; + max-width: 40vw; +} +textarea.form-input { + min-height: 120px; +} + +.marketing-consent input { + display: inline-block; + /* margin-left: 20%; */ + margin-bottom: 1.25rem; +} + + +.container.row.captcha > div { + margin: 0 auto; +} +.container.captcha > div:first-child > label:first-child { + display: flex; + justify-content: center; + width: fit-content; + text-align: center; + margin: 0 auto; +} +.container.captcha > p:last-child{ + font-size: 0.9rem; + margin: 1vh 1vw; +} +.container.captcha .altcha-widget, +.container.captcha .altcha-widget div.altcha { + width: 200px; +} +.container.captcha .altcha-main { + padding-left: 1rem; + padding-top: 0.75rem; + padding-bottom: 0; +} +.container.captcha .altcha-main > :last-child { + display: none; +} +.container.captcha .altcha, +altcha-widget > div:first-child, +.container.captcha > div > .altcha-widget > div { + width: fit-content; + display: flex; + margin-left: auto; + margin-right: auto; +} + + +input[type="submit"] { + margin-left: 40%; + margin: 0 auto; + padding: 0.75rem 1.5rem; + background: #2563eb; + color: white; + border: none; + border-radius: 4px; + cursor: pointer; + font-size: 1rem; +} + +input[type="submit"]:hover { + background: #1d4ed8; +} + +.data-notice { + margin-top: 3rem; + padding: 1.5rem; + background: #f3f4f6; + border-radius: 4px; + font-size: 0.95rem; +} + +.data-notice h3 { + margin-bottom: 1rem; + font-size: 1.1rem; +} + +.data-notice ul li { + list-style-position: inside; +} + +@media (max-width: 768px) { + .contact-form { + max-width: 80vw; + } + .contact-form textarea { + max-width: 60vw; + } + .form-grid { + grid-template-columns: 1fr; + gap: 0.5rem; + } + + .form-label { + padding-top: 0; + } + + .submit-button { + margin-left: 0; + width: 100%; + } +} + +@media (max-width: 400px) { +} + + +/*# sourceMappingURL=blog_newsletter_success.bundle.css.map*/ \ No newline at end of file diff --git a/static/dist/css/blog_newsletter_success.bundle.css.map b/static/dist/css/blog_newsletter_success.bundle.css.map new file mode 100644 index 0000000..9b85f5f --- /dev/null +++ b/static/dist/css/blog_newsletter_success.bundle.css.map @@ -0,0 +1 @@ +{"version":3,"file":"css/blog_newsletter_success.bundle.css","mappings":";AACA;CACC;;AAED,WAAW;AACX;IACI,mBAAmB;IACnB,cAAc;IACd,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,2DAA2D;IAC3D,SAAS;IACT,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;IAChB,UAAU;AACd;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,cAAc;IACd,qBAAqB;IACrB,2BAA2B;AAC/B;;AAEA;IACI,WAAW;IACX,0BAA0B;AAC9B;;AAEA;IACI,6BAA6B;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;AACrB;;AAEA;IACI,iBAAiB;AACrB;;AAEA;IACI,WAAW;AACf;AACA;IACI,UAAU;AACd;AACA;IACI,gBAAgB;AACpB;;AAEA;IACI;QACI,0BAA0B;QAC1B,kBAAkB;IACtB;AACJ;;AAEA;IACI;QACI,aAAa;IACjB;AACJ,C;;AC5EA;IACI,uBAAuB;AAC3B;AACA;IACI,iBAAiB;AACrB;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,eAAe;IACf,kBAAkB;IAClB,cAAc;IACd,yCAAyC;IACzC,aAAa;IACb,kBAAkB;IAClB,qCAAqC;IACrC,kBAAkB;AACtB;AACA;IACI,eAAe;AACnB;;AAEA;IACI,aAAa;IACb,gCAAgC;IAChC,WAAW;IACX,mBAAmB;AACvB;AACA;IACI,mBAAmB;IACnB,gBAAgB;AACpB;AACA;IACI,WAAW;IACX,eAAe;IACf,sCAAsC;IACtC,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;AACA;IACI,iBAAiB;AACrB;;AAEA;IACI,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;AAC1B;;;AAGA;IACI,cAAc;AAClB;AACA;IACI,aAAa;IACb,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;AAClB;AACA;IACI,iBAAiB;IACjB,eAAe;AACnB;AACA;;IAEI,YAAY;AAChB;AACA;IACI,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;AACrB;AACA;IACI,aAAa;AACjB;AACA;;;IAGI,kBAAkB;IAClB,aAAa;IACb,iBAAiB;IACjB,kBAAkB;AACtB;;;AAGA;IACI,gBAAgB;IAChB,cAAc;IACd,uBAAuB;IACvB,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;AACtB;;AAEA;IACI,mBAAmB;IACnB,iBAAiB;AACrB;;AAEA;IACI,2BAA2B;AAC/B;;AAEA;IACI;QACI,eAAe;IACnB;IACA;QACI,eAAe;IACnB;IACA;QACI,0BAA0B;QAC1B,WAAW;IACf;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,cAAc;QACd,WAAW;IACf;AACJ;;AAEA;AACA,C","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/pages/core/contact.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n.contact-section {\n padding: 2rem 2rem 4rem;\n}\n.contact-section h1 {\n margin: 1rem auto;\n}\n.contact-section p {\n margin: 0.5rem auto;\n}\n\n.contact-form {\n max-width: 60vw;\n width: fit-content;\n margin: 0 auto;\n background: var(--colour-text-background);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n text-align: center;\n}\n.contact-form textarea {\n max-width: 40vw;\n}\n\n.form-grid {\n display: grid;\n grid-template-columns: 200px 1fr;\n gap: 1.5rem;\n margin-bottom: 1rem;\n}\n.form-label {\n padding-top: 0.5rem;\n font-weight: 500;\n}\n.form-input {\n width: 100%;\n padding: 0.5rem;\n border: 2px solid var(--colour-accent);\n border-radius: 4px;\n font-size: 1rem;\n max-width: 40vw;\n}\ntextarea.form-input {\n min-height: 120px;\n}\n\n.marketing-consent input {\n display: inline-block;\n /* margin-left: 20%; */\n margin-bottom: 1.25rem;\n}\n\n\n.container.row.captcha > div {\n margin: 0 auto;\n}\n.container.captcha > div:first-child > label:first-child {\n display: flex;\n justify-content: center;\n width: fit-content;\n text-align: center;\n margin: 0 auto;\n}\n.container.captcha > p:last-child{\n font-size: 0.9rem;\n margin: 1vh 1vw;\n}\n.container.captcha .altcha-widget,\n.container.captcha .altcha-widget div.altcha {\n width: 200px;\n}\n.container.captcha .altcha-main {\n padding-left: 1rem;\n padding-top: 0.75rem;\n padding-bottom: 0;\n}\n.container.captcha .altcha-main > :last-child {\n display: none;\n}\n.container.captcha .altcha,\naltcha-widget > div:first-child,\n.container.captcha > div > .altcha-widget > div {\n width: fit-content;\n display: flex;\n margin-left: auto;\n margin-right: auto;\n}\n\n\ninput[type=\"submit\"] {\n margin-left: 40%;\n margin: 0 auto;\n padding: 0.75rem 1.5rem;\n background: #2563eb;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 1rem;\n}\n\ninput[type=\"submit\"]:hover {\n background: #1d4ed8;\n}\n\n.data-notice {\n margin-top: 3rem;\n padding: 1.5rem;\n background: #f3f4f6;\n border-radius: 4px;\n font-size: 0.95rem;\n}\n\n.data-notice h3 {\n margin-bottom: 1rem;\n font-size: 1.1rem;\n}\n\n.data-notice ul li {\n list-style-position: inside;\n}\n\n@media (max-width: 768px) {\n .contact-form {\n max-width: 80vw;\n }\n .contact-form textarea {\n max-width: 60vw;\n }\n .form-grid {\n grid-template-columns: 1fr;\n gap: 0.5rem;\n }\n\n .form-label {\n padding-top: 0;\n }\n\n .submit-button {\n margin-left: 0;\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/css/core_apply_founding_partner.bundle.css b/static/dist/css/core_apply_founding_partner.bundle.css index 2454076..9b41a87 100644 --- a/static/dist/css/core_apply_founding_partner.bundle.css +++ b/static/dist/css/core_apply_founding_partner.bundle.css @@ -95,6 +95,7 @@ padding: 2rem; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); + text-align: center; } .contact-form textarea { max-width: 40vw; @@ -116,6 +117,7 @@ border: 2px solid var(--colour-accent); border-radius: 4px; font-size: 1rem; + max-width: 40vw; } textarea.form-input { min-height: 120px; @@ -123,7 +125,7 @@ textarea.form-input { .marketing-consent input { display: inline-block; - margin-left: 20%; + /* margin-left: 20%; */ margin-bottom: 1.25rem; } diff --git a/static/dist/css/core_apply_founding_partner.bundle.css.map b/static/dist/css/core_apply_founding_partner.bundle.css.map index 7a124fa..1e179eb 100644 --- a/static/dist/css/core_apply_founding_partner.bundle.css.map +++ b/static/dist/css/core_apply_founding_partner.bundle.css.map @@ -1 +1 @@ -{"version":3,"file":"css/core_apply_founding_partner.bundle.css","mappings":";AACA;CACC;;AAED,WAAW;AACX;IACI,mBAAmB;IACnB,cAAc;IACd,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,2DAA2D;IAC3D,SAAS;IACT,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;IAChB,UAAU;AACd;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,cAAc;IACd,qBAAqB;IACrB,2BAA2B;AAC/B;;AAEA;IACI,WAAW;IACX,0BAA0B;AAC9B;;AAEA;IACI,6BAA6B;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;AACrB;;AAEA;IACI,iBAAiB;AACrB;;AAEA;IACI,WAAW;AACf;AACA;IACI,UAAU;AACd;AACA;IACI,gBAAgB;AACpB;;AAEA;IACI;QACI,0BAA0B;QAC1B,kBAAkB;IACtB;AACJ;;AAEA;IACI;QACI,aAAa;IACjB;AACJ,C;;AC5EA;IACI,uBAAuB;AAC3B;AACA;IACI,iBAAiB;AACrB;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,eAAe;IACf,kBAAkB;IAClB,cAAc;IACd,yCAAyC;IACzC,aAAa;IACb,kBAAkB;IAClB,qCAAqC;AACzC;AACA;IACI,eAAe;AACnB;;AAEA;IACI,aAAa;IACb,gCAAgC;IAChC,WAAW;IACX,mBAAmB;AACvB;AACA;IACI,mBAAmB;IACnB,gBAAgB;AACpB;AACA;IACI,WAAW;IACX,eAAe;IACf,sCAAsC;IACtC,kBAAkB;IAClB,eAAe;AACnB;AACA;IACI,iBAAiB;AACrB;;AAEA;IACI,qBAAqB;IACrB,gBAAgB;IAChB,sBAAsB;AAC1B;;;AAGA;IACI,cAAc;AAClB;AACA;IACI,aAAa;IACb,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;AAClB;AACA;IACI,iBAAiB;IACjB,eAAe;AACnB;AACA;;IAEI,YAAY;AAChB;AACA;IACI,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;AACrB;AACA;IACI,aAAa;AACjB;AACA;;;IAGI,kBAAkB;IAClB,aAAa;IACb,iBAAiB;IACjB,kBAAkB;AACtB;;;AAGA;IACI,gBAAgB;IAChB,cAAc;IACd,uBAAuB;IACvB,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;AACtB;;AAEA;IACI,mBAAmB;IACnB,iBAAiB;AACrB;;AAEA;IACI,2BAA2B;AAC/B;;AAEA;IACI;QACI,eAAe;IACnB;IACA;QACI,eAAe;IACnB;IACA;QACI,0BAA0B;QAC1B,WAAW;IACf;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,cAAc;QACd,WAAW;IACf;AACJ;;AAEA;AACA,C;;AC/IA;IACI,eAAe;AACnB;;AAEA;IACI,iBAAiB;AACrB;AACA;IACI,WAAW;IACX,kBAAkB;AACtB;AACA;IACI,WAAW;IACX,cAAc;IACd,iBAAiB;AACrB;;AAEA;IACI,eAAe;IACf,eAAe;AACnB;;AAEA;;IAEI,gBAAgB;AACpB;AACA;;;;;CAKC,C","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/pages/core/contact.css","webpack://app/./static/css/pages/core/apply_founding_partner.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n.contact-section {\n padding: 2rem 2rem 4rem;\n}\n.contact-section h1 {\n margin: 1rem auto;\n}\n.contact-section p {\n margin: 0.5rem auto;\n}\n\n.contact-form {\n max-width: 60vw;\n width: fit-content;\n margin: 0 auto;\n background: var(--colour-text-background);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n.contact-form textarea {\n max-width: 40vw;\n}\n\n.form-grid {\n display: grid;\n grid-template-columns: 200px 1fr;\n gap: 1.5rem;\n margin-bottom: 1rem;\n}\n.form-label {\n padding-top: 0.5rem;\n font-weight: 500;\n}\n.form-input {\n width: 100%;\n padding: 0.5rem;\n border: 2px solid var(--colour-accent);\n border-radius: 4px;\n font-size: 1rem;\n}\ntextarea.form-input {\n min-height: 120px;\n}\n\n.marketing-consent input {\n display: inline-block;\n margin-left: 20%;\n margin-bottom: 1.25rem;\n}\n\n\n.container.row.captcha > div {\n margin: 0 auto;\n}\n.container.captcha > div:first-child > label:first-child {\n display: flex;\n justify-content: center;\n width: fit-content;\n text-align: center;\n margin: 0 auto;\n}\n.container.captcha > p:last-child{\n font-size: 0.9rem;\n margin: 1vh 1vw;\n}\n.container.captcha .altcha-widget,\n.container.captcha .altcha-widget div.altcha {\n width: 200px;\n}\n.container.captcha .altcha-main {\n padding-left: 1rem;\n padding-top: 0.75rem;\n padding-bottom: 0;\n}\n.container.captcha .altcha-main > :last-child {\n display: none;\n}\n.container.captcha .altcha,\naltcha-widget > div:first-child,\n.container.captcha > div > .altcha-widget > div {\n width: fit-content;\n display: flex;\n margin-left: auto;\n margin-right: auto;\n}\n\n\ninput[type=\"submit\"] {\n margin-left: 40%;\n margin: 0 auto;\n padding: 0.75rem 1.5rem;\n background: #2563eb;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 1rem;\n}\n\ninput[type=\"submit\"]:hover {\n background: #1d4ed8;\n}\n\n.data-notice {\n margin-top: 3rem;\n padding: 1.5rem;\n background: #f3f4f6;\n border-radius: 4px;\n font-size: 0.95rem;\n}\n\n.data-notice h3 {\n margin-bottom: 1rem;\n font-size: 1.1rem;\n}\n\n.data-notice ul li {\n list-style-position: inside;\n}\n\n@media (max-width: 768px) {\n .contact-form {\n max-width: 80vw;\n }\n .contact-form textarea {\n max-width: 60vw;\n }\n .form-grid {\n grid-template-columns: 1fr;\n gap: 0.5rem;\n }\n\n .form-label {\n padding-top: 0;\n }\n\n .submit-button {\n margin-left: 0;\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n}","\n.contact-form {\n max-width: 75vw;\n}\n\n.container.column .container.row {\n margin: 0.35rem 0;\n}\n.label-question {\n width: 20vw;\n align-self: center;\n}\n.container.column .container.row .container-input {\n width: 42vw;\n margin: 0 auto;\n padding: 0.25vh 0;\n}\n\n.container.column .container.row .container-input .form-input {\n min-width: 40vw;\n max-width: 42vw;\n}\n\n#ids_speciality li,\n#ids_existing_system li {\n list-style: none;\n}\n/*\n#id_speciality li::marker,\n#id_existing_system li::marker {\n display: none;\n}\n*/"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/core_apply_founding_partner.bundle.css","mappings":";AACA;CACC;;AAED,WAAW;AACX;IACI,mBAAmB;IACnB,cAAc;IACd,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,2DAA2D;IAC3D,SAAS;IACT,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;IAChB,UAAU;AACd;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,cAAc;IACd,qBAAqB;IACrB,2BAA2B;AAC/B;;AAEA;IACI,WAAW;IACX,0BAA0B;AAC9B;;AAEA;IACI,6BAA6B;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;AACrB;;AAEA;IACI,iBAAiB;AACrB;;AAEA;IACI,WAAW;AACf;AACA;IACI,UAAU;AACd;AACA;IACI,gBAAgB;AACpB;;AAEA;IACI;QACI,0BAA0B;QAC1B,kBAAkB;IACtB;AACJ;;AAEA;IACI;QACI,aAAa;IACjB;AACJ,C;;AC5EA;IACI,uBAAuB;AAC3B;AACA;IACI,iBAAiB;AACrB;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,eAAe;IACf,kBAAkB;IAClB,cAAc;IACd,yCAAyC;IACzC,aAAa;IACb,kBAAkB;IAClB,qCAAqC;IACrC,kBAAkB;AACtB;AACA;IACI,eAAe;AACnB;;AAEA;IACI,aAAa;IACb,gCAAgC;IAChC,WAAW;IACX,mBAAmB;AACvB;AACA;IACI,mBAAmB;IACnB,gBAAgB;AACpB;AACA;IACI,WAAW;IACX,eAAe;IACf,sCAAsC;IACtC,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;AACA;IACI,iBAAiB;AACrB;;AAEA;IACI,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;AAC1B;;;AAGA;IACI,cAAc;AAClB;AACA;IACI,aAAa;IACb,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;AAClB;AACA;IACI,iBAAiB;IACjB,eAAe;AACnB;AACA;;IAEI,YAAY;AAChB;AACA;IACI,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;AACrB;AACA;IACI,aAAa;AACjB;AACA;;;IAGI,kBAAkB;IAClB,aAAa;IACb,iBAAiB;IACjB,kBAAkB;AACtB;;;AAGA;IACI,gBAAgB;IAChB,cAAc;IACd,uBAAuB;IACvB,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;AACtB;;AAEA;IACI,mBAAmB;IACnB,iBAAiB;AACrB;;AAEA;IACI,2BAA2B;AAC/B;;AAEA;IACI;QACI,eAAe;IACnB;IACA;QACI,eAAe;IACnB;IACA;QACI,0BAA0B;QAC1B,WAAW;IACf;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,cAAc;QACd,WAAW;IACf;AACJ;;AAEA;AACA,C;;ACjJA;IACI,eAAe;AACnB;;AAEA;IACI,iBAAiB;AACrB;AACA;IACI,WAAW;IACX,kBAAkB;AACtB;AACA;IACI,WAAW;IACX,cAAc;IACd,iBAAiB;AACrB;;AAEA;IACI,eAAe;IACf,eAAe;AACnB;;AAEA;;IAEI,gBAAgB;AACpB;AACA;;;;;CAKC,C","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/pages/core/contact.css","webpack://app/./static/css/pages/core/apply_founding_partner.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n.contact-section {\n padding: 2rem 2rem 4rem;\n}\n.contact-section h1 {\n margin: 1rem auto;\n}\n.contact-section p {\n margin: 0.5rem auto;\n}\n\n.contact-form {\n max-width: 60vw;\n width: fit-content;\n margin: 0 auto;\n background: var(--colour-text-background);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n text-align: center;\n}\n.contact-form textarea {\n max-width: 40vw;\n}\n\n.form-grid {\n display: grid;\n grid-template-columns: 200px 1fr;\n gap: 1.5rem;\n margin-bottom: 1rem;\n}\n.form-label {\n padding-top: 0.5rem;\n font-weight: 500;\n}\n.form-input {\n width: 100%;\n padding: 0.5rem;\n border: 2px solid var(--colour-accent);\n border-radius: 4px;\n font-size: 1rem;\n max-width: 40vw;\n}\ntextarea.form-input {\n min-height: 120px;\n}\n\n.marketing-consent input {\n display: inline-block;\n /* margin-left: 20%; */\n margin-bottom: 1.25rem;\n}\n\n\n.container.row.captcha > div {\n margin: 0 auto;\n}\n.container.captcha > div:first-child > label:first-child {\n display: flex;\n justify-content: center;\n width: fit-content;\n text-align: center;\n margin: 0 auto;\n}\n.container.captcha > p:last-child{\n font-size: 0.9rem;\n margin: 1vh 1vw;\n}\n.container.captcha .altcha-widget,\n.container.captcha .altcha-widget div.altcha {\n width: 200px;\n}\n.container.captcha .altcha-main {\n padding-left: 1rem;\n padding-top: 0.75rem;\n padding-bottom: 0;\n}\n.container.captcha .altcha-main > :last-child {\n display: none;\n}\n.container.captcha .altcha,\naltcha-widget > div:first-child,\n.container.captcha > div > .altcha-widget > div {\n width: fit-content;\n display: flex;\n margin-left: auto;\n margin-right: auto;\n}\n\n\ninput[type=\"submit\"] {\n margin-left: 40%;\n margin: 0 auto;\n padding: 0.75rem 1.5rem;\n background: #2563eb;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 1rem;\n}\n\ninput[type=\"submit\"]:hover {\n background: #1d4ed8;\n}\n\n.data-notice {\n margin-top: 3rem;\n padding: 1.5rem;\n background: #f3f4f6;\n border-radius: 4px;\n font-size: 0.95rem;\n}\n\n.data-notice h3 {\n margin-bottom: 1rem;\n font-size: 1.1rem;\n}\n\n.data-notice ul li {\n list-style-position: inside;\n}\n\n@media (max-width: 768px) {\n .contact-form {\n max-width: 80vw;\n }\n .contact-form textarea {\n max-width: 60vw;\n }\n .form-grid {\n grid-template-columns: 1fr;\n gap: 0.5rem;\n }\n\n .form-label {\n padding-top: 0;\n }\n\n .submit-button {\n margin-left: 0;\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n}","\n.contact-form {\n max-width: 75vw;\n}\n\n.container.column .container.row {\n margin: 0.35rem 0;\n}\n.label-question {\n width: 20vw;\n align-self: center;\n}\n.container.column .container.row .container-input {\n width: 42vw;\n margin: 0 auto;\n padding: 0.25vh 0;\n}\n\n.container.column .container.row .container-input .form-input {\n min-width: 40vw;\n max-width: 42vw;\n}\n\n#ids_speciality li,\n#ids_existing_system li {\n list-style: none;\n}\n/*\n#id_speciality li::marker,\n#id_existing_system li::marker {\n display: none;\n}\n*/"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/css/core_contact.bundle.css b/static/dist/css/core_contact.bundle.css index c9d2649..bb4d7d4 100644 --- a/static/dist/css/core_contact.bundle.css +++ b/static/dist/css/core_contact.bundle.css @@ -95,6 +95,7 @@ padding: 2rem; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); + text-align: center; } .contact-form textarea { max-width: 40vw; @@ -116,6 +117,7 @@ border: 2px solid var(--colour-accent); border-radius: 4px; font-size: 1rem; + max-width: 40vw; } textarea.form-input { min-height: 120px; @@ -123,7 +125,7 @@ textarea.form-input { .marketing-consent input { display: inline-block; - margin-left: 20%; + /* margin-left: 20%; */ margin-bottom: 1.25rem; } diff --git a/static/dist/css/core_contact.bundle.css.map b/static/dist/css/core_contact.bundle.css.map index ed520aa..96c2ac2 100644 --- a/static/dist/css/core_contact.bundle.css.map +++ b/static/dist/css/core_contact.bundle.css.map @@ -1 +1 @@ -{"version":3,"file":"css/core_contact.bundle.css","mappings":";AACA;CACC;;AAED,WAAW;AACX;IACI,mBAAmB;IACnB,cAAc;IACd,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,2DAA2D;IAC3D,SAAS;IACT,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;IAChB,UAAU;AACd;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,cAAc;IACd,qBAAqB;IACrB,2BAA2B;AAC/B;;AAEA;IACI,WAAW;IACX,0BAA0B;AAC9B;;AAEA;IACI,6BAA6B;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;AACrB;;AAEA;IACI,iBAAiB;AACrB;;AAEA;IACI,WAAW;AACf;AACA;IACI,UAAU;AACd;AACA;IACI,gBAAgB;AACpB;;AAEA;IACI;QACI,0BAA0B;QAC1B,kBAAkB;IACtB;AACJ;;AAEA;IACI;QACI,aAAa;IACjB;AACJ,C;;AC5EA;IACI,uBAAuB;AAC3B;AACA;IACI,iBAAiB;AACrB;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,eAAe;IACf,kBAAkB;IAClB,cAAc;IACd,yCAAyC;IACzC,aAAa;IACb,kBAAkB;IAClB,qCAAqC;AACzC;AACA;IACI,eAAe;AACnB;;AAEA;IACI,aAAa;IACb,gCAAgC;IAChC,WAAW;IACX,mBAAmB;AACvB;AACA;IACI,mBAAmB;IACnB,gBAAgB;AACpB;AACA;IACI,WAAW;IACX,eAAe;IACf,sCAAsC;IACtC,kBAAkB;IAClB,eAAe;AACnB;AACA;IACI,iBAAiB;AACrB;;AAEA;IACI,qBAAqB;IACrB,gBAAgB;IAChB,sBAAsB;AAC1B;;;AAGA;IACI,cAAc;AAClB;AACA;IACI,aAAa;IACb,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;AAClB;AACA;IACI,iBAAiB;IACjB,eAAe;AACnB;AACA;;IAEI,YAAY;AAChB;AACA;IACI,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;AACrB;AACA;IACI,aAAa;AACjB;AACA;;;IAGI,kBAAkB;IAClB,aAAa;IACb,iBAAiB;IACjB,kBAAkB;AACtB;;;AAGA;IACI,gBAAgB;IAChB,cAAc;IACd,uBAAuB;IACvB,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;AACtB;;AAEA;IACI,mBAAmB;IACnB,iBAAiB;AACrB;;AAEA;IACI,2BAA2B;AAC/B;;AAEA;IACI;QACI,eAAe;IACnB;IACA;QACI,eAAe;IACnB;IACA;QACI,0BAA0B;QAC1B,WAAW;IACf;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,cAAc;QACd,WAAW;IACf;AACJ;;AAEA;AACA,C","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/pages/core/contact.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n.contact-section {\n padding: 2rem 2rem 4rem;\n}\n.contact-section h1 {\n margin: 1rem auto;\n}\n.contact-section p {\n margin: 0.5rem auto;\n}\n\n.contact-form {\n max-width: 60vw;\n width: fit-content;\n margin: 0 auto;\n background: var(--colour-text-background);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n.contact-form textarea {\n max-width: 40vw;\n}\n\n.form-grid {\n display: grid;\n grid-template-columns: 200px 1fr;\n gap: 1.5rem;\n margin-bottom: 1rem;\n}\n.form-label {\n padding-top: 0.5rem;\n font-weight: 500;\n}\n.form-input {\n width: 100%;\n padding: 0.5rem;\n border: 2px solid var(--colour-accent);\n border-radius: 4px;\n font-size: 1rem;\n}\ntextarea.form-input {\n min-height: 120px;\n}\n\n.marketing-consent input {\n display: inline-block;\n margin-left: 20%;\n margin-bottom: 1.25rem;\n}\n\n\n.container.row.captcha > div {\n margin: 0 auto;\n}\n.container.captcha > div:first-child > label:first-child {\n display: flex;\n justify-content: center;\n width: fit-content;\n text-align: center;\n margin: 0 auto;\n}\n.container.captcha > p:last-child{\n font-size: 0.9rem;\n margin: 1vh 1vw;\n}\n.container.captcha .altcha-widget,\n.container.captcha .altcha-widget div.altcha {\n width: 200px;\n}\n.container.captcha .altcha-main {\n padding-left: 1rem;\n padding-top: 0.75rem;\n padding-bottom: 0;\n}\n.container.captcha .altcha-main > :last-child {\n display: none;\n}\n.container.captcha .altcha,\naltcha-widget > div:first-child,\n.container.captcha > div > .altcha-widget > div {\n width: fit-content;\n display: flex;\n margin-left: auto;\n margin-right: auto;\n}\n\n\ninput[type=\"submit\"] {\n margin-left: 40%;\n margin: 0 auto;\n padding: 0.75rem 1.5rem;\n background: #2563eb;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 1rem;\n}\n\ninput[type=\"submit\"]:hover {\n background: #1d4ed8;\n}\n\n.data-notice {\n margin-top: 3rem;\n padding: 1.5rem;\n background: #f3f4f6;\n border-radius: 4px;\n font-size: 0.95rem;\n}\n\n.data-notice h3 {\n margin-bottom: 1rem;\n font-size: 1.1rem;\n}\n\n.data-notice ul li {\n list-style-position: inside;\n}\n\n@media (max-width: 768px) {\n .contact-form {\n max-width: 80vw;\n }\n .contact-form textarea {\n max-width: 60vw;\n }\n .form-grid {\n grid-template-columns: 1fr;\n gap: 0.5rem;\n }\n\n .form-label {\n padding-top: 0;\n }\n\n .submit-button {\n margin-left: 0;\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n}"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/core_contact.bundle.css","mappings":";AACA;CACC;;AAED,WAAW;AACX;IACI,mBAAmB;IACnB,cAAc;IACd,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,2DAA2D;IAC3D,SAAS;IACT,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;IAChB,UAAU;AACd;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,cAAc;IACd,qBAAqB;IACrB,2BAA2B;AAC/B;;AAEA;IACI,WAAW;IACX,0BAA0B;AAC9B;;AAEA;IACI,6BAA6B;IAC7B,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;AACrB;;AAEA;IACI,iBAAiB;AACrB;;AAEA;IACI,WAAW;AACf;AACA;IACI,UAAU;AACd;AACA;IACI,gBAAgB;AACpB;;AAEA;IACI;QACI,0BAA0B;QAC1B,kBAAkB;IACtB;AACJ;;AAEA;IACI;QACI,aAAa;IACjB;AACJ,C;;AC5EA;IACI,uBAAuB;AAC3B;AACA;IACI,iBAAiB;AACrB;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,eAAe;IACf,kBAAkB;IAClB,cAAc;IACd,yCAAyC;IACzC,aAAa;IACb,kBAAkB;IAClB,qCAAqC;IACrC,kBAAkB;AACtB;AACA;IACI,eAAe;AACnB;;AAEA;IACI,aAAa;IACb,gCAAgC;IAChC,WAAW;IACX,mBAAmB;AACvB;AACA;IACI,mBAAmB;IACnB,gBAAgB;AACpB;AACA;IACI,WAAW;IACX,eAAe;IACf,sCAAsC;IACtC,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;AACA;IACI,iBAAiB;AACrB;;AAEA;IACI,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;AAC1B;;;AAGA;IACI,cAAc;AAClB;AACA;IACI,aAAa;IACb,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;AAClB;AACA;IACI,iBAAiB;IACjB,eAAe;AACnB;AACA;;IAEI,YAAY;AAChB;AACA;IACI,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;AACrB;AACA;IACI,aAAa;AACjB;AACA;;;IAGI,kBAAkB;IAClB,aAAa;IACb,iBAAiB;IACjB,kBAAkB;AACtB;;;AAGA;IACI,gBAAgB;IAChB,cAAc;IACd,uBAAuB;IACvB,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,eAAe;AACnB;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;AACtB;;AAEA;IACI,mBAAmB;IACnB,iBAAiB;AACrB;;AAEA;IACI,2BAA2B;AAC/B;;AAEA;IACI;QACI,eAAe;IACnB;IACA;QACI,eAAe;IACnB;IACA;QACI,0BAA0B;QAC1B,WAAW;IACf;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,cAAc;QACd,WAAW;IACf;AACJ;;AAEA;AACA,C","sources":["webpack://app/./static/css/sections/core.css","webpack://app/./static/css/pages/core/contact.css"],"sourcesContent":["\n/* Home page\n*/\n\n/* Footer */\n.footer {\n background: #1f2937;\n color: #f3f4f6;\n padding: 4rem 2rem 2rem;\n}\n\n.footer-content {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-bottom: 2rem;\n}\n\n.footer-section h3 {\n color: #fff;\n margin-bottom: 1rem;\n font-size: 1.2rem;\n text-align: center;\n}\n\n.footer-section ul {\n list-style: none;\n padding: 0;\n}\n\n.footer-section ul li {\n margin-bottom: 0.5rem;\n}\n\n.footer-section a {\n color: #f3f4f6;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.footer-section a:hover {\n color: #fff;\n text-decoration: underline;\n}\n\n.footer-bottom {\n border-top: 1px solid #374151;\n padding-top: 2rem;\n text-align: center;\n font-size: 0.9rem;\n}\n\n.footer-bottom a {\n color: aquamarine;\n}\n\n.footer-section.contact {\n width: 100%;\n}\n.footer-section .container {\n padding: 0;\n}\n.footer-section .container.row .container.column {\n padding: 1vh 2vw;\n}\n\n@media (max-width: 768px) {\n .footer-content {\n grid-template-columns: 1fr;\n text-align: center;\n }\n}\n\n@media (max-width: 540px) {\n .nav-links {\n display: none;\n }\n}","\n.contact-section {\n padding: 2rem 2rem 4rem;\n}\n.contact-section h1 {\n margin: 1rem auto;\n}\n.contact-section p {\n margin: 0.5rem auto;\n}\n\n.contact-form {\n max-width: 60vw;\n width: fit-content;\n margin: 0 auto;\n background: var(--colour-text-background);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n text-align: center;\n}\n.contact-form textarea {\n max-width: 40vw;\n}\n\n.form-grid {\n display: grid;\n grid-template-columns: 200px 1fr;\n gap: 1.5rem;\n margin-bottom: 1rem;\n}\n.form-label {\n padding-top: 0.5rem;\n font-weight: 500;\n}\n.form-input {\n width: 100%;\n padding: 0.5rem;\n border: 2px solid var(--colour-accent);\n border-radius: 4px;\n font-size: 1rem;\n max-width: 40vw;\n}\ntextarea.form-input {\n min-height: 120px;\n}\n\n.marketing-consent input {\n display: inline-block;\n /* margin-left: 20%; */\n margin-bottom: 1.25rem;\n}\n\n\n.container.row.captcha > div {\n margin: 0 auto;\n}\n.container.captcha > div:first-child > label:first-child {\n display: flex;\n justify-content: center;\n width: fit-content;\n text-align: center;\n margin: 0 auto;\n}\n.container.captcha > p:last-child{\n font-size: 0.9rem;\n margin: 1vh 1vw;\n}\n.container.captcha .altcha-widget,\n.container.captcha .altcha-widget div.altcha {\n width: 200px;\n}\n.container.captcha .altcha-main {\n padding-left: 1rem;\n padding-top: 0.75rem;\n padding-bottom: 0;\n}\n.container.captcha .altcha-main > :last-child {\n display: none;\n}\n.container.captcha .altcha,\naltcha-widget > div:first-child,\n.container.captcha > div > .altcha-widget > div {\n width: fit-content;\n display: flex;\n margin-left: auto;\n margin-right: auto;\n}\n\n\ninput[type=\"submit\"] {\n margin-left: 40%;\n margin: 0 auto;\n padding: 0.75rem 1.5rem;\n background: #2563eb;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 1rem;\n}\n\ninput[type=\"submit\"]:hover {\n background: #1d4ed8;\n}\n\n.data-notice {\n margin-top: 3rem;\n padding: 1.5rem;\n background: #f3f4f6;\n border-radius: 4px;\n font-size: 0.95rem;\n}\n\n.data-notice h3 {\n margin-bottom: 1rem;\n font-size: 1.1rem;\n}\n\n.data-notice ul li {\n list-style-position: inside;\n}\n\n@media (max-width: 768px) {\n .contact-form {\n max-width: 80vw;\n }\n .contact-form textarea {\n max-width: 60vw;\n }\n .form-grid {\n grid-template-columns: 1fr;\n gap: 0.5rem;\n }\n\n .form-label {\n padding-top: 0;\n }\n\n .submit-button {\n margin-left: 0;\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/css/main.bundle.css b/static/dist/css/main.bundle.css index 4655331..265d624 100644 --- a/static/dist/css/main.bundle.css +++ b/static/dist/css/main.bundle.css @@ -410,15 +410,17 @@ h5 { font-size: 15px; /* height: 18px; */ cursor: pointer; - padding-top: 5vh; + padding: 4.5px 0; } #overlayHamburger .container:hover { color: var(--colour-page-background); background-color: var(--colour-primary); } #overlayHamburger > .container { + /* padding-top: 4.5px; padding-bottom: 4.5px; + */ } #overlayHamburger .container a { width: 100%; @@ -428,6 +430,7 @@ h5 { */ color: var(--colour-text); text-decoration: none; + line-height: initial; } #overlayHamburger .container a:hover { color: var(--colour-page-background); diff --git a/static/dist/css/main.bundle.css.map b/static/dist/css/main.bundle.css.map index 403a250..18b9bb9 100644 --- a/static/dist/css/main.bundle.css.map +++ b/static/dist/css/main.bundle.css.map @@ -1 +1 @@ -{"version":3,"file":"css/main.bundle.css","mappings":"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","sources":["webpack://app/./static/css/main.css","webpack://app/./static/css/components/button.css","webpack://app/./static/css/components/form.css","webpack://app/./static/css/components/image.css","webpack://app/./static/css/components/label.css","webpack://app/./static/css/components/overlay.css","webpack://app/./static/css/components/table.css","webpack://app/./static/css/layouts/header.css","webpack://app/./static/css/layouts/footer.css","webpack://app/./static/css/layouts/table-main.css","webpack://app/./static/css/themes/light.css"],"sourcesContent":["\n:root {\n --font-family-base: 'Open Sans', Arial, sans-serif;\n /* Declare global variables */\n /*\n --c_purple: #5B29FF;\n --c_purple_pastel: #D1D1FF;\n --c_purple_lighter: #E8E1FF;\n --c_purple_light: #C6BDFF;\n --c_purple_dark: #4700B3;\n */\n /* purple theme\n - light https://coolors.co/palette/a172fd-a77afe-ac82fe-b691fe-c1a0fe-cbaffe-d6bffe-e0cefe-ebddfe-f5ecfe\n - dark https://coolors.co/palette/310055-3c0663-4a0a77-5a108f-6818a5-8b2fc9-ab51e3-bd68ee-d283ff-dc97ff\n */\n /*\n --c_purple_darker: #310055;\n --c_purple_dark: #4A0A77;\n --c_purple: #6818A5;\n --c_purple_light: #CBAFFE;\n --c_purple_lighter: #F5ECFE;\n\n --c_blue: #0044FF;\n --c_blue_pastel: #B8E0FF;\n --c_blue_light: #73E8FF;\n --c_blue_dark: #003ADB;\n */\n /* --c_red: * /\n --c-red: #FF0000;\n --c_red_pastel: #FAE0E2;\n --c_red_lighter: #FAE0E2;\n */\n}\n\nhtml {\n height: 100vh;\n /* overflow-y: clip; */\n}\n\nbody {\n background-color: var(--colour-page-background);\n color: var(--colour-text);\n font-family: var(--font-family-base);\n font-family: Arial;\n padding: 0;\n margin: 0;\n border: 0;\n background: linear-gradient(to bottom right, var(--colour-page-background-1), var(--colour-page-background-2)); /* var(--c_purple); */\n height: 100vh;\n /* max-height: 100vh;\n overflow-y: clip; */\n}\n\n* {\n margin: 0;\n}\n\nscript, link {\n display: none !important;\n}\n\n/*\n#pageBody {\n / * height: 69vh !important; * /\n max-height: 79vh;\n padding: 0 5vw;\n margin: 0;\n border: 0;\n align-content: center;\n justify-content: flex-start;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n overflow-y: auto;\n overflow-x: hidden;\n position: absolute;\n width: 90vw;\n color: var(--colour-text);\n}\n*/\n\n.page-body > * {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n align-self: center;\n font-size: 1rem;\n color: var(--colour-text);\n}\n#pageBody > * > * {\n align-self: center;\n padding-top: 0.5vh 0.5vw;\n padding-bottom: 0.5vh 0.5vw;\n}\n#pageBody > .card {\n height: fit-content;\n margin: 0.5vh auto;\n}\n\n\n\n/* Add a card effect for articles */\n.card {\n background-color: var(--colour-text-background);\n padding: 1vh 2.5vw;\n margin: 1vh 1vw;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n border-radius: 1.5vh;\n position: relative;\n height: fit-content;\n max-width: 80vw;\n}\n\n.container {\n flex: 1;\n margin: 0;\n align-items: flex-start;\n justify-content: flex-start;\n text-align: flex-start;\n /* max-width: 100%; */\n /* min-width: fit-content; */\n}\n\n.column {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin: auto 0;\n}\n\n.row {\n display: flex; \n flex-direction: row;\n width: 100%;\n flex-wrap: wrap;\n}\n\n.container > .card:first-of-type {\n margin-top: none;\n}\n\n\n/*\n/* Responsive layout - when the screen is less than 800px wide, make the two columns stack on top of each other instead of next to each other *\n@media screen and (max-width: 800px) {\n .leftcolumn, .rightcolumn { \n width: 100%;\n /* padding: 0; *\n }\n}\n\n/* Responsive layout - when the screen is less than 400px wide, make the navigation links stack on top of each other instead of next to each other *\n@media screen and (max-width: 400px) {\n .topnav a {\n float: none;\n width: 100%;\n }\n}\n*/\n\n.container-input {\n padding: 1vh 1vw;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n\n.container-input > label {\n width: 100%;\n margin-bottom: 1vh;\n margin-top: 0;\n}\n\n.container-input > input,\n.container-input > textarea {\n border: 2px solid var(--colour-accent);\n border-radius: 0.5vh;\n padding: 1vh 1vw;\n}\n\n.label-title {\n width: 100%;\n}\n\n\nul {\n max-width: 90%;\n padding: 5px 0 10px 0;\n width: fit-content;\n margin: auto;\n}\nli {\n text-align: left;\n font-size: 18px;\n}\n\n\n:not(input,textarea,select,button).dirty {\n background-color: var(--colour-accent);\n}\ninput.dirty, textarea.dirty, select.dirty {\n border-color: var(--colour-primary);\n}\n\n\n\n\n@media screen and (max-width: 400px) {\n /*\n img.logo {\n border-radius: 3vh;\n }\n .company-name {\n font-size: 14px;\n }\n */\n}",".button {\n display: inline-block;\n padding: 0.5vh 0.75vh;\n border-radius: 0.75vh;\n text-decoration: none;\n font-weight: bold;\n transition: all 0.3s ease;\n width: fit-content;\n}\n.button:not(.is_collapsed) {\n cursor: pointer;\n}\n.button.is_collapsed {\n display: block;\n opacity: 0;\n}\n\n.button-primary {\n background: var(--colour-accent);\n color: var(--colour-primary);\n border: 2px solid var(--colour-primary);\n}\n\n.button-primary:hover {\n background: var(--colour-secondary);\n}\n\n.button-light {\n background: white;\n color: var(--colour-primary);\n}\n\n.button-light:hover {\n background: var(--colour-accent);\n}\n\n.logo:hover{\n cursor: pointer;\n}\n\n\n.button.icon.active.delete, \n.button.icon.active.add {\n height: 2vh;\n}","\n\nselect {\n border: 1px solid var(--colour-accent);\n background-color: var(--colour-page-background-1);\n}","\nimg, video {\n border-radius: 3vh;\n}\n","\nh1 {\n font-size: 2.5rem;\n}\nh2 {\n font-size: 1.8rem;\n}\nh3 {\n font-size: 1.2rem;\n margin-top: 1vh;\n}\nh4 {\n font-size: 13px;\n margin: 1vh;\n text-align: center;\n margin-left: auto;\n margin-right: auto;\n}\nh5 {\n font-size: 11px;\n margin: 1vh;\n}\n\n\n.text-center {\n text-align: center;\n}\n.section-title {\n font-size: 1.8rem;\n margin-bottom: 1rem;\n}\n.section-subtitle {\n font-size: 1.2rem;\n margin-bottom: 2rem;\n}","\n\n/* Overlay modal */\n.overlay {\n /*\n display: none;\n */\n position: fixed;\n width: 100px;\n /* height: 50%; */ \n background: var(--colour-page-background);\n justify-content: right;\n align-items: right;\n align-self: right;\n z-index: 999;\n}\n.is_collapsed {\n display: none;\n}\n\n/* Hamburger menu overlay */\n#buttonHamburger {\n cursor: pointer;\n position: fixed;\n right: 1vh;\n min-height: 3.5vh;\n max-height: 3.5vh;\n min-width: 4vh;\n max-width: 4vh;\n z-index: 10;\n padding: 0;\n}\n#buttonHamburger.expanded {\n min-width: 100px;\n max-width: 100px;\n min-height: 5vh;\n max-height: 5vh;\n padding-left: calc(100 * 1px - 5 * 1vh);\n padding-bottom: 1vh;\n}\n#buttonHamburger .icon.hamburger {\n min-height: 2.5vh;\n max-height: 2.5vh;\n min-width: 2.5vh;\n max-width: 2.5vh;\n padding: 0.5vh 0.75vh;\n}\n/*\n#buttonHamburger:hover {\n text-decoration: none;\n cursor: pointer;\n}\n*/\n#overlayHamburger {\n top: 7vh;\n right: 1vh;\n overflow-x: hidden;\n overflow-y: auto;\n max-height: 60vh;\n background-color: var(--colour-accent);\n border: 2px solid var(--border-colour);\n border-radius: 0.75vh;\n width: 100px;\n z-index: 2;\n padding-top: 3.5vh;\n}\n#overlayHamburger:first-child {\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n}\n#overlayHamburger:last-child {\n border-bottom-left-radius: 12px;\n border-bottom-right-radius: 12px;\n}\n#overlayHamburger > :hover {\n color: var(--colour-page-background);\n background-color: var(--colour-primary);\n}\n#overlayHamburger .container {\n background-color: var(--colour-page-background);\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n /* color: var(--colour-text); */\n font-weight: bold;\n font-size: 15px;\n /* height: 18px; */\n cursor: pointer;\n padding-top: 5vh;\n}\n#overlayHamburger .container:hover {\n color: var(--colour-page-background);\n background-color: var(--colour-primary);\n}\n#overlayHamburger > .container {\n padding-top: 4.5px;\n padding-bottom: 4.5px;\n}\n#overlayHamburger .container a {\n width: 100%;\n /*\n margin-top: 4.5px;\n margin-bottom: 4.5px;\n */\n color: var(--colour-text);\n text-decoration: none;\n}\n#overlayHamburger .container a:hover {\n color: var(--colour-page-background);\n background-color: var(--colour-primary);\n}\n\n@media screen and (max-width: 400px) {\n #buttonHamburger {\n min-height: 5vh;\n max-height: 5vh;\n min-width: 5.5vh;\n max-width: 5.5vh;\n }\n #buttonHamburger .icon.hamburger {\n min-height: 4vh;\n max-height: 4vh;\n min-width: 4vh;\n max-width: 4vh;\n }\n #overlayHamburger {\n padding-top: 5vh;\n }\n}\n\n/* Confirm overlay */\n#overlayConfirm {\n position: absolute;\n left: 25vw;\n width: 50vw;\n height: 50vh;\n}\n\n#overlayConfirm .row > * {\n margin-left: auto;\n margin-right: auto;\n}\n\n#overlayConfirm .row .button.button-cancel {\n margin-right: 0.5vh;\n}\n#overlayConfirm .row .button.submit {\n margin-left: 0.5vh;\n}\n\n\n","\n#formFilters .container {\n max-width: fit-content;\n}\n\nthead, tbody {\n padding-top: 0px !important;\n padding-bottom: 0px !important;\n}\n\nth {\n background-color: transparent;\n}\ntd {\n font-size: min(16px, calc(1vh * 3));\n}\n\nth, td {\n min-width: fit-content;\n}\ntr:not(:last-child) > td {\n border-bottom: 1px dashed var(--border-colour);\n}\ntd > table > tbody > tr > td {\n border: none !important;\n}\nth.is_collapsed, td.is_collapsed {\n display: table-cell !important;\n}\ntd.dirty {\n background-color: var(--colour-primary);\n}\ntd:not(.dirty) {\n background-color: transparent;\n}\n\ntr {\n min-height: 1px;\n border-bottom: 1px solid;\n border-top: 1px solid;\n border-color: var(--border-colour);\n background-color: transparent;\n}\n\ntable button {\n margin: 0.25vh;\n padding: 0.5vh 1vh;\n}\n\ntable button.active {\n background-color: var(--colour-page-background);\n}\n\ntr.delete, tr.delete > td {\n background-color: var(--colour-error);\n}\n\ntable div {\n align-content: center;\n}","\n\n/* Navigation */\n.topnav {\n display: flex;\n flex-wrap: wrap;\n flex: 1;\n flex-direction: row;\n font-weight: bold;\n font-size: 1vh;\n max-height: 7vh;\n height: 7vh;\n align-items: flex-start;\n background: var(--colour-text-background);\n justify-content: center; /* space-between */\n align-items: center;\n}\n.topnav a,\n.topnav label,\n.topnav p,\n.topnav h1 {\n float: left;\n display: flex;\n text-align: center;\n text-decoration: none;\n width: 100%;\n max-height: 7vh;\n justify-content: center;\n}\n.topnav h1 {\n color: var(--colour-text-link-visited);\n}\n.topnav a:hover {\n background-color: var(--colour-page-background);\n color: var(--colour-text)\n}\n.topnav > .container {\n width: 10vh;\n height: 100%;\n align-items: center;\n align-self: center;\n display: flex;\n}\n.topnav .container.logo {\n cursor: pointer;\n}\n.topnav .container .logo {\n /* min-width: 35vh; */\n max-width: 35vw;\n /* min-height: 6vh; */\n max-height: 6vh;\n margin: 0.5vh;\n margin-right: auto;\n}\n.topnav .container.company-name {\n min-width: 30vw;\n max-width: 30vw;\n margin-right: 35vw;\n}\n.company-name {\n font-size: 1.6rem;\n}\n.nav-links {\n display: flex;\n gap: 0 2rem;\n display: flex;\n flex-wrap: wrap;\n max-width: calc(1vw * 100 - 1vh * 35);\n align-items: center;\n margin: 0 0.5vw;\n}\n.nav-links a {\n text-decoration: none;\n color: var(--colour-text);\n font-weight: normal;\n align-content: center;\n font-size: 1.2rem;\n width: fit-content;\n padding: 0.5vh 0.5vw;\n border-radius: 0.5vh;\n}\n.nav-links a.button {\n color: var(--colour-text-background);\n margin: 0 auto;\n font-weight: bold;\n}\n\n\n/* Page Filters */\n#formFilters {\n width: fit-content;\n margin-left: auto;\n margin-right: auto;\n \n}\n#formFilters * {\n font-size: 1rem;\n}\n\n#formFilters .container {\n}\n#formFilters .container-input {\n max-width: fit-content;\n padding: 0 0.5vh;\n}\n#formFilters .container-input:has(.dirty) {\n background-color: var(--colour-accent);\n} \n\n#formFilters .container-input input {\n width: 10vh;\n max-width: 10vh;\n height: 20px;\n}\n/*\n#formFilters .container-input input {\n height: 1.7vh;\n}\n#formFilters .container-input select {\n height: 2vh;\n}\n*/\n\n#formFilters .container-input.filter.active_only {\n width: 8vh;\n}\n#formFilters .container-input.filter.active_only input {\n display: none;\n}\n#formFilters .container-input.filter.active_only svg.active_only {\n height: 25px;\n fill: var(--colour-text-background);\n background-color: var(--colour-accent);\n /* border: 1px solid var(--colour-accent);\n border-radius: 0.5vh; */\n width: 25px;\n}\n#formFilters .container-input.filter.active_only svg.active_only.is_checked {\n fill: var(--colour-accent);\n background-color: var(--colour-text-background);\n}\n#formFilters .container-input.filter.is_not_empty {\n width: 12vh;\n}\n\n/*\n#formFilters button {\n padding: 0.5vh 0.75vh;\n background-color: var(--colour-accent);\n color: var(--colour-primary);\n font-weight: bold;\n border-radius: 0.75vh;\n border: 2px solid var(--colour-primary);\n}\n\n#formFilters button.is_collapsed {\n display: block;\n opacity: 0;\n}\n*/\n\nform.filter button.save, form.filter button.button-cancel {\n margin-top: 0;\n margin-bottom: 0;\n}\nform.filter button.save, form.filter button.button-cancel {\n margin-top: 0;\n margin-bottom: 1px;\n}\n\n/*\n@media screen and (max-width: 400px) {\n .topnav h1 {\n font-size: 16px;\n }\n}\n*/\n\n@media screen and (max-width: 980px) {\n /*\n .hero h1 {\n font-size: 2.5rem;\n }\n */\n .nav-links {\n display: none;\n }\n .topnav {\n justify-content: flex-start;\n align-items: start;\n }\n}","/* In sections */","\n#formFilters {\n padding: 0.5vh 1vw;\n margin-top: 1vh;\n}\n\ntable.table-main {\n overflow-x: auto;\n padding: 1vh 1vw;\n max-width: 88vw; /* min(calc(1vh * 80), calc(1vw * 90)); */\n width: min-content;\n align-items: normal;\n justify-content: normal;\n}\n\ntable.table-main * {\n padding: 0.25vh 0.5vh;\n}\n\ntable.table-main thead {\n max-height: 4vh;\n overflow-y: visible;\n background-color: var(--colour-text-background);\n}\n\ntable.table-main tbody {\n max-height: 75vh;\n overflow-y: auto;\n min-width: fit-content;\n max-width: fit-content;\n overflow-x: visible;\n}\ntable.table-main tbody.is_collapsed {\n display: block;\n}\ntable.table-main:has(tbody > div) tbody {\n}\ntable.table-main tbody > div {\n margin-left: auto;\n margin-right: auto;\n text-align: center;\n justify-content: center;\n justify-items: center;\n justify-self: center;\n align-content: center;\n align-items: center;\n align-self: center;\n position: relative;\n display: block;\n width: 100%; /* min(calc(90vh), calc(70vw)); */\n}\n\ntable.table-main select, \ntable.table-main input:not([type=\"checkbox\"]), \ntable.table-main textarea, \ntable.table-main div {\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n height: 100%;\n border: 1px solid var(--colour-accent);\n border-radius: 0.5vh;\n text-align: center;\n background-color: var(--colour-text-background);\n font-size: 16px;\n}\n\ntable.table-main thead tr th, \ntable.table-main tbody tr td {\n max-width: 20vh;\n min-width: 20vh;\n padding: 0 0.5vh;\n}\ntable.table-main tbody tr td {\n height: 3vh;\n /* padding-top: 0.5vh; */\n}\ntable.table-main thead tr th.notes, \ntable.table-main tbody tr td.notes {\n max-width: fit-content;\n}\ntable.table-main tbody tr td:has(.dirty) {\n background-color: var(--colour-primary);\n}\ntable.table-main tbody tr td:has(.dirty) table tr:not(:has(.dirty)) {\n background-color: var(--colour-text-background);\n}\ntable.table-main tbody tr:not(:last-of-type) td {\n padding-bottom: 0.25vh;\n}\ntable.table-main tbody tr td.ddl-preview div {\n cursor: pointer;\n}\ntable.table-main tbody tr td.ddl-preview div,\ntable.table-main tbody tr td.ddl-preview select {\n padding-left: 2vh;\n padding-right: 2vh;\n}\ntable.table-main thead tr th.active, \ntable.table-main tbody tr td.active {\n max-width: 6vh;\n min-width: 6vh;\n}\ntable.table-main thead tr th.active svg.active.add {\n fill: var(--colour-primary);\n background-color: var(--colour-accent);\n border: 2px solid var(--colour-accent);\n padding: 0;\n border-radius: 1vh;\n}\ntable.table-main tbody tr td.active svg.active.add {\n fill: var(--colour-primary);\n}\ntable.table-main tbody tr td.active svg.active.delete {\n fill: var(--colour-error);\n}\ntable.table-main tbody tr td.display_order, \ntable.table-main thead tr th.display_order {\n max-width: 5vh;\n min-width: 5vh;\n}\n\n#container-template-elements {\n display: none;\n}\n\n\n@media screen and (max-width: 850px) {\n}\n@media screen and (max-width: 400px) {\n #formFilters input[type=\"text\"],\n #formFilters select {\n width: 15vh;\n /* height: 3vh; */\n }\n .topnav .container.company-name {\n margin: 0 auto;\n min-width: 40vw;\n max-width: 64vw;\n }\n .company-name {\n font-size: 1.2rem;\n }\n table.table-main {\n max-height: 61vh;\n }\n table.table-main thead {\n font-size: 0.8rem;\n }\n table.table-main tbody {\n max-height: 53vh;\n }\n}","/* Default */\n:root {\n /* Claude dark blue / grey theme */\n --colour-accent: #C77DFF;\n --colour-error: red;\n --colour-error-accent: #fc8181;\n --colour-error-highlight: #fff5f5;\n --colour-error-title: #c53030;\n --colour-page-background: #E0AAFF;\n --colour-page-background-1: #F5ECFE;\n --colour-page-background-2: #FAE0E2;\n --colour-primary: #240046;\n --colour-secondary: #3C096C;\n --colour-success: #38a169;\n --colour-success-highlight: #f0fff4;\n --colour-success-title: #16a34a;\n --colour-text: #10002B;\n --colour-text-background: white;\n --colour-text-link-unvisited: #0000EE;\n --colour-text-link-visited: #551A8B;\n}\n\n/*\n--c_purple_darker: #310055;\n--c_purple_dark: #4A0A77;\n--c_purple: #6818A5;\n--c_purple_light: #CBAFFE;\n--c_purple_lighter: #F5ECFE;\n\n--c_blue: #0044FF;\n--c_blue_pastel: #B8E0FF;\n--c_blue_light: #73E8FF;\n--c_blue_dark: #003ADB;\n/* --c_red: * /\n--c-red: #FF0000;\n--c_red_pastel: #FAE0E2;\n--c_red_lighter: #FAE0E2;\n}\n*/"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/main.bundle.css","mappings":"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","sources":["webpack://app/./static/css/main.css","webpack://app/./static/css/components/button.css","webpack://app/./static/css/components/form.css","webpack://app/./static/css/components/image.css","webpack://app/./static/css/components/label.css","webpack://app/./static/css/components/overlay.css","webpack://app/./static/css/components/table.css","webpack://app/./static/css/layouts/header.css","webpack://app/./static/css/layouts/footer.css","webpack://app/./static/css/layouts/table-main.css","webpack://app/./static/css/themes/light.css"],"sourcesContent":["\n:root {\n --font-family-base: 'Open Sans', Arial, sans-serif;\n /* Declare global variables */\n /*\n --c_purple: #5B29FF;\n --c_purple_pastel: #D1D1FF;\n --c_purple_lighter: #E8E1FF;\n --c_purple_light: #C6BDFF;\n --c_purple_dark: #4700B3;\n */\n /* purple theme\n - light https://coolors.co/palette/a172fd-a77afe-ac82fe-b691fe-c1a0fe-cbaffe-d6bffe-e0cefe-ebddfe-f5ecfe\n - dark https://coolors.co/palette/310055-3c0663-4a0a77-5a108f-6818a5-8b2fc9-ab51e3-bd68ee-d283ff-dc97ff\n */\n /*\n --c_purple_darker: #310055;\n --c_purple_dark: #4A0A77;\n --c_purple: #6818A5;\n --c_purple_light: #CBAFFE;\n --c_purple_lighter: #F5ECFE;\n\n --c_blue: #0044FF;\n --c_blue_pastel: #B8E0FF;\n --c_blue_light: #73E8FF;\n --c_blue_dark: #003ADB;\n */\n /* --c_red: * /\n --c-red: #FF0000;\n --c_red_pastel: #FAE0E2;\n --c_red_lighter: #FAE0E2;\n */\n}\n\nhtml {\n height: 100vh;\n /* overflow-y: clip; */\n}\n\nbody {\n background-color: var(--colour-page-background);\n color: var(--colour-text);\n font-family: var(--font-family-base);\n font-family: Arial;\n padding: 0;\n margin: 0;\n border: 0;\n background: linear-gradient(to bottom right, var(--colour-page-background-1), var(--colour-page-background-2)); /* var(--c_purple); */\n height: 100vh;\n /* max-height: 100vh;\n overflow-y: clip; */\n}\n\n* {\n margin: 0;\n}\n\nscript, link {\n display: none !important;\n}\n\n/*\n#pageBody {\n / * height: 69vh !important; * /\n max-height: 79vh;\n padding: 0 5vw;\n margin: 0;\n border: 0;\n align-content: center;\n justify-content: flex-start;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n overflow-y: auto;\n overflow-x: hidden;\n position: absolute;\n width: 90vw;\n color: var(--colour-text);\n}\n*/\n\n.page-body > * {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n align-self: center;\n font-size: 1rem;\n color: var(--colour-text);\n}\n#pageBody > * > * {\n align-self: center;\n padding-top: 0.5vh 0.5vw;\n padding-bottom: 0.5vh 0.5vw;\n}\n#pageBody > .card {\n height: fit-content;\n margin: 0.5vh auto;\n}\n\n\n\n/* Add a card effect for articles */\n.card {\n background-color: var(--colour-text-background);\n padding: 1vh 2.5vw;\n margin: 1vh 1vw;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n border-radius: 1.5vh;\n position: relative;\n height: fit-content;\n max-width: 80vw;\n}\n\n.container {\n flex: 1;\n margin: 0;\n align-items: flex-start;\n justify-content: flex-start;\n text-align: flex-start;\n /* max-width: 100%; */\n /* min-width: fit-content; */\n}\n\n.column {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin: auto 0;\n}\n\n.row {\n display: flex; \n flex-direction: row;\n width: 100%;\n flex-wrap: wrap;\n}\n\n.container > .card:first-of-type {\n margin-top: none;\n}\n\n\n/*\n/* Responsive layout - when the screen is less than 800px wide, make the two columns stack on top of each other instead of next to each other *\n@media screen and (max-width: 800px) {\n .leftcolumn, .rightcolumn { \n width: 100%;\n /* padding: 0; *\n }\n}\n\n/* Responsive layout - when the screen is less than 400px wide, make the navigation links stack on top of each other instead of next to each other *\n@media screen and (max-width: 400px) {\n .topnav a {\n float: none;\n width: 100%;\n }\n}\n*/\n\n.container-input {\n padding: 1vh 1vw;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n\n.container-input > label {\n width: 100%;\n margin-bottom: 1vh;\n margin-top: 0;\n}\n\n.container-input > input,\n.container-input > textarea {\n border: 2px solid var(--colour-accent);\n border-radius: 0.5vh;\n padding: 1vh 1vw;\n}\n\n.label-title {\n width: 100%;\n}\n\n\nul {\n max-width: 90%;\n padding: 5px 0 10px 0;\n width: fit-content;\n margin: auto;\n}\nli {\n text-align: left;\n font-size: 18px;\n}\n\n\n:not(input,textarea,select,button).dirty {\n background-color: var(--colour-accent);\n}\ninput.dirty, textarea.dirty, select.dirty {\n border-color: var(--colour-primary);\n}\n\n\n\n\n@media screen and (max-width: 400px) {\n /*\n img.logo {\n border-radius: 3vh;\n }\n .company-name {\n font-size: 14px;\n }\n */\n}",".button {\n display: inline-block;\n padding: 0.5vh 0.75vh;\n border-radius: 0.75vh;\n text-decoration: none;\n font-weight: bold;\n transition: all 0.3s ease;\n width: fit-content;\n}\n.button:not(.is_collapsed) {\n cursor: pointer;\n}\n.button.is_collapsed {\n display: block;\n opacity: 0;\n}\n\n.button-primary {\n background: var(--colour-accent);\n color: var(--colour-primary);\n border: 2px solid var(--colour-primary);\n}\n\n.button-primary:hover {\n background: var(--colour-secondary);\n}\n\n.button-light {\n background: white;\n color: var(--colour-primary);\n}\n\n.button-light:hover {\n background: var(--colour-accent);\n}\n\n.logo:hover{\n cursor: pointer;\n}\n\n\n.button.icon.active.delete, \n.button.icon.active.add {\n height: 2vh;\n}","\n\nselect {\n border: 1px solid var(--colour-accent);\n background-color: var(--colour-page-background-1);\n}","\nimg, video {\n border-radius: 3vh;\n}\n","\nh1 {\n font-size: 2.5rem;\n}\nh2 {\n font-size: 1.8rem;\n}\nh3 {\n font-size: 1.2rem;\n margin-top: 1vh;\n}\nh4 {\n font-size: 13px;\n margin: 1vh;\n text-align: center;\n margin-left: auto;\n margin-right: auto;\n}\nh5 {\n font-size: 11px;\n margin: 1vh;\n}\n\n\n.text-center {\n text-align: center;\n}\n.section-title {\n font-size: 1.8rem;\n margin-bottom: 1rem;\n}\n.section-subtitle {\n font-size: 1.2rem;\n margin-bottom: 2rem;\n}","\n\n/* Overlay modal */\n.overlay {\n /*\n display: none;\n */\n position: fixed;\n width: 100px;\n /* height: 50%; */ \n background: var(--colour-page-background);\n justify-content: right;\n align-items: right;\n align-self: right;\n z-index: 999;\n}\n.is_collapsed {\n display: none;\n}\n\n/* Hamburger menu overlay */\n#buttonHamburger {\n cursor: pointer;\n position: fixed;\n right: 1vh;\n min-height: 3.5vh;\n max-height: 3.5vh;\n min-width: 4vh;\n max-width: 4vh;\n z-index: 10;\n padding: 0;\n}\n#buttonHamburger.expanded {\n min-width: 100px;\n max-width: 100px;\n min-height: 5vh;\n max-height: 5vh;\n padding-left: calc(100 * 1px - 5 * 1vh);\n padding-bottom: 1vh;\n}\n#buttonHamburger .icon.hamburger {\n min-height: 2.5vh;\n max-height: 2.5vh;\n min-width: 2.5vh;\n max-width: 2.5vh;\n padding: 0.5vh 0.75vh;\n}\n/*\n#buttonHamburger:hover {\n text-decoration: none;\n cursor: pointer;\n}\n*/\n#overlayHamburger {\n top: 7vh;\n right: 1vh;\n overflow-x: hidden;\n overflow-y: auto;\n max-height: 60vh;\n background-color: var(--colour-accent);\n border: 2px solid var(--border-colour);\n border-radius: 0.75vh;\n width: 100px;\n z-index: 2;\n padding-top: 3.5vh;\n}\n#overlayHamburger:first-child {\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n}\n#overlayHamburger:last-child {\n border-bottom-left-radius: 12px;\n border-bottom-right-radius: 12px;\n}\n#overlayHamburger > :hover {\n color: var(--colour-page-background);\n background-color: var(--colour-primary);\n}\n#overlayHamburger .container {\n background-color: var(--colour-page-background);\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n /* color: var(--colour-text); */\n font-weight: bold;\n font-size: 15px;\n /* height: 18px; */\n cursor: pointer;\n padding: 4.5px 0;\n}\n#overlayHamburger .container:hover {\n color: var(--colour-page-background);\n background-color: var(--colour-primary);\n}\n#overlayHamburger > .container {\n /*\n padding-top: 4.5px;\n padding-bottom: 4.5px;\n */\n}\n#overlayHamburger .container a {\n width: 100%;\n /*\n margin-top: 4.5px;\n margin-bottom: 4.5px;\n */\n color: var(--colour-text);\n text-decoration: none;\n line-height: initial;\n}\n#overlayHamburger .container a:hover {\n color: var(--colour-page-background);\n background-color: var(--colour-primary);\n}\n\n@media screen and (max-width: 400px) {\n #buttonHamburger {\n min-height: 5vh;\n max-height: 5vh;\n min-width: 5.5vh;\n max-width: 5.5vh;\n }\n #buttonHamburger .icon.hamburger {\n min-height: 4vh;\n max-height: 4vh;\n min-width: 4vh;\n max-width: 4vh;\n }\n #overlayHamburger {\n padding-top: 5vh;\n }\n}\n\n/* Confirm overlay */\n#overlayConfirm {\n position: absolute;\n left: 25vw;\n width: 50vw;\n height: 50vh;\n}\n\n#overlayConfirm .row > * {\n margin-left: auto;\n margin-right: auto;\n}\n\n#overlayConfirm .row .button.button-cancel {\n margin-right: 0.5vh;\n}\n#overlayConfirm .row .button.submit {\n margin-left: 0.5vh;\n}\n\n\n","\n#formFilters .container {\n max-width: fit-content;\n}\n\nthead, tbody {\n padding-top: 0px !important;\n padding-bottom: 0px !important;\n}\n\nth {\n background-color: transparent;\n}\ntd {\n font-size: min(16px, calc(1vh * 3));\n}\n\nth, td {\n min-width: fit-content;\n}\ntr:not(:last-child) > td {\n border-bottom: 1px dashed var(--border-colour);\n}\ntd > table > tbody > tr > td {\n border: none !important;\n}\nth.is_collapsed, td.is_collapsed {\n display: table-cell !important;\n}\ntd.dirty {\n background-color: var(--colour-primary);\n}\ntd:not(.dirty) {\n background-color: transparent;\n}\n\ntr {\n min-height: 1px;\n border-bottom: 1px solid;\n border-top: 1px solid;\n border-color: var(--border-colour);\n background-color: transparent;\n}\n\ntable button {\n margin: 0.25vh;\n padding: 0.5vh 1vh;\n}\n\ntable button.active {\n background-color: var(--colour-page-background);\n}\n\ntr.delete, tr.delete > td {\n background-color: var(--colour-error);\n}\n\ntable div {\n align-content: center;\n}","\n\n/* Navigation */\n.topnav {\n display: flex;\n flex-wrap: wrap;\n flex: 1;\n flex-direction: row;\n font-weight: bold;\n font-size: 1vh;\n max-height: 7vh;\n height: 7vh;\n align-items: flex-start;\n background: var(--colour-text-background);\n justify-content: center; /* space-between */\n align-items: center;\n}\n.topnav a,\n.topnav label,\n.topnav p,\n.topnav h1 {\n float: left;\n display: flex;\n text-align: center;\n text-decoration: none;\n width: 100%;\n max-height: 7vh;\n justify-content: center;\n}\n.topnav h1 {\n color: var(--colour-text-link-visited);\n}\n.topnav a:hover {\n background-color: var(--colour-page-background);\n color: var(--colour-text)\n}\n.topnav > .container {\n width: 10vh;\n height: 100%;\n align-items: center;\n align-self: center;\n display: flex;\n}\n.topnav .container.logo {\n cursor: pointer;\n}\n.topnav .container .logo {\n /* min-width: 35vh; */\n max-width: 35vw;\n /* min-height: 6vh; */\n max-height: 6vh;\n margin: 0.5vh;\n margin-right: auto;\n}\n.topnav .container.company-name {\n min-width: 30vw;\n max-width: 30vw;\n margin-right: 35vw;\n}\n.company-name {\n font-size: 1.6rem;\n}\n.nav-links {\n display: flex;\n gap: 0 2rem;\n display: flex;\n flex-wrap: wrap;\n max-width: calc(1vw * 100 - 1vh * 35);\n align-items: center;\n margin: 0 0.5vw;\n}\n.nav-links a {\n text-decoration: none;\n color: var(--colour-text);\n font-weight: normal;\n align-content: center;\n font-size: 1.2rem;\n width: fit-content;\n padding: 0.5vh 0.5vw;\n border-radius: 0.5vh;\n}\n.nav-links a.button {\n color: var(--colour-text-background);\n margin: 0 auto;\n font-weight: bold;\n}\n\n\n/* Page Filters */\n#formFilters {\n width: fit-content;\n margin-left: auto;\n margin-right: auto;\n \n}\n#formFilters * {\n font-size: 1rem;\n}\n\n#formFilters .container {\n}\n#formFilters .container-input {\n max-width: fit-content;\n padding: 0 0.5vh;\n}\n#formFilters .container-input:has(.dirty) {\n background-color: var(--colour-accent);\n} \n\n#formFilters .container-input input {\n width: 10vh;\n max-width: 10vh;\n height: 20px;\n}\n/*\n#formFilters .container-input input {\n height: 1.7vh;\n}\n#formFilters .container-input select {\n height: 2vh;\n}\n*/\n\n#formFilters .container-input.filter.active_only {\n width: 8vh;\n}\n#formFilters .container-input.filter.active_only input {\n display: none;\n}\n#formFilters .container-input.filter.active_only svg.active_only {\n height: 25px;\n fill: var(--colour-text-background);\n background-color: var(--colour-accent);\n /* border: 1px solid var(--colour-accent);\n border-radius: 0.5vh; */\n width: 25px;\n}\n#formFilters .container-input.filter.active_only svg.active_only.is_checked {\n fill: var(--colour-accent);\n background-color: var(--colour-text-background);\n}\n#formFilters .container-input.filter.is_not_empty {\n width: 12vh;\n}\n\n/*\n#formFilters button {\n padding: 0.5vh 0.75vh;\n background-color: var(--colour-accent);\n color: var(--colour-primary);\n font-weight: bold;\n border-radius: 0.75vh;\n border: 2px solid var(--colour-primary);\n}\n\n#formFilters button.is_collapsed {\n display: block;\n opacity: 0;\n}\n*/\n\nform.filter button.save, form.filter button.button-cancel {\n margin-top: 0;\n margin-bottom: 0;\n}\nform.filter button.save, form.filter button.button-cancel {\n margin-top: 0;\n margin-bottom: 1px;\n}\n\n/*\n@media screen and (max-width: 400px) {\n .topnav h1 {\n font-size: 16px;\n }\n}\n*/\n\n@media screen and (max-width: 980px) {\n /*\n .hero h1 {\n font-size: 2.5rem;\n }\n */\n .nav-links {\n display: none;\n }\n .topnav {\n justify-content: flex-start;\n align-items: start;\n }\n}","/* In sections */","\n#formFilters {\n padding: 0.5vh 1vw;\n margin-top: 1vh;\n}\n\ntable.table-main {\n overflow-x: auto;\n padding: 1vh 1vw;\n max-width: 88vw; /* min(calc(1vh * 80), calc(1vw * 90)); */\n width: min-content;\n align-items: normal;\n justify-content: normal;\n}\n\ntable.table-main * {\n padding: 0.25vh 0.5vh;\n}\n\ntable.table-main thead {\n max-height: 4vh;\n overflow-y: visible;\n background-color: var(--colour-text-background);\n}\n\ntable.table-main tbody {\n max-height: 75vh;\n overflow-y: auto;\n min-width: fit-content;\n max-width: fit-content;\n overflow-x: visible;\n}\ntable.table-main tbody.is_collapsed {\n display: block;\n}\ntable.table-main:has(tbody > div) tbody {\n}\ntable.table-main tbody > div {\n margin-left: auto;\n margin-right: auto;\n text-align: center;\n justify-content: center;\n justify-items: center;\n justify-self: center;\n align-content: center;\n align-items: center;\n align-self: center;\n position: relative;\n display: block;\n width: 100%; /* min(calc(90vh), calc(70vw)); */\n}\n\ntable.table-main select, \ntable.table-main input:not([type=\"checkbox\"]), \ntable.table-main textarea, \ntable.table-main div {\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n height: 100%;\n border: 1px solid var(--colour-accent);\n border-radius: 0.5vh;\n text-align: center;\n background-color: var(--colour-text-background);\n font-size: 16px;\n}\n\ntable.table-main thead tr th, \ntable.table-main tbody tr td {\n max-width: 20vh;\n min-width: 20vh;\n padding: 0 0.5vh;\n}\ntable.table-main tbody tr td {\n height: 3vh;\n /* padding-top: 0.5vh; */\n}\ntable.table-main thead tr th.notes, \ntable.table-main tbody tr td.notes {\n max-width: fit-content;\n}\ntable.table-main tbody tr td:has(.dirty) {\n background-color: var(--colour-primary);\n}\ntable.table-main tbody tr td:has(.dirty) table tr:not(:has(.dirty)) {\n background-color: var(--colour-text-background);\n}\ntable.table-main tbody tr:not(:last-of-type) td {\n padding-bottom: 0.25vh;\n}\ntable.table-main tbody tr td.ddl-preview div {\n cursor: pointer;\n}\ntable.table-main tbody tr td.ddl-preview div,\ntable.table-main tbody tr td.ddl-preview select {\n padding-left: 2vh;\n padding-right: 2vh;\n}\ntable.table-main thead tr th.active, \ntable.table-main tbody tr td.active {\n max-width: 6vh;\n min-width: 6vh;\n}\ntable.table-main thead tr th.active svg.active.add {\n fill: var(--colour-primary);\n background-color: var(--colour-accent);\n border: 2px solid var(--colour-accent);\n padding: 0;\n border-radius: 1vh;\n}\ntable.table-main tbody tr td.active svg.active.add {\n fill: var(--colour-primary);\n}\ntable.table-main tbody tr td.active svg.active.delete {\n fill: var(--colour-error);\n}\ntable.table-main tbody tr td.display_order, \ntable.table-main thead tr th.display_order {\n max-width: 5vh;\n min-width: 5vh;\n}\n\n#container-template-elements {\n display: none;\n}\n\n\n@media screen and (max-width: 850px) {\n}\n@media screen and (max-width: 400px) {\n #formFilters input[type=\"text\"],\n #formFilters select {\n width: 15vh;\n /* height: 3vh; */\n }\n .topnav .container.company-name {\n margin: 0 auto;\n min-width: 40vw;\n max-width: 64vw;\n }\n .company-name {\n font-size: 1.2rem;\n }\n table.table-main {\n max-height: 61vh;\n }\n table.table-main thead {\n font-size: 0.8rem;\n }\n table.table-main tbody {\n max-height: 53vh;\n }\n}","/* Default */\n:root {\n /* Claude dark blue / grey theme */\n --colour-accent: #C77DFF;\n --colour-error: red;\n --colour-error-accent: #fc8181;\n --colour-error-highlight: #fff5f5;\n --colour-error-title: #c53030;\n --colour-page-background: #E0AAFF;\n --colour-page-background-1: #F5ECFE;\n --colour-page-background-2: #FAE0E2;\n --colour-primary: #240046;\n --colour-secondary: #3C096C;\n --colour-success: #38a169;\n --colour-success-highlight: #f0fff4;\n --colour-success-title: #16a34a;\n --colour-text: #10002B;\n --colour-text-background: white;\n --colour-text-link-unvisited: #0000EE;\n --colour-text-link-visited: #551A8B;\n}\n\n/*\n--c_purple_darker: #310055;\n--c_purple_dark: #4A0A77;\n--c_purple: #6818A5;\n--c_purple_light: #CBAFFE;\n--c_purple_lighter: #F5ECFE;\n\n--c_blue: #0044FF;\n--c_blue_pastel: #B8E0FF;\n--c_blue_light: #73E8FF;\n--c_blue_dark: #003ADB;\n/* --c_red: * /\n--c-red: #FF0000;\n--c_red_pastel: #FAE0E2;\n--c_red_lighter: #FAE0E2;\n}\n*/"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/js/blog_article.bundle.js b/static/dist/js/blog_article.bundle.js new file mode 100644 index 0000000..67ef1ac --- /dev/null +++ b/static/dist/js/blog_article.bundle.js @@ -0,0 +1,23 @@ +/******/ (() => { // webpackBootstrap +/******/ "use strict"; +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. +(() => { +// extracted by mini-css-extract-plugin + +})(); + +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. +(() => { +// extracted by mini-css-extract-plugin + +})(); + +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. +(() => { +// extracted by mini-css-extract-plugin + +})(); + +/******/ })() +; +//# sourceMappingURL=blog_article.bundle.js.map \ No newline at end of file diff --git a/static/dist/js/blog_article.bundle.js.map b/static/dist/js/blog_article.bundle.js.map new file mode 100644 index 0000000..ba9e87c --- /dev/null +++ b/static/dist/js/blog_article.bundle.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/blog_article.bundle.js","mappings":";;;;AAAA;;;;;;ACAA;;;;;;ACAA","sources":["webpack://app/./static/css/sections/core.css?6d04","webpack://app/./static/css/sections/blog.css?b688","webpack://app/./static/css/pages/blog/article.css?0060"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/js/blog_home.bundle.js b/static/dist/js/blog_home.bundle.js index f2911db..6c176d6 100644 --- a/static/dist/js/blog_home.bundle.js +++ b/static/dist/js/blog_home.bundle.js @@ -18,12 +18,6 @@ })(); -// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. -(() => { -// extracted by mini-css-extract-plugin - -})(); - /******/ })() ; //# sourceMappingURL=blog_home.bundle.js.map \ No newline at end of file diff --git a/static/dist/js/blog_home.bundle.js.map b/static/dist/js/blog_home.bundle.js.map index d88995b..e6ccbb9 100644 --- a/static/dist/js/blog_home.bundle.js.map +++ b/static/dist/js/blog_home.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"js/blog_home.bundle.js","mappings":";;;;AAAA;;;;;;ACAA;;;;;;ACAA;;;;;;ACAA","sources":["webpack://app/./static/css/sections/core.css?6d04","webpack://app/./static/css/pages/core/home.css?2b63","webpack://app/./static/css/sections/blog.css?b688","webpack://app/./static/css/pages/blog/home.css"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/blog_home.bundle.js","mappings":";;;;AAAA;;;;;;ACAA;;;;;;ACAA","sources":["webpack://app/./static/css/sections/core.css?6d04","webpack://app/./static/css/sections/blog.css?b688","webpack://app/./static/css/pages/blog/home.css"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/js/blog_newsletter_success.bundle.js b/static/dist/js/blog_newsletter_success.bundle.js new file mode 100644 index 0000000..60e5aed --- /dev/null +++ b/static/dist/js/blog_newsletter_success.bundle.js @@ -0,0 +1,23 @@ +/******/ (() => { // webpackBootstrap +/******/ "use strict"; +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. +(() => { +// extracted by mini-css-extract-plugin + +})(); + +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. +(() => { +// extracted by mini-css-extract-plugin + +})(); + +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other entry modules. +(() => { +// extracted by mini-css-extract-plugin + +})(); + +/******/ })() +; +//# sourceMappingURL=blog_newsletter_success.bundle.js.map \ No newline at end of file diff --git a/static/dist/js/blog_newsletter_success.bundle.js.map b/static/dist/js/blog_newsletter_success.bundle.js.map new file mode 100644 index 0000000..c4f4a6b --- /dev/null +++ b/static/dist/js/blog_newsletter_success.bundle.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/blog_newsletter_success.bundle.js","mappings":";;;;AAAA;;;;;;ACAA;;;;;;ACAA","sources":["webpack://app/./static/css/sections/core.css?6d04","webpack://app/./static/css/pages/core/contact.css?164a","webpack://app/./static/css/pages/blog/newsletter_success.css"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/dist/js/main.bundle.js b/static/dist/js/main.bundle.js index c4c27b7..33fad33 100644 --- a/static/dist/js/main.bundle.js +++ b/static/dist/js/main.bundle.js @@ -5007,6 +5007,22 @@ var PageBlogHome = /*#__PURE__*/function (_BasePage) { value: function initialize() { this.sharedInitialize(); // this.hookupButtonsNav(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + }, { + key: "hookupButtonSubmitFormContactUs", + value: function hookupButtonSubmitFormContactUs() { + var button = document.querySelector('form input[type="submit"]'); + button.classList.add(flagButton); + button.classList.add(flagButtonPrimary); + button.innerText = 'Subscribe Now'; + } + }, { + key: "hookupFormNewsletter", + value: function hookupFormNewsletter() { + var submitButton = document.querySelector('#submit'); + submitButton.innerText = 'Subscribe Now'; } }, { key: "leave", @@ -5017,6 +5033,173 @@ var PageBlogHome = /*#__PURE__*/function (_BasePage) { }(BasePage); blog_home_defineProperty(PageBlogHome, "hash", hashPageBlogHome); +;// ./static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof(o) { "@babel/helpers - typeof"; return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof(o); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_toPropertyKey(o.key), o); } } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_createClass(e, r, t) { return r && article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_defineProperties(e.prototype, r), t && article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_callSuper(t, o, e) { return o = article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf(o), article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_possibleConstructorReturn(t, article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_isNativeReflectConstruct() ? Reflect.construct(o, e || [], article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf(t).constructor) : o.apply(t, e)); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_possibleConstructorReturn(t, e) { if (e && ("object" == article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_assertThisInitialized(t); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_superPropGet(t, o, e, r) { var p = article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_get(article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_get() { return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) { var p = article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_get.apply(null, arguments); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_superPropBase(t, o) { for (; !{}.hasOwnProperty.call(t, o) && null !== (t = article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf(t));); return t; } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf(t) { return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_getPrototypeOf(t); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_setPrototypeOf(t, e); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_setPrototypeOf(t, e) { return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_setPrototypeOf(t, e); } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_defineProperty(e, r, t) { return (r = article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_toPropertyKey(t) { var i = article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_toPrimitive(t, "string"); return "symbol" == article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof(i) ? i : i + ""; } +function article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_toPrimitive(t, r) { if ("object" != article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// internal +// import BasePage from "../base.js"; + +// external +var PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients = /*#__PURE__*/function (_PageBlogHome) { + function PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients(router) { + article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_classCallCheck(this, PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients); + return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_callSuper(this, PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, [router]); + } + article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_inherits(PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, _PageBlogHome); + return article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_createClass(PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, [{ + key: "initialize", + value: function initialize() { + this.sharedInitialize(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + }, { + key: "leave", + value: function leave() { + article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_superPropGet(PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, "leave", this, 3)([]); + } + }]); +}(PageBlogHome); +article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients_defineProperty(PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, "hash", hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients); + +;// ./static/js/pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof(o) { "@babel/helpers - typeof"; return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof(o); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, article_the_science_behind_dog_training_assessments_how_to_track_real_progress_toPropertyKey(o.key), o); } } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_createClass(e, r, t) { return r && article_the_science_behind_dog_training_assessments_how_to_track_real_progress_defineProperties(e.prototype, r), t && article_the_science_behind_dog_training_assessments_how_to_track_real_progress_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_callSuper(t, o, e) { return o = article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf(o), article_the_science_behind_dog_training_assessments_how_to_track_real_progress_possibleConstructorReturn(t, article_the_science_behind_dog_training_assessments_how_to_track_real_progress_isNativeReflectConstruct() ? Reflect.construct(o, e || [], article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf(t).constructor) : o.apply(t, e)); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_possibleConstructorReturn(t, e) { if (e && ("object" == article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_assertThisInitialized(t); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (article_the_science_behind_dog_training_assessments_how_to_track_real_progress_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_superPropGet(t, o, e, r) { var p = article_the_science_behind_dog_training_assessments_how_to_track_real_progress_get(article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_get() { return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) { var p = article_the_science_behind_dog_training_assessments_how_to_track_real_progress_superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, article_the_science_behind_dog_training_assessments_how_to_track_real_progress_get.apply(null, arguments); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_superPropBase(t, o) { for (; !{}.hasOwnProperty.call(t, o) && null !== (t = article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf(t));); return t; } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf(t) { return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, article_the_science_behind_dog_training_assessments_how_to_track_real_progress_getPrototypeOf(t); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && article_the_science_behind_dog_training_assessments_how_to_track_real_progress_setPrototypeOf(t, e); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_setPrototypeOf(t, e) { return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, article_the_science_behind_dog_training_assessments_how_to_track_real_progress_setPrototypeOf(t, e); } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_defineProperty(e, r, t) { return (r = article_the_science_behind_dog_training_assessments_how_to_track_real_progress_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_toPropertyKey(t) { var i = article_the_science_behind_dog_training_assessments_how_to_track_real_progress_toPrimitive(t, "string"); return "symbol" == article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof(i) ? i : i + ""; } +function article_the_science_behind_dog_training_assessments_how_to_track_real_progress_toPrimitive(t, r) { if ("object" != article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != article_the_science_behind_dog_training_assessments_how_to_track_real_progress_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// internal +// import BasePage from "../base.js"; + +// external +var PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress = /*#__PURE__*/function (_PageBlogHome) { + function PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress(router) { + article_the_science_behind_dog_training_assessments_how_to_track_real_progress_classCallCheck(this, PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress); + return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_callSuper(this, PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, [router]); + } + article_the_science_behind_dog_training_assessments_how_to_track_real_progress_inherits(PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, _PageBlogHome); + return article_the_science_behind_dog_training_assessments_how_to_track_real_progress_createClass(PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, [{ + key: "initialize", + value: function initialize() { + this.sharedInitialize(); + // this.hookupButtonsNav(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + }, { + key: "leave", + value: function leave() { + article_the_science_behind_dog_training_assessments_how_to_track_real_progress_superPropGet(PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, "leave", this, 3)([]); + } + }]); +}(PageBlogHome); +article_the_science_behind_dog_training_assessments_how_to_track_real_progress_defineProperty(PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, "hash", hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress); + +;// ./static/js/pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof(o) { "@babel/helpers - typeof"; return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof(o); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_toPropertyKey(o.key), o); } } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_createClass(e, r, t) { return r && article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_defineProperties(e.prototype, r), t && article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_callSuper(t, o, e) { return o = article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf(o), article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_possibleConstructorReturn(t, article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_isNativeReflectConstruct() ? Reflect.construct(o, e || [], article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf(t).constructor) : o.apply(t, e)); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_possibleConstructorReturn(t, e) { if (e && ("object" == article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_assertThisInitialized(t); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_superPropGet(t, o, e, r) { var p = article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_get(article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_get() { return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) { var p = article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_get.apply(null, arguments); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_superPropBase(t, o) { for (; !{}.hasOwnProperty.call(t, o) && null !== (t = article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf(t));); return t; } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf(t) { return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_getPrototypeOf(t); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_setPrototypeOf(t, e); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_setPrototypeOf(t, e) { return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_setPrototypeOf(t, e); } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_defineProperty(e, r, t) { return (r = article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_toPropertyKey(t) { var i = article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_toPrimitive(t, "string"); return "symbol" == article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof(i) ? i : i + ""; } +function article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_toPrimitive(t, r) { if ("object" != article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// internal +// import BasePage from "../base.js"; + +// external +var PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 = /*#__PURE__*/function (_PageBlogHome) { + function PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025(router) { + article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_classCallCheck(this, PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025); + return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_callSuper(this, PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, [router]); + } + article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_inherits(PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, _PageBlogHome); + return article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_createClass(PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, [{ + key: "initialize", + value: function initialize() { + this.sharedInitialize(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + }, { + key: "leave", + value: function leave() { + article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_superPropGet(PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, "leave", this, 3)([]); + } + }]); +}(PageBlogHome); +article_why_every_professional_trainer_needs_a_command_dictionary_in_2025_defineProperty(PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, "hash", hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025); + +;// ./static/js/pages/blog/newsletter-success.js +function newsletter_success_typeof(o) { "@babel/helpers - typeof"; return newsletter_success_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, newsletter_success_typeof(o); } +function newsletter_success_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function newsletter_success_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, newsletter_success_toPropertyKey(o.key), o); } } +function newsletter_success_createClass(e, r, t) { return r && newsletter_success_defineProperties(e.prototype, r), t && newsletter_success_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function newsletter_success_callSuper(t, o, e) { return o = newsletter_success_getPrototypeOf(o), newsletter_success_possibleConstructorReturn(t, newsletter_success_isNativeReflectConstruct() ? Reflect.construct(o, e || [], newsletter_success_getPrototypeOf(t).constructor) : o.apply(t, e)); } +function newsletter_success_possibleConstructorReturn(t, e) { if (e && ("object" == newsletter_success_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return newsletter_success_assertThisInitialized(t); } +function newsletter_success_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function newsletter_success_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (newsletter_success_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function newsletter_success_getPrototypeOf(t) { return newsletter_success_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, newsletter_success_getPrototypeOf(t); } +function newsletter_success_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && newsletter_success_setPrototypeOf(t, e); } +function newsletter_success_setPrototypeOf(t, e) { return newsletter_success_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, newsletter_success_setPrototypeOf(t, e); } +function newsletter_success_defineProperty(e, r, t) { return (r = newsletter_success_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function newsletter_success_toPropertyKey(t) { var i = newsletter_success_toPrimitive(t, "string"); return "symbol" == newsletter_success_typeof(i) ? i : i + ""; } +function newsletter_success_toPrimitive(t, r) { if ("object" != newsletter_success_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != newsletter_success_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// internal + +// vendor + +var PageBlogNewsletterSuccess = /*#__PURE__*/function (_BasePage) { + function PageBlogNewsletterSuccess(router) { + newsletter_success_classCallCheck(this, PageBlogNewsletterSuccess); + return newsletter_success_callSuper(this, PageBlogNewsletterSuccess, [router]); + } + newsletter_success_inherits(PageBlogNewsletterSuccess, _BasePage); + return newsletter_success_createClass(PageBlogNewsletterSuccess, [{ + key: "initialize", + value: function initialize() { + this.sharedInitialize(); + } + }]); +}(BasePage); +newsletter_success_defineProperty(PageBlogNewsletterSuccess, "hash", hashPageBlogNewsletterSuccess); + ;// ./static/js/pages/dog/home.js function dog_home_typeof(o) { "@babel/helpers - typeof"; return dog_home_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, dog_home_typeof(o); } function dog_home_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } @@ -8802,6 +8985,11 @@ function router_toPrimitive(t, r) { if ("object" != router_typeof(t) || !t) retu // Blog + + + + + // Dog @@ -8861,6 +9049,26 @@ var Router = /*#__PURE__*/function () { name: 'PageBlogHome', module: PageBlogHome }; + this.pages[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients] = { + name: 'PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients', + module: PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients + }; + this.pages[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess] = { + name: 'PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess', + module: PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients + }; + this.pages[hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress] = { + name: 'PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress', + module: PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress + }; + this.pages[hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025] = { + name: 'PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025', + module: PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 + }; + this.pages[hashPageBlogNewsletterSuccess] = { + name: 'PageBlogNewsletterSuccess', + module: PageBlogNewsletterSuccess + }; // Dog this.pages[hashPageDogHome] = { name: 'PageDogHome', @@ -8966,6 +9174,26 @@ var Router = /*#__PURE__*/function () { var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; return _this.navigateToHash(hashPageBlogHome, isPopState); }; + this.routes[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients] = function () { + var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + return _this.navigateToHash(hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, isPopState); + }; + this.routes[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess] = function () { + var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + return _this.navigateToHash(hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess, isPopState); + }; + this.routes[hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress] = function () { + var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + return _this.navigateToHash(hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, isPopState); + }; + this.routes[hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025] = function () { + var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + return _this.navigateToHash(hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, isPopState); + }; + this.routes[hashPageBlogNewsletterSuccess] = function () { + var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + return _this.navigateToHash(hashPageBlogNewsletterSuccess, isPopState); + }; // Dog this.routes[hashPageDogHome] = function () { var isPopState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; diff --git a/static/dist/js/main.bundle.js.map b/static/dist/js/main.bundle.js.map index 2c8c60d..7832bd3 100644 --- a/static/dist/js/main.bundle.js.map +++ b/static/dist/js/main.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"js/main.bundle.js","mappings":"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","sources":["webpack://app/./static/js/lib/validation.js","webpack://app/./static/js/dom.js","webpack://app/./static/js/lib/events.js","webpack://app/./static/js/lib/local_storage.js","webpack://app/./static/js/api.js","webpack://app/./static/js/lib/utils.js","webpack://app/./static/js/components/common/temporary/overlay_confirm.js","webpack://app/./static/js/pages/base.js","webpack://app/./static/js/pages/core/home.js","webpack://app/./static/js/vendor/altcha.js","webpack://app/./static/js/pages/core/contact.js","webpack://app/./static/js/pages/core/contact-success.js","webpack://app/./static/js/pages/core/apply-founding-partner.js","webpack://app/./static/js/pages/core/apply-founding-partner-success.js","webpack://app/./static/js/pages/blog/home.js","webpack://app/./static/js/pages/dog/home.js","webpack://app/./static/js/lib/business_objects/business_objects.js","webpack://app/./static/js/components/common/temporary/overlay_error.js","webpack://app/./static/js/pages/base_table.js","webpack://app/./static/js/pages/dog/mixin.js","webpack://app/./static/js/pages/dog/mixin_table.js","webpack://app/./static/js/pages/dog/command_categories.js","webpack://app/./static/js/pages/dog/commands.js","webpack://app/./static/js/pages/dog/dog_command_links.js","webpack://app/./static/js/pages/dog/dogs.js","webpack://app/./static/js/pages/dog/locations.js","webpack://app/./static/js/pages/dog/button_icons.js","webpack://app/./static/js/pages/dog/command_button_links.js","webpack://app/./static/js/pages/dog/assessment.js","webpack://app/./static/js/pages/dog/assessments.js","webpack://app/./static/js/pages/dog/calendar_entries.js","webpack://app/./static/js/pages/legal/accessibility_report.js","webpack://app/./static/js/pages/legal/accessibility_statement.js","webpack://app/./static/js/pages/legal/license.js","webpack://app/./static/js/pages/legal/privacy_policy.js","webpack://app/./static/js/pages/legal/retention_schedule.js","webpack://app/./static/js/pages/user/user.js","webpack://app/./static/js/pages/user/users.js","webpack://app/./static/js/pages/user/company.js","webpack://app/./static/js/router.js","webpack://app/./static/js/app.js","webpack://app/./static/css/main.css?0a91","webpack://app/./static/css/components/button.css?0e0b","webpack://app/./static/css/components/card.css","webpack://app/./static/css/components/dialog.css","webpack://app/./static/css/components/form.css?94e1","webpack://app/./static/css/components/image.css?9f9c","webpack://app/./static/css/components/label.css?b78f","webpack://app/./static/css/components/modal.css","webpack://app/./static/css/components/navigation.css","webpack://app/./static/css/components/overlay.css?6dfd","webpack://app/./static/css/components/table.css?e553","webpack://app/./static/css/layouts/header.css?da75","webpack://app/./static/css/layouts/footer.css?65e3","webpack://app/./static/css/layouts/table-main.css?8c15","webpack://app/./static/css/lib/reset.css","webpack://app/./static/css/lib/typography.css","webpack://app/./static/css/lib/utils.css","webpack://app/./static/css/lib/variables.css","webpack://app/./static/css/themes/light.css?855e"],"sourcesContent":["\nexport default class Validation {\n /*\n isNullOrWhitespace(v) {\n let txt = JSON.stringify(v).replace('/\\s\\g', '');\n return (txt == '' || 'null');\n }\n */\n\n static isEmpty(object) {\n\n let isEmpty = true;\n\n if (object !== null && object !== \"null\" && object !== undefined && object !== \"undefined\") {\n\n if (object.length == undefined) {\n isEmpty = false; // object exists but isn't a collection\n }\n else if (typeof object === \"function\") {\n isEmpty = false; // object is reference\n }\n else { // string or collection\n\n let isString = (typeof object == \"string\");\n\n if (isString) object = object.trim();\n\n if (object.length > 0) {\n\n if (isString) {\n isEmpty = false; // String greater than length 0\n }\n else {\n\n if (typeof object[0] != \"string\") {\n isEmpty = false;\n }\n else {\n for(let i = 0; i < object.length; i++) {\n if (object[i] != \"\") {\n isEmpty = false;\n break\n }\n }\n }\n }\n }\n }\n }\n\n return isEmpty;\n }\n\n static isValidNumber(value, positiveOnly) {\n return !Validation.isEmpty(value) && !isNaN(value) && (!positiveOnly || parseFloat(value) > 0);\n }\n\n static getDataContentType(params) {\n\n var data = null;\n var contentType = '';\n\n if (!Validation.isEmpty(params)) {\n\n if (typeof params === \"string\") {\n data = params;\n contentType = \"application/x-www-form-urlencoded; charset=UTF-8\";\n }\n else {\n data = JSON.stringify(params);\n contentType = \"application/json; charset=UTF-8\";\n }\n }\n\n return { Data: data, ContentType: contentType };\n }\n\n static arrayContainsItem(array, itemValue) {\n\n var hasItem = false;\n\n if (!Validation.isEmpty(array) && !Validation.isEmpty(itemValue)) {\n\n var isJQueryElementArray = array[0] instanceof jQuery;\n\n if (isJQueryElementArray) {\n\n for (let i = 0; i < array.length; i++) {\n\n if (document.querySelectorAll(array[i]).is(itemValue)) {\n hasItem = true;\n break;\n }\n }\n }\n else {\n\n var isDate = array[0] instanceof Date;\n\n if (isDate) {\n \n for (let i = 0; i < array.length; i++) {\n\n if (array[i].getTime() === itemValue.getTime()) {\n hasItem = true;\n break;\n }\n }\n }\n else {\n\n for (let i = 0; i < array.length; i++) {\n\n if (array[i] == itemValue) {\n hasItem = true;\n break;\n }\n }\n }\n }\n }\n\n return hasItem;\n }\n\n static dictHasKey(d, k) {\n return (k in d);\n }\n static areEqualDicts(dict1, dict2) {\n const keys1 = Object.keys(dict1);\n const keys2 = Object.keys(dict2);\n \n if (keys1.length !== keys2.length) {\n return false;\n }\n \n for (let key of keys1) {\n if (dict1[key] !== dict2[key]) {\n return false;\n }\n }\n \n return true;\n }\n\n static imageExists(url, callback) {\n\n var img = new Image();\n\n img.onload = function() { callback(true); };\n img.onerror = function() { callback(false); };\n img.src = url;\n }\n\n static toFixedOrDefault(value, decimalPlaces, defaultValue = null) {\n return Validation.isValidNumber(value) ? parseFloat(value).toFixed(decimalPlaces) : defaultValue;\n }\n}\n","\nimport Utils from \"./lib/utils.js\";\nimport Validation from \"./lib/validation.js\";\n\nexport default class DOM {\n static setElementAttributesValuesCurrentAndPrevious(element, data) {\n DOM.setElementAttributeValueCurrent(element, data);\n DOM.setElementAttributeValuePrevious(element, data);\n }\n static setElementAttributeValueCurrent(element, data) {\n element.setAttribute(attrValueCurrent, data);\n }\n static setElementAttributeValuePrevious(element, data) {\n element.setAttribute(attrValuePrevious, data);\n }\n static setElementValuesCurrentAndPrevious(element, data) {\n DOM.setElementValueCurrent(element, data);\n DOM.setElementAttributeValuePrevious(element, data);\n }\n static setElementValueCurrent(element, data) {\n DOM.setElementAttributeValueCurrent(element, data);\n let tagName = element.tagName.toUpperCase();\n if (element.type === \"checkbox\") {\n element.checked = data;\n }\n else if (tagName === 'INPUT' || tagName === 'TEXTAREA' || tagName === 'SELECT') {\n element.value = data;\n }\n else {\n element.textContent = data;\n }\n }\n static setElementValueCurrentIfEmpty(element, data) {\n if (Validation.isEmpty(DOM.getElementValueCurrent(element))) {\n DOM.setElementValueCurrent(element, data);\n }\n }\n static getCellFromElement(element) {\n return element.closest('td');\n }\n static getRowFromElement(element, flagRow) {\n let selector = Validation.isEmpty(flagRow) ? 'tr' : 'tr.' + flagRow;\n return element.closest(selector);\n }\n static getClosestParent(element, parentSelector) {\n let parent = element.parentElement;\n while (parent) {\n if (parent.matches(parentSelector)) {\n return parent;\n }\n parent = parent.parentElement;\n }\n return null;\n }\n static convertForm2JSON(elementForm) {\n let dataForm = {};\n if (Validation.isEmpty(elementForm)) {\n return dataForm;\n }\n let containersFilter = elementForm.querySelectorAll('.' + flagContainerInput + '.' + flagFilter);\n let containerFilter, labelFilter, keyFilter, filter;\n for (let indexFilter = 0; indexFilter < containersFilter.length; indexFilter++) {\n containerFilter = containersFilter[indexFilter];\n labelFilter = containerFilter.querySelector('label');\n keyFilter = labelFilter.getAttribute('for');\n filter = containerFilter.querySelector(`#${keyFilter}`);\n dataForm[keyFilter] = DOM.getElementValueCurrent(filter);\n }\n return dataForm;\n }\n static loadPageBody(contentNew) {\n let pageBody = document.querySelector(idPageBody);\n pageBody.innerHTML = contentNew;\n }\n static getHashPageCurrent() {\n const hashPageCurrent = document.body.dataset.page;\n return hashPageCurrent;\n }\n static updateAndCheckIsElementDirty(element) {\n element.setAttribute(attrValueCurrent, DOM.getElementValueCurrent(element));\n return DOM.isElementDirty(element);\n }\n static isElementDirty(element) {\n let isDirty = element.getAttribute(attrValuePrevious) != element.getAttribute(attrValueCurrent);\n DOM.handleDirtyElement(element, isDirty);\n return isDirty;\n }\n static handleDirtyElement(element, isDirty) {\n DOM.toggleElementHasClassnameFlag(element, isDirty, flagDirty);\n }\n static toggleElementHasClassnameFlag(element, elementHasFlag, flag) {\n let elementAlreadyHasFlag = element.classList.contains(flag);\n if (elementHasFlag == elementAlreadyHasFlag) return;\n if (elementHasFlag) {\n element.classList.add(flag);\n } else {\n element.classList.remove(flag);\n }\n }\n static hasDirtyChildrenContainer(container) {\n if (container == null) return false;\n return container.querySelector('.' + flagDirty) != null;\n }\n static hasDirtyChildrenNotDeletedContainer(container) {\n if (container == null || container.classList.contains(flagDelete)) return false;\n return container.querySelector('.' + flagDirty + ':not(.' + flagDelete + ', .' + flagDelete + ' *)') != null;\n }\n static getElementValueCurrent(element) {\n let returnVal = '';\n \n if (!Validation.isEmpty(element)) {\n \n let tagName = element.tagName.toUpperCase();\n if (element.type === \"checkbox\") {\n returnVal = element.checked;\n }\n /*\n else if (element.classList.contains(flagIsDatePicker)) {\n returnVal = getDatePickerDate(element, adjust4DayLightSavings);\n }\n */\n else if (tagName === 'INPUT' || tagName === 'TEXTAREA' || tagName === 'SELECT') {\n returnVal = element.value;\n }\n else if (element.classList.contains(flagButton) && element.classList.contains(flagActive)) { // tagName === 'BUTTON'\n returnVal = element.classList.contains(flagDelete);\n }\n else if (tagName === 'TD') {\n returnVal = DOM.getElementAttributeValueCurrent(element);\n }\n else if (tagName == 'SVG' && element.classList.contains(flagCheckbox)) {\n returnVal = (element.classList.contains(flagIsChecked))\n }\n else {\n returnVal = element.textContent;\n }\n }\n \n if (Validation.isEmpty(returnVal)) returnVal = '';\n \n return returnVal;\n }\n static getElementAttributeValueCurrent(element) {\n // debugger;\n if (Validation.isEmpty(element)) return null;\n return element.getAttribute(attrValueCurrent);\n }\n static getElementAttributeValuePrevious(element) {\n if (Validation.isEmpty(element)) return null;\n return element.getAttribute(attrValuePrevious);\n }\n /* base_table.handleChangeElementCellTable\n static updateAndCheckIsTableElementDirty(element) {\n let wasDirty = DOM.isElementDirty(element);\n let row = DOM.getRowFromElement(element);\n let wasDirtyRow = DOM.hasDirtyChildrenNotDeletedContainer(row);\n let isDirty = DOM.updateAndCheckIsElementDirty(element);\n let cell = DOM.getCellFromElement(element);\n Utils.consoleLogIfNotProductionEnvironment({element, row, cell, isDirty, wasDirty});\n if (isDirty != wasDirty) {\n DOM.handleDirtyElement(cell, isDirty);\n let isDirtyRow = DOM.hasDirtyChildrenNotDeletedContainer(row);\n Utils.consoleLogIfNotProductionEnvironment({isDirtyRow, wasDirtyRow});\n if (isDirtyRow != wasDirtyRow) {\n DOM.handleDirtyElement(row, isDirtyRow);\n }\n }\n }\n */\n static scrollToElement(parent, element) {\n // REQUIRED: parent has scroll-bar\n parent.scrollTop(parent.scrollTop() + (element.offset().top - parent.offset().top));\n }\n static isElementInContainer(container, element) {\n\n if (typeof jQuery === 'function') {\n if (container instanceof jQuery) container = container[0];\n if (element instanceof jQuery) element = element[0];\n }\n\n var containerBounds = container.getBoundingClientRect();\n var elementBounds = element.getBoundingClientRect();\n\n return (\n containerBounds.top <= elementBounds.top &&\n containerBounds.left <= elementBounds.left &&\n ((elementBounds.top + elementBounds.height) <= (containerBounds.top + containerBounds.height)) &&\n ((elementBounds.left + elementBounds.width) <= (containerBounds.left + containerBounds.width))\n );\n }\n static alertError(errorType, errorText) {\n alert(errorType + '\\n' + errorText);\n }\n static createOptionUnselectedProductVariation() {\n return {\n [flagProductVariationType]: {\n [flagNameAttrOptionText]: [flagName],\n [flagNameAttrOptionValue]: [attrIdProductVariationType],\n [flagName]: 'Select Variation Type',\n [attrIdProductVariationType]: 0,\n },\n [flagProductVariation]: {\n [flagNameAttrOptionText]: [flagName],\n [flagNameAttrOptionValue]: [attrIdProductVariation],\n [flagName]: 'Select Variation',\n [attrIdProductVariation]: 0,\n },\n };\n }\n static createOption(optionJson) {\n if (Validation.isEmpty(optionJson)) optionJson = {\n text: 'Select',\n value: 0,\n };\n let option = document.createElement('option');\n option.value = optionJson.value;\n option.textContent = optionJson.text;\n option.selected = optionJson.selected;\n return option;\n }\n\n static escapeHtml(text) {\n const div = document.createElement('div');\n div.textContent = text;\n return div.innerHTML;\n }\n static unescapeHtml(html) {\n const div = document.createElement('div');\n div.innerHTML = html;\n return div.textContent || div.innerText || '';\n }\n}\n","\nexport default class Events {\n static initialiseEventHandler(selectorElement, classInitialised, eventHandler) {\n document.querySelectorAll(selectorElement).forEach(function(element) {\n if (element.classList.contains(classInitialised)) return;\n eventHandler(element);\n element.classList.add(classInitialised);\n });\n }\n static hookupEventHandler(eventType, selector, callback) {\n Events.initialiseEventHandler(selector, flagInitialised, (element) => {\n element.addEventListener(eventType, (event) => {\n event.stopPropagation();\n callback(event, element);\n });\n });\n }\n}","\nimport Validation from \"./validation.js\";\n\nexport default class LocalStorage {\n/*\nfunction getPageLocalStorage(pageHash) {\n\n let ls;\n try {\n ls = JSON.parse(localStorage.getItem(pageHash));\n } catch {\n\n }\n\n if (Validation.isEmpty(ls)) return {}\n\n return ls;\n}\nfunction getPageLocalStorageCurrent() {\n\n return JSON.parse(localStorage.getItem(hashPageCurrent));\n}\n\nfunction setPageLocalStorage(pageHash, newLS) {\n\n localStorage.setItem(pageHash, JSON.stringify(newLS));\n}\n\nfunction clearPageLocalStorage(pageHash) {\n localStorage.removeItem(pageHash);\n}\n\nfunction setupPageLocalStorage(pageHash) {\n\n let ls = getPageLocalStorage(pageHash);\n\n if (Validation.isEmpty(ls)) ls = {};\n\n setPageLocalStorage(pageHash, ls);\n}\n*/\n\n static getLocalStorage(key) {\n return JSON.parse(localStorage.getItem(key));\n }\n\n static setLocalStorage(key, newLS) {\n localStorage.setItem(key, JSON.stringify(newLS));\n }\n\n/*\nfunction setupPageLocalStorageNext(pageHashNext) {\n let lsOld = getPageLocalStorage(hashPageCurrent);\n hashPageCurrent = pageHashNext;\n clearPageLocalStorage(hashPageCurrent);\n setupPageLocalStorage(hashPageCurrent);\n let lsNew = getPageLocalStorage(hashPageCurrent);\n lsNew[keyBasket] = (keyBasket in lsOld) ? lsOld[keyBasket] : {'items': []};\n setPageLocalStorage(hashPageCurrent, lsNew);\n}\n*/\n}","import DOM from './dom.js';\n\nexport default class API {\n \n static getCsrfToken() {\n return document.querySelector(idCSRFToken).getAttribute('content');\n }\n \n static async request(hashEndpoint, method = 'GET', data = null, params = null) {\n const url = API.getUrlFromHash(hashEndpoint, params);\n const csrfToken = API.getCsrfToken();\n const options = {\n method,\n headers: {\n 'Content-Type': 'application/json',\n [flagCsrfToken]: csrfToken,\n }\n };\n\n if (data && (method === 'POST' || method === 'PUT' || method === 'PATCH')) {\n data = { \n ...data, \n [flagCsrfToken]: csrfToken,\n };\n options.body = JSON.stringify(data);\n }\n\n try {\n const response = await fetch(url, options);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n return await response.json();\n } catch (error) {\n console.error('API request failed:', error);\n throw error;\n }\n }\n \n static getUrlFromHash(hash, params = null) {\n if (hash == null) hash = hashPageHome;\n let url = API.parameteriseUrl(_pathHost + hash, params);\n return url;\n }\n static parameteriseUrl(url, params) {\n if (params) {\n url += '?' + new URLSearchParams(params).toString();\n }\n return url;\n }\n static goToUrl(url) {\n window.location.href = url;\n }\n static goToHash(hash, params = null) {\n const url = API.getUrlFromHash(hash, params);\n API.goToUrl(url);\n }\n\n // specific api calls\n /* Example:\n getUsers: () => request('/users'),\n getUserById: (id) => request(`/users/${id}`),\n createUser: (userData) => request('/users', 'POST', userData),\n updateUser: (id, userData) => request(`/users/${id}`, 'PUT', userData),\n deleteUser: (id) => request(`/users/${id}`, 'DELETE'),\n */\n\n // User\n // user\n static async loginUser() {\n let callback = {};\n callback[flagCallback] = DOM.getHashPageCurrent();\n return await API.request(hashPageUserLogin, 'POST', callback);\n }\n static async saveUsers(users, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagUser] = users;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveUserUser, 'POST', dataRequest);\n }\n // company\n static async saveCompanies(companies, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCompany] = companies;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCompany, 'POST', dataRequest);\n }\n \n\n // dog\n // Command categories\n static async saveCommandCategories(commandCategories, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCommandCategory] = commandCategories;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCommandCategory, 'POST', dataRequest);\n }\n \n // Commands\n static async saveCommands(commands, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCommand] = commands;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCommand, 'POST', dataRequest);\n }\n \n // Dog Command Links\n static async saveDogCommandLinks(dogCommandLinks, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagDogCommandLink] = dogCommandLinks;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogDogCommandLink, 'POST', dataRequest);\n }\n \n // Locations\n static async saveLocations(locations, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagLocation] = locations;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogLocation, 'POST', dataRequest);\n }\n \n // Button Icons\n static async saveButtonIcons(buttonIcons, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagButtonIcon] = buttonIcons;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogButtonIcon, 'POST', dataRequest);\n }\n \n // Command Button Links\n static async saveCommandButtonLinks(links, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCommandButtonLink] = links;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCommandButtonLink, 'POST', dataRequest);\n }\n \n // Assessments\n static async saveAssessments(assessments, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagAssessment] = assessments;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogAssessment, 'POST', dataRequest);\n }\n \n // Assessments\n static async saveAssessmentsDistractionsAndResponses(assessments, formFilters, comment) {\n let filtersJson = DOM.convertForm2JSON(formFilters);\n filtersJson[attrIdAssessment] = null;\n let dataRequest = {};\n dataRequest[flagFormFilters] = filtersJson;\n dataRequest[flagAssessment] = assessments;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogAssessmentDistractionAndResponse, 'POST', dataRequest);\n }\n \n}\n","// Utility functions\n/*\nfunction $(selector) {\n return document.querySelector(selector);\n}\n\nfunction $$(selector) {\n return document.querySelectorAll(selector);\n}\n*/\nexport default class Utils {\n static getListFromDict(dict) {\n let list = [];\n for (let key in dict) {\n list.push(dict[key]);\n }\n return list;\n }\n static consoleLogIfNotProductionEnvironment(message) {\n if (environment.is_production != \"true\") {\n console.log(message);\n }\n }\n}","\nimport Events from \"../../../lib/events.js\";\n\nexport default class OverlayConfirm {\n static hookup(callbackSuccess) {\n Events.initialiseEventHandler(idOverlayConfirm + ' button.' + flagCancel, flagInitialised, (buttonCancel) => {\n buttonCancel.addEventListener('click', () => {\n let overlay = document.querySelector(idOverlayConfirm);\n overlay.style.visibility = 'hidden';\n });\n });\n Events.initialiseEventHandler(idOverlayConfirm + ' button.' + flagSubmit, flagInitialised, (buttonConfirm) => {\n buttonConfirm.addEventListener('click', () => {\n let overlay = document.querySelector(idOverlayConfirm);\n let textarea = overlay.querySelector('textarea');\n overlay.style.visibility = 'hidden';\n callbackSuccess(textarea.value);\n });\n });\n }\n static show() {\n let overlay = document.querySelector(idOverlayConfirm);\n overlay.classList.remove(flagIsCollapsed);\n overlay.style.visibility = 'visible';\n }\n}","\nimport BusinessObjects from \"../lib/business_objects/business_objects.js\";\nimport Events from \"../lib/events.js\";\nimport LocalStorage from \"../lib/local_storage.js\";\nimport API from \"../api.js\";\nimport DOM from \"../dom.js\";\nimport Utils from \"../lib/utils.js\";\n\nimport OverlayConfirm from \"../components/common/temporary/overlay_confirm.js\";\nimport OverlayError from \"../components/common/temporary/overlay_error.js\";\nimport Validation from \"../lib/validation.js\";\n\nexport default class BasePage {\n constructor(router) {\n if (!router) {\n throw new Error(\"Router is required\");\n }\n else {\n Utils.consoleLogIfNotProductionEnvironment(\"initialising with router: \", router);\n }\n this.router = router;\n this.title = titlePageCurrent;\n if (this.constructor === BasePage) {\n throw new Error(\"Cannot instantiate abstract class\");\n }\n \n if (!this.constructor.hash) {\n throw new Error(`Class ${this.constructor.name} must have a static hash attribute.`);\n }\n }\n\n initialize() {\n throw new Error(\"Method 'initialize()' must be implemented.\");\n }\n\n sharedInitialize() {\n this.logInitialisation();\n this.hookupCommonElements();\n }\n\n logInitialisation() {\n Utils.consoleLogIfNotProductionEnvironment('Initialising ' + this.title + ' page');\n }\n \n hookupCommonElements() {\n // hookupVideos();\n this.hookupLogos();\n this.hookupNavigation();\n this.hookupOverlays();\n }\n hookupLogos() {\n Events.hookupEventHandler(\"click\", \".\" + flagImageLogo + \",\" + \".\" + flagLogo, (event, element) => {\n Utils.consoleLogIfNotProductionEnvironment('clicking logo');\n this.router.navigateToHash(hashPageHome);\n });\n }\n /*\n hookupEventHandler(eventType, selector, callback) {\n Events.initialiseEventHandler(selector, flagInitialised, (element) => {\n element.addEventListener(eventType, (event) => {\n event.stopPropagation();\n callback(event, element);\n });\n });\n }\n */\n hookupNavigation() {\n Events.hookupEventHandler(\"click\", idButtonHamburger, (event, element) => {\n let overlayHamburger = document.querySelector(idOverlayHamburger);\n if (overlayHamburger.classList.contains(flagIsCollapsed)) {\n overlayHamburger.classList.remove(flagIsCollapsed);\n overlayHamburger.classList.add(flagExpanded);\n } else {\n overlayHamburger.classList.remove(flagExpanded);\n overlayHamburger.classList.add(flagIsCollapsed);\n }\n });\n\n this.hookupButtonsNavUserAccount();\n this.hookupButtonsNavUserLogout();\n this.hookupButtonsNavUserLogin();\n }\n hookupButtonsNav(buttonSelector) {\n Events.hookupEventHandler(\"click\", buttonSelector, (event, button) => {\n let pageHash = buttonSelector.getAttribute('href');\n this.router.navigateToHash(pageHash); \n });\n }\n hookupButtonsNavUserAccount() {\n // this.hookupButtonsNav('.' + flagNavUserAccount);\n }\n hookupButtonsNavUserLogout() {\n // this.hookupButtonsNav('.' + flagNavUserLogout);\n }\n hookupButtonsNavUserLogin() {\n Events.hookupEventHandler(\"click\", '.' + flagNavUserLogin, (event, navigator) => { \n event.stopPropagation();\n this.leave();\n API.loginUser()\n .then((response) => {\n if (response.Success) {\n window.location.href = response[flagCallback];\n } else {\n DOM.alertError(\"Error\", response.Message);\n }\n });\n });\n }\n\n hookupOverlays() {\n this.hookupOverlayFromId(idOverlayConfirm);\n this.hookupOverlayFromId(idOverlayError);\n }\n\n hookupOverlayFromId(idOverlay) {\n Events.initialiseEventHandler(idOverlay, flagInitialised, (overlay) => {\n overlay.querySelector('button.' + flagCancel).addEventListener(\"click\", (event) => {\n event.stopPropagation();\n overlay.style.display = 'none';\n });\n });\n }\n\n hookupButtonSave() {\n Events.initialiseEventHandler('.' + flagContainer + '.' + flagSave + '.' + flagCancel + ' button.' + flagSave, flagInitialised, (button) => {\n button.addEventListener(\"click\", (event) => {\n event.stopPropagation();\n button = event.target;\n if (button.classList.contains(flagIsCollapsed)) return;\n Utils.consoleLogIfNotProductionEnvironment('saving page: ', this.title);\n OverlayConfirm.show();\n });\n });\n }\n\n leave() {\n Utils.consoleLogIfNotProductionEnvironment('Leaving ' + this.title + ' page');\n if (this.constructor === BasePage) {\n throw new Error(\"Must implement leave() method.\");\n }\n }\n setLocalStoragePage(dataPage) {\n LocalStorage.setLocalStorage(this.hash, dataPage);\n }\n getLocalStoragePage() {\n return LocalStorage.getLocalStorage(this.hash);\n }\n\n toggleShowButtonsSaveCancel(show, buttonContainerSelector = null) { // , buttonSave = null, buttonCancel = null\n if (Validation.isEmpty(buttonContainerSelector)) buttonContainerSelector = '.' + flagContainer + '.' + flagSave + '.' + flagCancel;\n let buttonSave = document.querySelector(buttonContainerSelector + ' ' + idButtonSave);\n let buttonCancel = document.querySelector(buttonContainerSelector + ' ' + idButtonCancel);\n Utils.consoleLogIfNotProductionEnvironment({ show, buttonContainerSelector, buttonCancel, buttonSave });\n if (show) {\n buttonCancel.classList.remove(flagIsCollapsed);\n buttonSave.classList.remove(flagIsCollapsed);\n Utils.consoleLogIfNotProductionEnvironment('showing buttons');\n } else {\n buttonCancel.classList.add(flagIsCollapsed);\n buttonSave.classList.add(flagIsCollapsed);\n Utils.consoleLogIfNotProductionEnvironment('hiding buttons');\n }\n }\n\n static isDirtyFilter(filter) {\n let isDirty = DOM.updateAndCheckIsElementDirty(filter);\n if (isDirty) document.querySelectorAll(idTableMain + ' tbody tr').remove();\n return isDirty;\n }\n\n}","\n// internal\nimport BasePage from \"../base.js\";\n// external\n\n\nexport default class PageHome extends BasePage {\n static hash = hashPageHome;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n // this.hookupButtonsNav();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","var hi = Object.defineProperty;\nvar Or = (e) => {\n throw TypeError(e);\n};\nvar gi = (e, t, r) => t in e ? hi(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;\nvar ne = (e, t, r) => gi(e, typeof t != \"symbol\" ? t + \"\" : t, r), zr = (e, t, r) => t.has(e) || Or(\"Cannot \" + r);\nvar H = (e, t, r) => (zr(e, t, \"read from private field\"), r ? r.call(e) : t.get(e)), Mt = (e, t, r) => t.has(e) ? Or(\"Cannot add the same private member more than once\") : t instanceof WeakSet ? t.add(e) : t.set(e, r), Ut = (e, t, r, l) => (zr(e, t, \"write to private field\"), l ? l.call(e, r) : t.set(e, r), r);\nconst en = `(function(){\"use strict\";const d=new TextEncoder;function p(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,\"0\")).join(\"\")}async function b(e,t,r){if(typeof crypto>\"u\"||!(\"subtle\"in crypto)||!(\"digest\"in crypto.subtle))throw new Error(\"Web Crypto is not available. Secure context is required (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).\");return p(await crypto.subtle.digest(r.toUpperCase(),d.encode(e+t)))}function w(e,t,r=\"SHA-256\",n=1e6,s=0){const o=new AbortController,a=Date.now();return{promise:(async()=>{for(let c=s;c<=n;c+=1){if(o.signal.aborted)return null;if(await b(t,c,r)===e)return{number:c,took:Date.now()-a}}return null})(),controller:o}}function h(e){const t=atob(e),r=new Uint8Array(t.length);for(let n=0;n{for(let u=n;u<=r;u+=1){if(o.signal.aborted||!c||!y)return null;try{const f=await crypto.subtle.decrypt({name:s,iv:g(u)},c,y);if(f)return{clearText:new TextDecoder().decode(f),took:Date.now()-a}}catch{}}return null};let c=null,y=null;try{y=h(e);const u=await crypto.subtle.digest(\"SHA-256\",d.encode(t));c=await crypto.subtle.importKey(\"raw\",u,s,!1,[\"decrypt\"])}catch{return{promise:Promise.reject(),controller:o}}return{promise:l(),controller:o}}let i;onmessage=async e=>{const{type:t,payload:r,start:n,max:s}=e.data;let o=null;if(t===\"abort\")i==null||i.abort(),i=void 0;else if(t===\"work\"){if(\"obfuscated\"in r){const{key:a,obfuscated:l}=r||{};o=await m(l,a,s,n)}else{const{algorithm:a,challenge:l,salt:c}=r||{};o=w(l,c,a,s,n)}i=o.controller,o.promise.then(a=>{self.postMessage(a&&{...a,worker:!0})})}}})();\n`, Fr = typeof self < \"u\" && self.Blob && new Blob([en], { type: \"text/javascript;charset=utf-8\" });\nfunction _i(e) {\n let t;\n try {\n if (t = Fr && (self.URL || self.webkitURL).createObjectURL(Fr), !t) throw \"\";\n const r = new Worker(t, {\n name: e == null ? void 0 : e.name\n });\n return r.addEventListener(\"error\", () => {\n (self.URL || self.webkitURL).revokeObjectURL(t);\n }), r;\n } catch {\n return new Worker(\n \"data:text/javascript;charset=utf-8,\" + encodeURIComponent(en),\n {\n name: e == null ? void 0 : e.name\n }\n );\n } finally {\n t && (self.URL || self.webkitURL).revokeObjectURL(t);\n }\n}\nconst mi = \"5\";\nvar Qr;\ntypeof window < \"u\" && ((Qr = window.__svelte ?? (window.__svelte = {})).v ?? (Qr.v = /* @__PURE__ */ new Set())).add(mi);\nconst wi = 1, pi = 4, yi = 8, bi = 16, Ei = 1, xi = 2, Wt = \"[\", tn = \"[!\", rn = \"]\", Je = {}, W = Symbol(), $i = \"http://www.w3.org/1999/xhtml\", Mr = !1, oe = 2, nn = 4, It = 8, Yt = 16, pe = 32, ze = 64, yt = 128, re = 256, bt = 512, K = 1024, ye = 2048, et = 4096, Ke = 8192, St = 16384, ki = 32768, Zt = 65536, Ci = 1 << 19, ln = 1 << 20, ut = Symbol(\"$state\"), an = Symbol(\"legacy props\"), Ai = Symbol(\"\");\nvar on = Array.isArray, Ri = Array.prototype.indexOf, Ii = Array.from, Et = Object.keys, xt = Object.defineProperty, Pe = Object.getOwnPropertyDescriptor, Si = Object.getOwnPropertyDescriptors, Ti = Object.prototype, Ni = Array.prototype, sn = Object.getPrototypeOf;\nfunction fn(e) {\n for (var t = 0; t < e.length; t++)\n e[t]();\n}\nconst Li = typeof requestIdleCallback > \"u\" ? (e) => setTimeout(e, 1) : requestIdleCallback;\nlet dt = [], vt = [];\nfunction un() {\n var e = dt;\n dt = [], fn(e);\n}\nfunction cn() {\n var e = vt;\n vt = [], fn(e);\n}\nfunction Gt(e) {\n dt.length === 0 && queueMicrotask(un), dt.push(e);\n}\nfunction Di(e) {\n vt.length === 0 && Li(cn), vt.push(e);\n}\nfunction Ur() {\n dt.length > 0 && un(), vt.length > 0 && cn();\n}\nfunction dn(e) {\n return e === this.v;\n}\nfunction Pi(e, t) {\n return e != e ? t == t : e !== t || e !== null && typeof e == \"object\" || typeof e == \"function\";\n}\nfunction vn(e) {\n return !Pi(e, this.v);\n}\nfunction Oi(e) {\n throw new Error(\"https://svelte.dev/e/effect_in_teardown\");\n}\nfunction zi() {\n throw new Error(\"https://svelte.dev/e/effect_in_unowned_derived\");\n}\nfunction Fi(e) {\n throw new Error(\"https://svelte.dev/e/effect_orphan\");\n}\nfunction Mi() {\n throw new Error(\"https://svelte.dev/e/effect_update_depth_exceeded\");\n}\nfunction Ui() {\n throw new Error(\"https://svelte.dev/e/hydration_failed\");\n}\nfunction ji(e) {\n throw new Error(\"https://svelte.dev/e/props_invalid_value\");\n}\nfunction Vi() {\n throw new Error(\"https://svelte.dev/e/state_descriptors_fixed\");\n}\nfunction Bi() {\n throw new Error(\"https://svelte.dev/e/state_prototype_fixed\");\n}\nfunction qi() {\n throw new Error(\"https://svelte.dev/e/state_unsafe_local_read\");\n}\nfunction Hi() {\n throw new Error(\"https://svelte.dev/e/state_unsafe_mutation\");\n}\nlet Wi = !1;\nfunction ue(e, t) {\n var r = {\n f: 0,\n // TODO ideally we could skip this altogether, but it causes type errors\n v: e,\n reactions: null,\n equals: dn,\n rv: 0,\n wv: 0\n };\n return r;\n}\nfunction He(e) {\n return /* @__PURE__ */ Yi(ue(e));\n}\n// @__NO_SIDE_EFFECTS__\nfunction hn(e, t = !1) {\n const r = ue(e);\n return t || (r.equals = vn), r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction Yi(e) {\n return k !== null && !ae && (k.f & oe) !== 0 && (ce === null ? Qi([e]) : ce.push(e)), e;\n}\nfunction P(e, t) {\n return k !== null && !ae && Dn() && (k.f & (oe | Yt)) !== 0 && // If the source was created locally within the current derived, then\n // we allow the mutation.\n (ce === null || !ce.includes(e)) && Hi(), Zi(e, t);\n}\nfunction Zi(e, t) {\n return e.equals(t) || (e.v, e.v = t, e.wv = En(), gn(e, ye), A !== null && (A.f & K) !== 0 && (A.f & (pe | ze)) === 0 && (ge === null ? el([e]) : ge.push(e))), t;\n}\nfunction gn(e, t) {\n var r = e.reactions;\n if (r !== null)\n for (var l = r.length, i = 0; i < l; i++) {\n var a = r[i], o = a.f;\n (o & ye) === 0 && (de(a, t), (o & (K | re)) !== 0 && ((o & oe) !== 0 ? gn(\n /** @type {Derived} */\n a,\n et\n ) : Lt(\n /** @type {Effect} */\n a\n )));\n }\n}\n// @__NO_SIDE_EFFECTS__\nfunction De(e) {\n var t = oe | ye, r = k !== null && (k.f & oe) !== 0 ? (\n /** @type {Derived} */\n k\n ) : null;\n return A === null || r !== null && (r.f & re) !== 0 ? t |= re : A.f |= ln, {\n ctx: B,\n deps: null,\n effects: null,\n equals: dn,\n f: t,\n fn: e,\n reactions: null,\n rv: 0,\n v: (\n /** @type {V} */\n null\n ),\n wv: 0,\n parent: r ?? A\n };\n}\nfunction _n(e) {\n var t = e.effects;\n if (t !== null) {\n e.effects = null;\n for (var r = 0; r < t.length; r += 1)\n we(\n /** @type {Effect} */\n t[r]\n );\n }\n}\nfunction Gi(e) {\n for (var t = e.parent; t !== null; ) {\n if ((t.f & oe) === 0)\n return (\n /** @type {Effect} */\n t\n );\n t = t.parent;\n }\n return null;\n}\nfunction Ji(e) {\n var t, r = A;\n Se(Gi(e));\n try {\n _n(e), t = $n(e);\n } finally {\n Se(r);\n }\n return t;\n}\nfunction mn(e) {\n var t = Ji(e), r = (Ce || (e.f & re) !== 0) && e.deps !== null ? et : K;\n de(e, r), e.equals(t) || (e.v = t, e.wv = En());\n}\nfunction Tt(e) {\n console.warn(\"https://svelte.dev/e/hydration_mismatch\");\n}\nlet D = !1;\nfunction Ge(e) {\n D = e;\n}\nlet O;\nfunction Re(e) {\n if (e === null)\n throw Tt(), Je;\n return O = e;\n}\nfunction Xe() {\n return Re(\n /** @type {TemplateNode} */\n /* @__PURE__ */ Te(O)\n );\n}\nfunction Z(e) {\n if (D) {\n if (/* @__PURE__ */ Te(O) !== null)\n throw Tt(), Je;\n O = e;\n }\n}\nfunction Ki() {\n for (var e = 0, t = O; ; ) {\n if (t.nodeType === 8) {\n var r = (\n /** @type {Comment} */\n t.data\n );\n if (r === rn) {\n if (e === 0) return t;\n e -= 1;\n } else (r === Wt || r === tn) && (e += 1);\n }\n var l = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ Te(t)\n );\n t.remove(), t = l;\n }\n}\nfunction le(e, t = null, r) {\n if (typeof e != \"object\" || e === null || ut in e)\n return e;\n const l = sn(e);\n if (l !== Ti && l !== Ni)\n return e;\n var i = /* @__PURE__ */ new Map(), a = on(e), o = ue(0);\n a && i.set(\"length\", ue(\n /** @type {any[]} */\n e.length\n ));\n var f;\n return new Proxy(\n /** @type {any} */\n e,\n {\n defineProperty(s, c, v) {\n (!(\"value\" in v) || v.configurable === !1 || v.enumerable === !1 || v.writable === !1) && Vi();\n var h = i.get(c);\n return h === void 0 ? (h = ue(v.value), i.set(c, h)) : P(h, le(v.value, f)), !0;\n },\n deleteProperty(s, c) {\n var v = i.get(c);\n if (v === void 0)\n c in s && i.set(c, ue(W));\n else {\n if (a && typeof c == \"string\") {\n var h = (\n /** @type {Source} */\n i.get(\"length\")\n ), g = Number(c);\n Number.isInteger(g) && g < h.v && P(h, g);\n }\n P(v, W), jr(o);\n }\n return !0;\n },\n get(s, c, v) {\n var w;\n if (c === ut)\n return e;\n var h = i.get(c), g = c in s;\n if (h === void 0 && (!g || (w = Pe(s, c)) != null && w.writable) && (h = ue(le(g ? s[c] : W, f)), i.set(c, h)), h !== void 0) {\n var m = d(h);\n return m === W ? void 0 : m;\n }\n return Reflect.get(s, c, v);\n },\n getOwnPropertyDescriptor(s, c) {\n var v = Reflect.getOwnPropertyDescriptor(s, c);\n if (v && \"value\" in v) {\n var h = i.get(c);\n h && (v.value = d(h));\n } else if (v === void 0) {\n var g = i.get(c), m = g == null ? void 0 : g.v;\n if (g !== void 0 && m !== W)\n return {\n enumerable: !0,\n configurable: !0,\n value: m,\n writable: !0\n };\n }\n return v;\n },\n has(s, c) {\n var m;\n if (c === ut)\n return !0;\n var v = i.get(c), h = v !== void 0 && v.v !== W || Reflect.has(s, c);\n if (v !== void 0 || A !== null && (!h || (m = Pe(s, c)) != null && m.writable)) {\n v === void 0 && (v = ue(h ? le(s[c], f) : W), i.set(c, v));\n var g = d(v);\n if (g === W)\n return !1;\n }\n return h;\n },\n set(s, c, v, h) {\n var F;\n var g = i.get(c), m = c in s;\n if (a && c === \"length\")\n for (var w = v; w < /** @type {Source} */\n g.v; w += 1) {\n var z = i.get(w + \"\");\n z !== void 0 ? P(z, W) : w in s && (z = ue(W), i.set(w + \"\", z));\n }\n g === void 0 ? (!m || (F = Pe(s, c)) != null && F.writable) && (g = ue(void 0), P(g, le(v, f)), i.set(c, g)) : (m = g.v !== W, P(g, le(v, f)));\n var T = Reflect.getOwnPropertyDescriptor(s, c);\n if (T != null && T.set && T.set.call(h, v), !m) {\n if (a && typeof c == \"string\") {\n var Y = (\n /** @type {Source} */\n i.get(\"length\")\n ), M = Number(c);\n Number.isInteger(M) && M >= Y.v && P(Y, M + 1);\n }\n jr(o);\n }\n return !0;\n },\n ownKeys(s) {\n d(o);\n var c = Reflect.ownKeys(s).filter((g) => {\n var m = i.get(g);\n return m === void 0 || m.v !== W;\n });\n for (var [v, h] of i)\n h.v !== W && !(v in s) && c.push(v);\n return c;\n },\n setPrototypeOf() {\n Bi();\n }\n }\n );\n}\nfunction jr(e, t = 1) {\n P(e, e.v + t);\n}\nvar Vr, wn, pn, yn;\nfunction jt() {\n if (Vr === void 0) {\n Vr = window, wn = /Firefox/.test(navigator.userAgent);\n var e = Element.prototype, t = Node.prototype;\n pn = Pe(t, \"firstChild\").get, yn = Pe(t, \"nextSibling\").get, e.__click = void 0, e.__className = void 0, e.__attributes = null, e.__style = void 0, e.__e = void 0, Text.prototype.__t = void 0;\n }\n}\nfunction Jt(e = \"\") {\n return document.createTextNode(e);\n}\n// @__NO_SIDE_EFFECTS__\nfunction me(e) {\n return pn.call(e);\n}\n// @__NO_SIDE_EFFECTS__\nfunction Te(e) {\n return yn.call(e);\n}\nfunction G(e, t) {\n if (!D)\n return /* @__PURE__ */ me(e);\n var r = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(O)\n );\n return r === null && (r = O.appendChild(Jt())), Re(r), r;\n}\nfunction Br(e, t) {\n if (!D) {\n var r = (\n /** @type {DocumentFragment} */\n /* @__PURE__ */ me(\n /** @type {Node} */\n e\n )\n );\n return r instanceof Comment && r.data === \"\" ? /* @__PURE__ */ Te(r) : r;\n }\n return O;\n}\nfunction he(e, t = 1, r = !1) {\n let l = D ? O : e;\n for (var i; t--; )\n i = l, l = /** @type {TemplateNode} */\n /* @__PURE__ */ Te(l);\n if (!D)\n return l;\n var a = l == null ? void 0 : l.nodeType;\n if (r && a !== 3) {\n var o = Jt();\n return l === null ? i == null || i.after(o) : l.before(o), Re(o), o;\n }\n return Re(l), /** @type {TemplateNode} */\n l;\n}\nfunction Xi(e) {\n e.textContent = \"\";\n}\nlet wt = !1, $t = !1, kt = null, Oe = !1, Kt = !1;\nfunction qr(e) {\n Kt = e;\n}\nlet ct = [];\nlet k = null, ae = !1;\nfunction Ie(e) {\n k = e;\n}\nlet A = null;\nfunction Se(e) {\n A = e;\n}\nlet ce = null;\nfunction Qi(e) {\n ce = e;\n}\nlet V = null, J = 0, ge = null;\nfunction el(e) {\n ge = e;\n}\nlet bn = 1, Ct = 0, Ce = !1;\nfunction En() {\n return ++bn;\n}\nfunction ht(e) {\n var h;\n var t = e.f;\n if ((t & ye) !== 0)\n return !0;\n if ((t & et) !== 0) {\n var r = e.deps, l = (t & re) !== 0;\n if (r !== null) {\n var i, a, o = (t & bt) !== 0, f = l && A !== null && !Ce, s = r.length;\n if (o || f) {\n var c = (\n /** @type {Derived} */\n e\n ), v = c.parent;\n for (i = 0; i < s; i++)\n a = r[i], (o || !((h = a == null ? void 0 : a.reactions) != null && h.includes(c))) && (a.reactions ?? (a.reactions = [])).push(c);\n o && (c.f ^= bt), f && v !== null && (v.f & re) === 0 && (c.f ^= re);\n }\n for (i = 0; i < s; i++)\n if (a = r[i], ht(\n /** @type {Derived} */\n a\n ) && mn(\n /** @type {Derived} */\n a\n ), a.wv > e.wv)\n return !0;\n }\n (!l || A !== null && !Ce) && de(e, K);\n }\n return !1;\n}\nfunction tl(e, t) {\n for (var r = t; r !== null; ) {\n if ((r.f & yt) !== 0)\n try {\n r.fn(e);\n return;\n } catch {\n r.f ^= yt;\n }\n r = r.parent;\n }\n throw wt = !1, e;\n}\nfunction rl(e) {\n return (e.f & St) === 0 && (e.parent === null || (e.parent.f & yt) === 0);\n}\nfunction Nt(e, t, r, l) {\n if (wt) {\n if (r === null && (wt = !1), rl(t))\n throw e;\n return;\n }\n r !== null && (wt = !0);\n {\n tl(e, t);\n return;\n }\n}\nfunction xn(e, t, r = !0) {\n var l = e.reactions;\n if (l !== null)\n for (var i = 0; i < l.length; i++) {\n var a = l[i];\n (a.f & oe) !== 0 ? xn(\n /** @type {Derived} */\n a,\n t,\n !1\n ) : t === a && (r ? de(a, ye) : (a.f & K) !== 0 && de(a, et), Lt(\n /** @type {Effect} */\n a\n ));\n }\n}\nfunction $n(e) {\n var m;\n var t = V, r = J, l = ge, i = k, a = Ce, o = ce, f = B, s = ae, c = e.f;\n V = /** @type {null | Value[]} */\n null, J = 0, ge = null, Ce = (c & re) !== 0 && (ae || !Oe || k === null), k = (c & (pe | ze)) === 0 ? e : null, ce = null, Wr(e.ctx), ae = !1, Ct++;\n try {\n var v = (\n /** @type {Function} */\n (0, e.fn)()\n ), h = e.deps;\n if (V !== null) {\n var g;\n if (At(e, J), h !== null && J > 0)\n for (h.length = J + V.length, g = 0; g < V.length; g++)\n h[J + g] = V[g];\n else\n e.deps = h = V;\n if (!Ce)\n for (g = J; g < h.length; g++)\n ((m = h[g]).reactions ?? (m.reactions = [])).push(e);\n } else h !== null && J < h.length && (At(e, J), h.length = J);\n if (Dn() && ge !== null && !ae && h !== null && (e.f & (oe | et | ye)) === 0)\n for (g = 0; g < /** @type {Source[]} */\n ge.length; g++)\n xn(\n ge[g],\n /** @type {Effect} */\n e\n );\n return i !== null && Ct++, v;\n } finally {\n V = t, J = r, ge = l, k = i, Ce = a, ce = o, Wr(f), ae = s;\n }\n}\nfunction nl(e, t) {\n let r = t.reactions;\n if (r !== null) {\n var l = Ri.call(r, e);\n if (l !== -1) {\n var i = r.length - 1;\n i === 0 ? r = t.reactions = null : (r[l] = r[i], r.pop());\n }\n }\n r === null && (t.f & oe) !== 0 && // Destroying a child effect while updating a parent effect can cause a dependency to appear\n // to be unused, when in fact it is used by the currently-updating parent. Checking `new_deps`\n // allows us to skip the expensive work of disconnecting and immediately reconnecting it\n (V === null || !V.includes(t)) && (de(t, et), (t.f & (re | bt)) === 0 && (t.f ^= bt), _n(\n /** @type {Derived} **/\n t\n ), At(\n /** @type {Derived} **/\n t,\n 0\n ));\n}\nfunction At(e, t) {\n var r = e.deps;\n if (r !== null)\n for (var l = t; l < r.length; l++)\n nl(e, r[l]);\n}\nfunction Xt(e) {\n var t = e.f;\n if ((t & St) === 0) {\n de(e, K);\n var r = A, l = B, i = Oe;\n A = e, Oe = !0;\n try {\n (t & Yt) !== 0 ? hl(e) : An(e), Cn(e);\n var a = $n(e);\n e.teardown = typeof a == \"function\" ? a : null, e.wv = bn;\n var o = e.deps, f;\n Mr && Wi && e.f & ye;\n } catch (s) {\n Nt(s, e, r, l || e.ctx);\n } finally {\n Oe = i, A = r;\n }\n }\n}\nfunction il() {\n try {\n Mi();\n } catch (e) {\n if (kt !== null)\n Nt(e, kt, null);\n else\n throw e;\n }\n}\nfunction kn() {\n var e = Oe;\n try {\n var t = 0;\n for (Oe = !0; ct.length > 0; ) {\n t++ > 1e3 && il();\n var r = ct, l = r.length;\n ct = [];\n for (var i = 0; i < l; i++) {\n var a = al(r[i]);\n ll(a);\n }\n }\n } finally {\n $t = !1, Oe = e, kt = null;\n }\n}\nfunction ll(e) {\n var t = e.length;\n if (t !== 0)\n for (var r = 0; r < t; r++) {\n var l = e[r];\n if ((l.f & (St | Ke)) === 0)\n try {\n ht(l) && (Xt(l), l.deps === null && l.first === null && l.nodes_start === null && (l.teardown === null ? Rn(l) : l.fn = null));\n } catch (i) {\n Nt(i, l, null, l.ctx);\n }\n }\n}\nfunction Lt(e) {\n $t || ($t = !0, queueMicrotask(kn));\n for (var t = kt = e; t.parent !== null; ) {\n t = t.parent;\n var r = t.f;\n if ((r & (ze | pe)) !== 0) {\n if ((r & K) === 0) return;\n t.f ^= K;\n }\n }\n ct.push(t);\n}\nfunction al(e) {\n for (var t = [], r = e; r !== null; ) {\n var l = r.f, i = (l & (pe | ze)) !== 0, a = i && (l & K) !== 0;\n if (!a && (l & Ke) === 0) {\n if ((l & nn) !== 0)\n t.push(r);\n else if (i)\n r.f ^= K;\n else {\n var o = k;\n try {\n k = r, ht(r) && Xt(r);\n } catch (c) {\n Nt(c, r, null, r.ctx);\n } finally {\n k = o;\n }\n }\n var f = r.first;\n if (f !== null) {\n r = f;\n continue;\n }\n }\n var s = r.parent;\n for (r = r.next; r === null && s !== null; )\n r = s.next, s = s.parent;\n }\n return t;\n}\nfunction $(e) {\n var t;\n for (Ur(); ct.length > 0; )\n $t = !0, kn(), Ur();\n return (\n /** @type {T} */\n t\n );\n}\nasync function ol() {\n await Promise.resolve(), $();\n}\nfunction d(e) {\n var t = e.f, r = (t & oe) !== 0;\n if (k !== null && !ae) {\n ce !== null && ce.includes(e) && qi();\n var l = k.deps;\n e.rv < Ct && (e.rv = Ct, V === null && l !== null && l[J] === e ? J++ : V === null ? V = [e] : (!Ce || !V.includes(e)) && V.push(e));\n } else if (r && /** @type {Derived} */\n e.deps === null && /** @type {Derived} */\n e.effects === null) {\n var i = (\n /** @type {Derived} */\n e\n ), a = i.parent;\n a !== null && (a.f & re) === 0 && (i.f ^= re);\n }\n return r && (i = /** @type {Derived} */\n e, ht(i) && mn(i)), e.v;\n}\nfunction Qe(e) {\n var t = ae;\n try {\n return ae = !0, e();\n } finally {\n ae = t;\n }\n}\nconst sl = -7169;\nfunction de(e, t) {\n e.f = e.f & sl | t;\n}\nfunction fl(e) {\n A === null && k === null && Fi(), k !== null && (k.f & re) !== 0 && A === null && zi(), Kt && Oi();\n}\nfunction ul(e, t) {\n var r = t.last;\n r === null ? t.last = t.first = e : (r.next = e, e.prev = r, t.last = e);\n}\nfunction Fe(e, t, r, l = !0) {\n var i = A, a = {\n ctx: B,\n deps: null,\n nodes_start: null,\n nodes_end: null,\n f: e | ye,\n first: null,\n fn: t,\n last: null,\n next: null,\n parent: i,\n prev: null,\n teardown: null,\n transitions: null,\n wv: 0\n };\n if (r)\n try {\n Xt(a), a.f |= ki;\n } catch (s) {\n throw we(a), s;\n }\n else t !== null && Lt(a);\n var o = r && a.deps === null && a.first === null && a.nodes_start === null && a.teardown === null && (a.f & (ln | yt)) === 0;\n if (!o && l && (i !== null && ul(a, i), k !== null && (k.f & oe) !== 0)) {\n var f = (\n /** @type {Derived} */\n k\n );\n (f.effects ?? (f.effects = [])).push(a);\n }\n return a;\n}\nfunction cl(e) {\n const t = Fe(It, null, !1);\n return de(t, K), t.teardown = e, t;\n}\nfunction Vt(e) {\n fl();\n var t = A !== null && (A.f & pe) !== 0 && B !== null && !B.m;\n if (t) {\n var r = (\n /** @type {ComponentContext} */\n B\n );\n (r.e ?? (r.e = [])).push({\n fn: e,\n effect: A,\n reaction: k\n });\n } else {\n var l = Qt(e);\n return l;\n }\n}\nfunction dl(e) {\n const t = Fe(ze, e, !0);\n return () => {\n we(t);\n };\n}\nfunction vl(e) {\n const t = Fe(ze, e, !0);\n return (r = {}) => new Promise((l) => {\n r.outro ? Bt(t, () => {\n we(t), l(void 0);\n }) : (we(t), l(void 0));\n });\n}\nfunction Qt(e) {\n return Fe(nn, e, !1);\n}\nfunction er(e) {\n return Fe(It, e, !0);\n}\nfunction We(e, t = [], r = De) {\n const l = t.map(r);\n return tr(() => e(...l.map(d)));\n}\nfunction tr(e, t = 0) {\n return Fe(It | Yt | t, e, !0);\n}\nfunction Rt(e, t = !0) {\n return Fe(It | pe, e, !0, t);\n}\nfunction Cn(e) {\n var t = e.teardown;\n if (t !== null) {\n const r = Kt, l = k;\n qr(!0), Ie(null);\n try {\n t.call(null);\n } finally {\n qr(r), Ie(l);\n }\n }\n}\nfunction An(e, t = !1) {\n var r = e.first;\n for (e.first = e.last = null; r !== null; ) {\n var l = r.next;\n (r.f & ze) !== 0 ? r.parent = null : we(r, t), r = l;\n }\n}\nfunction hl(e) {\n for (var t = e.first; t !== null; ) {\n var r = t.next;\n (t.f & pe) === 0 && we(t), t = r;\n }\n}\nfunction we(e, t = !0) {\n var r = !1;\n if ((t || (e.f & Ci) !== 0) && e.nodes_start !== null) {\n for (var l = e.nodes_start, i = e.nodes_end; l !== null; ) {\n var a = l === i ? null : (\n /** @type {TemplateNode} */\n /* @__PURE__ */ Te(l)\n );\n l.remove(), l = a;\n }\n r = !0;\n }\n An(e, t && !r), At(e, 0), de(e, St);\n var o = e.transitions;\n if (o !== null)\n for (const s of o)\n s.stop();\n Cn(e);\n var f = e.parent;\n f !== null && f.first !== null && Rn(e), e.next = e.prev = e.teardown = e.ctx = e.deps = e.fn = e.nodes_start = e.nodes_end = null;\n}\nfunction Rn(e) {\n var t = e.parent, r = e.prev, l = e.next;\n r !== null && (r.next = l), l !== null && (l.prev = r), t !== null && (t.first === e && (t.first = l), t.last === e && (t.last = r));\n}\nfunction Bt(e, t) {\n var r = [];\n In(e, r, !0), gl(r, () => {\n we(e), t && t();\n });\n}\nfunction gl(e, t) {\n var r = e.length;\n if (r > 0) {\n var l = () => --r || t();\n for (var i of e)\n i.out(l);\n } else\n t();\n}\nfunction In(e, t, r) {\n if ((e.f & Ke) === 0) {\n if (e.f ^= Ke, e.transitions !== null)\n for (const o of e.transitions)\n (o.is_global || r) && t.push(o);\n for (var l = e.first; l !== null; ) {\n var i = l.next, a = (l.f & Zt) !== 0 || (l.f & pe) !== 0;\n In(l, t, a ? r : !1), l = i;\n }\n }\n}\nfunction Hr(e) {\n Sn(e, !0);\n}\nfunction Sn(e, t) {\n if ((e.f & Ke) !== 0) {\n e.f ^= Ke, (e.f & K) === 0 && (e.f ^= K), ht(e) && (de(e, ye), Lt(e));\n for (var r = e.first; r !== null; ) {\n var l = r.next, i = (r.f & Zt) !== 0 || (r.f & pe) !== 0;\n Sn(r, i ? t : !1), r = l;\n }\n if (e.transitions !== null)\n for (const a of e.transitions)\n (a.is_global || t) && a.in();\n }\n}\nfunction Tn(e) {\n throw new Error(\"https://svelte.dev/e/lifecycle_outside_component\");\n}\nlet B = null;\nfunction Wr(e) {\n B = e;\n}\nfunction Nn(e, t = !1, r) {\n B = {\n p: B,\n c: null,\n e: null,\n m: !1,\n s: e,\n x: null,\n l: null\n };\n}\nfunction Ln(e) {\n const t = B;\n if (t !== null) {\n e !== void 0 && (t.x = e);\n const o = t.e;\n if (o !== null) {\n var r = A, l = k;\n t.e = null;\n try {\n for (var i = 0; i < o.length; i++) {\n var a = o[i];\n Se(a.effect), Ie(a.reaction), Qt(a.fn);\n }\n } finally {\n Se(r), Ie(l);\n }\n }\n B = t.p, t.m = !0;\n }\n return e || /** @type {T} */\n {};\n}\nfunction Dn() {\n return !0;\n}\nconst _l = [\"touchstart\", \"touchmove\"];\nfunction ml(e) {\n return _l.includes(e);\n}\nlet Yr = !1;\nfunction Pn() {\n Yr || (Yr = !0, document.addEventListener(\n \"reset\",\n (e) => {\n Promise.resolve().then(() => {\n var t;\n if (!e.defaultPrevented)\n for (\n const r of\n /**@type {HTMLFormElement} */\n e.target.elements\n )\n (t = r.__on_r) == null || t.call(r);\n });\n },\n // In the capture phase to guarantee we get noticed of it (no possiblity of stopPropagation)\n { capture: !0 }\n ));\n}\nfunction On(e) {\n var t = k, r = A;\n Ie(null), Se(null);\n try {\n return e();\n } finally {\n Ie(t), Se(r);\n }\n}\nfunction wl(e, t, r, l = r) {\n e.addEventListener(t, () => On(r));\n const i = e.__on_r;\n i ? e.__on_r = () => {\n i(), l(!0);\n } : e.__on_r = () => l(!0), Pn();\n}\nconst zn = /* @__PURE__ */ new Set(), qt = /* @__PURE__ */ new Set();\nfunction pl(e, t, r, l = {}) {\n function i(a) {\n if (l.capture || ft.call(t, a), !a.cancelBubble)\n return On(() => r == null ? void 0 : r.call(this, a));\n }\n return e.startsWith(\"pointer\") || e.startsWith(\"touch\") || e === \"wheel\" ? Gt(() => {\n t.addEventListener(e, i, l);\n }) : t.addEventListener(e, i, l), i;\n}\nfunction yl(e, t, r, l, i) {\n var a = { capture: l, passive: i }, o = pl(e, t, r, a);\n (t === document.body || t === window || t === document) && cl(() => {\n t.removeEventListener(e, o, a);\n });\n}\nfunction bl(e) {\n for (var t = 0; t < e.length; t++)\n zn.add(e[t]);\n for (var r of qt)\n r(e);\n}\nfunction ft(e) {\n var M;\n var t = this, r = (\n /** @type {Node} */\n t.ownerDocument\n ), l = e.type, i = ((M = e.composedPath) == null ? void 0 : M.call(e)) || [], a = (\n /** @type {null | Element} */\n i[0] || e.target\n ), o = 0, f = e.__root;\n if (f) {\n var s = i.indexOf(f);\n if (s !== -1 && (t === document || t === /** @type {any} */\n window)) {\n e.__root = t;\n return;\n }\n var c = i.indexOf(t);\n if (c === -1)\n return;\n s <= c && (o = s);\n }\n if (a = /** @type {Element} */\n i[o] || e.target, a !== t) {\n xt(e, \"currentTarget\", {\n configurable: !0,\n get() {\n return a || r;\n }\n });\n var v = k, h = A;\n Ie(null), Se(null);\n try {\n for (var g, m = []; a !== null; ) {\n var w = a.assignedSlot || a.parentNode || /** @type {any} */\n a.host || null;\n try {\n var z = a[\"__\" + l];\n if (z != null && (!/** @type {any} */\n a.disabled || // DOM could've been updated already by the time this is reached, so we check this as well\n // -> the target could not have been disabled because it emits the event in the first place\n e.target === a))\n if (on(z)) {\n var [T, ...Y] = z;\n T.apply(a, [e, ...Y]);\n } else\n z.call(a, e);\n } catch (F) {\n g ? m.push(F) : g = F;\n }\n if (e.cancelBubble || w === t || w === null)\n break;\n a = w;\n }\n if (g) {\n for (let F of m)\n queueMicrotask(() => {\n throw F;\n });\n throw g;\n }\n } finally {\n e.__root = t, delete e.currentTarget, Ie(v), Se(h);\n }\n }\n}\nfunction rr(e) {\n var t = document.createElement(\"template\");\n return t.innerHTML = e, t.content;\n}\nfunction Ae(e, t) {\n var r = (\n /** @type {Effect} */\n A\n );\n r.nodes_start === null && (r.nodes_start = e, r.nodes_end = t);\n}\n// @__NO_SIDE_EFFECTS__\nfunction ve(e, t) {\n var r = (t & Ei) !== 0, l = (t & xi) !== 0, i, a = !e.startsWith(\"\");\n return () => {\n if (D)\n return Ae(O, null), O;\n i === void 0 && (i = rr(a ? e : \"\" + e), r || (i = /** @type {Node} */\n /* @__PURE__ */ me(i)));\n var o = (\n /** @type {TemplateNode} */\n l || wn ? document.importNode(i, !0) : i.cloneNode(!0)\n );\n if (r) {\n var f = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(o)\n ), s = (\n /** @type {TemplateNode} */\n o.lastChild\n );\n Ae(f, s);\n } else\n Ae(o, o);\n return o;\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction El(e, t, r = \"svg\") {\n var l = !e.startsWith(\"\"), i = `<${r}>${l ? e : \"\" + e}`, a;\n return () => {\n if (D)\n return Ae(O, null), O;\n if (!a) {\n var o = (\n /** @type {DocumentFragment} */\n rr(i)\n ), f = (\n /** @type {Element} */\n /* @__PURE__ */ me(o)\n );\n a = /** @type {Element} */\n /* @__PURE__ */ me(f);\n }\n var s = (\n /** @type {TemplateNode} */\n a.cloneNode(!0)\n );\n return Ae(s, s), s;\n };\n}\nfunction ee(e, t) {\n if (D) {\n A.nodes_end = O, Xe();\n return;\n }\n e !== null && e.before(\n /** @type {Node} */\n t\n );\n}\nfunction Fn(e, t) {\n return Mn(e, t);\n}\nfunction xl(e, t) {\n jt(), t.intro = t.intro ?? !1;\n const r = t.target, l = D, i = O;\n try {\n for (var a = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(r)\n ); a && (a.nodeType !== 8 || /** @type {Comment} */\n a.data !== Wt); )\n a = /** @type {TemplateNode} */\n /* @__PURE__ */ Te(a);\n if (!a)\n throw Je;\n Ge(!0), Re(\n /** @type {Comment} */\n a\n ), Xe();\n const o = Mn(e, { ...t, anchor: a });\n if (O === null || O.nodeType !== 8 || /** @type {Comment} */\n O.data !== rn)\n throw Tt(), Je;\n return Ge(!1), /** @type {Exports} */\n o;\n } catch (o) {\n if (o === Je)\n return t.recover === !1 && Ui(), jt(), Xi(r), Ge(!1), Fn(e, t);\n throw o;\n } finally {\n Ge(l), Re(i);\n }\n}\nconst Ye = /* @__PURE__ */ new Map();\nfunction Mn(e, { target: t, anchor: r, props: l = {}, events: i, context: a, intro: o = !0 }) {\n jt();\n var f = /* @__PURE__ */ new Set(), s = (h) => {\n for (var g = 0; g < h.length; g++) {\n var m = h[g];\n if (!f.has(m)) {\n f.add(m);\n var w = ml(m);\n t.addEventListener(m, ft, { passive: w });\n var z = Ye.get(m);\n z === void 0 ? (document.addEventListener(m, ft, { passive: w }), Ye.set(m, 1)) : Ye.set(m, z + 1);\n }\n }\n };\n s(Ii(zn)), qt.add(s);\n var c = void 0, v = vl(() => {\n var h = r ?? t.appendChild(Jt());\n return Rt(() => {\n if (a) {\n Nn({});\n var g = (\n /** @type {ComponentContext} */\n B\n );\n g.c = a;\n }\n i && (l.$$events = i), D && Ae(\n /** @type {TemplateNode} */\n h,\n null\n ), c = e(h, l) || {}, D && (A.nodes_end = O), a && Ln();\n }), () => {\n var w;\n for (var g of f) {\n t.removeEventListener(g, ft);\n var m = (\n /** @type {number} */\n Ye.get(g)\n );\n --m === 0 ? (document.removeEventListener(g, ft), Ye.delete(g)) : Ye.set(g, m);\n }\n qt.delete(s), h !== r && ((w = h.parentNode) == null || w.removeChild(h));\n };\n });\n return Ht.set(c, v), c;\n}\nlet Ht = /* @__PURE__ */ new WeakMap();\nfunction $l(e, t) {\n const r = Ht.get(e);\n return r ? (Ht.delete(e), r(t)) : Promise.resolve();\n}\nfunction ke(e, t, [r, l] = [0, 0]) {\n D && r === 0 && Xe();\n var i = e, a = null, o = null, f = W, s = r > 0 ? Zt : 0, c = !1;\n const v = (g, m = !0) => {\n c = !0, h(m, g);\n }, h = (g, m) => {\n if (f === (f = g)) return;\n let w = !1;\n if (D && l !== -1) {\n if (r === 0) {\n const T = (\n /** @type {Comment} */\n i.data\n );\n T === Wt ? l = 0 : T === tn ? l = 1 / 0 : (l = parseInt(T.substring(1)), l !== l && (l = f ? 1 / 0 : -1));\n }\n const z = l > r;\n !!f === z && (i = Ki(), Re(i), Ge(!1), w = !0, l = -1);\n }\n f ? (a ? Hr(a) : m && (a = Rt(() => m(i))), o && Bt(o, () => {\n o = null;\n })) : (o ? Hr(o) : m && (o = Rt(() => m(i, [r + 1, l]))), a && Bt(a, () => {\n a = null;\n })), w && Ge(!0);\n };\n tr(() => {\n c = !1, t(v), c || h(null, null);\n }, s), D && (i = O);\n}\nfunction Ze(e, t, r, l, i) {\n var a = e, o = \"\", f;\n tr(() => {\n if (o === (o = t() ?? \"\")) {\n D && Xe();\n return;\n }\n f !== void 0 && (we(f), f = void 0), o !== \"\" && (f = Rt(() => {\n if (D) {\n O.data;\n for (var s = Xe(), c = s; s !== null && (s.nodeType !== 8 || /** @type {Comment} */\n s.data !== \"\"); )\n c = s, s = /** @type {TemplateNode} */\n /* @__PURE__ */ Te(s);\n if (s === null)\n throw Tt(), Je;\n Ae(O, c), a = Re(s);\n return;\n }\n var v = o + \"\", h = rr(v);\n Ae(\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(h),\n /** @type {TemplateNode} */\n h.lastChild\n ), a.before(h);\n }));\n });\n}\nfunction kl(e, t, r, l, i) {\n var f;\n D && Xe();\n var a = (f = t.$$slots) == null ? void 0 : f[r], o = !1;\n a === !0 && (a = t.children, o = !0), a === void 0 || a(e, o ? () => l : l);\n}\nfunction Cl(e, t) {\n Gt(() => {\n var r = e.getRootNode(), l = (\n /** @type {ShadowRoot} */\n r.host ? (\n /** @type {ShadowRoot} */\n r\n ) : (\n /** @type {Document} */\n r.head ?? /** @type {Document} */\n r.ownerDocument.head\n )\n );\n if (!l.querySelector(\"#\" + t.hash)) {\n const i = document.createElement(\"style\");\n i.id = t.hash, i.textContent = t.code, l.appendChild(i);\n }\n });\n}\nconst Zr = [...` \t\n\\r\\fΒ \\v\\uFEFF`];\nfunction Al(e, t, r) {\n var l = \"\" + e;\n if (r) {\n for (var i in r)\n if (r[i])\n l = l ? l + \" \" + i : i;\n else if (l.length)\n for (var a = i.length, o = 0; (o = l.indexOf(i, o)) >= 0; ) {\n var f = o + a;\n (o === 0 || Zr.includes(l[o - 1])) && (f === l.length || Zr.includes(l[f])) ? l = (o === 0 ? \"\" : l.substring(0, o)) + l.substring(f + 1) : o = f;\n }\n }\n return l === \"\" ? null : l;\n}\nfunction Rl(e, t, r, l, i, a) {\n var o = e.__className;\n if (D || o !== r) {\n var f = Al(r, l, a);\n (!D || f !== e.getAttribute(\"class\")) && (f == null ? e.removeAttribute(\"class\") : e.className = f), e.__className = r;\n } else if (a && i !== a)\n for (var s in a) {\n var c = !!a[s];\n (i == null || c !== !!i[s]) && e.classList.toggle(s, c);\n }\n return a;\n}\nconst Il = Symbol(\"is custom element\"), Sl = Symbol(\"is html\");\nfunction Gr(e) {\n if (D) {\n var t = !1, r = () => {\n if (!t) {\n if (t = !0, e.hasAttribute(\"value\")) {\n var l = e.value;\n ie(e, \"value\", null), e.value = l;\n }\n if (e.hasAttribute(\"checked\")) {\n var i = e.checked;\n ie(e, \"checked\", null), e.checked = i;\n }\n }\n };\n e.__on_r = r, Di(r), Pn();\n }\n}\nfunction Tl(e, t) {\n var r = Un(e);\n r.value === (r.value = // treat null and undefined the same for the initial value\n t ?? void 0) || // @ts-expect-error\n // `progress` elements always need their value set when it's `0`\n e.value === t && (t !== 0 || e.nodeName !== \"PROGRESS\") || (e.value = t ?? \"\");\n}\nfunction ie(e, t, r, l) {\n var i = Un(e);\n D && (i[t] = e.getAttribute(t), t === \"src\" || t === \"srcset\" || t === \"href\" && e.nodeName === \"LINK\") || i[t] !== (i[t] = r) && (t === \"loading\" && (e[Ai] = r), r == null ? e.removeAttribute(t) : typeof r != \"string\" && Nl(e).includes(t) ? e[t] = r : e.setAttribute(t, r));\n}\nfunction Un(e) {\n return (\n /** @type {Record} **/\n // @ts-expect-error\n e.__attributes ?? (e.__attributes = {\n [Il]: e.nodeName.includes(\"-\"),\n [Sl]: e.namespaceURI === $i\n })\n );\n}\nvar Jr = /* @__PURE__ */ new Map();\nfunction Nl(e) {\n var t = Jr.get(e.nodeName);\n if (t) return t;\n Jr.set(e.nodeName, t = []);\n for (var r, l = e, i = Element.prototype; i !== l; ) {\n r = Si(l);\n for (var a in r)\n r[a].set && t.push(a);\n l = sn(l);\n }\n return t;\n}\nfunction Ll(e, t, r = t) {\n wl(e, \"change\", (l) => {\n var i = l ? e.defaultChecked : e.checked;\n r(i);\n }), // If we are hydrating and the value has since changed,\n // then use the update value from the input instead.\n (D && e.defaultChecked !== e.checked || // If defaultChecked is set, then checked == defaultChecked\n Qe(t) == null) && r(e.checked), er(() => {\n var l = t();\n e.checked = !!l;\n });\n}\nfunction Kr(e, t) {\n return e === t || (e == null ? void 0 : e[ut]) === t;\n}\nfunction Xr(e = {}, t, r, l) {\n return Qt(() => {\n var i, a;\n return er(() => {\n i = a, a = [], Qe(() => {\n e !== r(...a) && (t(e, ...a), i && Kr(r(...i), e) && t(null, ...i));\n });\n }), () => {\n Gt(() => {\n a && Kr(r(...a), e) && t(null, ...a);\n });\n };\n }), e;\n}\nfunction jn(e) {\n B === null && Tn(), Vt(() => {\n const t = Qe(e);\n if (typeof t == \"function\") return (\n /** @type {() => void} */\n t\n );\n });\n}\nfunction Dl(e) {\n B === null && Tn(), jn(() => () => Qe(e));\n}\nlet mt = !1;\nfunction Pl(e) {\n var t = mt;\n try {\n return mt = !1, [e(), mt];\n } finally {\n mt = t;\n }\n}\nfunction C(e, t, r, l) {\n var be;\n var i = (r & wi) !== 0, a = !0, o = (r & yi) !== 0, f = (r & bi) !== 0, s = !1, c;\n o ? [c, s] = Pl(() => (\n /** @type {V} */\n e[t]\n )) : c = /** @type {V} */\n e[t];\n var v = ut in e || an in e, h = o && (((be = Pe(e, t)) == null ? void 0 : be.set) ?? (v && t in e && ((N) => e[t] = N))) || void 0, g = (\n /** @type {V} */\n l\n ), m = !0, w = !1, z = () => (w = !0, m && (m = !1, f ? g = Qe(\n /** @type {() => V} */\n l\n ) : g = /** @type {V} */\n l), g);\n c === void 0 && l !== void 0 && (h && a && ji(), c = z(), h && h(c));\n var T;\n if (T = () => {\n var N = (\n /** @type {V} */\n e[t]\n );\n return N === void 0 ? z() : (m = !0, w = !1, N);\n }, (r & pi) === 0)\n return T;\n if (h) {\n var Y = e.$$legacy;\n return function(N, X) {\n return arguments.length > 0 ? ((!X || Y || s) && h(X ? T() : N), N) : T();\n };\n }\n var M = !1, F = /* @__PURE__ */ hn(c), se = /* @__PURE__ */ De(() => {\n var N = T(), X = d(F);\n return M ? (M = !1, X) : F.v = N;\n });\n return i || (se.equals = vn), function(N, X) {\n if (arguments.length > 0) {\n const U = X ? d(se) : o ? le(N) : N;\n return se.equals(U) || (M = !0, P(F, U), w && g !== void 0 && (g = U), Qe(() => d(se))), N;\n }\n return d(se);\n };\n}\nfunction Ol(e) {\n return new zl(e);\n}\nvar _e, te;\nclass zl {\n /**\n * @param {ComponentConstructorOptions & {\n * component: any;\n * }} options\n */\n constructor(t) {\n /** @type {any} */\n Mt(this, _e);\n /** @type {Record} */\n Mt(this, te);\n var a;\n var r = /* @__PURE__ */ new Map(), l = (o, f) => {\n var s = /* @__PURE__ */ hn(f);\n return r.set(o, s), s;\n };\n const i = new Proxy(\n { ...t.props || {}, $$events: {} },\n {\n get(o, f) {\n return d(r.get(f) ?? l(f, Reflect.get(o, f)));\n },\n has(o, f) {\n return f === an ? !0 : (d(r.get(f) ?? l(f, Reflect.get(o, f))), Reflect.has(o, f));\n },\n set(o, f, s) {\n return P(r.get(f) ?? l(f, s), s), Reflect.set(o, f, s);\n }\n }\n );\n Ut(this, te, (t.hydrate ? xl : Fn)(t.component, {\n target: t.target,\n anchor: t.anchor,\n props: i,\n context: t.context,\n intro: t.intro ?? !1,\n recover: t.recover\n })), (!((a = t == null ? void 0 : t.props) != null && a.$$host) || t.sync === !1) && $(), Ut(this, _e, i.$$events);\n for (const o of Object.keys(H(this, te)))\n o === \"$set\" || o === \"$destroy\" || o === \"$on\" || xt(this, o, {\n get() {\n return H(this, te)[o];\n },\n /** @param {any} value */\n set(f) {\n H(this, te)[o] = f;\n },\n enumerable: !0\n });\n H(this, te).$set = /** @param {Record} next */\n (o) => {\n Object.assign(i, o);\n }, H(this, te).$destroy = () => {\n $l(H(this, te));\n };\n }\n /** @param {Record} props */\n $set(t) {\n H(this, te).$set(t);\n }\n /**\n * @param {string} event\n * @param {(...args: any[]) => any} callback\n * @returns {any}\n */\n $on(t, r) {\n H(this, _e)[t] = H(this, _e)[t] || [];\n const l = (...i) => r.call(this, ...i);\n return H(this, _e)[t].push(l), () => {\n H(this, _e)[t] = H(this, _e)[t].filter(\n /** @param {any} fn */\n (i) => i !== l\n );\n };\n }\n $destroy() {\n H(this, te).$destroy();\n }\n}\n_e = new WeakMap(), te = new WeakMap();\nlet Vn;\ntypeof HTMLElement == \"function\" && (Vn = class extends HTMLElement {\n /**\n * @param {*} $$componentCtor\n * @param {*} $$slots\n * @param {*} use_shadow_dom\n */\n constructor(t, r, l) {\n super();\n /** The Svelte component constructor */\n ne(this, \"$$ctor\");\n /** Slots */\n ne(this, \"$$s\");\n /** @type {any} The Svelte component instance */\n ne(this, \"$$c\");\n /** Whether or not the custom element is connected */\n ne(this, \"$$cn\", !1);\n /** @type {Record} Component props data */\n ne(this, \"$$d\", {});\n /** `true` if currently in the process of reflecting component props back to attributes */\n ne(this, \"$$r\", !1);\n /** @type {Record} Props definition (name, reflected, type etc) */\n ne(this, \"$$p_d\", {});\n /** @type {Record} Event listeners */\n ne(this, \"$$l\", {});\n /** @type {Map} Event listener unsubscribe functions */\n ne(this, \"$$l_u\", /* @__PURE__ */ new Map());\n /** @type {any} The managed render effect for reflecting attributes */\n ne(this, \"$$me\");\n this.$$ctor = t, this.$$s = r, l && this.attachShadow({ mode: \"open\" });\n }\n /**\n * @param {string} type\n * @param {EventListenerOrEventListenerObject} listener\n * @param {boolean | AddEventListenerOptions} [options]\n */\n addEventListener(t, r, l) {\n if (this.$$l[t] = this.$$l[t] || [], this.$$l[t].push(r), this.$$c) {\n const i = this.$$c.$on(t, r);\n this.$$l_u.set(r, i);\n }\n super.addEventListener(t, r, l);\n }\n /**\n * @param {string} type\n * @param {EventListenerOrEventListenerObject} listener\n * @param {boolean | AddEventListenerOptions} [options]\n */\n removeEventListener(t, r, l) {\n if (super.removeEventListener(t, r, l), this.$$c) {\n const i = this.$$l_u.get(r);\n i && (i(), this.$$l_u.delete(r));\n }\n }\n async connectedCallback() {\n if (this.$$cn = !0, !this.$$c) {\n let t = function(i) {\n return (a) => {\n const o = document.createElement(\"slot\");\n i !== \"default\" && (o.name = i), ee(a, o);\n };\n };\n if (await Promise.resolve(), !this.$$cn || this.$$c)\n return;\n const r = {}, l = Fl(this);\n for (const i of this.$$s)\n i in l && (i === \"default\" && !this.$$d.children ? (this.$$d.children = t(i), r.default = !0) : r[i] = t(i));\n for (const i of this.attributes) {\n const a = this.$$g_p(i.name);\n a in this.$$d || (this.$$d[a] = pt(a, i.value, this.$$p_d, \"toProp\"));\n }\n for (const i in this.$$p_d)\n !(i in this.$$d) && this[i] !== void 0 && (this.$$d[i] = this[i], delete this[i]);\n this.$$c = Ol({\n component: this.$$ctor,\n target: this.shadowRoot || this,\n props: {\n ...this.$$d,\n $$slots: r,\n $$host: this\n }\n }), this.$$me = dl(() => {\n er(() => {\n var i;\n this.$$r = !0;\n for (const a of Et(this.$$c)) {\n if (!((i = this.$$p_d[a]) != null && i.reflect)) continue;\n this.$$d[a] = this.$$c[a];\n const o = pt(\n a,\n this.$$d[a],\n this.$$p_d,\n \"toAttribute\"\n );\n o == null ? this.removeAttribute(this.$$p_d[a].attribute || a) : this.setAttribute(this.$$p_d[a].attribute || a, o);\n }\n this.$$r = !1;\n });\n });\n for (const i in this.$$l)\n for (const a of this.$$l[i]) {\n const o = this.$$c.$on(i, a);\n this.$$l_u.set(a, o);\n }\n this.$$l = {};\n }\n }\n // We don't need this when working within Svelte code, but for compatibility of people using this outside of Svelte\n // and setting attributes through setAttribute etc, this is helpful\n /**\n * @param {string} attr\n * @param {string} _oldValue\n * @param {string} newValue\n */\n attributeChangedCallback(t, r, l) {\n var i;\n this.$$r || (t = this.$$g_p(t), this.$$d[t] = pt(t, l, this.$$p_d, \"toProp\"), (i = this.$$c) == null || i.$set({ [t]: this.$$d[t] }));\n }\n disconnectedCallback() {\n this.$$cn = !1, Promise.resolve().then(() => {\n !this.$$cn && this.$$c && (this.$$c.$destroy(), this.$$me(), this.$$c = void 0);\n });\n }\n /**\n * @param {string} attribute_name\n */\n $$g_p(t) {\n return Et(this.$$p_d).find(\n (r) => this.$$p_d[r].attribute === t || !this.$$p_d[r].attribute && r.toLowerCase() === t\n ) || t;\n }\n});\nfunction pt(e, t, r, l) {\n var a;\n const i = (a = r[e]) == null ? void 0 : a.type;\n if (t = i === \"Boolean\" && typeof t != \"boolean\" ? t != null : t, !l || !r[e])\n return t;\n if (l === \"toAttribute\")\n switch (i) {\n case \"Object\":\n case \"Array\":\n return t == null ? null : JSON.stringify(t);\n case \"Boolean\":\n return t ? \"\" : null;\n case \"Number\":\n return t ?? null;\n default:\n return t;\n }\n else\n switch (i) {\n case \"Object\":\n case \"Array\":\n return t && JSON.parse(t);\n case \"Boolean\":\n return t;\n // conversion already handled above\n case \"Number\":\n return t != null ? +t : t;\n default:\n return t;\n }\n}\nfunction Fl(e) {\n const t = {};\n return e.childNodes.forEach((r) => {\n t[\n /** @type {Element} node */\n r.slot || \"default\"\n ] = !0;\n }), t;\n}\nfunction Ml(e, t, r, l, i, a) {\n let o = class extends Vn {\n constructor() {\n super(e, r, i), this.$$p_d = t;\n }\n static get observedAttributes() {\n return Et(t).map(\n (f) => (t[f].attribute || f).toLowerCase()\n );\n }\n };\n return Et(t).forEach((f) => {\n xt(o.prototype, f, {\n get() {\n return this.$$c && f in this.$$c ? this.$$c[f] : this.$$d[f];\n },\n set(s) {\n var h;\n s = pt(f, s, t), this.$$d[f] = s;\n var c = this.$$c;\n if (c) {\n var v = (h = Pe(c, f)) == null ? void 0 : h.get;\n v ? c[f] = s : c.$set({ [f]: s });\n }\n }\n });\n }), l.forEach((f) => {\n xt(o.prototype, f, {\n get() {\n var s;\n return (s = this.$$c) == null ? void 0 : s[f];\n }\n });\n }), e.element = /** @type {any} */\n o, o;\n}\nconst Bn = new TextEncoder();\nfunction Ul(e) {\n return [...new Uint8Array(e)].map((t) => t.toString(16).padStart(2, \"0\")).join(\"\");\n}\nasync function jl(e, t = \"SHA-256\", r = 1e5) {\n const l = Date.now().toString(16);\n e || (e = Math.round(Math.random() * r));\n const i = await qn(l, e, t);\n return {\n algorithm: t,\n challenge: i,\n salt: l,\n signature: \"\"\n };\n}\nasync function qn(e, t, r) {\n if (typeof crypto > \"u\" || !(\"subtle\" in crypto) || !(\"digest\" in crypto.subtle))\n throw new Error(\"Web Crypto is not available. Secure context is required (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).\");\n return Ul(\n await crypto.subtle.digest(\n r.toUpperCase(),\n Bn.encode(e + t)\n )\n );\n}\nfunction Vl(e, t, r = \"SHA-256\", l = 1e6, i = 0) {\n const a = new AbortController(), o = Date.now();\n return {\n promise: (async () => {\n for (let s = i; s <= l; s += 1) {\n if (a.signal.aborted)\n return null;\n if (await qn(t, s, r) === e)\n return {\n number: s,\n took: Date.now() - o\n };\n }\n return null;\n })(),\n controller: a\n };\n}\nfunction Bl() {\n try {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n } catch {\n }\n}\nfunction ql(e) {\n const t = atob(e), r = new Uint8Array(t.length);\n for (let l = 0; l < t.length; l++)\n r[l] = t.charCodeAt(l);\n return r;\n}\nfunction Hl(e, t = 12) {\n const r = new Uint8Array(t);\n for (let l = 0; l < t; l++)\n r[l] = e % 256, e = Math.floor(e / 256);\n return r;\n}\nasync function Wl(e, t = \"\", r = 1e6, l = 0) {\n const i = \"AES-GCM\", a = new AbortController(), o = Date.now(), f = async () => {\n for (let v = l; v <= r; v += 1) {\n if (a.signal.aborted || !s || !c)\n return null;\n try {\n const h = await crypto.subtle.decrypt(\n {\n name: i,\n iv: Hl(v)\n },\n s,\n c\n );\n if (h)\n return {\n clearText: new TextDecoder().decode(h),\n took: Date.now() - o\n };\n } catch {\n }\n }\n return null;\n };\n let s = null, c = null;\n try {\n c = ql(e);\n const v = await crypto.subtle.digest(\n \"SHA-256\",\n Bn.encode(t)\n );\n s = await crypto.subtle.importKey(\n \"raw\",\n v,\n i,\n !1,\n [\"decrypt\"]\n );\n } catch {\n return {\n promise: Promise.reject(),\n controller: a\n };\n }\n return {\n promise: f(),\n controller: a\n };\n}\nvar E = /* @__PURE__ */ ((e) => (e.ERROR = \"error\", e.VERIFIED = \"verified\", e.VERIFYING = \"verifying\", e.UNVERIFIED = \"unverified\", e.EXPIRED = \"expired\", e))(E || {}), Yl = /* @__PURE__ */ El(''), Zl = /* @__PURE__ */ ve(' ', 1), Gl = /* @__PURE__ */ ve(''), Jl = /* @__PURE__ */ ve(''), Kl = /* @__PURE__ */ ve('
'), Xl = /* @__PURE__ */ ve('
'), Ql = /* @__PURE__ */ ve('
'), ea = /* @__PURE__ */ ve('
'), ta = /* @__PURE__ */ ve(''), ra = /* @__PURE__ */ ve('
'), na = /* @__PURE__ */ ve('
', 1);\nconst ia = {\n hash: \"svelte-ddsc3z\",\n code: `.altcha.svelte-ddsc3z {background:var(--altcha-color-base, transparent);border:var(--altcha-border-width, 1px) solid var(--altcha-color-border, #a0a0a0);border-radius:var(--altcha-border-radius, 3px);color:var(--altcha-color-text, currentColor);display:flex;flex-direction:column;max-width:var(--altcha-max-width, 260px);position:relative;text-align:left;}.altcha.svelte-ddsc3z:focus-within {border-color:var(--altcha-color-border-focus, currentColor);}.altcha[data-floating].svelte-ddsc3z {background:var(--altcha-color-base, white);display:none;filter:drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.2));left:-100%;position:fixed;top:-100%;width:var(--altcha-max-width, 260px);z-index:999999;}.altcha[data-floating=top].svelte-ddsc3z .altcha-anchor-arrow:where(.svelte-ddsc3z) {border-bottom-color:transparent;border-top-color:var(--altcha-color-border, #a0a0a0);bottom:-12px;top:auto;}.altcha[data-floating=bottom].svelte-ddsc3z:focus-within::after {border-bottom-color:var(--altcha-color-border-focus, currentColor);}.altcha[data-floating=top].svelte-ddsc3z:focus-within::after {border-top-color:var(--altcha-color-border-focus, currentColor);}.altcha[data-floating].svelte-ddsc3z:not([data-state=unverified]) {display:block;}.altcha-anchor-arrow.svelte-ddsc3z {border:6px solid transparent;border-bottom-color:var(--altcha-color-border, #a0a0a0);content:\"\";height:0;left:12px;position:absolute;top:-12px;width:0;}.altcha-main.svelte-ddsc3z {align-items:center;display:flex;gap:0.4rem;padding:0.7rem;}.altcha-label.svelte-ddsc3z {flex-grow:1;}.altcha-label.svelte-ddsc3z label:where(.svelte-ddsc3z) {cursor:pointer;}.altcha-logo.svelte-ddsc3z {color:currentColor;opacity:0.3;}.altcha-logo.svelte-ddsc3z:hover {opacity:1;}.altcha-error.svelte-ddsc3z {color:var(--altcha-color-error-text, #f23939);display:flex;font-size:0.85rem;gap:0.3rem;padding:0 0.7rem 0.7rem;}.altcha-footer.svelte-ddsc3z {align-items:center;background-color:var(--altcha-color-footer-bg, transparent);display:flex;font-size:0.75rem;opacity:0.4;padding:0.2rem 0.7rem;text-align:right;}.altcha-footer.svelte-ddsc3z:hover {opacity:1;}.altcha-footer.svelte-ddsc3z > :where(.svelte-ddsc3z):first-child {flex-grow:1;}.altcha-footer.svelte-ddsc3z a {color:currentColor;}.altcha-checkbox.svelte-ddsc3z {display:flex;align-items:center;height:24px;width:24px;}.altcha-checkbox.svelte-ddsc3z input:where(.svelte-ddsc3z) {width:18px;height:18px;margin:0;}.altcha-hidden.svelte-ddsc3z {display:none;}.altcha-spinner.svelte-ddsc3z {\n animation: svelte-ddsc3z-altcha-spinner 0.75s infinite linear;transform-origin:center;}\n\n@keyframes svelte-ddsc3z-altcha-spinner {\n 100% {\n transform: rotate(360deg);\n }\n}`\n};\nfunction la(e, t) {\n var Lr, Dr;\n Nn(t, !0), Cl(e, ia);\n let r = C(t, \"auto\", 7, void 0), l = C(t, \"blockspam\", 7, void 0), i = C(t, \"challengeurl\", 7, void 0), a = C(t, \"challengejson\", 7, void 0), o = C(t, \"customfetch\", 7, void 0), f = C(t, \"debug\", 7, !1), s = C(t, \"delay\", 7, 0), c = C(t, \"expire\", 7, void 0), v = C(t, \"floating\", 7, void 0), h = C(t, \"floatinganchor\", 7, void 0), g = C(t, \"floatingoffset\", 7, void 0), m = C(t, \"hidefooter\", 7, !1), w = C(t, \"hidelogo\", 7, !1), z = C(t, \"id\", 7, void 0), T = C(t, \"name\", 7, \"altcha\"), Y = C(t, \"maxnumber\", 7, 1e6), M = C(t, \"mockerror\", 7, !1), F = C(t, \"obfuscated\", 7, void 0), se = C(t, \"plugins\", 7, void 0), be = C(t, \"refetchonexpire\", 7, !0), N = C(t, \"spamfilter\", 7, !1), X = C(t, \"strings\", 7, void 0), U = C(t, \"test\", 7, !1), Ee = C(t, \"verifyurl\", 7, void 0), Me = C(t, \"workers\", 23, () => Math.min(16, navigator.hardwareConcurrency || 8)), tt = C(t, \"workerurl\", 7, void 0);\n const nr = [\"SHA-256\", \"SHA-384\", \"SHA-512\"], ir = \"Visit Altcha.org\", lr = \"https://altcha.org/\", rt = (n, u) => {\n t.$$host.dispatchEvent(new CustomEvent(n, { detail: u }));\n }, ar = (Dr = (Lr = document.documentElement.lang) == null ? void 0 : Lr.split(\"-\")) == null ? void 0 : Dr[0], Dt = /* @__PURE__ */ De(() => {\n var n;\n return i() && new URL(i(), location.origin).host.endsWith(\".altcha.org\") && !!((n = i()) != null && n.includes(\"apiKey=ckey_\"));\n }), Pt = /* @__PURE__ */ De(() => a() ? wr(a()) : void 0), or = /* @__PURE__ */ De(() => X() ? wr(X()) : {}), Q = /* @__PURE__ */ De(() => {\n var n;\n return {\n ariaLinkLabel: ir,\n error: \"Verification failed. Try again later.\",\n expired: \"Verification expired. Try again.\",\n footer: `Protected by ALTCHA`,\n label: \"I'm not a robot\",\n verified: \"Verified\",\n verifying: \"Verifying...\",\n waitAlert: \"Verifying... please wait.\",\n ...d(or)\n };\n }), sr = /* @__PURE__ */ De(() => z() || `${T()}_checkbox`);\n let Ue = He(!1), R = He(le(E.UNVERIFIED)), j = He(void 0), nt = He(null), je = null, y = null, Ve = He(null), fe = null, xe = [], Ne = He(null);\n Vt(() => {\n Xn(d(Ve));\n }), Vt(() => {\n Qn(d(R));\n }), Dl(() => {\n Hn(), y && (y.removeEventListener(\"submit\", hr), y.removeEventListener(\"reset\", gr), y.removeEventListener(\"focusin\", vr), y = null), fe && (clearTimeout(fe), fe = null), document.removeEventListener(\"click\", cr), document.removeEventListener(\"scroll\", dr), window.removeEventListener(\"resize\", mr);\n }), jn(() => {\n var n;\n I(\"mounted\", \"1.3.0\"), I(\"workers\", Me()), Jn(), I(\"plugins\", xe.length ? xe.map((u) => u.constructor.pluginName).join(\", \") : \"none\"), U() && I(\"using test mode\"), c() && Ot(c()), r() !== void 0 && I(\"auto\", r()), v() !== void 0 && pr(v()), y = (n = d(j)) == null ? void 0 : n.closest(\"form\"), y && (y.addEventListener(\"submit\", hr, { capture: !0 }), y.addEventListener(\"reset\", gr), r() === \"onfocus\" && y.addEventListener(\"focusin\", vr)), r() === \"onload\" && (F() ? it() : $e()), d(Dt) && (m() || w()) && I(\"Attributes hidefooter and hidelogo ignored because usage with free API Keys requires attribution.\"), requestAnimationFrame(() => {\n rt(\"load\");\n });\n });\n function fr(n, u) {\n return btoa(JSON.stringify({\n algorithm: n.algorithm,\n challenge: n.challenge,\n number: u.number,\n salt: n.salt,\n signature: n.signature,\n test: U() ? !0 : void 0,\n took: u.took\n }));\n }\n function Hn() {\n for (const n of xe)\n n.destroy();\n }\n function ur() {\n i() && be() && d(R) === E.VERIFIED ? $e() : lt(E.EXPIRED, d(Q).expired);\n }\n async function Wn() {\n var n;\n if (M())\n throw I(\"mocking error\"), new Error(\"Mocked error.\");\n if (d(Pt))\n return I(\"using provided json data\"), d(Pt);\n if (U())\n return I(\"generating test challenge\", { test: U() }), jl(typeof U() != \"boolean\" ? +U() : void 0);\n {\n if (!i() && y) {\n const L = y.getAttribute(\"action\");\n L != null && L.includes(\"/form/\") && i(L + \"/altcha\");\n }\n if (!i())\n throw new Error(\"Attribute challengeurl not set.\");\n I(\"fetching challenge from\", i());\n let u = null, _ = null;\n if (o())\n if (I(\"using customfetch\"), typeof o() == \"string\") {\n if (u = globalThis[o()] || null, !u)\n throw new Error(`Custom fetch function not found: ${o()}`);\n } else\n u = o();\n const b = {\n headers: N() !== !1 ? { \"x-altcha-spam-filter\": \"1\" } : {}\n };\n if (u) {\n if (_ = await u(i(), b), !_ || !(_ instanceof Response))\n throw new Error(\"Custom fetch function did not return a response.\");\n } else\n _ = await fetch(i(), b);\n if (_.status !== 200)\n throw new Error(`Server responded with ${_.status}.`);\n const S = _.headers.get(\"X-Altcha-Config\"), x = await _.json(), p = new URLSearchParams((n = x.salt.split(\"?\")) == null ? void 0 : n[1]), q = p.get(\"expires\") || p.get(\"expire\");\n if (q) {\n const L = new Date(+q * 1e3), qe = isNaN(L.getTime()) ? 0 : L.getTime() - Date.now();\n qe > 0 && Ot(qe);\n }\n if (S)\n try {\n const L = JSON.parse(S);\n L && typeof L == \"object\" && (L.verifyurl && (L.verifyurl = new URL(L.verifyurl, new URL(i())).toString()), Er(L));\n } catch (L) {\n I(\"unable to configure from X-Altcha-Config\", L);\n }\n return x;\n }\n }\n function Yn(n) {\n var _;\n const u = y == null ? void 0 : y.querySelector(typeof n == \"string\" ? `input[name=\"${n}\"]` : 'input[type=\"email\"]:not([data-no-spamfilter])');\n return ((_ = u == null ? void 0 : u.value) == null ? void 0 : _.slice(u.value.indexOf(\"@\"))) || void 0;\n }\n function Zn() {\n return N() === \"ipAddress\" ? {\n blockedCountries: void 0,\n classifier: void 0,\n disableRules: void 0,\n email: !1,\n expectedCountries: void 0,\n expectedLanguages: void 0,\n fields: !1,\n ipAddress: void 0,\n text: void 0,\n timeZone: void 0\n } : typeof N() == \"object\" ? N() : {\n blockedCountries: void 0,\n classifier: void 0,\n disableRules: void 0,\n email: void 0,\n expectedCountries: void 0,\n expectedLanguages: void 0,\n fields: void 0,\n ipAddress: void 0,\n text: void 0,\n timeZone: void 0\n };\n }\n function Gn(n) {\n return [\n ...(y == null ? void 0 : y.querySelectorAll(n != null && n.length ? n.map((_) => `input[name=\"${_}\"]`).join(\", \") : 'input[type=\"text\"]:not([data-no-spamfilter]), textarea:not([data-no-spamfilter])')) || []\n ].reduce(\n (_, b) => {\n const S = b.name, x = b.value;\n return S && x && (_[S] = /\\n/.test(x) ? x.replace(new RegExp(\"(? u instanceof Error)) && console[n[0] instanceof Error ? \"error\" : \"log\"](\"ALTCHA\", `[name=${T()}]`, ...n);\n }\n function Kn() {\n [E.UNVERIFIED, E.ERROR, E.EXPIRED].includes(d(R)) ? N() !== !1 && (y == null ? void 0 : y.reportValidity()) === !1 ? P(Ue, !1) : F() ? it() : $e() : P(Ue, !0);\n }\n function cr(n) {\n const u = n.target;\n v() && u && !d(j).contains(u) && (d(R) === E.VERIFIED || r() === \"off\" && d(R) === E.UNVERIFIED) && (d(j).style.display = \"none\");\n }\n function dr() {\n v() && d(R) !== E.UNVERIFIED && gt();\n }\n function Xn(n) {\n for (const u of xe)\n typeof u.onErrorChange == \"function\" && u.onErrorChange(d(Ve));\n }\n function vr(n) {\n d(R) === E.UNVERIFIED && $e();\n }\n function hr(n) {\n y && r() === \"onsubmit\" ? d(R) === E.UNVERIFIED ? (n.preventDefault(), n.stopPropagation(), $e().then(() => {\n y == null || y.requestSubmit();\n })) : d(R) !== E.VERIFIED && (n.preventDefault(), n.stopPropagation(), d(R) === E.VERIFYING && _r()) : y && v() && r() === \"off\" && d(R) === E.UNVERIFIED && (n.preventDefault(), n.stopPropagation(), d(j).style.display = \"block\", gt());\n }\n function gr() {\n lt();\n }\n function _r() {\n d(R) === E.VERIFYING && d(Q).waitAlert && alert(d(Q).waitAlert);\n }\n function Qn(n) {\n for (const u of xe)\n typeof u.onStateChange == \"function\" && u.onStateChange(d(R));\n v() && d(R) !== E.UNVERIFIED && requestAnimationFrame(() => {\n gt();\n }), P(Ue, d(R) === E.VERIFIED);\n }\n function mr() {\n v() && gt();\n }\n function wr(n) {\n return JSON.parse(n);\n }\n function gt(n = 20) {\n if (d(j))\n if (je || (je = (h() ? document.querySelector(h()) : y == null ? void 0 : y.querySelector('input[type=\"submit\"], button[type=\"submit\"], button:not([type=\"button\"]):not([type=\"reset\"])')) || y), je) {\n const u = parseInt(g(), 10) || 12, _ = je.getBoundingClientRect(), b = d(j).getBoundingClientRect(), S = document.documentElement.clientHeight, x = document.documentElement.clientWidth, p = v() === \"auto\" ? _.bottom + b.height + u + n > S : v() === \"top\", q = Math.max(n, Math.min(x - n - b.width, _.left + _.width / 2 - b.width / 2));\n if (p ? d(j).style.top = `${_.top - (b.height + u)}px` : d(j).style.top = `${_.bottom + u}px`, d(j).style.left = `${q}px`, d(j).setAttribute(\"data-floating\", p ? \"top\" : \"bottom\"), d(nt)) {\n const L = d(nt).getBoundingClientRect();\n d(nt).style.left = _.left - q + _.width / 2 - L.width / 2 + \"px\";\n }\n } else\n I(\"unable to find floating anchor element\");\n }\n async function ei(n) {\n if (!Ee())\n throw new Error(\"Attribute verifyurl not set.\");\n I(\"requesting server verification from\", Ee());\n const u = { payload: n };\n if (N() !== !1) {\n const {\n blockedCountries: S,\n classifier: x,\n disableRules: p,\n email: q,\n expectedLanguages: L,\n expectedCountries: qe,\n fields: ot,\n ipAddress: st,\n text: vi,\n timeZone: Pr\n } = Zn();\n u.blockedCountries = S, u.classifier = x, u.disableRules = p, u.email = q === !1 ? void 0 : Yn(q), u.expectedCountries = qe, u.expectedLanguages = L || (ar ? [ar] : void 0), u.fields = ot === !1 ? void 0 : Gn(ot), u.ipAddress = st === !1 ? void 0 : st || \"auto\", u.text = vi, u.timeZone = Pr === !1 ? void 0 : Pr || Bl();\n }\n const _ = await fetch(Ee(), {\n body: JSON.stringify(u),\n headers: { \"content-type\": \"application/json\" },\n method: \"POST\"\n });\n if (_.status !== 200)\n throw new Error(`Server responded with ${_.status}.`);\n const b = await _.json();\n if (b != null && b.payload && P(Ne, le(b.payload)), rt(\"serververification\", b), l() && b.classification === \"BAD\")\n throw new Error(\"SpamFilter returned negative classification.\");\n }\n function Ot(n) {\n I(\"expire\", n), fe && (clearTimeout(fe), fe = null), n < 1 ? ur() : fe = setTimeout(ur, n);\n }\n function pr(n) {\n I(\"floating\", n), v() !== n && (d(j).style.left = \"\", d(j).style.top = \"\"), v(n === !0 || n === \"\" ? \"auto\" : n === !1 || n === \"false\" ? void 0 : v()), v() ? (r() || r(\"onsubmit\"), document.addEventListener(\"scroll\", dr), document.addEventListener(\"click\", cr), window.addEventListener(\"resize\", mr)) : r() === \"onsubmit\" && r(void 0);\n }\n function yr(n) {\n if (!n.algorithm)\n throw new Error(\"Invalid challenge. Property algorithm is missing.\");\n if (n.signature === void 0)\n throw new Error(\"Invalid challenge. Property signature is missing.\");\n if (!nr.includes(n.algorithm.toUpperCase()))\n throw new Error(`Unknown algorithm value. Allowed values: ${nr.join(\", \")}`);\n if (!n.challenge || n.challenge.length < 40)\n throw new Error(\"Challenge is too short. Min. 40 chars.\");\n if (!n.salt || n.salt.length < 10)\n throw new Error(\"Salt is too short. Min. 10 chars.\");\n }\n async function br(n) {\n let u = null;\n if (\"Worker\" in window) {\n try {\n u = await ti(n, n.maxnumber);\n } catch (_) {\n I(_);\n }\n if ((u == null ? void 0 : u.number) !== void 0 || \"obfuscated\" in n)\n return { data: n, solution: u };\n }\n if (\"obfuscated\" in n) {\n const _ = await Wl(n.obfuscated, n.key, n.maxnumber);\n return { data: n, solution: await _.promise };\n }\n return {\n data: n,\n solution: await Vl(n.challenge, n.salt, n.algorithm, n.maxnumber || Y()).promise\n };\n }\n async function ti(n, u = typeof U() == \"number\" ? U() : Y(), _ = Math.ceil(Me())) {\n const b = [];\n _ = Math.min(16, Math.max(1, _));\n for (let p = 0; p < _; p++)\n b.push(altchaCreateWorker(tt()));\n const S = Math.ceil(u / _), x = await Promise.all(b.map((p, q) => {\n const L = q * S;\n return new Promise((qe) => {\n p.addEventListener(\"message\", (ot) => {\n if (ot.data)\n for (const st of b)\n st !== p && st.postMessage({ type: \"abort\" });\n qe(ot.data);\n }), p.postMessage({\n payload: n,\n max: L + S,\n start: L,\n type: \"work\"\n });\n });\n }));\n for (const p of b)\n p.terminate();\n return x.find((p) => !!p) || null;\n }\n async function it() {\n if (!F()) {\n Le(E.ERROR);\n return;\n }\n const n = xe.find((u) => u.constructor.pluginName === \"obfuscation\");\n if (!n || !(\"clarify\" in n)) {\n Le(E.ERROR), I(\"Plugin `obfuscation` not found. Import `altcha/plugins/obfuscation` to load it.\");\n return;\n }\n if (\"clarify\" in n && typeof n.clarify == \"function\")\n return n.clarify();\n }\n function Er(n) {\n n.obfuscated !== void 0 && F(n.obfuscated), n.auto !== void 0 && (r(n.auto), r() === \"onload\" && (F() ? it() : $e())), n.blockspam !== void 0 && l(!!n.blockspam), n.customfetch !== void 0 && o(n.customfetch), n.floatinganchor !== void 0 && h(n.floatinganchor), n.delay !== void 0 && s(n.delay), n.floatingoffset !== void 0 && g(n.floatingoffset), n.floating !== void 0 && pr(n.floating), n.expire !== void 0 && (Ot(n.expire), c(n.expire)), n.challenge && (a(typeof n.challenge == \"string\" ? n.challenge : JSON.stringify(n.challenge)), yr(d(Pt))), n.challengeurl !== void 0 && i(n.challengeurl), n.debug !== void 0 && f(!!n.debug), n.hidefooter !== void 0 && m(!!n.hidefooter), n.hidelogo !== void 0 && w(!!n.hidelogo), n.maxnumber !== void 0 && Y(+n.maxnumber), n.mockerror !== void 0 && M(!!n.mockerror), n.name !== void 0 && T(n.name), n.refetchonexpire !== void 0 && be(!!n.refetchonexpire), n.spamfilter !== void 0 && N(typeof n.spamfilter == \"object\" ? n.spamfilter : !!n.spamfilter), n.strings && X(typeof n.strings == \"string\" ? n.strings : JSON.stringify(n.strings)), n.test !== void 0 && U(typeof n.test == \"number\" ? n.test : !!n.test), n.verifyurl !== void 0 && Ee(n.verifyurl), n.workers !== void 0 && Me(+n.workers), n.workerurl !== void 0 && tt(n.workerurl);\n }\n function xr() {\n return {\n auto: r(),\n blockspam: l(),\n challengeurl: i(),\n debug: f(),\n delay: s(),\n expire: c(),\n floating: v(),\n floatinganchor: h(),\n floatingoffset: g(),\n hidefooter: m(),\n hidelogo: w(),\n name: T(),\n maxnumber: Y(),\n mockerror: M(),\n obfuscated: F(),\n refetchonexpire: be(),\n spamfilter: N(),\n strings: d(Q),\n test: U(),\n verifyurl: Ee(),\n workers: Me(),\n workerurl: tt()\n };\n }\n function $r() {\n return je;\n }\n function ri(n) {\n return xe.find((u) => u.constructor.pluginName === n);\n }\n function kr() {\n return d(R);\n }\n function lt(n = E.UNVERIFIED, u = null) {\n fe && (clearTimeout(fe), fe = null), P(Ue, !1), P(Ne, null), Le(n, u);\n }\n function Cr(n) {\n je = n;\n }\n function Le(n, u = null) {\n P(R, le(n)), P(Ve, le(u)), rt(\"statechange\", {\n payload: d(Ne),\n state: d(R)\n });\n }\n async function $e() {\n return lt(E.VERIFYING), await new Promise((n) => setTimeout(n, s() || 0)), Wn().then((n) => (yr(n), I(\"challenge\", n), br(n))).then(({ data: n, solution: u }) => {\n if (I(\"solution\", u), \"challenge\" in n && u && !(\"clearText\" in u))\n if ((u == null ? void 0 : u.number) !== void 0) {\n if (Ee())\n return ei(fr(n, u));\n P(Ne, le(fr(n, u))), I(\"payload\", d(Ne));\n } else\n throw I(\"Unable to find a solution. Ensure that the 'maxnumber' attribute is greater than the randomly generated number.\"), new Error(\"Unexpected result returned.\");\n }).then(() => {\n Le(E.VERIFIED), I(\"verified\"), ol().then(() => {\n rt(\"verified\", { payload: d(Ne) });\n });\n }).catch((n) => {\n I(n), Le(E.ERROR, n.message);\n });\n }\n var Ar = na(), Rr = Br(Ar);\n kl(Rr, t, \"default\", {});\n var at = he(Rr, 2), zt = G(at), Ir = G(zt);\n {\n var ni = (n) => {\n var u = Yl();\n ee(n, u);\n };\n ke(Ir, (n) => {\n d(R) === E.VERIFYING && n(ni);\n });\n }\n var _t = he(Ir, 2);\n let Sr;\n var Be = G(_t);\n Gr(Be), Be.__change = Kn, Z(_t);\n var Ft = he(_t, 2), ii = G(Ft);\n {\n var li = (n) => {\n var u = Zl(), _ = Br(u), b = G(_);\n Ze(b, () => d(Q).verified), Z(_);\n var S = he(_, 2);\n Gr(S), We(() => {\n ie(S, \"name\", T()), Tl(S, d(Ne));\n }), ee(n, u);\n }, ai = (n, u) => {\n {\n var _ = (S) => {\n var x = Gl(), p = G(x);\n Ze(p, () => d(Q).verifying), Z(x), ee(S, x);\n }, b = (S) => {\n var x = Jl(), p = G(x);\n Ze(p, () => d(Q).label), Z(x), We(() => ie(x, \"for\", d(sr))), ee(S, x);\n };\n ke(\n n,\n (S) => {\n d(R) === E.VERIFYING ? S(_) : S(b, !1);\n },\n u\n );\n }\n };\n ke(ii, (n) => {\n d(R) === E.VERIFIED ? n(li) : n(ai, !1);\n });\n }\n Z(Ft);\n var oi = he(Ft, 2);\n {\n var si = (n) => {\n var u = Kl(), _ = G(u);\n ie(_, \"href\", lr), Z(u), We(() => ie(_, \"aria-label\", d(Q).ariaLinkLabel)), ee(n, u);\n };\n ke(oi, (n) => {\n (w() !== !0 || d(Dt)) && n(si);\n });\n }\n Z(zt);\n var Tr = he(zt, 2);\n {\n var fi = (n) => {\n var u = ea(), _ = he(G(u), 2);\n {\n var b = (x) => {\n var p = Xl(), q = G(p);\n Ze(q, () => d(Q).expired), Z(p), We(() => ie(p, \"title\", d(Ve))), ee(x, p);\n }, S = (x) => {\n var p = Ql(), q = G(p);\n Ze(q, () => d(Q).error), Z(p), We(() => ie(p, \"title\", d(Ve))), ee(x, p);\n };\n ke(_, (x) => {\n d(R) === E.EXPIRED ? x(b) : x(S, !1);\n });\n }\n Z(u), ee(n, u);\n };\n ke(Tr, (n) => {\n (d(Ve) || d(R) === E.EXPIRED) && n(fi);\n });\n }\n var Nr = he(Tr, 2);\n {\n var ui = (n) => {\n var u = ta(), _ = G(u), b = G(_);\n Ze(b, () => d(Q).footer), Z(_), Z(u), ee(n, u);\n };\n ke(Nr, (n) => {\n d(Q).footer && (m() !== !0 || d(Dt)) && n(ui);\n });\n }\n var ci = he(Nr, 2);\n {\n var di = (n) => {\n var u = ra();\n Xr(u, (_) => P(nt, _), () => d(nt)), ee(n, u);\n };\n ke(ci, (n) => {\n v() && n(di);\n });\n }\n return Z(at), Xr(at, (n) => P(j, n), () => d(j)), We(\n (n) => {\n ie(at, \"data-state\", d(R)), ie(at, \"data-floating\", v()), Sr = Rl(_t, 1, \"altcha-checkbox svelte-ddsc3z\", null, Sr, n), ie(Be, \"id\", d(sr)), Be.required = r() !== \"onsubmit\" && (!v() || r() !== \"off\");\n },\n [\n () => ({\n \"altcha-hidden\": d(R) === E.VERIFYING\n })\n ]\n ), yl(\"invalid\", Be, _r), Ll(Be, () => d(Ue), (n) => P(Ue, n)), ee(e, Ar), Ln({\n clarify: it,\n configure: Er,\n getConfiguration: xr,\n getFloatingAnchor: $r,\n getPlugin: ri,\n getState: kr,\n reset: lt,\n setFloatingAnchor: Cr,\n setState: Le,\n verify: $e,\n get auto() {\n return r();\n },\n set auto(n = void 0) {\n r(n), $();\n },\n get blockspam() {\n return l();\n },\n set blockspam(n = void 0) {\n l(n), $();\n },\n get challengeurl() {\n return i();\n },\n set challengeurl(n = void 0) {\n i(n), $();\n },\n get challengejson() {\n return a();\n },\n set challengejson(n = void 0) {\n a(n), $();\n },\n get customfetch() {\n return o();\n },\n set customfetch(n = void 0) {\n o(n), $();\n },\n get debug() {\n return f();\n },\n set debug(n = !1) {\n f(n), $();\n },\n get delay() {\n return s();\n },\n set delay(n = 0) {\n s(n), $();\n },\n get expire() {\n return c();\n },\n set expire(n = void 0) {\n c(n), $();\n },\n get floating() {\n return v();\n },\n set floating(n = void 0) {\n v(n), $();\n },\n get floatinganchor() {\n return h();\n },\n set floatinganchor(n = void 0) {\n h(n), $();\n },\n get floatingoffset() {\n return g();\n },\n set floatingoffset(n = void 0) {\n g(n), $();\n },\n get hidefooter() {\n return m();\n },\n set hidefooter(n = !1) {\n m(n), $();\n },\n get hidelogo() {\n return w();\n },\n set hidelogo(n = !1) {\n w(n), $();\n },\n get id() {\n return z();\n },\n set id(n = void 0) {\n z(n), $();\n },\n get name() {\n return T();\n },\n set name(n = \"altcha\") {\n T(n), $();\n },\n get maxnumber() {\n return Y();\n },\n set maxnumber(n = 1e6) {\n Y(n), $();\n },\n get mockerror() {\n return M();\n },\n set mockerror(n = !1) {\n M(n), $();\n },\n get obfuscated() {\n return F();\n },\n set obfuscated(n = void 0) {\n F(n), $();\n },\n get plugins() {\n return se();\n },\n set plugins(n = void 0) {\n se(n), $();\n },\n get refetchonexpire() {\n return be();\n },\n set refetchonexpire(n = !0) {\n be(n), $();\n },\n get spamfilter() {\n return N();\n },\n set spamfilter(n = !1) {\n N(n), $();\n },\n get strings() {\n return X();\n },\n set strings(n = void 0) {\n X(n), $();\n },\n get test() {\n return U();\n },\n set test(n = !1) {\n U(n), $();\n },\n get verifyurl() {\n return Ee();\n },\n set verifyurl(n = void 0) {\n Ee(n), $();\n },\n get workers() {\n return Me();\n },\n set workers(n = Math.min(16, navigator.hardwareConcurrency || 8)) {\n Me(n), $();\n },\n get workerurl() {\n return tt();\n },\n set workerurl(n = void 0) {\n tt(n), $();\n }\n });\n}\nbl([\"change\"]);\ncustomElements.define(\"altcha-widget\", Ml(\n la,\n {\n blockspam: { type: \"Boolean\" },\n debug: { type: \"Boolean\" },\n delay: { type: \"Number\" },\n expire: { type: \"Number\" },\n floatingoffset: { type: \"Number\" },\n hidefooter: { type: \"Boolean\" },\n hidelogo: { type: \"Boolean\" },\n maxnumber: { type: \"Number\" },\n mockerror: { type: \"Boolean\" },\n refetchonexpire: { type: \"Boolean\" },\n test: { type: \"Boolean\" },\n workers: { type: \"Number\" },\n auto: {},\n challengeurl: {},\n challengejson: {},\n customfetch: {},\n floating: {},\n floatinganchor: {},\n id: {},\n name: {},\n obfuscated: {},\n plugins: {},\n spamfilter: {},\n strings: {},\n verifyurl: {},\n workerurl: {}\n },\n [\"default\"],\n [\n \"clarify\",\n \"configure\",\n \"getConfiguration\",\n \"getFloatingAnchor\",\n \"getPlugin\",\n \"getState\",\n \"reset\",\n \"setFloatingAnchor\",\n \"setState\",\n \"verify\"\n ],\n !1\n));\nglobalThis.altchaCreateWorker = (e) => e ? new Worker(new URL(e)) : new _i();\nglobalThis.altchaPlugins = globalThis.altchaPlugins || [];\nexport {\n la as Altcha\n};","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageContact extends BasePage {\n static hash = hashPageContact;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupButtonSubmitFormContactUs();\n }\n\n hookupButtonSubmitFormContactUs() {\n const button = document.querySelector('form input[type=\"submit\"]');\n button.classList.add(flagButton);\n button.classList.add(flagButtonPrimary);\n }\n}\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageContactSuccess extends BasePage {\n static hash = hashPageContactSuccess;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n}\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageApplyFoundingPartner extends BasePage {\n static hash = hashPageApplyFoundingPartner;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupButtonSubmitFormApplyFoundingPartnerUs();\n }\n\n hookupButtonSubmitFormApplyFoundingPartnerUs() {\n const button = document.querySelector('form input[type=\"submit\"]');\n button.classList.add(flagButton);\n button.classList.add(flagButtonPrimary);\n }\n}\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageApplyFoundingPartnerSuccess extends BasePage {\n static hash = hashPageApplyFoundingPartnerSuccess;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n}\n","\n// internal\nimport BasePage from \"../base.js\";\n// external\n\n\nexport default class PageBlogHome extends BasePage {\n static hash = hashPageBlogHome;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n // this.hookupButtonsNav();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport BasePage from \"../base.js\";\n\nexport default class PageDogHome extends BasePage {\n static hash = hashPageDogHome;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupDogHome();\n }\n hookupDogHome() {\n \n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport Utils from '../utils.js';\n\nexport default class BusinessObjects {\n static getOptionJsonFromObjectJsonAndKeys(objectJson, keyText, keyValue, valueSelected = null) {\n return {\n text: objectJson[keyText],\n value: objectJson[keyValue],\n selected: (objectJson[keyValue] == valueSelected),\n };\n }\n static getOptionJsonFromObjectJson(objectJson, valueSelected = null) {\n let keyText = objectJson[flagNameAttrOptionText];\n let keyValue = objectJson[flagNameAttrOptionValue];\n // Utils.consoleLogIfNotProductionEnvironment({objectJson, keyText, keyValue});\n return BusinessObjects.getOptionJsonFromObjectJsonAndKeys(objectJson, keyText, keyValue, valueSelected);\n }\n static getObjectText(objectJson) {\n return objectJson == null ? '' : objectJson[objectJson[flagNameAttrOptionText]];\n }\n static getListObjectsFromIdDictAndCsv(idDict, idCsv) {\n let listObjects = [];\n let ids = idCsv.split(',');\n for (let id of ids) {\n listObjects.push(idDict[id]);\n }\n return listObjects;\n }\n}","\nimport Events from \"../../../lib/events.js\";\n\nexport default class OverlayError {\n static hookup() {\n Events.initialiseEventHandler(idOverlayError + ' button.' + flagCancel, flagInitialised, (buttonCancel) => {\n buttonCancel.addEventListener('click', () => {\n let overlay = document.querySelector(idOverlayError);\n overlay.style.visibility = 'hidden';\n });\n });\n }\n static show(msgError) {\n let overlay = document.querySelector(idOverlayError);\n let labelError = overlay.querySelector(idLabelError);\n labelError.innerText = msgError;\n overlay.style.visibility = 'visible';\n }\n}","\nimport BusinessObjects from \"../lib/business_objects/business_objects.js\";\nimport Events from \"../lib/events.js\";\nimport LocalStorage from \"../lib/local_storage.js\";\nimport Validation from \"../lib/validation.js\";\nimport BasePage from \"./base.js\";\nimport API from \"../api.js\";\nimport DOM from \"../dom.js\";\nimport Utils from \"../lib/utils.js\";\n\nimport OverlayConfirm from \"../components/common/temporary/overlay_confirm.js\";\nimport OverlayError from \"../components/common/temporary/overlay_error.js\";\n\nexport default class TableBasePage extends BasePage {\n // static hash\n // static attrIdRowObject\n // callSaveTableContent\n\n constructor(router) {\n super(router);\n this.cursorYInitial = null;\n this.rowInitial = null;\n this.placeholder = null;\n this.dragSrcEl = null;\n this.dragSrcRow = null;\n\n this.hookupTableCellDdls = this.hookupTableCellDdls.bind(this);\n }\n \n initialize(isPopState = false) {\n throw new Error(\"Must implement initialize() method.\");\n }\n sharedInitialize(isPopState = false, isSinglePageApp = false) {\n if (!isPopState) {\n super.sharedInitialize();\n this.hookupFilters();\n this.hookupButtonsSaveCancel();\n this.hookupTableMain();\n OverlayConfirm.hookup(() => {\n if (isSinglePageApp) {\n this.saveRecordsTableDirtySinglePageApp();\n }\n else {\n this.saveRecordsTableDirty();\n }\n });\n } else {\n let dataPage = this.getLocalStoragePage();\n let filters = dataPage[flagFormFilters];\n let formFilters = TableBasePage.getFormFilters();\n let filtersDefault = DOM.convertForm2JSON(formFilters);\n if (!Validation.areEqualDicts(filters, filtersDefault)) {\n this.callFilterTableContent();\n }\n }\n }\n hookupFilters() {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Subclass of TableBasePage must implement method hookupFilters().\");\n }\n }\n sharedHookupFilters() {\n this.hookupButtonApplyFilters();\n this.hookupSearchTextFilter();\n }\n hookupFilterActive() {\n let filterSelector = idFormFilters + ' #' + flagActiveOnly;\n let filterActiveOld = document.querySelector(filterSelector);\n filterActiveOld.removeAttribute('id');\n let parentDiv = filterActiveOld.parentElement;\n let isChecked = (DOM.getElementAttributeValuePrevious(parentDiv) == \"True\");\n let filterActiveNew = document.querySelector(idFormFilters + ' div.' + flagActiveOnly + '.' + flagContainerInput + ' svg.' + flagActiveOnly);\n filterActiveNew.setAttribute('id', flagActiveOnly);\n if (isChecked) filterActiveNew.classList.add(flagIsChecked);\n\n Events.hookupEventHandler(\"click\", filterSelector, (event, filterActive) => {\n Utils.consoleLogIfNotProductionEnvironment({ filterActive });\n Utils.consoleLogIfNotProductionEnvironment({ [filterActive.tagName]: filterActive.tagName });\n let svgElement = (filterActive.tagName.toUpperCase() == 'SVG') ? filterActive : filterActive.parentElement;\n let wasChecked = svgElement.classList.contains(flagIsChecked);\n if (wasChecked) {\n svgElement.classList.remove(flagIsChecked);\n }\n else {\n svgElement.classList.add(flagIsChecked);\n }\n return this.handleChangeFilter(event, filterActive);\n });\n let filter = document.querySelector(filterSelector);\n let filterValuePrevious = DOM.getElementValueCurrent(filter);\n filter.setAttribute(attrValueCurrent, filterValuePrevious);\n filter.setAttribute(attrValuePrevious, filterValuePrevious);\n }\n hookupFilter(filterFlag, handler = (event, filter) => { return this.handleChangeFilter(event, filter); }) {\n let filterSelector = idFormFilters + ' #' + filterFlag;\n Events.hookupEventHandler(\"change\", filterSelector, handler);\n let filter = document.querySelector(filterSelector);\n let filterValuePrevious = DOM.getElementValueCurrent(filter);\n filter.setAttribute(attrValueCurrent, filterValuePrevious);\n filter.setAttribute(attrValuePrevious, filterValuePrevious);\n }\n handleChangeFilter(event, filter) {\n let isDirtyFilter = DOM.updateAndCheckIsElementDirty(filter);\n let formFilters = TableBasePage.getFormFilters();\n let areDirtyFilters = isDirtyFilter || DOM.hasDirtyChildrenContainer(formFilters);\n let tbody = document.querySelector(idTableMain + ' tbody');\n let rows = tbody.querySelectorAll(':scope > tr');\n rows.forEach((row) => {\n if (areDirtyFilters && !row.classList.contains(flagIsCollapsed)) row.classList.add(flagIsCollapsed);\n if (!areDirtyFilters && row.classList.contains(flagIsCollapsed)) {\n row.classList.remove(flagIsCollapsed);\n let dirtyInputs = row.querySelectorAll('input.' + flagDirty);\n dirtyInputs.forEach((dirtyInput) => {\n dirtyInput.value = DOM.getElementAttributeValueCurrent(dirtyInput);\n });\n }\n });\n if (areDirtyFilters) {\n /*\n tbody.querySelectorAll('tr').forEach((tr) => { \n if (!DOM.hasDirtyChildrenContainer(tr)) tr.remove(); \n });\n */\n tbody.innerHTML = '
Press \"Apply Filters\" to refresh the table.
' + tbody.innerHTML;\n if (!tbody.classList.contains(flagIsCollapsed)) tbody.classList.add(flagIsCollapsed);\n }\n else {\n let isDirtyLabel = tbody.querySelector(\":scope > div\");\n if (isDirtyLabel != null) isDirtyLabel.remove();\n if (tbody.classList.contains(flagIsCollapsed)) tbody.classList.remove(flagIsCollapsed);\n let initialisedElements = tbody.querySelectorAll('.' + flagInitialised);\n initialisedElements.forEach((initialisedElement) => {\n initialisedElement.classList.remove(flagInitialised);\n });\n this.hookupTableMain();\n }\n this.updateAndToggleShowButtonsSaveCancel();\n }\n hookupFilterIsNotEmpty() {\n this.hookupFilter(flagIsNotEmpty);\n }\n hookupButtonApplyFilters() {\n Events.hookupEventHandler(\"click\", idButtonApplyFilters, (event, button) => {\n event.stopPropagation();\n this.callFilterTableContent();\n });\n }\n hookupSearchTextFilter() {\n this.hookupFilter(flagSearch);\n }\n hookupFilterDog() {\n this.hookupFilter(attrIdDog); \n }\n hookupFilterCommandCategory() {\n this.hookupFilter(attrIdCommandCategory, (event, filterCommandCategory) => {\n this.handleChangeFilter();\n let isDirtyFilter = filterCommandCategory.classList.contains(flagDirty);\n let idCommandCategory = DOM.getElementValueCurrent(filterCommandCategory);\n console.log(\"filter commands unsorted\");\n console.log(Utils.getListFromDict(filterCommands));\n let commandsInCategory = Utils.getListFromDict(filterCommands).filter(command => command[attrIdCommandCategory] == idCommandCategory);\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n let filterCommand = document.querySelector(idFormFilters + ' .' + flagCommand);\n let idCommandPrevious = DOM.getElementAttributeValuePrevious(filterCommand);\n filterCommand.innerHTML = '';\n let optionJson, option;\n option = DOM.createOption(null);\n filterCommand.appendChild(option);\n sortedCommands.forEach((command) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(command, idCommandPrevious);\n option = DOM.createOption(optionJson);\n filterCommand.appendChild(option);\n });\n filterCommand.dispatchEvent(new Event('change'));\n return isDirtyFilter;\n });\n }\n hookupFilterCommand() {\n this.hookupFilter(attrIdCommand);\n }\n hookupFilterLocation() {\n this.hookupFilter(attrIdLocation);\n }\n /*\n getAndLoadFilteredTableContent = () => {\n this.callFilterTableContent()\n .catch(error => console.error('Error:', error));\n }\n */\n static getFormFilters() {\n return document.querySelector(idFormFilters);\n }\n callFilterTableContent() {\n let formFilters = TableBasePage.getFormFilters();\n let filtersJson = DOM.convertForm2JSON(formFilters);\n Utils.consoleLogIfNotProductionEnvironment(\"callFilterTableContent\");\n Utils.consoleLogIfNotProductionEnvironment(\"formFilters\");\n Utils.consoleLogIfNotProductionEnvironment(formFilters);\n Utils.consoleLogIfNotProductionEnvironment(\"filtersJson\");\n Utils.consoleLogIfNotProductionEnvironment(filtersJson);\n this.leave();\n API.goToHash(this.constructor.hash, filtersJson);\n }\n callbackLoadTableContent(response) {\n let table = TableBasePage.getTableMain();\n let bodyTable = table.querySelector('tbody');\n bodyTable.querySelectorAll('tr').forEach(function(row) { row.remove(); });\n let rowsJson = response.data[flagRows];\n if (!Validation.isEmpty(rowsJson) && rowsJson.every(row => row.hasOwnProperty('display_order'))) {\n rowsJson = rowsJson.sort((a, b) => a.display_order - b.display_order);\n }\n rowsJson.forEach(this.loadRowTable.bind(this));\n this.hookupTableMain();\n }\n static getTableMain() {\n return document.querySelector(idTableMain);\n }\n loadRowTable(rowJson) {\n throw new Error(\"Subclass of TableBasePage must implement method loadRowTable().\");\n }\n getAndLoadFilteredTableContentSinglePageApp() {\n this.callFilterTableContent()\n .then(data => {\n Utils.consoleLogIfNotProductionEnvironment('Table data received:', data);\n this.callbackLoadTableContent(data);\n })\n .catch(error => console.error('Error:', error));\n }\n hookupButtonsSaveCancel() {\n this.hookupButtonSave();\n this.hookupButtonCancel();\n this.toggleShowButtonsSaveCancel(false);\n }\n saveRecordsTableDirty() {\n let records = this.getTableRecords(true);\n if (records.length == 0) {\n OverlayError.show('No records to save');\n return;\n }\n let formElement = TableBasePage.getFormFilters();\n let comment = DOM.getElementValueCurrent(document.querySelector(idTextareaConfirm));\n /*\n Utils.consoleLogIfNotProductionEnvironment({ formElement, comment, records });\n Utils.consoleLogIfNotProductionEnvironment('records');\n Utils.consoleLogIfNotProductionEnvironment(records);\n debugger;\n */\n this.callSaveTableContent(records, formElement, comment)\n .then(data => {\n if (data[flagStatus] == flagSuccess) {\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment('Records saved!');\n Utils.consoleLogIfNotProductionEnvironment('Data received:', data);\n }\n this.callFilterTableContent();\n }\n else {\n Utils.consoleLogIfNotProductionEnvironment(\"error: \", data[flagMessage]);\n OverlayError.show(data[flagMessage]);\n }\n })\n .catch(error => console.error('Error:', error));\n }\n getTableRecords(dirtyOnly = false) {\n let records = [];\n let record;\n document.querySelectorAll(idTableMain + ' > tbody > tr').forEach((row) => {\n if (dirtyOnly && !DOM.hasDirtyChildrenContainer(row)) return;\n record = this.getJsonRow(row);\n records.push(record);\n });\n return records;\n }\n getJsonRow(row) {\n throw new Error(\"Subclass of TableBasePage must implement method getJsonRow().\");\n }\n saveRecordsTableDirtySinglePageApp() {\n let records = this.getTableRecords(true);\n if (records.length == 0) {\n OverlayError.show('No records to save');\n return;\n }\n let formElement = TableBasePage.getFormFilters();\n let comment = DOM.getElementValueCurrent(document.querySelector(idTextareaConfirm));\n this.callSaveTableContent(records, formElement, comment)\n .then(data => {\n if (data[flagStatus] == flagSuccess) {\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment('Records saved!');\n Utils.consoleLogIfNotProductionEnvironment('Data received:', data);\n }\n this.callbackLoadTableContent(data);\n }\n else {\n Utils.consoleLogIfNotProductionEnvironment(\"error: \", data[flagMessage]);\n OverlayError.show(data[flagMessage]);\n }\n })\n .catch(error => console.error('Error:', error));\n }\n hookupButtonCancel() {\n Events.initialiseEventHandler('.' + flagContainer + '.' + flagSave + '.' + flagCancel + ' button.' + flagCancel, flagInitialised, (button) => {\n button.addEventListener(\"click\", (event) => {\n event.stopPropagation();\n button = event.target;\n if (button.classList.contains(flagIsCollapsed)) return;\n this.callFilterTableContent();\n });\n button.classList.add(flagIsCollapsed);\n });\n }\n handleClickAddRowTable(event, button) {\n event.stopPropagation();\n _rowBlank.setAttribute(this.constructor.attrIdRowObject, -1 - _rowBlank.getAttribute(this.constructor.attrIdRowObject));\n let tbody = document.querySelector(idTableMain + ' tbody');\n if (tbody.classList.contains(flagIsCollapsed)) return;\n let row = _rowBlank.cloneNode(true);\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableMain + ' > tbody > tr').length;\n row.setAttribute(this.constructor.attrIdRowObject, -1 - countRows);\n this.initialiseRowNew(tbody, row);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTableMain();\n this.postInitialiseRowNewCallback(tbody);\n }\n initialiseRowNew(tbody, row) {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Subclass of TableBasePage must implement method initialiseRowNew().\");\n }\n // row.classList.remove(flagRowNew);\n }\n hookupTableMain() {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Must implement hookupTableMain() method.\");\n }\n Events.initialiseEventHandler(idTableMain, flagInitialised, (table) => {\n this.cacheRowBlank();\n });\n }\n cacheRowBlank() {\n let selectorRowNew = idTableMain + ' tbody tr.' + flagRowNew;\n let rowBlankTemp = document.querySelector(selectorRowNew);\n Utils.consoleLogIfNotProductionEnvironment(\"row blank temp: \", rowBlankTemp);\n let countRows = document.querySelectorAll(idTableMain + ' > tbody > tr').length;\n _rowBlank = rowBlankTemp.cloneNode(true);\n document.querySelectorAll(selectorRowNew).forEach(function(row) {\n row.remove();\n });\n _rowBlank.setAttribute(this.constructor.attrIdRowObject, -1 - countRows);\n }\n postInitialiseRowNewCallback(tbody) {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Subclass of TableBasePage must implement method postInitialiseRowNewCallback(tbody).\");\n }\n }\n initialiseSliderDisplayOrderRowNew(tbody, row) {\n // let tdSelector = ':scope > tr > td.' + flagDisplayOrder;\n // let tbody = document.querySelector('table' + (Validation.isEmpty(flagTable) ? '' : '.' + flagTable) + ' > tbody');\n let slidersDisplayOrder = tbody.querySelectorAll(':scope > tr > td.' + flagDisplayOrder + ' input.' + flagSlider);\n let maxDisplayOrder = 0;\n slidersDisplayOrder.forEach((slider) => {\n maxDisplayOrder = Math.max(maxDisplayOrder, parseFloat(DOM.getElementValueCurrent(slider)));\n });\n let sliderDisplayOrder = row.querySelector('td.' + flagDisplayOrder + ' .' + flagSlider);\n DOM.setElementValuesCurrentAndPrevious(sliderDisplayOrder, maxDisplayOrder + 1);\n }\n hookupSlidersDisplayOrderTable() {\n let selectorDisplayOrder = idTableMain + ' tbody tr td.' + flagDisplayOrder + ' input.' + flagSlider + '.' + flagDisplayOrder;\n this.hookupChangeHandlerTableCells(selectorDisplayOrder);\n }\n hookupChangeHandlerTableCells(inputSelector, handler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n Events.initialiseEventHandler(inputSelector, flagInitialised, (input) => {\n input.addEventListener(\"change\", (event) => {\n handler(event, input);\n });\n handler(null, input);\n });\n }\n handleChangeNestedElementCellTable(event, element) {\n let wasDirtyParentRows = this.getAllIsDirtyRowsInParentTree(element);\n let wasDirtyElement = element.classList.contains(flagDirty);\n let isDirtyElement = DOM.updateAndCheckIsElementDirty(element);\n // Utils.consoleLogIfNotProductionEnvironment({isDirtyElement, wasDirtyElement, wasDirtyParentRows});\n // let td = DOM.getCellFromElement(element);\n // DOM.setElementAttributeValueCurrent(td, DOM.getElementAttributeValueCurrent(element));\n if (isDirtyElement != wasDirtyElement) {\n // DOM.handleDirtyElement(td, isDirtyElement);\n this.updateAndToggleShowButtonsSaveCancel();\n this.cascadeChangedIsDirtyNestedElementCellTable(element, isDirtyElement, wasDirtyParentRows);\n }\n }\n getAllIsDirtyRowsInParentTree(element) {\n let rows = [];\n let parent = element;\n let isDirty;\n while (parent) {\n if (parent.tagName.toUpperCase() == 'TR') {\n isDirty = parent.classList.contains(flagDirty)\n rows.push(isDirty);\n }\n parent = parent.parentElement;\n }\n return rows;\n }\n cascadeChangedIsDirtyNestedElementCellTable(element, isDirtyElement, wasDirtyParentRows) {\n if (Validation.isEmpty(wasDirtyParentRows)) return;\n let tr = DOM.getRowFromElement(element);\n let isDirtyRow = isDirtyElement || DOM.hasDirtyChildrenContainer(tr);\n let wasDirtyRow = wasDirtyParentRows.shift();\n Utils.consoleLogIfNotProductionEnvironment({isDirtyRow, wasDirtyRow});\n if (isDirtyRow != wasDirtyRow) {\n DOM.handleDirtyElement(tr, isDirtyRow);\n this.updateAndToggleShowButtonsSaveCancel();\n this.cascadeChangedIsDirtyNestedElementCellTable(tr.parentElement, isDirtyRow, wasDirtyParentRows);\n }\n }\n hookupChangeHandlerTableCellsWhenNotCollapsed(inputSelector, handler = (event, element) => {\n if (!element.classList.contains(flagIsCollapsed)) this.handleChangeNestedElementCellTable(event, element);\n }) {\n Events.hookupEventHandler(\"change\", inputSelector, handler);\n }\n hookupFieldsCodeTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagCode + ' > .' + flagCode);\n }\n hookupFieldsNameTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagName + ' > .' + flagName);\n }\n hookupFieldsDescriptionTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagDescription + ' > .' + flagDescription);\n }\n hookupFieldsNotesTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagNotes + ' > .' + flagNotes);\n }\n hookupFieldsActive(flagTable = '', handleClickRowNew = (event, element) => { this.handleClickAddRowTable(event, element); }) {\n let selectorButton = 'table.table-main' + (Validation.isEmpty(flagTable) ? '' : '.' + flagTable) + ' > tbody > tr > td.' + flagActive + ' .' + flagButton + '.' + flagActive;\n let selectorButtonDelete = selectorButton + '.' + flagDelete;\n let selectorButtonUndelete = selectorButton + ':not(.' + flagDelete + ')';\n Utils.consoleLogIfNotProductionEnvironment(\"hookupFieldsActive: \", selectorButtonDelete, selectorButtonUndelete);\n this.hookupButtonsRowDelete(selectorButtonDelete, selectorButtonUndelete);\n this.hookupButtonsRowUndelete(selectorButtonDelete, selectorButtonUndelete);\n Events.hookupEventHandler(\n \"click\"\n , 'table.table-main' + (Validation.isEmpty(flagTable) ? '' : '.' + flagTable) + ' > thead > tr > th.' + flagActive + ' .' + flagButton + '.' + flagActive\n , (event, button) => { handleClickRowNew(event, button); }\n );\n }\n hookupButtonsRowDelete(selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n Events.hookupEventHandler(\"click\", selectorButtonDelete, (event, element) => {\n this.handleClickButtonRowDelete(event, element, selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n });\n }\n handleClickButtonRowDelete(event, element, selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n if (element.tagName.toUpperCase() != 'SVG') element = element.parentElement;\n let valuePrevious = DOM.getElementAttributeValuePrevious(element);\n let wasDirty = element.classList.contains(flagDirty);\n let row = DOM.getRowFromElement(element);\n if (row.classList.contains(flagRowNew) && !DOM.hasDirtyChildrenContainer(row)) {\n row.parentNode.removeChild(row);\n }\n else {\n let buttonAddTemplate = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagActive + '.' + flagAdd);\n let buttonAdd = buttonAddTemplate.cloneNode(true);\n DOM.setElementAttributeValuePrevious(buttonAdd, valuePrevious);\n DOM.setElementAttributeValueCurrent(buttonAdd, false);\n if (wasDirty) buttonAdd.classList.add(flagDirty);\n element.replaceWith(buttonAdd);\n changeHandler(null, buttonAdd);\n this.hookupButtonsRowUndelete(selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n }\n this.updateAndToggleShowButtonsSaveCancel();\n }\n hookupButtonsRowUndelete(selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n Events.hookupEventHandler(\"click\", selectorButtonUndelete, (event, element) => {\n this.handleClickButtonRowUndelete(event, element, selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n });\n }\n handleClickButtonRowUndelete(event, element, selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n if (element.tagName.toUpperCase() != 'SVG') element = element.parentElement;\n let valuePrevious = DOM.getElementAttributeValuePrevious(element);\n let wasDirty = DOM.isElementDirty(element);\n let buttonDeleteTemplate = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagActive + '.' + flagDelete);\n let buttonDelete = buttonDeleteTemplate.cloneNode(true);\n DOM.setElementAttributeValuePrevious(buttonDelete, valuePrevious);\n DOM.setElementAttributeValueCurrent(buttonDelete, true);\n if (wasDirty) buttonDelete.classList.add(flagDirty);\n element.replaceWith(buttonDelete);\n changeHandler(null, buttonDelete);\n this.hookupButtonsRowDelete(selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n this.updateAndToggleShowButtonsSaveCancel();\n }\n hookupTdsAccessLevel() {\n this.hookupTableCellDdlPreviews(flagAccessLevel, Utils.getListFromDict(accessLevels));\n }\n hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector = null\n , ddlHookup = (ddlSelector) => { this.hookupTableCellDdls(ddlSelector); }\n , changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n ) {\n if (cellSelector == null) cellSelector = idTableMain + ' > tbody > tr > td.' + fieldFlag;\n Events.hookupEventHandler(\"click\", cellSelector + ' div.' + fieldFlag, (event, div) => {\n this.handleClickTableCellDdlPreview(\n event\n , div\n , fieldFlag\n , optionList\n , cellSelector\n , (ddlSelector) => { ddlHookup(\n ddlSelector\n , (event, element) => { changeHandler(event, element); }\n ); }\n );\n });\n ddlHookup(cellSelector + ' select.' + fieldFlag);\n }\n hookupTableCellDdls(ddlSelector, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { changeHandler(event, element); });\n }\n handleClickTableCellDdlPreview(event, div, fieldFlag, optionObjectList, cellSelector = null, ddlHookup = (cellSelector) => { this.hookupTableCellDdls(cellSelector); }) {\n if (Validation.isEmpty(cellSelector)) cellSelector = idTableMain + ' > tbody > tr > td.' + fieldFlag;\n let idSelected = DOM.getElementAttributeValueCurrent(div);\n let td = DOM.getCellFromElement(div);\n td.innerHTML = '';\n let ddl = document.createElement('select');\n ddl.classList.add(fieldFlag);\n DOM.setElementValuesCurrentAndPrevious(ddl, idSelected);\n let optionJson, option;\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment(\"click table cell ddl preview\");\n Utils.consoleLogIfNotProductionEnvironment({optionObjectList, cellSelector});\n }\n option = DOM.createOption(null);\n ddl.appendChild(option);\n optionObjectList.forEach((optionObjectJson) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(optionObjectJson, idSelected);\n option = DOM.createOption(optionJson);\n ddl.appendChild(option);\n });\n td.appendChild(ddl);\n let ddlSelector = cellSelector + ' select.' + fieldFlag;\n ddlHookup(ddlSelector);\n }\n /*\n hookupTableCellDDlPreviewsWhenNotCollapsed(cellSelector, optionList, ddlHookup = (event, element) => { this.hookupTableCellDdls(event, element); }) {\n Events.hookupEventHandler(\"click\", cellSelector + ' div', (event, div) => {\n this.handleClickTableCellDdlPreview(event, div, optionList, cellSelector, (event, element) => { ddlHookup(event, element); });\n });\n }\n */\n toggleColumnCollapsed(flagColumn, isCollapsed) {\n this.toggleColumnHasClassnameFlag(flagColumn, isCollapsed, flagIsCollapsed);\n }\n toggleColumnHeaderCollapsed(flagColumn, isCollapsed) {\n this.toggleColumnHasClassnameFlag(flagColumn, isCollapsed, flagIsCollapsed);\n }\n\n hookupFieldsCommandCategory(idTable = null) {\n if (idTable == null) idTable = idTableMain;\n this.hookupTableCellDdlPreviews(\n flagCommandCategory\n , Utils.getListFromDict(filterCommandCategories).sort((a, b) => a[flagName].localeCompare(b[flagName]))\n , idTable + ' > tbody > tr > td.' + flagCommandCategory // + ' .' + flagCommandCategory\n , (cellSelector) => { this.hookupCommandCategoryDdls(cellSelector); }\n );\n }\n hookupCommandCategoryDdls(ddlSelector) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { this.handleChangeCommandCategoryDdl(event, element); });\n }\n handleChangeCommandCategoryDdl(event, ddlCategory) {\n let row = DOM.getRowFromElement(ddlCategory);\n let idCommandCategoryRowOld = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n this.handleChangeNestedElementCellTable(event, ddlCategory);\n let idCommandCategoryRowNew = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n if (\n idCommandCategoryRowOld == idCommandCategoryRowNew\n || idCommandCategoryRowNew == 0\n ) return;\n console.log({ idCommandCategoryRowNew, idCommandCategoryRowOld });\n let idCommandCategoryFilter = this.getIdCommandCategoryFilter();\n let tdCommand = row.querySelector('td.' + flagCommand);\n tdCommand.dispatchEvent(new Event('click'));\n let ddlCommand = row.querySelector('td.' + flagCommand + ' select.' + flagCommand);\n ddlCommand.innerHTML = '';\n ddlCommand.appendChild(DOM.createOption(null));\n let optionJson, option;\n let commandsInCategory = Utils.getListFromDict(filterCommands).filter(command => \n (\n command[attrIdCommandCategory] == idCommandCategoryRowNew\n || idCommandCategoryRowNew == 0\n )\n && (\n command[attrIdCommandCategory] == idCommandCategoryFilter\n || idCommandCategoryFilter == 0\n )\n );\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n sortedCommands.forEach((command) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(command);\n option = DOM.createOption(optionJson);\n ddlCommand.appendChild(option);\n });\n this.handleChangeNestedElementCellTable(event, ddlCommand);\n }\n hookupFieldsCommand(idTable = null) {\n if (idTable == null) idTable = idTableMain;\n Events.hookupEventHandler(\"click\", idTable + ' > tbody > tr > td.' + flagCommand + ' div.' + flagCommand, (event, div) => {\n Utils.consoleLogIfNotProductionEnvironment(div);\n let parentTr = DOM.getRowFromElement(div);\n Utils.consoleLogIfNotProductionEnvironment({ div, parentTr });\n let tdCommandCategory = parentTr.querySelector('td.' + flagCommandCategory);\n let idCommandCategoryRow = this.getIdCommandCategoryRow(parentTr); // DOM.getElementAttributeValueCurrent(tdCommandCategory);\n let idCommandCategoryFilter = this.getIdCommandCategoryFilter();\n let filterCommandList = Utils.getListFromDict(filterCommands);\n let commandsInCategory = filterCommandList.filter(command => \n (\n command[attrIdCommandCategory] == idCommandCategoryRow\n || idCommandCategoryRow == 0\n )\n && (\n command[attrIdCommandCategory] == idCommandCategoryFilter\n || idCommandCategoryFilter == 0\n )\n );\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n Utils.consoleLogIfNotProductionEnvironment({ tdCommandCategory, idCommandCategoryRow, idCommandCategoryFilter, filterCommandList, commandsInCategory });\n Utils.consoleLogIfNotProductionEnvironment(filterCommandList);\n this.handleClickTableCellDdlPreview(\n event\n , div\n , flagCommand // fieldFlag\n , sortedCommands // optionList\n , idTable + ' > tbody > tr > td.' + flagCommand // cellSelector\n , (cellSelector) => { this.hookupTableCellDdls(\n cellSelector\n , (event, element) => { this.handleChangeCommandDdl(event, element); }\n ); }\n );\n });\n this.hookupTableCellDdls(\n idTable + ' > tbody > tr > td.' + flagCommand + ' select.' + flagCommand\n , (event, element) => { this.handleChangeCommandDdl(event, element); }\n );\n }\n handleChangeCommandDdl(event, ddlCommand) {\n // console.log(\"handle change command ddl\");\n let row = DOM.getRowFromElement(ddlCommand);\n this.handleChangeNestedElementCellTable(event, ddlCommand);\n let idCommandCategoryRowOld = this.getIdCommandCategoryRow(row);\n let idCommandNew = this.getIdCommandRow(row);\n let commandNew = filterCommands[idCommandNew];\n // console.log({ idCommandCategoryRowOld, commandNew });\n if (commandNew == null || idCommandCategoryRowOld == commandNew[attrIdCommandCategory]) return;\n let divCommandCategory = row.querySelector('td.' + flagCommandCategory + ' div');\n if (divCommandCategory) divCommandCategory.dispatchEvent(new Event('click'));\n let ddlCommandCategory = row.querySelector('td.' + flagCommandCategory + ' select.' + flagCommandCategory);\n DOM.setElementValueCurrent(ddlCommandCategory, commandNew[attrIdCommandCategory]);\n // console.log({ ddlCommandCategory, commandNew });\n this.handleChangeNestedElementCellTable(event, ddlCommandCategory);\n }\n getIdCommandCategoryRow(tr) {\n let elementCommandCategory = tr.querySelector('td.' + flagCommandCategory + ' .' + flagCommandCategory);\n return DOM.getElementAttributeValueCurrent(elementCommandCategory);\n }\n getIdCommandCategoryFilter() {\n let formFilters = TableBasePage.getFormFilters();\n let idCommandCategory = 0;\n if (formFilters == null) return idCommandCategory;\n let commandCategoryFilter = formFilters.querySelector('#' + attrIdCommandCategory);\n let commandFilter = formFilters.querySelector('#' + attrIdCommand);\n let valueCurrentCommandCategoryFilter = DOM.getElementAttributeValueCurrent(commandCategoryFilter);\n Utils.consoleLogIfNotProductionEnvironment({ valueCurrentCommandCategoryFilter });\n if (valueCurrentCommandCategoryFilter == \"\") {\n let valueCurrentCommandFilter = DOM.getElementAttributeValueCurrent(commandFilter);\n Utils.consoleLogIfNotProductionEnvironment({ valueCurrentCommandFilter });\n if (valueCurrentCommandFilter != \"\") {\n let command = filterCommands[valueCurrentCommandFilter];\n idCommandCategory = command[attrIdCommandCategory];\n }\n } else {\n idCommandCategory = Number(valueCurrentCommandCategoryFilter);\n }\n return idCommandCategory;\n }\n getHasCommandCategoryFilter() {\n let idCommandCategoryFilter = this.getIdCommandCategoryFilter();\n return !(Validation.isEmpty(idCommandCategoryFilter) || idCommandCategoryFilter == 0);\n }\n getIdCommandRow(tr) {\n let elementCommand = tr.querySelector('td.' + flagCommand + ' .' + flagCommand);\n return DOM.getElementAttributeValueCurrent(elementCommand);\n }\n getIdCommandFilter() {\n let formFilters = TableBasePage.getFormFilters();\n let commandFilter = formFilters.querySelector('#' + attrIdCommand);\n let valueCurrentCommandFilter = DOM.getElementAttributeValueCurrent(commandFilter);\n let idCommand = Number(valueCurrentCommandFilter);\n return idCommand;\n }\n getHasCommandFilter() {\n let idCommandFilter = this.getIdCommandFilter();\n return !(Validation.isEmpty(idCommandFilter) || idCommandFilter == 0);\n }\n hookupFieldsDog() {\n this.hookupTableCellDdlPreviews(flagDog, Utils.getListFromDict(filterDogs));\n }\n getIdDogRow(tr) {\n let elementDog = tr.querySelector('td.' + flagDog + ' .' + flagDog);\n return DOM.getElementAttributeValueCurrent(elementDog);\n }\n /*\n createTdActive(isActive) {\n let tdActive = document.createElement(\"td\");\n tdActive.classList.add(flagActive);\n let buttonActive = document.createElement(\"button\");\n buttonActive.classList.add(flagActive);\n buttonActive.classList.add(isActive ? flagDelete : flagAdd);\n buttonActive.textContent = isActive ? 'x' : '+';\n DOM.setElementAttributesValuesCurrentAndPrevious(buttonActive, isActive);\n tdActive.appendChild(buttonActive);\n return tdActive;\n }\n */\n leave() {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Must implement leave() method.\");\n }\n super.leave();\n let formFilters = TableBasePage.getFormFilters();\n let dataPage = {};\n dataPage[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n this.setLocalStoragePage(dataPage);\n }\n\n toggleColumnHasClassnameFlag(columnFlag, isRequiredFlag, classnameFlag) {\n let table = TableBasePage.getTableMain();\n let columnTh = table.querySelector('th.' + columnFlag);\n let columnThHasFlag = columnTh.classList.contains(classnameFlag);\n if (isRequiredFlag == columnThHasFlag) return;\n DOM.toggleElementHasClassnameFlag(columnTh, isRequiredFlag, classnameFlag);\n }\n toggleColumnHeaderHasClassnameFlag(columnFlag, isRequiredFlag, classnameFlag) {\n let table = TableBasePage.getTableMain();\n let columnTh = table.querySelector('th.' + columnFlag);\n DOM.toggleElementHasClassnameFlag(columnTh, isRequiredFlag, classnameFlag);\n }\n\n updateAndToggleShowButtonsSaveCancel() {\n let records = this.getTableRecords(true);\n let isDirtyMainTable = records.length > 0;\n\n let formFilters = TableBasePage.getFormFilters();\n let areDirtyFilters = DOM.hasDirtyChildrenContainer(formFilters);\n\n console.log({ records, isDirtyMainTable, formFilters, areDirtyFilters });\n\n this.toggleShowButtonsSaveCancel(isDirtyMainTable && !areDirtyFilters);\n }\n}\n","\nimport Events from \"../../lib/events.js\";\nimport LocalStorage from \"../../lib/local_storage.js\";\nimport Validation from \"../../lib/validation.js\";\n// import BasePage from \"../base.js\";\nimport DOM from \"../../dom.js\";\nimport { isEmpty } from \"../../lib/utils.js\";\nimport TableBasePage from \"../base_table.js\";\n\nexport default class DogMixinPage {\n constructor(pageCurrent) {\n this.page = pageCurrent;\n }\n\n initialize() {\n Utils.consoleLogIfNotProductionEnvironment('hookup dog start for ', this.page.hash);\n this.hookupFilters();\n this.hookupLocalStorageDog();\n }\n hookupFilters() {\n }\n hookupLocalStorageDog() {\n \n }\n\n /*\n hookupDogCardsProduct() {\n \n let d; // , lsShared;\n let selectorCardProduct = '.card.subcard';\n Events.initialiseEventHandler(selectorCardProduct, flagInitialised, function(cardProduct) {\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"initialising product card: \", cardProduct); }\n cardProduct.addEventListener(\"click\", function(event) {\n // d = { keyIdProduct: product.getAttribute(attrIdProduct) }\n var elemClicked = event.target;\n if (elemClicked.id != 'submit') { // disable for submit buttons\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment(\"product click: \" + cardProduct.getAttribute(attrIdProduct));\n Utils.consoleLogIfNotProductionEnvironment(\"permutation click: \" + cardProduct.getAttribute(attrIdPermutation));\n }\n var d = {}\n d[keyIdProduct] = cardProduct.getAttribute(attrIdProduct)\n d[keyIdPermutation] = cardProduct.getAttribute(attrIdPermutation)\n // send quantity requested\n goToPage(hashPageDogProduct, d);\n }\n });\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"click method added for product ID: \" + cardProduct.getAttribute(attrIdProduct) + ', permutation ID: ', cardProduct.getAttribute(attrIdPermutation)); }\n });\n }\n */\n \n leave() {}\n}\n","\nimport Events from \"../../lib/events.js\";\nimport LocalStorage from \"../../lib/local_storage.js\";\nimport Validation from \"../../lib/validation.js\";\n// import BasePage from \"../base.js\";\nimport DOM from \"../../dom.js\";\nimport { isEmpty } from \"../../lib/utils.js\";\nimport DogMixinPage from \"./mixin.js\";\nimport Utils from \"../../lib/utils.js\";\n\nexport default class DogTableMixinPage extends DogMixinPage {\n constructor(pageCurrent) {\n super(pageCurrent);\n }\n initialize() {\n super.initialize();\n this.hookupFilters();\n this.hookupTable();\n }\n hookupFilters() {\n // Implement filter-specific functionality here\n }\n hookupTable() {\n // Implement table-specific functionality here\n }\n hookupFieldsLocation() {\n this.page.hookupTableCellDdlPreviews(\n flagLocation\n , Utils.getListFromDict(filterLocations) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n}","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCommandCategories extends TableBasePage {\n static hash = hashPageDogCommandCategories;\n static attrIdRowObject = attrIdCommandCategory;\n callSaveTableContent = API.saveCommandCategories;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n Utils.consoleLogIfNotProductionEnvironment({ row });\n if (row == null) return;\n let inputCode = row.querySelector('td.' + flagCode + ' .' + flagCode);\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n \n console.log(\"inputCode\");\n console.log(inputCode);\n\n let jsonRow = {};\n jsonRow[attrIdCommandCategory] = row.getAttribute(attrIdCommandCategory);\n jsonRow[flagCode] = DOM.getElementAttributeValueCurrent(inputCode);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n // let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCodeTable();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCommands extends TableBasePage {\n static hash = hashPageDogCommands;\n static attrIdRowObject = attrIdCommand;\n callSaveTableContent = API.saveCommands;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterCommandCategory();\n this.hookupFilterActive();\n }\n hookupFilterCommandCategory() {\n this.hookupFilter(attrIdCommandCategory);\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let inputHandSignalDefaultDescription = row.querySelector('td.' + flagHandSignalDefaultDescription + ' .' + flagHandSignalDefaultDescription);\n let inputCanHaveButton = row.querySelector('td.' + flagCanHaveButton + ' .' + flagCanHaveButton);\n let inputNotes = row.querySelector('td.' + flagNotes + ' .' + flagNotes);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n /*\n Utils.consoleLogIfNotProductionEnvironment({ inputName, inputHandSignalDefaultDescription, inputCanHaveButton, inputNotes, buttonActive });\n debugger;\n */\n\n let jsonRow = {};\n jsonRow[attrIdCommand] = row.getAttribute(attrIdCommand);\n jsonRow[attrIdCommandCategory] = this.getIdCommandCategoryRow(row);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagHandSignalDefaultDescription] = DOM.getElementAttributeValueCurrent(inputHandSignalDefaultDescription);\n jsonRow[flagCanHaveButton] = (DOM.getElementAttributeValueCurrent(inputCanHaveButton) == \"true\");\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDog + ' div.' + flagDog\n , ',td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCommandCategory();\n this.hookupFieldsNameTable();\n this.hookupTextareasHandSignalDefaultDescription();\n this.hookupFieldsCanHaveButton();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsCommandCategory() {\n this.hookupTableCellDdlPreviews(\n flagCommandCategory\n , Utils.getListFromDict(filterCommandCategories)\n );\n }\n hookupTextareasHandSignalDefaultDescription() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagHandSignalDefaultDescription + ' .' + flagHandSignalDefaultDescription);\n }\n hookupFieldsCanHaveButton() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagCanHaveButton + ' .' + flagCanHaveButton);\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogDogCommandLinks extends TableBasePage {\n static hash = hashPageDogDogCommandLinks;\n static attrIdRowObject = attrIdDogCommandLink;\n callSaveTableContent = API.saveDogCommandLinks;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterDog();\n this.hookupFilterCommandCategory();\n this.hookupFilterCommand();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputHandSignalDescription = row.querySelector('td.' + flagHandSignalDescription + ' textarea');\n let inputNotes = row.querySelector('td.' + flagNotes + ' textarea');\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdDogCommandLink] = row.getAttribute(attrIdDogCommandLink);\n jsonRow[attrIdDog] = this.getIdDogRow(row);\n jsonRow[attrIdCommand] = this.getIdCommandRow(row);\n jsonRow[flagHandSignalDescription] = DOM.getElementAttributeValueCurrent(inputHandSignalDescription);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDog + ' div.' + flagDog\n , ',td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsDog();\n this.hookupFieldsCommandCategory();\n this.hookupFieldsCommand();\n this.hookupTextareasHandSignalDescription();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupTextareasHandSignalDescription() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagHandSignalDescription + ' .' + flagHandSignalDescription);\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogDogs extends TableBasePage {\n static hash = hashPageDogDogs;\n static attrIdRowObject = attrIdDog;\n callSaveTableContent = API.saveDogs;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let inputAppearance = row.querySelector('td.' + flagAppearance + ' .' + flagAppearance);\n let inputMassKg = row.querySelector('td.' + flagMassKg + ' .' + flagMassKg);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdDog] = row.getAttribute(attrIdDog);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagAppearance] = DOM.getElementAttributeValueCurrent(inputAppearance);\n jsonRow[flagMassKg] = DOM.getElementAttributeValueCurrent(inputMassKg);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n }\n postInitialiseRowNewCallback(tbody) {\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsNameTable();\n this.hookupFieldsAppearance();\n this.hookupFieldsMassKg();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsAppearance() {\n this.hookupChangeHandlerTableCells(flagAppearance);\n }\n hookupFieldsMassKg() {\n this.hookupChangeHandlerTableCells(flagMassKg);\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogLocations extends TableBasePage {\n static hash = hashPageDogLocations;\n static attrIdRowObject = attrIdLocation;\n callSaveTableContent = API.saveLocations;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdLocation] = row.getAttribute(attrIdLocation);\n jsonRow[flagLocationParent] = this.getIdLocationParentRow(row);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n getIdLocationParentRow(row) {\n let elementLocationParent = row.querySelector('td.' + flagLocationParent + ' .' + flagLocationParent);\n return DOM.getElementAttributeValueCurrent(elementLocationParent);\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagLocationParent + ' div.' + flagLocationParent\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsLocationParent();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n hookupFieldsLocationParent() {\n /*\n this.hookupTableCellDdlPreviews(\n flagLocationParent\n , Utils.getListFromDict(locations).filter(location => \n (\n location[attrIdLocation] == idLocationRow\n || idLocationRow < 1\n )\n ) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n , null // cellSelector\n , (cellSelector) => { this.hookupLocationParentDdls(cellSelector); }\n ,\n );\n\n fieldFlag\n , optionList\n , cellSelector = null\n , ddlHookup = (ddlSelector) => { this.hookupTableCellDdls(ddlSelector); }\n , changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n ) {\n\n */\n let cellSelector = idTableMain + ' > tbody > tr > td.' + flagLocationParent;\n Events.hookupEventHandler(\"click\", cellSelector + ' div.' + flagLocationParent, (event, div) => {\n let row = DOM.getRowFromElement(div);\n let idLocationRow = Number(row.getAttribute(attrIdLocation));\n Utils.consoleLogIfNotProductionEnvironment({ idLocationRow });\n this.handleClickTableCellDdlPreview(\n event\n , div\n , flagLocationParent\n , Utils.getListFromDict(locations).filter(location => \n (\n location[attrIdLocation] != idLocationRow\n || idLocationRow < 1\n )\n ) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n , cellSelector\n , (ddlSelector) => { this.hookupTableCellDdls(\n ddlSelector\n , (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n ); }\n );\n });\n this.hookupTableCellDdls(\n cellSelector + ' select.' + flagLocationParent\n , (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n );\n }\n /*\n hookupLocationParentDdls(ddlSelector) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { this.handleChangeNestedElementCellTable(event, element); });\n }\n */\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogButtonIcons extends TableBasePage {\n static hash = hashPageDogButtonIcons;\n static attrIdRowObject = attrIdButtonIcon;\n callSaveTableContent = API.saveButtonIcons;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdButtonIcon] = row.getAttribute(attrIdButtonIcon);\n jsonRow[flagImage] = this.getIdImageRow(row);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n getIdImageRow(row) {\n let elementImage = row.querySelector('td.' + flagImage + ' .' + flagImage);\n return DOM.getElementAttributeValueCurrent(elementImage);\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagImage + ' div.' + flagImage\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsImage();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n hookupFieldsImage() {\n this.hookupTableCellDdlPreviews(\n flagImage\n , Utils.getListFromDict(buttonicons) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCommandButtonLinks extends TableBasePage {\n static hash = hashPageDogCommandButtonLinks;\n static attrIdRowObject = attrIdCommandButtonLink;\n callSaveTableContent = API.saveCommandButtonLinks;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterCommandCategory();\n this.hookupFilterCommand();\n this.hookupFilterButtonShape();\n this.hookupFilterColour();\n this.hookupFilterButtonIcon();\n this.hookupFilterLocation();\n this.hookupFilterActive();\n }\n hookupFilterButtonShape() {\n this.hookupFilter(attrIdButtonShape);\n }\n hookupFilterColour() {\n this.hookupFilter(attrIdColour);\n }\n hookupFilterButtonIcon() {\n this.hookupFilter(attrIdButtonIcon);\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputHandSignalDescription = row.querySelector('td.' + flagHandSignalDescription + ' textarea');\n let inputNotes = row.querySelector('td.' + flagNotes + ' textarea');\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdCommandButtonLink] = row.getAttribute(attrIdCommandButtonLink);\n jsonRow[attrIdDog] = this.getIdDogRow(row);\n jsonRow[attrIdCommand] = this.getIdCommandRow(row);\n jsonRow[flagHandSignalDescription] = DOM.getElementAttributeValueCurrent(inputHandSignalDescription);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDog + ' div.' + flagDog\n , ',td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCommandCategory();\n this.hookupFieldsCommand();\n this.hookupFieldsButtonShape();\n this.hookupFieldsColour();\n this.hookupFieldsButtonIcon();\n this.dogMixin.hookupFieldsLocation();\n this.hookupFieldsActive();\n }\n hookupFieldsButtonShape() {\n this.hookupTableCellDdlPreviews(\n flagButtonShape\n , Utils.getListFromDict(filterButtonShapes) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsColour() {\n this.hookupTableCellDdlPreviews(\n flagColour\n , Utils.getListFromDict(filterColours) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsButtonIcon() {\n this.hookupTableCellDdlPreviews(\n flagButtonIcon\n , Utils.getListFromDict(filterButtonIcons) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nvar _rowBlankDistraction;\nvar _rowBlankAssessmentCommandModalityLink;\n\nexport default class PageDogAssessment extends TableBasePage {\n static hash = hashPageDogAssessment;\n static attrIdRowObject = attrIdAssessment;\n callSaveTableContent = API.saveAssessmentsDistractionsAndResponses;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getTableRecords(dirtyOnly = false) {\n dirtyOnly = true;\n let row = document.querySelector(idTableAssessment + ' tbody tr.' + flagAssessment);\n return [this.getJsonRow(row)];\n }\n getJsonRow(row) {\n console.log(\"getJsonRow: \", row);\n if (row == null) return;\n let inputWeather = row.querySelector(idTableAssessment + ' td.' + flagWeather + ' .' + flagWeather);\n let inputLightingLevel = row.querySelector(idTableAssessment + ' td.' + flagLightingLevel + ' .' + flagLightingLevel);\n let inputTemeratureCelcius = row.querySelector(idTableAssessment + ' td.' + flagTemperatureCelcius + ' .' + flagTemperatureCelcius);\n let inputLocation = row.querySelector(idTableAssessment + ' td.' + flagLocation + ' .' + flagLocation);\n let inputUserHandler = row.querySelector(idTableAssessment + ' td.' + flagUserHandler + ' .' + flagUserHandler);\n let inputNotes = row.querySelector(idTableAssessment + ' td.' + flagNotes + ' .' + flagNotes);\n // let buttonActive = row.querySelector(idTableAssessment + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n let idAssessment = row.getAttribute(attrIdAssessment);\n let jsonRow = {};\n jsonRow[attrIdAssessment] = idAssessment;\n jsonRow[attrIdWeather] = DOM.getElementAttributeValueCurrent(inputWeather);\n jsonRow[attrIdLightingLevel] = DOM.getElementAttributeValueCurrent(inputLightingLevel);\n jsonRow[flagTemperatureCelcius] = DOM.getElementAttributeValueCurrent(inputTemeratureCelcius);\n jsonRow[attrIdLocation] = DOM.getElementAttributeValueCurrent(inputLocation);\n jsonRow[flagUserHandler] = DOM.getElementAttributeValueCurrent(inputUserHandler);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = true; // buttonActive.classList.contains(flagDelete);\n jsonRow[flagDistraction] = this.getDirtyDistractions(idAssessment);\n jsonRow[flagAssessmentCommandModalityLink] = this.getDirtyAssessmentCommandModalityLinks(idAssessment);\n console.log({ jsonRow });\n return jsonRow;\n }\n getDirtyDistractions(idAssessment) {\n let dirtyRows = document.querySelectorAll(idTableDistractions + ' tbody tr.' + flagDistraction + '.' + flagDirty);\n if (dirtyRows == null || dirtyRows.length == 0) return [];\n // dirtyRows = Array.from(dirtyRows);\n let dirtyRow,\n inputDistractionType, distractionType,\n inputIntensityLevelEmotional, intensityLevelEmotional,\n inputIntensityLevelScent, intensityLevelScent,\n inputIntensityLevelSight, intensityLevelSight,\n inputIntensityLevelSound, intensityLevelSound,\n inputIntensityLevelTouch, intensityLevelTouch,\n inputQuantity, quantity,\n inputProximityMetres, proximityMetres,\n inputNotes, notes,\n buttonActive, active;\n console.log('getDirtyDistractions');\n console.log({ dirtyRows });\n let dirtyDistractions = [];\n for(let indexRow = 0; indexRow < dirtyRows.length; indexRow++) {\n dirtyRow = dirtyRows[indexRow];\n inputDistractionType = dirtyRow.querySelector('td.' + flagDistractionType + ' .' + flagDistractionType);\n distractionType = DOM.getElementAttributeValueCurrent(inputDistractionType);\n inputIntensityLevelEmotional = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelEmotional + ' .' + flagDistractionIntensityLevelEmotional);\n intensityLevelEmotional = DOM.getElementAttributeValueCurrent(inputIntensityLevelEmotional);\n inputIntensityLevelScent = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelScent + ' .' + flagDistractionIntensityLevelScent);\n intensityLevelScent = DOM.getElementAttributeValueCurrent(inputIntensityLevelScent);\n inputIntensityLevelSight = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelSight + ' .' + flagDistractionIntensityLevelSight);\n intensityLevelSight = DOM.getElementAttributeValueCurrent(inputIntensityLevelSight);\n inputIntensityLevelSound = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelSound + ' .' + flagDistractionIntensityLevelSound);\n intensityLevelSound = DOM.getElementAttributeValueCurrent(inputIntensityLevelSound);\n inputIntensityLevelTouch = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelTouch + ' .' + flagDistractionIntensityLevelTouch);\n intensityLevelTouch = DOM.getElementAttributeValueCurrent(inputIntensityLevelTouch);\n inputQuantity = dirtyRow.querySelector('td.' + flagQuantity + ' .' + flagQuantity);\n quantity = DOM.getElementAttributeValueCurrent(inputQuantity);\n inputProximityMetres = dirtyRow.querySelector('td.' + flagProximityMetres + ' .' + flagProximityMetres);\n proximityMetres = DOM.getElementAttributeValueCurrent(inputProximityMetres);\n inputNotes = dirtyRow.querySelector('td.' + flagNotes + ' .' + flagNotes);\n notes = DOM.getElementAttributeValueCurrent(inputNotes);\n buttonActive = dirtyRow.querySelector(idTableDistractions + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n active = buttonActive.classList.contains(flagDelete);\n dirtyDistractions.push({\n [attrIdDistraction]: dirtyRow.getAttribute(attrIdDistraction)\n , [attrIdAssessment]: idAssessment\n , [attrIdDistractionType]: distractionType\n , [flagDistractionIntensityLevelEmotional]: intensityLevelEmotional\n , [flagDistractionIntensityLevelScent]: intensityLevelScent\n , [flagDistractionIntensityLevelSight]: intensityLevelSight\n , [flagDistractionIntensityLevelSound]: intensityLevelSound\n , [flagDistractionIntensityLevelTouch]: intensityLevelTouch\n , [flagQuantity]: quantity\n , [flagProximityMetres]: proximityMetres\n , [flagNotes]: notes\n , [flagActive]: active\n });\n };\n return dirtyDistractions;\n }\n getDirtyAssessmentCommandModalityLinks(idAssessment) {\n let dirtyRows = document.querySelectorAll(idTableAssessmentCommandModalityLinks + ' > tbody > tr.' + flagAssessmentCommandModalityLink + '.' + flagDirty);\n if (dirtyRows == null || dirtyRows.length == 0) return [];\n dirtyRows = Array.from(dirtyRows);\n let dirtyRow, idAssessmentCommandModalityLink,\n inputCommand, command,\n inputCommandModality, commandModality,\n inputBribe, bribe,\n inputDistanceFromHandler, distanceFromhandler,\n inputIsInHearingRangeOfHandler, isInHearingRangeOfHandler,\n inputIsInScentRangeOfHandler, isInScentRangeOfHandler,\n inputIsInSightOfHandler, isInSightOfHandler,\n inputIsOnLead, isOnLead,\n inputNotes, notes,\n buttonActive, active;\n console.log('getDirtyAssessmentCommandModalityLinks');\n console.log({ dirtyRows });\n let dirtyLinks = [];\n for(let indexRow = 0; indexRow < dirtyRows.length; indexRow++) {\n dirtyRow = dirtyRows[indexRow];\n idAssessmentCommandModalityLink = dirtyRow.getAttribute(attrIdAssessmentCommandModalityLink);\n inputCommand = dirtyRow.querySelector('td.' + flagCommand + ' .' + flagCommand);\n command = DOM.getElementAttributeValueCurrent(inputCommand);\n inputCommandModality = dirtyRow.querySelector('td.' + flagCommandModality + ' .' + flagCommandModality);\n commandModality = DOM.getElementAttributeValueCurrent(inputCommandModality);\n inputBribe = dirtyRow.querySelector('td.' + flagBribe + ' .' + flagBribe);\n bribe = DOM.getElementAttributeValueCurrent(inputBribe);\n inputDistanceFromHandler = dirtyRow.querySelector('td.' + flagDistanceFromHandlerMetres + ' .' + flagDistanceFromHandlerMetres);\n distanceFromhandler = DOM.getElementAttributeValueCurrent(inputDistanceFromHandler);\n inputIsInHearingRangeOfHandler = dirtyRow.querySelector('td.' + flagIsInHearingRangeOfHandler + ' .' + flagIsInHearingRangeOfHandler);\n isInHearingRangeOfHandler = DOM.getElementAttributeValueCurrent(inputIsInHearingRangeOfHandler);\n inputIsInScentRangeOfHandler = dirtyRow.querySelector('td.' + flagIsInScentRangeOfHandler + ' .' + flagIsInScentRangeOfHandler);\n isInScentRangeOfHandler = DOM.getElementAttributeValueCurrent(inputIsInScentRangeOfHandler);\n inputIsInSightOfHandler = dirtyRow.querySelector('td.' + flagIsInSightOfHandler + ' .' + flagIsInSightOfHandler);\n isInSightOfHandler = DOM.getElementAttributeValueCurrent(inputIsInSightOfHandler);\n inputIsOnLead = dirtyRow.querySelector('td.' + flagIsOnLead + ' .' + flagIsOnLead);\n isOnLead = DOM.getElementAttributeValueCurrent(inputIsOnLead);\n inputNotes = dirtyRow.querySelector('td.' + flagNotes + ' .' + flagNotes);\n notes = DOM.getElementAttributeValueCurrent(inputNotes);\n buttonActive = dirtyRow.querySelector(idTableAssessmentCommandModalityLinks + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n active = buttonActive.classList.contains(flagDelete);\n dirtyLinks.push({\n [attrIdAssessmentCommandModalityLink]: idAssessmentCommandModalityLink\n , [attrIdAssessment]: idAssessment\n , [attrIdCommand]: command\n , [attrIdCommandModality]: commandModality\n , [attrIdBribe]: bribe\n , [flagDistanceFromHandlerMetres]: distanceFromhandler\n , [flagIsInHearingRangeOfHandler]: isInHearingRangeOfHandler\n , [flagIsInScentRangeOfHandler]: isInScentRangeOfHandler\n , [flagIsInSightOfHandler]: isInSightOfHandler\n , [flagIsOnLead]: isOnLead\n , [flagNotes]: notes\n , [flagActive]: active\n , [flagAssessmentResponse]: this.getDirtyAssessmentResponses(dirtyRow, idAssessmentCommandModalityLink)\n });\n }\n return dirtyLinks;\n }\n getDirtyAssessmentResponses(rowAssessmentCommandModalityLink, idAssessmentCommandModalityLink) {\n let dirtyRows = rowAssessmentCommandModalityLink.querySelectorAll(idTableAssessmentResponses + ' tbody tr.' + flagAssessmentResponse + '.' + flagDirty);\n if (dirtyRows == null || dirtyRows.length == 0) return [];\n dirtyRows = Array.from(dirtyRows);\n let dirtyRow,\n inputResponseQualityMetric, responseQualityMetric,\n inputObedienceLevel, obedienceLevel,\n inputValueMeasured, valueMeasured,\n inputNotes, notes,\n buttonActive, active;\n console.log('getDirtyAssessmentResponses');\n console.log({ dirtyRows });\n let dirtyResponses = [];\n for(let indexRow = 0; indexRow < dirtyRows.length; indexRow++) {\n dirtyRow = dirtyRows[indexRow];\n inputResponseQualityMetric = dirtyRow.querySelector('td.' + flagResponseQualityMetric + ' .' + flagResponseQualityMetric);\n responseQualityMetric = DOM.getElementAttributeValueCurrent(inputResponseQualityMetric);\n inputObedienceLevel = dirtyRow.querySelector('td.' + flagObedienceLevel + ' .' + flagObedienceLevel);\n obedienceLevel = DOM.getElementAttributeValueCurrent(inputObedienceLevel);\n inputValueMeasured = dirtyRow.querySelector('td.' + flagValueMeasured + ' .' + flagValueMeasured);\n valueMeasured = DOM.getElementAttributeValueCurrent(inputValueMeasured);\n inputNotes = dirtyRow.querySelector('td.' + flagNotes + ' .' + flagNotes);\n notes = DOM.getElementAttributeValueCurrent(inputNotes);\n buttonActive = dirtyRow.querySelector(idTableAssessmentResponses + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n active = buttonActive.classList.contains(flagDelete);\n dirtyResponses.push({\n [attrIdAssessmentResponse]: dirtyRow.getAttribute(attrIdAssessmentResponse)\n , [attrIdAssessmentCommandModalityLink]: idAssessmentCommandModalityLink\n , [attrIdResponseQualityMetric]: responseQualityMetric\n , [attrIdObedienceLevel]: obedienceLevel\n , [flagValueMeasured]: valueMeasured\n , [flagNotes]: notes\n , [flagActive]: active\n });\n }\n return dirtyResponses;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagWeather + ' div.' + flagWeather\n , ',td.' + flagLightingLevel + ' div.' + flagLightingLevel\n , ',td.' + flagLocation + ' div.' + flagLocation\n , ',td.' + flagUserHandler + ' div.' + flagUserHandler\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n callFilterTableContent() {\n if (assessment[attrIdAssessment] < 1) {\n let formFilters = TableBasePage.getFormFilters();\n let filterAssessment = formFilters.querySelector('#' + attrIdAssessment);\n DOM.setElementValueCurrent(filterAssessment, '');\n }\n super.callFilterTableContent();\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupTableAssessmentHeader();\n this.hookupTableDistractions();\n this.hookupTableAssessmentCommandModalityLinks();\n }\n hookupTableAssessmentHeader() {\n this.hookupTableAssessmentFieldWeather();\n this.hookupTableAssessmentFieldLightingLevel();\n this.hookupTableAssessmentFieldTemperature();\n this.hookupTableAssessmentFieldLocation();\n this.hookupTableAssessmentFieldUserHandler();\n this.hookupTableAssessmentFieldNotes();\n if (assessment[attrIdAssessment] < 1) {\n let tbody = document.querySelector(idTableAssessment + ' tbody');\n let row = tbody.querySelector('tr');\n row.classList.add(flagRowNew);\n this.postInitialiseRowNewCallback(tbody);\n }\n }\n hookupTableAssessmentFieldWeather() {\n let fieldFlag = flagWeather;\n let optionList = Utils.getListFromDict(filterWeathers); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessment + ' td.' + flagWeather;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldLightingLevel() {\n let fieldFlag = flagLightingLevel;\n let optionList = Utils.getListFromDict(filterLightingLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessment + ' td.' + flagLightingLevel;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldTemperature() {\n this.hookupChangeHandlerTableCells(idTableAssessment + ' td.' + flagTemperatureCelcius + ' .' + flagTemperatureCelcius);\n }\n hookupTableAssessmentFieldLocation() {\n let fieldFlag = flagLocation;\n let optionList = Utils.getListFromDict(filterLocations); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessment + ' td.' + flagLocation;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldUserHandler() {\n let fieldFlag = flagUserHandler;\n let optionList = Utils.getListFromDict(filterUserHandlers); // .sort((a, b) => a[flagName].localeCompare(b[flagName]));\n let cellSelector = idTableAssessment + ' td.' + flagUserHandler;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldNotes() {\n this.hookupChangeHandlerTableCells(idTableAssessment + ' td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableDistractions() {\n Events.initialiseEventHandler(idTableDistractions, flagInitialised, (table) => {\n let selectorRowNew = idTableDistractions + ' tbody tr.' + flagRowNew;\n let rowBlankTemp = document.querySelector(selectorRowNew);\n Utils.consoleLogIfNotProductionEnvironment(\"row blank temp: \", rowBlankTemp);\n let countRows = document.querySelectorAll(idTableDistractions + ' > tbody > tr').length;\n _rowBlankDistraction = rowBlankTemp.cloneNode(true);\n document.querySelectorAll(selectorRowNew).forEach(function(row) {\n row.remove();\n });\n _rowBlankDistraction.setAttribute(attrIdDistraction, -1 - countRows);\n });\n\n this.hookupTableDistractionsFieldsDistractionType();\n this.hookupTableDistractionsFieldsIntensityLevelEmotional();\n this.hookupTableDistractionsFieldsIntensityLevelScent();\n this.hookupTableDistractionsFieldsIntensityLevelSight();\n this.hookupTableDistractionsFieldsIntensityLevelSound();\n this.hookupTableDistractionsFieldsIntensityLevelTouch();\n this.hookupTableDistractionsFieldsQuantity();\n this.hookupTableDistractionsFieldsProximityMetres();\n this.hookupTableDistractionsFieldsNotes();\n this.hookupTableDistractionsFieldsActive();\n }\n hookupTableDistractionsFieldsDistractionType() {\n let fieldFlag = flagDistractionType;\n let optionList = Utils.getListFromDict(filterDistractionTypes); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionType;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelEmotional() {\n let fieldFlag = flagDistractionIntensityLevelEmotional;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelEmotional;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelScent() {\n let fieldFlag = flagDistractionIntensityLevelScent;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelScent;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelSight() {\n let fieldFlag = flagDistractionIntensityLevelSight;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelSight;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelSound() {\n let fieldFlag = flagDistractionIntensityLevelSound;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelSound;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelTouch() {\n let fieldFlag = flagDistractionIntensityLevelTouch;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelTouch;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsQuantity() {\n this.hookupChangeHandlerTableCells(idTableDistractions + ' td.' + flagQuantity + ' .' + flagQuantity);\n }\n hookupTableDistractionsFieldsProximityMetres() {\n this.hookupChangeHandlerTableCells(idTableDistractions + ' td.' + flagProximityMetres + ' .' + flagProximityMetres);\n }\n hookupTableDistractionsFieldsNotes() {\n this.hookupChangeHandlerTableCells(idTableDistractions + ' td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableDistractionsFieldsActive() {\n this.hookupFieldsActive(flagDistraction, (event, element) => { this.handleClickAddRowTableDistractions(event, element); });\n }\n handleClickAddRowTableDistractions(event, button) {\n event.stopPropagation();\n _rowBlankDistraction.setAttribute(attrIdDistraction, -1 - _rowBlankDistraction.getAttribute(attrIdDistraction));\n let tbody = document.querySelector(idTableDistractions + ' tbody');\n if (tbody.classList.contains(flagIsCollapsed)) return;\n let row = _rowBlankDistraction.cloneNode(true);\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableDistractions + ' > tbody > tr').length;\n row.setAttribute(attrIdDistraction, -1 - countRows);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTableDistractions();\n this.postInitialiseDistractionRowNewCallback(tbody);\n }\n postInitialiseDistractionRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDistractionType + ' div.' + flagDistractionType\n , ',td.' + flagDistractionIntensityLevelEmotional + ' div.' + flagDistractionIntensityLevelEmotional\n , ',td.' + flagDistractionIntensityLevelScent + ' div.' + flagDistractionIntensityLevelScent\n , ',td.' + flagDistractionIntensityLevelSight + ' div.' + flagDistractionIntensityLevelSight\n , ',td.' + flagDistractionIntensityLevelSound + ' div.' + flagDistractionIntensityLevelSound\n , ',td.' + flagDistractionIntensityLevelTouch + ' div.' + flagDistractionIntensityLevelTouch\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n hookupTableAssessmentCommandModalityLinks() {\n Events.initialiseEventHandler(idTableAssessmentCommandModalityLinks, flagInitialised, (table) => {\n let selectorRowNew = idTableAssessmentCommandModalityLinks + ' tbody tr.' + flagRowNew;\n let rowBlankTemp = document.querySelector(selectorRowNew);\n Utils.consoleLogIfNotProductionEnvironment(\"row blank temp: \", rowBlankTemp);\n let countRows = document.querySelectorAll(idTableAssessmentCommandModalityLinks + ' > tbody > tr').length;\n _rowBlankAssessmentCommandModalityLink = rowBlankTemp.cloneNode(true);\n document.querySelectorAll(selectorRowNew).forEach(function(row) {\n row.remove();\n });\n _rowBlankAssessmentCommandModalityLink.setAttribute(attrIdAssessmentCommandModalityLink, -1 - countRows);\n });\n\n this.hookupTableAssessmentCommandModalityLinksFieldsCommandCategory();\n this.hookupTableAssessmentCommandModalityLinksFieldsCommand();\n this.hookupTableAssessmentCommandModalityLinksFieldsCommandModality();\n this.hookupTableAssessmentCommandModalityLinksFieldsBribe();\n this.hookupTableAssessmentCommandModalityLinksFieldsDistanceFromHandlerMetres();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsInHearingRangeOfHandler();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsInScentRangeOfHandler();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsInSightOfHandler();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsOnLead();\n this.hookupTableAssessmentCommandModalityLinksFieldsTrialCount();\n this.hookupTableAssessmentCommandModalityLinksFieldsNotes();\n this.hookupTableAssessmentCommandModalityLinksFieldsResponses();\n this.hookupTableAssessmentCommandModalityLinksFieldsActive();\n }\n hookupTableAssessmentCommandModalityLinksFieldsCommandCategory() {\n this.hookupFieldsCommandCategory(idTableAssessmentCommandModalityLinks);\n /*\n let fieldFlag = flagCommandCategory;\n let optionList = Utils.getListFromDict(filterCommandCategories).sort((a, b) => a[flagName].localeCompare(b[flagName]));\n let cellSelector = idTableAssessmentCommandModalityLinks + ' td.' + flagCommandCategory;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n , (tdSelector) => { this.hookupTableAssessmentCommandModalityLinksDdlsCommandCategory(tdSelector); }\n , (event, element) => { this.handleChangeTableAssessmentCommandModalityLinksDdlCommandCategory(event, element); }\n );\n */\n }\n /*\n hookupTableAssessmentCommandModalityLinksDdlsCommandCategory(ddlSelector) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { this.handleChangeTableAssessmentCommandModalityLinksDdlCommandCategory(event, element); });\n }\n handleChangeTableAssessmentCommandModalityLinksDdlCommandCategory(event, ddlCategory) {\n let row = DOM.getRowFromElement(ddlCategory);\n let idCommandCategoryRowOld = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n this.handleChangeNestedElementCellTable(event, ddlCategory);\n let idCommandCategoryRowNew = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n if (idCommandCategoryRowOld == idCommandCategoryRowNew) return;\n let divCommand = row.querySelector('td.' + flagCommand + ' div');\n if (divCommand) divCommand.dispatchEvent(new Event('click'));\n let ddlCommand = row.querySelector('td.' + flagCommand + ' select.' + flagCommand);\n ddlCommand.innerHTML = '';\n ddlCommand.appendChild(DOM.createOption(null));\n let optionJson, option;\n let commandsInCategory = Utils.getListFromDict(filterCommands).filter(command => \n (\n command[attrIdCommandCategory] == idCommandCategoryRowNew\n || idCommandCategoryRowNew == 0\n )\n );\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n sortedCommands.forEach((command) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(command);\n option = DOM.createOption(optionJson);\n ddlCommand.appendChild(option);\n });\n this.handleChangeNestedElementCellTable(event, ddlCommand);\n }\n */\n hookupTableAssessmentCommandModalityLinksFieldsCommand() {\n this.hookupFieldsCommand(idTableAssessmentCommandModalityLinks);\n }\n hookupTableAssessmentCommandModalityLinksFieldsCommandModality() {\n let fieldFlag = flagCommandModality;\n let optionList = Utils.getListFromDict(filterCommandModalities); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentCommandModalityLinks + ' td.' + flagCommandModality;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentCommandModalityLinksFieldsBribe() {\n let fieldFlag = flagBribe;\n let optionList = Utils.getListFromDict(filterBribes); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentCommandModalityLinks + ' td.' + flagBribe;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentCommandModalityLinksFieldsDistanceFromHandlerMetres() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagDistanceFromHandlerMetres + ' .' + flagDistanceFromHandlerMetres);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsInHearingRangeOfHandler() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsInHearingRangeOfHandler + ' .' + flagIsInHearingRangeOfHandler);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsInScentRangeOfHandler() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsInScentRangeOfHandler + ' .' + flagIsInScentRangeOfHandler);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsInSightOfHandler() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsInSightOfHandler + ' .' + flagIsInSightOfHandler);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsOnLead() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsOnLead + ' .' + flagIsOnLead);\n }\n hookupTableAssessmentCommandModalityLinksFieldsTrialCount() {\n // this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagTrialCount + ' .' + flagTrialCount);\n }\n hookupTableAssessmentCommandModalityLinksFieldsNotes() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' > tbody > tr > td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableAssessmentCommandModalityLinksFieldsResponses() {\n let eventType = \"click\";\n let selector = idTableAssessmentCommandModalityLinks + ' td.' + flagAssessmentResponse + ' div.' + flagAssessmentResponse;\n let handler = (event, element) => {\n let parentTd = DOM.getCellFromElement(element);\n let rowAssessmentCommandModalityLink = parentTd.closest('tr.' + flagAssessmentCommandModalityLink);\n let idAssessmentCommandModalityLink = rowAssessmentCommandModalityLink.getAttribute(attrIdAssessmentCommandModalityLink);\n let responsesTable = document.createElement(\"table\");\n responsesTable.id = idTableAssessmentResponses.replace(\"#\", \"\");\n responsesTable.classList.add(flagTableMain, flagAssessmentResponse);\n\n let head = document.createElement(\"thead\");\n let headRow = document.createElement(\"tr\");\n let thResponseQualityMetric = document.createElement(\"th\");\n thResponseQualityMetric.classList.add(flagResponseQualityMetric);\n thResponseQualityMetric.innerText = 'Response Quality Metric';\n headRow.appendChild(thResponseQualityMetric);\n let thObedienceLevel = document.createElement(\"th\");\n thObedienceLevel.classList.add(flagObedienceLevel);\n thObedienceLevel.innerText = 'Obedience Level';\n headRow.appendChild(thObedienceLevel);\n let thValueMeasured = document.createElement(\"th\");\n thValueMeasured.classList.add(flagValueMeasured);\n thValueMeasured.innerText = 'Value Measured';\n headRow.appendChild(thValueMeasured);\n let thNotes = document.createElement(\"th\");\n thNotes.classList.add(flagNotes);\n thNotes.innerText = 'Notes';\n headRow.appendChild(thNotes);\n let thActive = document.createElement(\"th\");\n thActive.classList.add(flagActive);\n let templateAddIcon = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagAdd);\n thActive.appendChild(templateAddIcon.cloneNode(true));\n headRow.appendChild(thActive);\n head.appendChild(headRow);\n responsesTable.appendChild(head);\n\n let body = document.createElement(\"tbody\");\n \n let assessmentCommandModalityLinks = assessment[flagAssessmentCommandModalityLink].filter(link => link[attrIdAssessmentCommandModalityLink] == idAssessmentCommandModalityLink);\n let assessmentCommandModalityLink = (assessmentCommandModalityLinks == null || assessmentCommandModalityLinks.length == 0) ? null : assessmentCommandModalityLinks[0];\n let responses = (assessmentCommandModalityLink == null) ? null : assessmentCommandModalityLink[flagAssessmentResponse];\n \n console.log({ assessmentCommandModalityLinks, responses });\n if (responses != null && responses.length > 0) {\n for (let responseKey in Object.keys(responses)) {\n let response = responses[responseKey];\n let row = PageDogAssessment.createNewRowTableAssessmentResponses(response);\n body.appendChild(row);\n }\n }\n responsesTable.appendChild(body);\n\n parentTd.innerHTML = responsesTable.outerHTML;\n\n let responseRows = parentTd.querySelectorAll('tbody tr.' + flagAssessmentResponse);\n if (responseRows != null && responseRows.length > 0) {\n for (let indexRow = 0; indexRow < responseRows.length; indexRow++) {\n let row = responseRows[indexRow];\n // let idAssessmentResponse = row.getAttribute(attrIdAssessmentResponse);\n \n let response = responses[indexRow]; // idAssessmentResponse];\n console.log({ indexRow, row, response }); // idAssessmentResponse,\n let inputValueMeasured = row.querySelector('td.' + flagValueMeasured + ' .' + flagValueMeasured);\n DOM.setElementValueCurrent(inputValueMeasured, response[flagValueMeasured]);\n let inputNotes = row.querySelector('td.' + flagNotes + ' .' + flagNotes);\n DOM.setElementValueCurrent(inputNotes, response[flagNotes]);\n }\n }\n\n this.hookupTablesAssessmentResponses();\n };\n Events.hookupEventHandler(\n eventType\n , selector\n , handler\n );\n this.hookupTablesAssessmentResponses();\n }\n static createNewRowTableAssessmentResponses(response) {\n if (response == null) response = {\n [attrIdAssessmentResponse]: null\n , [attrIdResponseQualityMetric]: {\n [attrIdResponseQualityMetric]: 0\n }\n , [attrIdObedienceLevel]: {\n [attrIdObedienceLevel]: 0\n }\n , [flagValueMeasured]: ''\n , [flagNotes]: ''\n , [flagActive]: true\n };\n console.log({ response });\n let isNew = (response[attrIdAssessmentResponse] == null || response[attrIdAssessmentResponse] < 1);\n let row = document.createElement(\"tr\");\n row.classList.add(flagAssessmentResponse);\n if (isNew) row.classList.add(flagRowNew);\n row.setAttribute(attrIdAssessmentResponse, response[attrIdAssessmentResponse]);\n\n let tdResponseQualityMetric = document.createElement(\"td\");\n tdResponseQualityMetric.classList.add(flagResponseQualityMetric, flagDdlPreview);\n let divResponseQualityMetric = document.createElement(\"div\");\n divResponseQualityMetric.classList.add(flagResponseQualityMetric);\n let idResponseQualityMetric = response[attrIdResponseQualityMetric][attrIdResponseQualityMetric];\n let responseQualityMetric = filterResponseQualityMetrics[idResponseQualityMetric];\n DOM.setElementAttributesValuesCurrentAndPrevious(divResponseQualityMetric, idResponseQualityMetric);\n divResponseQualityMetric.innerText = (responseQualityMetric == null) ? '' : responseQualityMetric[flagName];\n tdResponseQualityMetric.appendChild(divResponseQualityMetric);\n row.appendChild(tdResponseQualityMetric);\n\n let tdObedienceLevel = document.createElement(\"td\");\n tdObedienceLevel.classList.add(flagObedienceLevel, flagDdlPreview);\n let divObedienceLevel = document.createElement(\"div\");\n divObedienceLevel.classList.add(flagObedienceLevel);\n let idObedienceLevel = response[attrIdObedienceLevel][attrIdObedienceLevel];\n let obedienceLevel = filterObedienceLevels[idObedienceLevel];\n DOM.setElementAttributesValuesCurrentAndPrevious(divObedienceLevel, idObedienceLevel);\n divObedienceLevel.innerText = (obedienceLevel == null) ? '' : obedienceLevel[flagName];\n tdObedienceLevel.appendChild(divObedienceLevel);\n row.appendChild(tdObedienceLevel);\n\n let tdValueMeasured = document.createElement(\"td\");\n tdValueMeasured.classList.add(flagValueMeasured, flagDdlPreview);\n let inputValueMeasured = document.createElement(\"input\");\n inputValueMeasured.type = \"number\";\n inputValueMeasured.classList.add(flagValueMeasured);\n let valueMeasured = response[flagValueMeasured];\n DOM.setElementValueCurrent(inputValueMeasured, valueMeasured);\n DOM.setElementAttributeValuePrevious(inputValueMeasured, valueMeasured);\n tdValueMeasured.appendChild(inputValueMeasured);\n row.appendChild(tdValueMeasured);\n\n let tdNotes = document.createElement(\"td\");\n tdNotes.classList.add(flagNotes, flagDdlPreview);\n let inputNotes = document.createElement(\"textarea\");\n inputNotes.classList.add(flagNotes);\n let notes = response[flagNotes];\n DOM.setElementValueCurrent(inputNotes, notes);\n DOM.setElementAttributeValuePrevious(inputNotes, notes);\n tdNotes.appendChild(inputNotes);\n row.appendChild(tdNotes);\n\n console.log(inputValueMeasured.tagName);\n console.log(inputNotes.tagName);\n console.log({ valueMeasured, notes });\n\n let tdActive = document.createElement(\"td\");\n tdActive.classList.add(flagActive, flagDdlPreview);\n let templateAddIcon = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagAdd);\n let templateDeleteIcon = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagDelete);\n let buttonActive = (response[flagActive]) ? templateDeleteIcon.cloneNode(true) : templateAddIcon.cloneNode(true);\n tdActive.appendChild(buttonActive);\n row.appendChild(tdActive);\n\n return row;\n }\n hookupTablesAssessmentResponses() {\n this.hookupTableAssessmentResponsesFieldsResponseQualityMetric();\n this.hookupTableAssessmentResponsesFieldsObedienceLevel();\n this.hookupTableAssessmentResponsesFieldsValueMeasured();\n this.hookupTableAssessmentResponsesFieldsNotes();\n this.hookupTableAssessmentResponsesFieldsActive();\n }\n hookupTableAssessmentResponsesFieldsResponseQualityMetric() {\n let fieldFlag = flagResponseQualityMetric;\n let optionList = Utils.getListFromDict(filterResponseQualityMetrics); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentResponses + ' td.' + flagResponseQualityMetric;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentResponsesFieldsObedienceLevel() {\n let fieldFlag = flagObedienceLevel;\n let optionList = Utils.getListFromDict(filterObedienceLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentResponses + ' td.' + flagObedienceLevel;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentResponsesFieldsValueMeasured() {\n this.hookupChangeHandlerTableCells(idTableAssessmentResponses + ' td.' + flagValueMeasured + ' .' + flagValueMeasured);\n }\n hookupTableAssessmentResponsesFieldsNotes() {\n this.hookupChangeHandlerTableCells(idTableAssessmentResponses + ' td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableAssessmentResponsesFieldsActive() {\n this.hookupFieldsActive(flagAssessmentResponse, (event, element) => { this.handleClickAddRowTableAssessmentResponses(event, element); });\n }\n handleClickAddRowTableAssessmentResponses(event, button) {\n event.stopPropagation();\n let tableResponses = DOM.getClosestParent(button, \"table\");\n let tbody = tableResponses.querySelector(\":scope > tbody\");\n let row = PageDogAssessment.createNewRowTableAssessmentResponses(null);\n if (tbody.classList.contains(flagIsCollapsed)) return;\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableAssessmentResponses + ' > tbody > tr').length;\n row.setAttribute(attrIdAssessmentResponse, -1 - countRows);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTablesAssessmentResponses();\n this.postInitialiseAssessmentResponseRowNewCallback(tbody);\n }\n postInitialiseAssessmentResponseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagResponseQualityMetric + ' div.' + flagResponseQualityMetric\n , ',td.' + flagObedienceLevel + ' div.' + flagObedienceLevel\n , ',td.' + flagValueMeasured + ' div.' + flagValueMeasured\n , ',td.' + flagNotes + ' div.' + flagNotes\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n let countActiveRows = tbody.querySelectorAll('td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagDelete).length;\n /*\n newRows.filter(row => {\n let activeButton = row.querySelector('td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n return activeButton.classList.contains(flagDelete);\n }).length;\n */\n let rowAssessmentCommandModalityLink = DOM.getRowFromElement(tbody);\n let divTrialCount = rowAssessmentCommandModalityLink.querySelector('td.' + flagTrialCount + ' div.' + flagTrialCount);\n divTrialCount.innerText = countActiveRows;\n }\n\n hookupTableAssessmentCommandModalityLinksFieldsActive() {\n this.hookupFieldsActive(flagAssessmentCommandModalityLink, (event, element) => { this.handleClickAddRowTableAssessmentCommandModalityLinks(event, element); });\n }\n handleClickAddRowTableAssessmentCommandModalityLinks(event, button) {\n event.stopPropagation();\n _rowBlankAssessmentCommandModalityLink.setAttribute(attrIdAssessmentCommandModalityLink, -1 - _rowBlankAssessmentCommandModalityLink.getAttribute(attrIdAssessmentCommandModalityLink));\n let tbody = document.querySelector(idTableAssessmentCommandModalityLinks + ' tbody');\n if (tbody.classList.contains(flagIsCollapsed)) return;\n let row = _rowBlankAssessmentCommandModalityLink.cloneNode(true);\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableAssessmentCommandModalityLinks + ' > tbody > tr').length;\n row.setAttribute(attrIdAssessmentCommandModalityLink, -1 - countRows);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTableAssessmentCommandModalityLinks();\n this.postInitialiseAssessmentCommandModalityLinkRowNewCallback(tbody);\n }\n postInitialiseAssessmentCommandModalityLinkRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n , ',td.' + flagCommandModality + ' div.' + flagCommandModality\n , ',td.' + flagBribe + ' div.' + flagBribe\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogAssessments extends TableBasePage {\n static hash = hashPageDogAssessments;\n static attrIdRowObject = attrIdAssessment;\n callSaveTableContent = API.saveAssessments;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterWeather();\n this.hookupFilterLightingLevel();\n this.hookupFilterLocation();\n this.hookupFilterHandler();\n this.hookupFilterActive();\n }\n hookupFilterWeather() {\n this.hookupFilter(attrIdWeather);\n }\n hookupFilterLightingLevel() {\n this.hookupFilter(attrIdLightingLevel);\n }\n hookupFilterHandler() {\n this.hookupFilter(flagUserHandler);\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputTemperatureCelcius = row.querySelector('td.' + flagTemperatureCelcius + ' input');\n let inputNotes = row.querySelector('td.' + flagNotes + ' textarea');\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdAssessment] = row.getAttribute(attrIdAssessment);\n jsonRow[attrIdWeather] = this.getIdWeatherRow(row);\n jsonRow[attrIdLightingLevel] = this.getIdLightingLevelRow(row);\n jsonRow[flagTemperatureCelcius] = DOM.getElementAttributeValueCurrent(inputTemperatureCelcius);\n jsonRow[attrIdLocation] = this.getIdLocationRow(row);\n jsonRow[flagUserHandler] = this.getIdUserHandlerRow(row);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n getIdWeatherRow(tr) {\n let elementWeather = tr.querySelector('td.' + flagWeather + ' .' + flagWeather);\n return DOM.getElementAttributeValueCurrent(elementWeather);\n }\n getIdLightingLevelRow(tr) {\n let elementLightingLevel = tr.querySelector('td.' + flagLightingLevel + ' .' + flagLightingLevel);\n return DOM.getElementAttributeValueCurrent(elementLightingLevel);\n }\n getIdLocationRow(tr) {\n let elementLocation = tr.querySelector('td.' + flagLocation + ' .' + flagLocation);\n return DOM.getElementAttributeValueCurrent(elementLocation);\n }\n getIdUserHandlerRow(tr) {\n let elementUserHandler = tr.querySelector('td.' + flagUserHandler + ' .' + flagUserHandler);\n return DOM.getElementAttributeValueCurrent(elementUserHandler);\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDetail + ' .' + flagDetail\n ].join('');\n let detailButton = newestRow.querySelector('td.' + flagDetail + ' .' + flagDetail); /*.forEach((clickableElement) => {\n clickableElement.\n clickableElement.click();\n });\n */\n newestRow.classList.add(flagIsCollapsed);\n detailButton.click();\n // console.log({ newestRow, detailButton });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsDetail();\n this.hookupFieldsWeather();\n this.hookupFieldsLightingLevel();\n this.hookupFieldsTemperature();\n this.dogMixin.hookupFieldsLocation();\n this.hookupFieldsHandler();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsDetail() {\n Events.hookupEventHandler(\n \"click\" // eventType\n , idTableMain + ' td.' + flagDetail + ' button.' + flagDetail // selector\n , (event, element) => {\n let parentTr = DOM.getRowFromElement(element);\n let idAssessment = parentTr.getAttribute(attrIdAssessment);\n /*\n console.log(\"click detail\");\n console.log({ element, parentTr, idAssessment });\n const data = {};\n const params = {\n [attrIdAssessment]: idAssessment\n };\n API.request(\n hashPageDogAssessment // hashEndpoint\n , 'GET' // method\n , data\n , params\n );\n */\n\n let formFilters = TableBasePage.getFormFilters();\n let filtersJson = DOM.convertForm2JSON(formFilters);\n filtersJson[attrIdAssessment] = idAssessment;\n Utils.consoleLogIfNotProductionEnvironment(\"hookupFieldsDetail\");\n Utils.consoleLogIfNotProductionEnvironment(\"formFilters\");\n Utils.consoleLogIfNotProductionEnvironment(formFilters);\n Utils.consoleLogIfNotProductionEnvironment(\"filtersJson\");\n Utils.consoleLogIfNotProductionEnvironment(filtersJson);\n this.leave();\n API.goToHash(hashPageDogAssessment, filtersJson);\n }\n );\n }\n hookupFieldsWeather() {\n this.hookupTableCellDdlPreviews(\n flagWeather\n , Utils.getListFromDict(filterWeathers) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsLightingLevel() {\n this.hookupTableCellDdlPreviews(\n flagLightingLevel\n , Utils.getListFromDict(filterLightingLevels) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsTemperature() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagTemperatureCelcius + ' input.' + flagTemperatureCelcius);\n }\n hookupFieldsHandler() {\n this.hookupTableCellDdlPreviews(\n flagUserHandler\n , Utils.getListFromDict(filterUserHandlers) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCalendarEntries extends TableBasePage {\n static hash = hashPageDogCalendarEntries;\n static attrIdRowObject = attrIdCalendarEntry;\n callSaveTableContent = API.saveCalendarEntries;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n // this.hookupFilterCalendarEntryType();\n this.hookupFilterActive();\n }\n /*\n hookupFilterCalendarEntryType() {\n let filterSelector = idFormFilters + ' #' + attrIdCalendarEntryType;\n let filterCalendarEntryTypeOld = document.querySelector(filterSelector);\n filterCalendarEntryTypeOld.removeAttribute('id');\n let parentDiv = filterCalendarEntryTypeOld.parentElement;\n let isChecked = (DOM.getElementAttributeValuePrevious(parentDiv) == \"True\");\n let filterCalendarEntryTypeNew = document.querySelector(idFormFilters + ' div.' + flagCalendarEntryTypeOnly + '.' + flagContainerInput + ' svg.' + flagCalendarEntryTypeOnly);\n filterCalendarEntryTypeNew.setAttribute('id', flagCalendarEntryTypeOnly);\n if (isChecked) filterCalendarEntryTypeNew.classList.add(flagIsChecked);\n\n Events.hookupEventHandler(\"click\", filterSelector, (event, filterCalendarEntryType) => {\n Utils.consoleLogIfNotProductionEnvironment({ filterCalendarEntryType });\n Utils.consoleLogIfNotProductionEnvironment({ [filterCalendarEntryType.tagName]: filterCalendarEntryType.tagName });\n let svgElement = (filterCalendarEntryType.tagName.toUpperCase() == 'SVG') ? filterCalendarEntryType : filterCalendarEntryType.parentElement;\n let wasChecked = svgElement.classList.contains(flagIsChecked);\n if (wasChecked) {\n svgElement.classList.remove(flagIsChecked);\n }\n else {\n svgElement.classList.add(flagIsChecked);\n }\n return this.handleChangeFilter(event, filterCalendarEntryType);\n });\n let filter = document.querySelector(filterSelector);\n let filterValuePrevious = DOM.getElementValueCurrent(filter);\n filter.setAttribute(attrValueCurrent, filterValuePrevious);\n filter.setAttribute(attrValuePrevious, filterValuePrevious);\n }\n */\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n Utils.consoleLogIfNotProductionEnvironment({ row });\n if (row == null) return;\n let inputCode = row.querySelector('td.' + flagCode + ' .' + flagCode);\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n \n console.log(\"inputCode\");\n console.log(inputCode);\n\n let jsonRow = {};\n jsonRow[attrIdCalendarEntry] = row.getAttribute(attrIdCalendarEntry);\n jsonRow[flagCode] = DOM.getElementAttributeValueCurrent(inputCode);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n // let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCodeTable();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","import BasePage from \"../base.js\";\n\nexport default class PageAccessibilityReport extends BasePage {\n static hash = hashPageAccessibilityReport;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","import BasePage from \"../base.js\";\n\nexport default class PageAccessibilityStatement extends BasePage {\n static hash = hashPageAccessibilityStatement;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport BasePage from \"../base.js\";\n\nexport default class PageLicense extends BasePage {\n static hash = hashPageLicense;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}","\nimport BasePage from \"../base.js\";\n\nexport default class PagePrivacyPolicy extends BasePage {\n static hash = hashPagePrivacyPolicy;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}","import BasePage from \"../base.js\";\n\nexport default class PageRetentionSchedule extends BasePage {\n static hash = hashPageDataRetentionSchedule;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport API from \"../../api.js\";\nimport DogTableMixinPage from \"../dog/mixin_table.js\";\nimport DOM from \"../../dom.js\";\nimport TableBasePage from \"../base_table.js\";\n\nexport default class PageUser extends TableBasePage {\n static hash = hashPageUserAccount;\n static attrIdRowObject = attrIdUser;\n callSaveTableContent = API.saveUsers;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupTableMain();\n }\n\n\n hookupFilters() {\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getTableRecords(dirtyOnly = false) {\n dirtyOnly = true;\n let container = document.querySelector('.' + flagCard + '.' + flagUser);\n return [this.getJsonRow(container)];\n }\n getJsonRow(container) {\n console.log(\"getJsonRow: \", container);\n if (container == null) return;\n let inputFirstname = container.querySelector(' #' + flagFirstname);\n let inputSurname = container.querySelector(' #' + flagSurname);\n let inputEmail = container.querySelector(' #' + flagEmail);\n let divRole = container.querySelector('.' + flagRole);\n\n let idUser = container.getAttribute(attrIdUser);\n \n let jsonRow = {\n [attrIdUserAuth0]: null\n , [flagEmail]: null\n , [flagIsEmailVerified]: null\n , [attrIdCompany]: company[attrIdCompany]\n , [flagIsSuperUser]: null\n , [flagCanAdminDog]: null\n , [flagCanAdminUser]: null\n , [flagCompany]: null\n , [flagRole]: null\n };\n\n jsonRow[attrIdUser] = idUser;\n jsonRow[attrIdRole] = DOM.getElementAttributeValueCurrent(divRole);\n jsonRow[flagFirstname] = DOM.getElementAttributeValueCurrent(inputFirstname);\n jsonRow[flagSurname] = DOM.getElementAttributeValueCurrent(inputSurname);\n jsonRow[flagEmail] = DOM.getElementAttributeValueCurrent(inputEmail);\n return jsonRow;\n }\n \n initialiseRowNew(tbody, row) {\n }\n postInitialiseRowNewCallback(tbody) {\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsFirstname();\n this.hookupFieldsSurname();\n this.hookupFieldsEmail();\n }\n hookupFieldsFirstname() {\n this.hookupChangeHandlerTableCells('.' + flagCard + '.' + flagUser + ' #' + flagFirstname);\n }\n hookupFieldsSurname() {\n this.hookupChangeHandlerTableCells('.' + flagCard + '.' + flagUser + ' #' + flagSurname);\n }\n hookupFieldsEmail() {\n this.hookupChangeHandlerTableCells('.' + flagCard + '.' + flagUser + ' #' + flagEmail);\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport API from \"../../api\";\nimport DogTableMixinPage from \"../dog/mixin_table\";\nimport DOM from \"../../dom\";\nimport TableBasePage from \"../base_table\";\nimport Utils from \"../../lib/utils\";\n\nexport default class PageUsers extends TableBasePage {\n static hash = hashPageUserAccounts;\n static attrIdRowObject = attrIdUser;\n callSaveTableContent = API.saveUsers;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterCompany();\n this.hookupFilterActive();\n }\n hookupFilterCompany() {\n this.hookupFilter(attrIdCompany); \n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n // let tdCompany = row.querySelector('td.' + flagCompany);\n let inputRole = row.querySelector('td.' + flagRole + ' .' + flagRole);\n let inputFirstname = row.querySelector('td.' + flagFirstname + ' .' + flagFirstname);\n let inputSurname = row.querySelector('td.' + flagSurname + ' .' + flagSurname);\n let inputNotes = row.querySelector('td.' + flagNotes + ' .' + flagNotes);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {\n [attrIdUserAuth0]: null\n , [flagEmail]: null\n , [flagIsEmailVerified]: null\n , [attrIdCompany]: company[attrIdCompany]\n , [flagIsSuperUser]: null\n , [flagCanAdminDog]: null\n , [flagCanAdminUser]: null\n , [flagCompany]: null\n , [flagRole]: null\n };\n jsonRow[attrIdUser] = row.getAttribute(attrIdUser);\n // jsonRow[attrIdCompany] = tdCompany.getAttribute(attrIdCompany);\n jsonRow[attrIdRole] = DOM.getElementAttributeValueCurrent(inputRole);\n jsonRow[flagFirstname] = DOM.getElementAttributeValueCurrent(inputFirstname);\n jsonRow[flagSurname] = DOM.getElementAttributeValueCurrent(inputSurname);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n \n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagRole + ' div.' + flagRole\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsRole();\n this.hookupFieldsFirstname();\n this.hookupFieldsSurname();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsRole() {\n this.hookupTableCellDdlPreviews(\n flagRole\n , Utils.getListFromDict(filterRoles) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsFirstname() {\n this.hookupChangeHandlerTableCells(flagFirstname);\n }\n hookupFieldsSurname() {\n this.hookupChangeHandlerTableCells(flagSurname);\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport BasePage from \"../base.js\";\n\nexport default class PageUserCompany extends BasePage {\n static hash = hashPageUserCompany;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","\n// Pages\n// Core\nimport PageHome from './pages/core/home.js';\nimport PageContact from './pages/core/contact.js';\nimport PageContactSuccess from './pages/core/contact-success.js';\nimport PageApplyFoundingPartner from './pages/core/apply-founding-partner.js';\nimport PageApplyFoundingPartnerSuccess from './pages/core/apply-founding-partner-success.js';\n// Blog\nimport PageBlogHome from './pages/blog/home.js';\n// Dog\nimport PageDogHome from './pages/dog/home.js';\nimport PageDogCommandCategories from './pages/dog/command_categories.js';\nimport PageDogCommands from './pages/dog/commands.js';\nimport PageDogDogCommandLinks from './pages/dog/dog_command_links.js';\nimport PageDogDogs from './pages/dog/dogs.js';\nimport PageDogLocations from './pages/dog/locations.js';\nimport PageDogButtonIcons from './pages/dog/button_icons.js';\nimport PageDogCommandButtonLinks from './pages/dog/command_button_links.js';\nimport PageDogAssessment from './pages/dog/assessment.js';\nimport PageDogAssessments from './pages/dog/assessments.js';\nimport PageDogCalendarEntries from './pages/dog/calendar_entries.js'\n// Legal\nimport PageAccessibilityReport from './pages/legal/accessibility_report.js';\nimport PageAccessibilityStatement from './pages/legal/accessibility_statement.js';\nimport PageLicense from './pages/legal/license.js';\nimport PagePrivacyPolicy from './pages/legal/privacy_policy.js';\nimport PageRetentionSchedule from './pages/legal/retention_schedule.js';\n// User\n// import PageUserLogin from './pages/user/login.js';\n// import PageUserLogout from './pages/user/logout.js';\nimport PageUser from './pages/user/user.js';\nimport PageUsers from './pages/user/users.js';\nimport PageUserCompany from './pages/user/company.js';\n\nimport API from './api.js';\nimport DOM from './dom.js';\nimport Utils from './lib/utils.js';\n\n\nexport default class Router {\n constructor() {\n // Pages\n this.pages = {};\n // Core\n this.pages[hashPageHome] = { name: 'PageHome', module: PageHome };\n this.pages[hashPageContact] = { name: 'PageContact', module: PageContact };\n this.pages[hashPageContactSuccess] = { name: 'PageContactSuccess', module: PageContactSuccess };\n this.pages[hashPageApplyFoundingPartner] = { name: 'PageApplyFoundingPartner', module: PageApplyFoundingPartner };\n this.pages[hashPageApplyFoundingPartnerSuccess] = { name: 'PageApplyFoundingPartnerSuccess', module: PageApplyFoundingPartnerSuccess };\n // Blog\n this.pages[hashPageBlogHome] = { name: 'PageBlogHome', module: PageBlogHome };\n // Dog\n this.pages[hashPageDogHome] = { name: 'PageDogHome', module: PageDogHome };\n this.pages[hashPageDogCommandCategories] = { name: 'PageDogCommands', module: PageDogCommandCategories };\n this.pages[hashPageDogCommands] = { name: 'PageDogCommands', module: PageDogCommands };\n this.pages[hashPageDogDogCommandLinks] = { name: 'PageDogDogCommandLinks', module: PageDogDogCommandLinks };\n this.pages[hashPageDogDogs] = { name: 'PageDogDogs', module: PageDogDogs };\n this.pages[hashPageDogLocations] = { name: 'PageDogLocations', module: PageDogLocations };\n this.pages[hashPageDogButtonIcons] = { name: 'PageDogButtonIcons', module: PageDogButtonIcons };\n this.pages[hashPageDogCommandButtonLinks] = { name: 'PageDogCommandButtonLinks', module: PageDogCommandButtonLinks };\n this.pages[hashPageDogAssessment] = { name: 'PageDogAssessment', module: PageDogAssessment };\n this.pages[hashPageDogAssessments] = { name: 'PageDogAssessments', module: PageDogAssessments };\n this.pages[hashPageDogCalendarEntries] = { name: 'PageDogCalendarEntries', module: PageDogCalendarEntries };\n // Legal\n this.pages[hashPageAccessibilityStatement] = { name: 'PageAccessibilityStatement', module: PageAccessibilityStatement };\n this.pages[hashPageDataRetentionSchedule] = { name: 'PageDataRetentionSchedule', module: PageRetentionSchedule };\n this.pages[hashPageLicense] = { name: 'PageLicense', module: PageLicense };\n this.pages[hashPagePrivacyPolicy] = { name: 'PagePrivacyPolicy', module: PagePrivacyPolicy };\n // User\n // this.pages[hashPageUserLogin] = { name: 'PageUserLogin', module: PageUserLogin }; // pathModule: './pages/user/login.js' };\n // this.pages[hashPageUserLogout] = { name: 'PageUserLogout', module: PageUserLogout }; // pathModule: './pages/user/logout.js' };\n this.pages[hashPageUserAccount] = { name: 'PageUser', module: PageUser };\n this.pages[hashPageUserAccounts] = { name: 'PageUsers', module: PageUsers };\n this.pages[hashPageUserCompany] = { name: 'PageUserCompany', module: PageUserCompany };\n // Routes\n this.routes = {};\n // Core\n this.routes[hashPageHome] = (isPopState = false) => this.navigateToHash(hashPageHome, isPopState);\n this.routes[hashPageContact] = (isPopState = false) => this.navigateToHash(hashPageContact, isPopState);\n this.routes[hashPageContactSuccess] = (isPopState = false) => this.navigateToHash(hashPageContactSuccess, isPopState);\n this.routes[hashPageApplyFoundingPartner] = (isPopState = false) => this.navigateToHash(hashPageApplyFoundingPartner, isPopState);\n this.routes[hashPageApplyFoundingPartnerSuccess] = (isPopState = false) => this.navigateToHash(hashPageApplyFoundingPartnerSuccess, isPopState);\n // Blog\n this.routes[hashPageBlogHome] = (isPopState = false) => this.navigateToHash(hashPageBlogHome, isPopState);\n // Dog\n this.routes[hashPageDogHome] = (isPopState = false) => this.navigateToHash(hashPageDogHome, isPopState);\n this.routes[hashPageDogCommandCategories] = (isPopState = false) => this.navigateToHash(hashPageDogCommandCategories, isPopState);\n this.routes[hashPageDogCommands] = (isPopState = false) => this.navigateToHash(hashPageDogCommands, isPopState);\n this.routes[hashPageDogDogCommandLinks] = (isPopState = false) => this.navigateToHash(hashPageDogDogCommandLinks, isPopState);\n this.routes[hashPageDogDogs] = (isPopState = false) => this.navigateToHash(hashPageDogDogs, isPopState);\n this.routes[hashPageDogLocations] = (isPopState = false) => this.navigateToHash(hashPageDogLocations, isPopState);\n this.routes[hashPageDogButtonIcons] = (isPopState = false) => this.navigateToHash(hashPageDogButtonIcons, isPopState);\n this.routes[hashPageDogCommandButtonLinks] = (isPopState = false) => this.navigateToHash(hashPageDogCommandButtonLinks, isPopState);\n this.routes[hashPageDogAssessment] = (isPopState = false) => this.navigateToHash(hashPageDogAssessment, isPopState);\n this.routes[hashPageDogAssessments] = (isPopState = false) => this.navigateToHash(hashPageDogAssessments, isPopState);\n this.routes[hashPageDogCalendarEntries] = (isPopState = false) => this.navigateToHash(hashPageDogCalendarEntries, isPopState);\n // Legal\n this.routes[hashPageAccessibilityStatement] = (isPopState = false) => this.navigateToHash(hashPageAccessibilityStatement, isPopState);\n this.routes[hashPageDataRetentionSchedule] = (isPopState = false) => this.navigateToHash(hashPageDataRetentionSchedule, isPopState);\n this.routes[hashPageLicense] = (isPopState = false) => this.navigateToHash(hashPageLicense, isPopState);\n this.routes[hashPagePrivacyPolicy] = (isPopState = false) => this.navigateToHash(hashPagePrivacyPolicy, isPopState);\n // User\n // this.routes[hashPageUserLogin] = (isPopState = false) => this.navigateToHash(hashPageUserLogin, isPopState);\n // this.routes[hashPageUserLogout] = (isPopState = false) => this.navigateToHash(hashPageUserLogout, isPopState);\n this.routes[hashPageUserAccount] = (isPopState = false) => this.navigateToHash(hashPageUserAccount, isPopState);\n this.routes[hashPageUserAccounts] = (isPopState = false) => this.navigateToHash(hashPageUserAccounts, isPopState);\n this.routes[hashPageUserCompany] = (isPopState = false) => this.navigateToHash(hashPageUserCompany, isPopState);\n this.initialize();\n }\n loadPage(hashPage, isPopState = false) {\n const PageClass = this.getClassPageFromHash(hashPage);\n this.currentPage = new PageClass(this);\n this.currentPage.initialize(isPopState);\n window.addEventListener('beforeunload', () => this.currentPage.leave());\n }\n getClassPageFromHash(hashPage) {\n \n let pageJson = this.pages[hashPage];\n try {\n const module = pageJson.module;\n return module; \n }\n catch (error) {\n Utils.consoleLogIfNotProductionEnvironment(\"this.pages: \", this.pages);\n console.error('Page not found:', hashPage);\n throw error;\n }\n }\n initialize() {\n window.addEventListener('popstate', this.handlePopState.bind(this));\n }\n handlePopState(event) {\n this.loadPageCurrent();\n }\n loadPageCurrent() {\n const hashPageCurrent = DOM.getHashPageCurrent();\n this.loadPage(hashPageCurrent);\n }\n navigateToHash(hash, data = null, params = null, isPopState = false) {\n let url = API.getUrlFromHash(hash, params);\n history.pushState({data: data, params: params}, '', hash);\n API.goToUrl(url, data);\n }\n \n navigateToUrl(url, data = null, appendHistory = true) {\n // this.beforeLeave();\n if (appendHistory) history.pushState(data, '', url);\n url = API.parameteriseUrl(url, data);\n API.goToUrl(url);\n }\n\n static loadPageBodyFromResponse(response) {\n DOM.loadPageBody(response.data);\n }\n}\n\nexport const router = new Router();\n","\n'use strict';\n\nimport DOM from './dom.js';\nimport Router from './router.js';\n\n\nclass App {\n constructor() {\n this.dom = new DOM();\n this.router = new Router();\n }\n\n initialize() {\n this.setupEventListeners();\n this.start();\n }\n\n setupEventListeners() {\n // document.addEventListener('click', this.handleGlobalClick.bind(this));\n }\n\n handleGlobalClick(event) {\n }\n\n start() {\n this.initPageCurrent();\n }\n\n initPageCurrent() {\n this.router.loadPageCurrent();\n }\n \n}\n\nconst app = new App();\n\nfunction domReady(fn) {\n if (document.readyState !== 'loading') {\n fn();\n } else {\n document.addEventListener('DOMContentLoaded', fn);\n }\n}\n\ndomReady(() => {\n app.initialize();\n});\n\nwindow.app = app;\n\nexport default app;","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};"],"names":["Validation","_classCallCheck","_createClass","key","value","isEmpty","object","undefined","length","isString","trim","i","isValidNumber","positiveOnly","isNaN","parseFloat","getDataContentType","params","data","contentType","JSON","stringify","Data","ContentType","arrayContainsItem","array","itemValue","hasItem","isJQueryElementArray","jQuery","document","querySelectorAll","is","isDate","Date","getTime","dictHasKey","d","k","areEqualDicts","dict1","dict2","keys1","Object","keys","keys2","_i3","_keys","imageExists","url","callback","img","Image","onload","onerror","src","toFixedOrDefault","decimalPlaces","defaultValue","arguments","toFixed","default","Utils","DOM","setElementAttributesValuesCurrentAndPrevious","element","setElementAttributeValueCurrent","setElementAttributeValuePrevious","setAttribute","attrValueCurrent","attrValuePrevious","setElementValuesCurrentAndPrevious","setElementValueCurrent","tagName","toUpperCase","type","checked","textContent","setElementValueCurrentIfEmpty","getElementValueCurrent","getCellFromElement","closest","getRowFromElement","flagRow","selector","getClosestParent","parentSelector","parent","parentElement","matches","convertForm2JSON","elementForm","dataForm","containersFilter","flagContainerInput","flagFilter","containerFilter","labelFilter","keyFilter","filter","indexFilter","querySelector","getAttribute","concat","loadPageBody","contentNew","pageBody","idPageBody","innerHTML","getHashPageCurrent","hashPageCurrent","body","dataset","page","updateAndCheckIsElementDirty","isElementDirty","isDirty","handleDirtyElement","toggleElementHasClassnameFlag","flagDirty","elementHasFlag","flag","elementAlreadyHasFlag","classList","contains","add","remove","hasDirtyChildrenContainer","container","hasDirtyChildrenNotDeletedContainer","flagDelete","returnVal","flagButton","flagActive","getElementAttributeValueCurrent","flagCheckbox","flagIsChecked","getElementAttributeValuePrevious","scrollToElement","scrollTop","offset","top","isElementInContainer","containerBounds","getBoundingClientRect","elementBounds","left","height","width","alertError","errorType","errorText","alert","createOptionUnselectedProductVariation","_defineProperty","flagProductVariationType","flagNameAttrOptionText","flagName","flagNameAttrOptionValue","attrIdProductVariationType","flagProductVariation","attrIdProductVariation","createOption","optionJson","text","option","createElement","selected","escapeHtml","div","unescapeHtml","html","innerText","Events","initialiseEventHandler","selectorElement","classInitialised","eventHandler","forEach","hookupEventHandler","eventType","flagInitialised","addEventListener","event","stopPropagation","LocalStorage","getLocalStorage","parse","localStorage","getItem","setLocalStorage","newLS","setItem","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","ownKeys","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","_objectSpread","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_defineProperties","_toPrimitive","toPrimitive","String","Number","API","getCsrfToken","idCSRFToken","_request","_callee","hashEndpoint","csrfToken","options","response","_args","_callee$","_context","getUrlFromHash","headers","flagCsrfToken","fetch","ok","status","json","t0","console","error","request","_x","hash","hashPageHome","parameteriseUrl","_pathHost","URLSearchParams","toString","goToUrl","window","location","href","goToHash","_loginUser","_callee2","_callee2$","_context2","flagCallback","hashPageUserLogin","loginUser","_saveUsers","_callee3","users","formFilters","comment","dataRequest","_callee3$","_context3","flagFormFilters","flagUser","flagComment","hashSaveUserUser","saveUsers","_x2","_x3","_x4","_saveCompanies","_callee4","companies","_callee4$","_context4","flagCompany","hashSaveDogCompany","saveCompanies","_x5","_x6","_x7","_saveCommandCategories","_callee5","commandCategories","_callee5$","_context5","flagCommandCategory","hashSaveDogCommandCategory","saveCommandCategories","_x8","_x9","_x10","_saveCommands","_callee6","commands","_callee6$","_context6","flagCommand","hashSaveDogCommand","saveCommands","_x11","_x12","_x13","_saveDogCommandLinks","_callee7","dogCommandLinks","_callee7$","_context7","flagDogCommandLink","hashSaveDogDogCommandLink","saveDogCommandLinks","_x14","_x15","_x16","_saveLocations","_callee8","locations","_callee8$","_context8","flagLocation","hashSaveDogLocation","saveLocations","_x17","_x18","_x19","_saveButtonIcons","_callee9","buttonIcons","_callee9$","_context9","flagButtonIcon","hashSaveDogButtonIcon","saveButtonIcons","_x20","_x21","_x22","_saveCommandButtonLinks","_callee10","links","_callee10$","_context10","flagCommandButtonLink","hashSaveDogCommandButtonLink","saveCommandButtonLinks","_x23","_x24","_x25","_saveAssessments","_callee11","assessments","_callee11$","_context11","flagAssessment","hashSaveDogAssessment","saveAssessments","_x26","_x27","_x28","_saveAssessmentsDistractionsAndResponses","_callee12","filtersJson","_callee12$","_context12","attrIdAssessment","hashSaveDogAssessmentDistractionAndResponse","saveAssessmentsDistractionsAndResponses","_x29","_x30","_x31","getListFromDict","dict","list","consoleLogIfNotProductionEnvironment","message","environment","is_production","log","OverlayConfirm","hookup","callbackSuccess","idOverlayConfirm","flagCancel","buttonCancel","overlay","style","visibility","flagSubmit","buttonConfirm","textarea","show","flagIsCollapsed","BusinessObjects","OverlayError","BasePage","router","title","titlePageCurrent","initialize","sharedInitialize","logInitialisation","hookupCommonElements","hookupLogos","hookupNavigation","hookupOverlays","_this","flagImageLogo","flagLogo","navigateToHash","idButtonHamburger","overlayHamburger","idOverlayHamburger","flagExpanded","hookupButtonsNavUserAccount","hookupButtonsNavUserLogout","hookupButtonsNavUserLogin","hookupButtonsNav","buttonSelector","_this2","button","pageHash","_this3","flagNavUserLogin","navigator","leave","Success","Message","hookupOverlayFromId","idOverlayError","idOverlay","display","hookupButtonSave","_this4","flagContainer","flagSave","target","setLocalStoragePage","dataPage","getLocalStoragePage","toggleShowButtonsSaveCancel","buttonContainerSelector","buttonSave","idButtonSave","idButtonCancel","isDirtyFilter","idTableMain","PageHome","_BasePage","_callSuper","_inherits","_superPropGet","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","_get","get","bind","_superPropBase","_setPrototypeOf","_wrapNativeSuper","Map","_isNativeFunction","has","set","Wrapper","_construct","Boolean","valueOf","Function","indexOf","_toArray","_arrayWithHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableRest","_toConsumableArray","_arrayWithoutHoles","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_iterableToArrayLimit","_createForOfIteratorHelper","_n2","F","test","hi","Or","gi","ne","zr","H","Mt","WeakSet","Ut","en","Fr","self","Blob","_i","URL","webkitURL","createObjectURL","Worker","revokeObjectURL","_unused","encodeURIComponent","mi","Qr","_Qr$v","_window$__svelte","__svelte","Set","wi","pi","yi","bi","Ei","xi","Wt","tn","rn","Je","W","$i","Mr","oe","nn","It","Yt","pe","ze","yt","re","bt","K","ye","et","Ke","St","ki","Zt","Ci","ln","ut","an","Ai","on","Ri","Ii","Et","xt","Pe","Si","Ti","Ni","sn","fn","Li","requestIdleCallback","setTimeout","dt","vt","un","cn","Gt","queueMicrotask","Di","Ur","dn","Pi","vn","Oi","zi","Fi","Mi","Ui","ji","Vi","Bi","qi","Hi","Wi","ue","reactions","equals","rv","wv","He","Yi","hn","ae","ce","Qi","P","Dn","includes","Zi","En","gn","A","ge","el","de","Lt","De","ctx","B","deps","effects","_n","we","Gi","Ji","Se","$n","mn","Ce","Tt","warn","D","Ge","O","Re","Xe","Te","Z","Ki","nodeType","le","Proxy","deleteProperty","isInteger","jr","w","m","z","T","Y","M","_iterator","_step","_step$value","err","Vr","wn","pn","yn","jt","userAgent","Element","Node","__click","__className","__attributes","__style","__e","Text","__t","Jt","createTextNode","me","G","appendChild","Br","Comment","he","after","before","Xi","wt","$t","kt","Oe","Kt","qr","ct","Ie","V","J","bn","Ct","ht","_a$reactions","tl","_unused2","rl","Nt","xn","Wr","At","_m$reactions","nl","Xt","hl","An","Cn","teardown","il","kn","al","ll","first","nodes_start","Rn","$","ol","_ol","Qe","sl","fl","ul","last","Fe","nodes_end","transitions","_f$effects","cl","Vt","_r$e","effect","reaction","Qt","dl","vl","outro","Bt","er","We","map","tr","Rt","_iterator2","_step2","In","gl","_iterator3","_step3","out","_iterator4","_step4","is_global","Hr","Sn","_iterator5","_step5","Tn","Nn","x","Ln","_l","ml","Yr","Pn","defaultPrevented","_iterator6","elements","_step6","__on_r","capture","On","wl","zn","qt","pl","ft","cancelBubble","startsWith","yl","passive","removeEventListener","bl","_iterator7","_step7","ownerDocument","composedPath","__root","assignedSlot","parentNode","host","disabled","_z","_z2","_iterator8","_step8","_loop","currentTarget","rr","content","Ae","ve","importNode","cloneNode","lastChild","El","ee","Fn","Mn","xl","_t$intro","intro","anchor","recover","Ye","_ref","_ref$props","props","events","context","_ref$intro","$$events","_iterator9","_step9","removeChild","Ht","WeakMap","$l","ke","_ref2","_ref3","parseInt","substring","Ze","_t2","kl","$$slots","children","Cl","_r$head","getRootNode","head","id","code","Zr","Al","Rl","removeAttribute","className","toggle","Il","Sl","Gr","hasAttribute","ie","Tl","Un","nodeName","Nl","_e$__attributes","namespaceURI","Jr","Ll","defaultChecked","Kr","Xr","jn","Dl","mt","Pl","C","_Pl","_Pl2","_ref4","be","N","$$legacy","X","se","U","Ol","zl","_e","te","_t$intro2","_r$get","_r$get2","_r$get3","hydrate","component","$$host","sync","_loop2","_Object$keys","_i2","$set","assign","$destroy","$on","_len","_key","Vn","HTMLElement","_HTMLElement","$$ctor","$$s","attachShadow","mode","$$l","$$c","$$l_u","_connectedCallback","_this5","_iterator10","_step10","_i4","_iterator11","_step11","_i5","_a","_iterator13","_step13","$$cn","Fl","$$d","attributes","$$g_p","pt","$$p_d","shadowRoot","$$me","$$r","_iterator12","_step12","reflect","attribute","connectedCallback","attributeChangedCallback","disconnectedCallback","_this6","_this7","find","toLowerCase","childNodes","slot","Ml","_Vn","_this8","Bn","TextEncoder","Ul","Uint8Array","padStart","join","jl","_jl","_args10","now","Math","round","random","qn","algorithm","challenge","salt","signature","_qn","crypto","subtle","digest","encode","t1","Vl","AbortController","promise","signal","aborted","number","took","controller","Bl","Intl","DateTimeFormat","resolvedOptions","timeZone","_unused3","ql","atob","charCodeAt","Hl","floor","Wl","_Wl","_callee13","_args13","_callee13$","_context13","_ref7","decrypt","iv","clearText","TextDecoder","decode","importKey","reject","E","ERROR","VERIFIED","VERIFYING","UNVERIFIED","EXPIRED","Yl","Zl","Gl","Jl","Kl","Xl","Ql","ea","ta","ra","na","ia","la","Lr","Dr","Ee","Me","min","hardwareConcurrency","tt","nr","ir","lr","rt","dispatchEvent","CustomEvent","detail","ar","documentElement","lang","split","Dt","origin","endsWith","Pt","wr","or","Q","ariaLinkLabel","expired","footer","label","verified","verifying","waitAlert","sr","Ue","R","j","nt","je","Ve","fe","xe","Ne","Xn","Qn","Hn","hr","gr","vr","clearTimeout","cr","dr","mr","I","Jn","pluginName","Ot","pr","it","$e","requestAnimationFrame","fr","btoa","_i6","_xe","destroy","ur","lt","Wn","_Wn","L","_","b","S","q","_L","qe","_L2","globalThis","Response","verifyurl","Er","Yn","Zn","blockedCountries","classifier","disableRules","email","expectedCountries","expectedLanguages","fields","ipAddress","Gn","reduce","replace","RegExp","_iterator14","altchaPlugins","_step14","clarify","dispatch","getConfiguration","xr","getFloatingAnchor","$r","getState","kr","solve","br","setState","Le","setFloatingAnchor","Cr","verify","_console","_len2","_key2","some","Kn","reportValidity","gt","_i7","_xe2","onErrorChange","preventDefault","requestSubmit","_r","_i8","_xe3","onStateChange","clientHeight","clientWidth","bottom","max","ei","_ei","_Zn","ot","st","vi","Pr","payload","classification","yr","_br","ti","maxnumber","solution","obfuscated","t2","t3","t4","_ti","_i10","_b2","_p","_args6","ceil","altchaCreateWorker","all","_i9","_b","postMessage","start","terminate","_it","auto","blockspam","customfetch","floatinganchor","delay","floatingoffset","floating","expire","challengeurl","debug","hidefooter","hidelogo","mockerror","refetchonexpire","spamfilter","strings","workers","workerurl","ri","state","_$e","_ref6","Ar","Rr","at","zt","Ir","ni","_t","Sr","Be","__change","Ft","ii","li","ai","oi","si","Tr","fi","Nr","ui","ci","di","required","configure","getPlugin","challengejson","plugins","customElements","Altcha","PageContact","hookupButtonSubmitFormContactUs","flagButtonPrimary","hashPageContact","PageContactSuccess","hashPageContactSuccess","PageApplyFoundingPartner","hookupButtonSubmitFormApplyFoundingPartnerUs","hashPageApplyFoundingPartner","PageApplyFoundingPartnerSuccess","hashPageApplyFoundingPartnerSuccess","PageBlogHome","hashPageBlogHome","PageDogHome","hookupDogHome","hashPageDogHome","getOptionJsonFromObjectJsonAndKeys","objectJson","keyText","keyValue","valueSelected","getOptionJsonFromObjectJson","getObjectText","getListObjectsFromIdDictAndCsv","idDict","idCsv","listObjects","ids","msgError","labelError","idLabelError","TableBasePage","cursorYInitial","rowInitial","placeholder","dragSrcEl","dragSrcRow","hookupTableCellDdls","isPopState","isSinglePageApp","hookupFilters","hookupButtonsSaveCancel","hookupTableMain","saveRecordsTableDirtySinglePageApp","saveRecordsTableDirty","filters","getFormFilters","filtersDefault","callFilterTableContent","sharedHookupFilters","hookupButtonApplyFilters","hookupSearchTextFilter","hookupFilterActive","filterSelector","idFormFilters","flagActiveOnly","filterActiveOld","parentDiv","isChecked","filterActiveNew","filterActive","svgElement","wasChecked","handleChangeFilter","filterValuePrevious","hookupFilter","filterFlag","handler","areDirtyFilters","tbody","rows","row","dirtyInputs","dirtyInput","isDirtyLabel","initialisedElements","initialisedElement","updateAndToggleShowButtonsSaveCancel","hookupFilterIsNotEmpty","flagIsNotEmpty","idButtonApplyFilters","flagSearch","hookupFilterDog","attrIdDog","hookupFilterCommandCategory","attrIdCommandCategory","filterCommandCategory","idCommandCategory","filterCommands","commandsInCategory","command","sortedCommands","sort","localeCompare","filterCommand","idCommandPrevious","Event","hookupFilterCommand","attrIdCommand","hookupFilterLocation","attrIdLocation","callbackLoadTableContent","table","getTableMain","bodyTable","rowsJson","flagRows","every","display_order","loadRowTable","rowJson","getAndLoadFilteredTableContentSinglePageApp","hookupButtonCancel","records","getTableRecords","formElement","idTextareaConfirm","callSaveTableContent","flagStatus","flagSuccess","_verbose","flagMessage","_this9","dirtyOnly","record","getJsonRow","_this10","_this11","handleClickAddRowTable","_rowBlank","attrIdRowObject","countRows","initialiseRowNew","prepend","postInitialiseRowNewCallback","_this12","cacheRowBlank","selectorRowNew","flagRowNew","rowBlankTemp","initialiseSliderDisplayOrderRowNew","slidersDisplayOrder","flagDisplayOrder","flagSlider","maxDisplayOrder","slider","sliderDisplayOrder","hookupSlidersDisplayOrderTable","selectorDisplayOrder","hookupChangeHandlerTableCells","inputSelector","_this13","handleChangeNestedElementCellTable","input","wasDirtyParentRows","getAllIsDirtyRowsInParentTree","wasDirtyElement","isDirtyElement","cascadeChangedIsDirtyNestedElementCellTable","isDirtyRow","wasDirtyRow","shift","hookupChangeHandlerTableCellsWhenNotCollapsed","_this14","hookupFieldsCodeTable","flagCode","hookupFieldsNameTable","hookupFieldsDescriptionTable","flagDescription","hookupFieldsNotesTable","flagNotes","hookupFieldsActive","_this15","flagTable","handleClickRowNew","selectorButton","selectorButtonDelete","selectorButtonUndelete","hookupButtonsRowDelete","hookupButtonsRowUndelete","_this16","changeHandler","handleClickButtonRowDelete","changeEvent","changeElement","_this17","valuePrevious","wasDirty","buttonAddTemplate","idContainerTemplateElements","flagAdd","buttonAdd","replaceWith","_this18","handleClickButtonRowUndelete","_this19","buttonDeleteTemplate","buttonDelete","hookupTdsAccessLevel","hookupTableCellDdlPreviews","flagAccessLevel","accessLevels","fieldFlag","optionList","_this20","cellSelector","ddlHookup","ddlSelector","handleClickTableCellDdlPreview","_this21","optionObjectList","_this22","idSelected","td","ddl","optionObjectJson","toggleColumnCollapsed","flagColumn","isCollapsed","toggleColumnHasClassnameFlag","toggleColumnHeaderCollapsed","hookupFieldsCommandCategory","_this23","idTable","filterCommandCategories","hookupCommandCategoryDdls","_this24","handleChangeCommandCategoryDdl","ddlCategory","idCommandCategoryRowOld","getIdCommandCategoryRow","idCommandCategoryRowNew","idCommandCategoryFilter","getIdCommandCategoryFilter","tdCommand","ddlCommand","hookupFieldsCommand","_this25","parentTr","tdCommandCategory","idCommandCategoryRow","filterCommandList","handleChangeCommandDdl","idCommandNew","getIdCommandRow","commandNew","divCommandCategory","ddlCommandCategory","elementCommandCategory","commandCategoryFilter","commandFilter","valueCurrentCommandCategoryFilter","valueCurrentCommandFilter","getHasCommandCategoryFilter","elementCommand","getIdCommandFilter","idCommand","getHasCommandFilter","idCommandFilter","hookupFieldsDog","flagDog","filterDogs","getIdDogRow","elementDog","columnFlag","isRequiredFlag","classnameFlag","columnTh","columnThHasFlag","toggleColumnHeaderHasClassnameFlag","isDirtyMainTable","DogMixinPage","pageCurrent","hookupLocalStorageDog","DogTableMixinPage","_DogMixinPage","hookupTable","hookupFieldsLocation","filterLocations","PageDogCommandCategories","_TableBasePage","dogMixin","inputCode","inputName","buttonActive","jsonRow","hashPageDogCommandCategories","PageDogCommands","inputHandSignalDefaultDescription","flagHandSignalDefaultDescription","inputCanHaveButton","flagCanHaveButton","inputNotes","newRows","newestRow","clickableElementsSelector","clickableElement","click","hookupTextareasHandSignalDefaultDescription","hookupFieldsCanHaveButton","hashPageDogCommands","PageDogDogCommandLinks","inputHandSignalDescription","flagHandSignalDescription","attrIdDogCommandLink","hookupTextareasHandSignalDescription","hashPageDogDogCommandLinks","PageDogDogs","saveDogs","inputAppearance","flagAppearance","inputMassKg","flagMassKg","hookupFieldsAppearance","hookupFieldsMassKg","hashPageDogDogs","PageDogLocations","flagLocationParent","getIdLocationParentRow","elementLocationParent","hookupFieldsLocationParent","idLocationRow","hashPageDogLocations","PageDogButtonIcons","attrIdButtonIcon","flagImage","getIdImageRow","elementImage","hookupFieldsImage","buttonicons","hashPageDogButtonIcons","PageDogCommandButtonLinks","hookupFilterButtonShape","hookupFilterColour","hookupFilterButtonIcon","attrIdButtonShape","attrIdColour","attrIdCommandButtonLink","hookupFieldsButtonShape","hookupFieldsColour","hookupFieldsButtonIcon","flagButtonShape","filterButtonShapes","flagColour","filterColours","filterButtonIcons","hashPageDogCommandButtonLinks","_rowBlankDistraction","_rowBlankAssessmentCommandModalityLink","PageDogAssessment","idTableAssessment","inputWeather","flagWeather","inputLightingLevel","flagLightingLevel","inputTemeratureCelcius","flagTemperatureCelcius","inputLocation","inputUserHandler","flagUserHandler","idAssessment","attrIdWeather","attrIdLightingLevel","flagDistraction","getDirtyDistractions","flagAssessmentCommandModalityLink","getDirtyAssessmentCommandModalityLinks","dirtyRows","idTableDistractions","dirtyRow","inputDistractionType","distractionType","inputIntensityLevelEmotional","intensityLevelEmotional","inputIntensityLevelScent","intensityLevelScent","inputIntensityLevelSight","intensityLevelSight","inputIntensityLevelSound","intensityLevelSound","inputIntensityLevelTouch","intensityLevelTouch","inputQuantity","quantity","inputProximityMetres","proximityMetres","notes","active","dirtyDistractions","indexRow","_dirtyDistractions$pu","flagDistractionType","flagDistractionIntensityLevelEmotional","flagDistractionIntensityLevelScent","flagDistractionIntensityLevelSight","flagDistractionIntensityLevelSound","flagDistractionIntensityLevelTouch","flagQuantity","flagProximityMetres","flagIcon","attrIdDistraction","attrIdDistractionType","idTableAssessmentCommandModalityLinks","idAssessmentCommandModalityLink","inputCommand","inputCommandModality","commandModality","inputBribe","bribe","inputDistanceFromHandler","distanceFromhandler","inputIsInHearingRangeOfHandler","isInHearingRangeOfHandler","inputIsInScentRangeOfHandler","isInScentRangeOfHandler","inputIsInSightOfHandler","isInSightOfHandler","inputIsOnLead","isOnLead","dirtyLinks","_dirtyLinks$push","attrIdAssessmentCommandModalityLink","flagCommandModality","flagBribe","flagDistanceFromHandlerMetres","flagIsInHearingRangeOfHandler","flagIsInScentRangeOfHandler","flagIsInSightOfHandler","flagIsOnLead","attrIdCommandModality","attrIdBribe","flagAssessmentResponse","getDirtyAssessmentResponses","rowAssessmentCommandModalityLink","idTableAssessmentResponses","inputResponseQualityMetric","responseQualityMetric","inputObedienceLevel","obedienceLevel","inputValueMeasured","valueMeasured","dirtyResponses","flagResponseQualityMetric","flagObedienceLevel","flagValueMeasured","attrIdAssessmentResponse","attrIdResponseQualityMetric","attrIdObedienceLevel","assessment","filterAssessment","hookupTableAssessmentHeader","hookupTableDistractions","hookupTableAssessmentCommandModalityLinks","hookupTableAssessmentFieldWeather","hookupTableAssessmentFieldLightingLevel","hookupTableAssessmentFieldTemperature","hookupTableAssessmentFieldLocation","hookupTableAssessmentFieldUserHandler","hookupTableAssessmentFieldNotes","filterWeathers","filterLightingLevels","filterUserHandlers","hookupTableDistractionsFieldsDistractionType","hookupTableDistractionsFieldsIntensityLevelEmotional","hookupTableDistractionsFieldsIntensityLevelScent","hookupTableDistractionsFieldsIntensityLevelSight","hookupTableDistractionsFieldsIntensityLevelSound","hookupTableDistractionsFieldsIntensityLevelTouch","hookupTableDistractionsFieldsQuantity","hookupTableDistractionsFieldsProximityMetres","hookupTableDistractionsFieldsNotes","hookupTableDistractionsFieldsActive","filterDistractionTypes","filterDistractionIntensityLevels","handleClickAddRowTableDistractions","postInitialiseDistractionRowNewCallback","hookupTableAssessmentCommandModalityLinksFieldsCommandCategory","hookupTableAssessmentCommandModalityLinksFieldsCommand","hookupTableAssessmentCommandModalityLinksFieldsCommandModality","hookupTableAssessmentCommandModalityLinksFieldsBribe","hookupTableAssessmentCommandModalityLinksFieldsDistanceFromHandlerMetres","hookupTableAssessmentCommandModalityLinksFieldsIsInHearingRangeOfHandler","hookupTableAssessmentCommandModalityLinksFieldsIsInScentRangeOfHandler","hookupTableAssessmentCommandModalityLinksFieldsIsInSightOfHandler","hookupTableAssessmentCommandModalityLinksFieldsIsOnLead","hookupTableAssessmentCommandModalityLinksFieldsTrialCount","hookupTableAssessmentCommandModalityLinksFieldsNotes","hookupTableAssessmentCommandModalityLinksFieldsResponses","hookupTableAssessmentCommandModalityLinksFieldsActive","filterCommandModalities","filterBribes","parentTd","responsesTable","flagTableMain","headRow","thResponseQualityMetric","thObedienceLevel","thValueMeasured","thNotes","thActive","templateAddIcon","assessmentCommandModalityLinks","link","assessmentCommandModalityLink","responses","responseKey","createNewRowTableAssessmentResponses","outerHTML","responseRows","hookupTablesAssessmentResponses","hookupTableAssessmentResponsesFieldsResponseQualityMetric","hookupTableAssessmentResponsesFieldsObedienceLevel","hookupTableAssessmentResponsesFieldsValueMeasured","hookupTableAssessmentResponsesFieldsNotes","hookupTableAssessmentResponsesFieldsActive","filterResponseQualityMetrics","filterObedienceLevels","handleClickAddRowTableAssessmentResponses","tableResponses","postInitialiseAssessmentResponseRowNewCallback","countActiveRows","divTrialCount","flagTrialCount","handleClickAddRowTableAssessmentCommandModalityLinks","postInitialiseAssessmentCommandModalityLinkRowNewCallback","isNew","tdResponseQualityMetric","flagDdlPreview","divResponseQualityMetric","idResponseQualityMetric","tdObedienceLevel","divObedienceLevel","idObedienceLevel","tdValueMeasured","tdNotes","tdActive","templateDeleteIcon","hashPageDogAssessment","PageDogAssessments","hookupFilterWeather","hookupFilterLightingLevel","hookupFilterHandler","inputTemperatureCelcius","getIdWeatherRow","getIdLightingLevelRow","getIdLocationRow","getIdUserHandlerRow","elementWeather","elementLightingLevel","elementLocation","elementUserHandler","flagDetail","detailButton","hookupFieldsDetail","hookupFieldsWeather","hookupFieldsLightingLevel","hookupFieldsTemperature","hookupFieldsHandler","hashPageDogAssessments","PageDogCalendarEntries","saveCalendarEntries","attrIdCalendarEntry","hashPageDogCalendarEntries","PageAccessibilityReport","hashPageAccessibilityReport","PageAccessibilityStatement","hashPageAccessibilityStatement","PageLicense","hashPageLicense","PagePrivacyPolicy","hashPagePrivacyPolicy","PageRetentionSchedule","hashPageDataRetentionSchedule","PageUser","flagCard","inputFirstname","flagFirstname","inputSurname","flagSurname","inputEmail","flagEmail","divRole","flagRole","idUser","attrIdUser","attrIdUserAuth0","flagIsEmailVerified","attrIdCompany","company","flagIsSuperUser","flagCanAdminDog","flagCanAdminUser","attrIdRole","hookupFieldsFirstname","hookupFieldsSurname","hookupFieldsEmail","hashPageUserAccount","PageUsers","hookupFilterCompany","inputRole","hookupFieldsRole","filterRoles","hashPageUserAccounts","PageUserCompany","hashPageUserCompany","Router","pages","module","routes","loadPage","hashPage","PageClass","getClassPageFromHash","currentPage","pageJson","handlePopState","loadPageCurrent","history","pushState","navigateToUrl","appendHistory","loadPageBodyFromResponse","App","dom","setupEventListeners","handleGlobalClick","initPageCurrent","app","domReady","readyState"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/main.bundle.js","mappings":"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","sources":["webpack://app/./static/js/lib/validation.js","webpack://app/./static/js/dom.js","webpack://app/./static/js/lib/events.js","webpack://app/./static/js/lib/local_storage.js","webpack://app/./static/js/api.js","webpack://app/./static/js/lib/utils.js","webpack://app/./static/js/components/common/temporary/overlay_confirm.js","webpack://app/./static/js/pages/base.js","webpack://app/./static/js/pages/core/home.js","webpack://app/./static/js/vendor/altcha.js","webpack://app/./static/js/pages/core/contact.js","webpack://app/./static/js/pages/core/contact-success.js","webpack://app/./static/js/pages/core/apply-founding-partner.js","webpack://app/./static/js/pages/core/apply-founding-partner-success.js","webpack://app/./static/js/pages/blog/home.js","webpack://app/./static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js","webpack://app/./static/js/pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js","webpack://app/./static/js/pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js","webpack://app/./static/js/pages/blog/newsletter-success.js","webpack://app/./static/js/pages/dog/home.js","webpack://app/./static/js/lib/business_objects/business_objects.js","webpack://app/./static/js/components/common/temporary/overlay_error.js","webpack://app/./static/js/pages/base_table.js","webpack://app/./static/js/pages/dog/mixin.js","webpack://app/./static/js/pages/dog/mixin_table.js","webpack://app/./static/js/pages/dog/command_categories.js","webpack://app/./static/js/pages/dog/commands.js","webpack://app/./static/js/pages/dog/dog_command_links.js","webpack://app/./static/js/pages/dog/dogs.js","webpack://app/./static/js/pages/dog/locations.js","webpack://app/./static/js/pages/dog/button_icons.js","webpack://app/./static/js/pages/dog/command_button_links.js","webpack://app/./static/js/pages/dog/assessment.js","webpack://app/./static/js/pages/dog/assessments.js","webpack://app/./static/js/pages/dog/calendar_entries.js","webpack://app/./static/js/pages/legal/accessibility_report.js","webpack://app/./static/js/pages/legal/accessibility_statement.js","webpack://app/./static/js/pages/legal/license.js","webpack://app/./static/js/pages/legal/privacy_policy.js","webpack://app/./static/js/pages/legal/retention_schedule.js","webpack://app/./static/js/pages/user/user.js","webpack://app/./static/js/pages/user/users.js","webpack://app/./static/js/pages/user/company.js","webpack://app/./static/js/router.js","webpack://app/./static/js/app.js","webpack://app/./static/css/main.css?0a91","webpack://app/./static/css/components/button.css?0e0b","webpack://app/./static/css/components/card.css","webpack://app/./static/css/components/dialog.css","webpack://app/./static/css/components/form.css?94e1","webpack://app/./static/css/components/image.css?9f9c","webpack://app/./static/css/components/label.css?b78f","webpack://app/./static/css/components/modal.css","webpack://app/./static/css/components/navigation.css","webpack://app/./static/css/components/overlay.css?6dfd","webpack://app/./static/css/components/table.css?e553","webpack://app/./static/css/layouts/header.css?da75","webpack://app/./static/css/layouts/footer.css?65e3","webpack://app/./static/css/layouts/table-main.css?8c15","webpack://app/./static/css/lib/reset.css","webpack://app/./static/css/lib/typography.css","webpack://app/./static/css/lib/utils.css","webpack://app/./static/css/lib/variables.css","webpack://app/./static/css/themes/light.css?855e"],"sourcesContent":["\nexport default class Validation {\n /*\n isNullOrWhitespace(v) {\n let txt = JSON.stringify(v).replace('/\\s\\g', '');\n return (txt == '' || 'null');\n }\n */\n\n static isEmpty(object) {\n\n let isEmpty = true;\n\n if (object !== null && object !== \"null\" && object !== undefined && object !== \"undefined\") {\n\n if (object.length == undefined) {\n isEmpty = false; // object exists but isn't a collection\n }\n else if (typeof object === \"function\") {\n isEmpty = false; // object is reference\n }\n else { // string or collection\n\n let isString = (typeof object == \"string\");\n\n if (isString) object = object.trim();\n\n if (object.length > 0) {\n\n if (isString) {\n isEmpty = false; // String greater than length 0\n }\n else {\n\n if (typeof object[0] != \"string\") {\n isEmpty = false;\n }\n else {\n for(let i = 0; i < object.length; i++) {\n if (object[i] != \"\") {\n isEmpty = false;\n break\n }\n }\n }\n }\n }\n }\n }\n\n return isEmpty;\n }\n\n static isValidNumber(value, positiveOnly) {\n return !Validation.isEmpty(value) && !isNaN(value) && (!positiveOnly || parseFloat(value) > 0);\n }\n\n static getDataContentType(params) {\n\n var data = null;\n var contentType = '';\n\n if (!Validation.isEmpty(params)) {\n\n if (typeof params === \"string\") {\n data = params;\n contentType = \"application/x-www-form-urlencoded; charset=UTF-8\";\n }\n else {\n data = JSON.stringify(params);\n contentType = \"application/json; charset=UTF-8\";\n }\n }\n\n return { Data: data, ContentType: contentType };\n }\n\n static arrayContainsItem(array, itemValue) {\n\n var hasItem = false;\n\n if (!Validation.isEmpty(array) && !Validation.isEmpty(itemValue)) {\n\n var isJQueryElementArray = array[0] instanceof jQuery;\n\n if (isJQueryElementArray) {\n\n for (let i = 0; i < array.length; i++) {\n\n if (document.querySelectorAll(array[i]).is(itemValue)) {\n hasItem = true;\n break;\n }\n }\n }\n else {\n\n var isDate = array[0] instanceof Date;\n\n if (isDate) {\n \n for (let i = 0; i < array.length; i++) {\n\n if (array[i].getTime() === itemValue.getTime()) {\n hasItem = true;\n break;\n }\n }\n }\n else {\n\n for (let i = 0; i < array.length; i++) {\n\n if (array[i] == itemValue) {\n hasItem = true;\n break;\n }\n }\n }\n }\n }\n\n return hasItem;\n }\n\n static dictHasKey(d, k) {\n return (k in d);\n }\n static areEqualDicts(dict1, dict2) {\n const keys1 = Object.keys(dict1);\n const keys2 = Object.keys(dict2);\n \n if (keys1.length !== keys2.length) {\n return false;\n }\n \n for (let key of keys1) {\n if (dict1[key] !== dict2[key]) {\n return false;\n }\n }\n \n return true;\n }\n\n static imageExists(url, callback) {\n\n var img = new Image();\n\n img.onload = function() { callback(true); };\n img.onerror = function() { callback(false); };\n img.src = url;\n }\n\n static toFixedOrDefault(value, decimalPlaces, defaultValue = null) {\n return Validation.isValidNumber(value) ? parseFloat(value).toFixed(decimalPlaces) : defaultValue;\n }\n}\n","\nimport Utils from \"./lib/utils.js\";\nimport Validation from \"./lib/validation.js\";\n\nexport default class DOM {\n static setElementAttributesValuesCurrentAndPrevious(element, data) {\n DOM.setElementAttributeValueCurrent(element, data);\n DOM.setElementAttributeValuePrevious(element, data);\n }\n static setElementAttributeValueCurrent(element, data) {\n element.setAttribute(attrValueCurrent, data);\n }\n static setElementAttributeValuePrevious(element, data) {\n element.setAttribute(attrValuePrevious, data);\n }\n static setElementValuesCurrentAndPrevious(element, data) {\n DOM.setElementValueCurrent(element, data);\n DOM.setElementAttributeValuePrevious(element, data);\n }\n static setElementValueCurrent(element, data) {\n DOM.setElementAttributeValueCurrent(element, data);\n let tagName = element.tagName.toUpperCase();\n if (element.type === \"checkbox\") {\n element.checked = data;\n }\n else if (tagName === 'INPUT' || tagName === 'TEXTAREA' || tagName === 'SELECT') {\n element.value = data;\n }\n else {\n element.textContent = data;\n }\n }\n static setElementValueCurrentIfEmpty(element, data) {\n if (Validation.isEmpty(DOM.getElementValueCurrent(element))) {\n DOM.setElementValueCurrent(element, data);\n }\n }\n static getCellFromElement(element) {\n return element.closest('td');\n }\n static getRowFromElement(element, flagRow) {\n let selector = Validation.isEmpty(flagRow) ? 'tr' : 'tr.' + flagRow;\n return element.closest(selector);\n }\n static getClosestParent(element, parentSelector) {\n let parent = element.parentElement;\n while (parent) {\n if (parent.matches(parentSelector)) {\n return parent;\n }\n parent = parent.parentElement;\n }\n return null;\n }\n static convertForm2JSON(elementForm) {\n let dataForm = {};\n if (Validation.isEmpty(elementForm)) {\n return dataForm;\n }\n let containersFilter = elementForm.querySelectorAll('.' + flagContainerInput + '.' + flagFilter);\n let containerFilter, labelFilter, keyFilter, filter;\n for (let indexFilter = 0; indexFilter < containersFilter.length; indexFilter++) {\n containerFilter = containersFilter[indexFilter];\n labelFilter = containerFilter.querySelector('label');\n keyFilter = labelFilter.getAttribute('for');\n filter = containerFilter.querySelector(`#${keyFilter}`);\n dataForm[keyFilter] = DOM.getElementValueCurrent(filter);\n }\n return dataForm;\n }\n static loadPageBody(contentNew) {\n let pageBody = document.querySelector(idPageBody);\n pageBody.innerHTML = contentNew;\n }\n static getHashPageCurrent() {\n const hashPageCurrent = document.body.dataset.page;\n return hashPageCurrent;\n }\n static updateAndCheckIsElementDirty(element) {\n element.setAttribute(attrValueCurrent, DOM.getElementValueCurrent(element));\n return DOM.isElementDirty(element);\n }\n static isElementDirty(element) {\n let isDirty = element.getAttribute(attrValuePrevious) != element.getAttribute(attrValueCurrent);\n DOM.handleDirtyElement(element, isDirty);\n return isDirty;\n }\n static handleDirtyElement(element, isDirty) {\n DOM.toggleElementHasClassnameFlag(element, isDirty, flagDirty);\n }\n static toggleElementHasClassnameFlag(element, elementHasFlag, flag) {\n let elementAlreadyHasFlag = element.classList.contains(flag);\n if (elementHasFlag == elementAlreadyHasFlag) return;\n if (elementHasFlag) {\n element.classList.add(flag);\n } else {\n element.classList.remove(flag);\n }\n }\n static hasDirtyChildrenContainer(container) {\n if (container == null) return false;\n return container.querySelector('.' + flagDirty) != null;\n }\n static hasDirtyChildrenNotDeletedContainer(container) {\n if (container == null || container.classList.contains(flagDelete)) return false;\n return container.querySelector('.' + flagDirty + ':not(.' + flagDelete + ', .' + flagDelete + ' *)') != null;\n }\n static getElementValueCurrent(element) {\n let returnVal = '';\n \n if (!Validation.isEmpty(element)) {\n \n let tagName = element.tagName.toUpperCase();\n if (element.type === \"checkbox\") {\n returnVal = element.checked;\n }\n /*\n else if (element.classList.contains(flagIsDatePicker)) {\n returnVal = getDatePickerDate(element, adjust4DayLightSavings);\n }\n */\n else if (tagName === 'INPUT' || tagName === 'TEXTAREA' || tagName === 'SELECT') {\n returnVal = element.value;\n }\n else if (element.classList.contains(flagButton) && element.classList.contains(flagActive)) { // tagName === 'BUTTON'\n returnVal = element.classList.contains(flagDelete);\n }\n else if (tagName === 'TD') {\n returnVal = DOM.getElementAttributeValueCurrent(element);\n }\n else if (tagName == 'SVG' && element.classList.contains(flagCheckbox)) {\n returnVal = (element.classList.contains(flagIsChecked))\n }\n else {\n returnVal = element.textContent;\n }\n }\n \n if (Validation.isEmpty(returnVal)) returnVal = '';\n \n return returnVal;\n }\n static getElementAttributeValueCurrent(element) {\n // debugger;\n if (Validation.isEmpty(element)) return null;\n return element.getAttribute(attrValueCurrent);\n }\n static getElementAttributeValuePrevious(element) {\n if (Validation.isEmpty(element)) return null;\n return element.getAttribute(attrValuePrevious);\n }\n /* base_table.handleChangeElementCellTable\n static updateAndCheckIsTableElementDirty(element) {\n let wasDirty = DOM.isElementDirty(element);\n let row = DOM.getRowFromElement(element);\n let wasDirtyRow = DOM.hasDirtyChildrenNotDeletedContainer(row);\n let isDirty = DOM.updateAndCheckIsElementDirty(element);\n let cell = DOM.getCellFromElement(element);\n Utils.consoleLogIfNotProductionEnvironment({element, row, cell, isDirty, wasDirty});\n if (isDirty != wasDirty) {\n DOM.handleDirtyElement(cell, isDirty);\n let isDirtyRow = DOM.hasDirtyChildrenNotDeletedContainer(row);\n Utils.consoleLogIfNotProductionEnvironment({isDirtyRow, wasDirtyRow});\n if (isDirtyRow != wasDirtyRow) {\n DOM.handleDirtyElement(row, isDirtyRow);\n }\n }\n }\n */\n static scrollToElement(parent, element) {\n // REQUIRED: parent has scroll-bar\n parent.scrollTop(parent.scrollTop() + (element.offset().top - parent.offset().top));\n }\n static isElementInContainer(container, element) {\n\n if (typeof jQuery === 'function') {\n if (container instanceof jQuery) container = container[0];\n if (element instanceof jQuery) element = element[0];\n }\n\n var containerBounds = container.getBoundingClientRect();\n var elementBounds = element.getBoundingClientRect();\n\n return (\n containerBounds.top <= elementBounds.top &&\n containerBounds.left <= elementBounds.left &&\n ((elementBounds.top + elementBounds.height) <= (containerBounds.top + containerBounds.height)) &&\n ((elementBounds.left + elementBounds.width) <= (containerBounds.left + containerBounds.width))\n );\n }\n static alertError(errorType, errorText) {\n alert(errorType + '\\n' + errorText);\n }\n static createOptionUnselectedProductVariation() {\n return {\n [flagProductVariationType]: {\n [flagNameAttrOptionText]: [flagName],\n [flagNameAttrOptionValue]: [attrIdProductVariationType],\n [flagName]: 'Select Variation Type',\n [attrIdProductVariationType]: 0,\n },\n [flagProductVariation]: {\n [flagNameAttrOptionText]: [flagName],\n [flagNameAttrOptionValue]: [attrIdProductVariation],\n [flagName]: 'Select Variation',\n [attrIdProductVariation]: 0,\n },\n };\n }\n static createOption(optionJson) {\n if (Validation.isEmpty(optionJson)) optionJson = {\n text: 'Select',\n value: 0,\n };\n let option = document.createElement('option');\n option.value = optionJson.value;\n option.textContent = optionJson.text;\n option.selected = optionJson.selected;\n return option;\n }\n\n static escapeHtml(text) {\n const div = document.createElement('div');\n div.textContent = text;\n return div.innerHTML;\n }\n static unescapeHtml(html) {\n const div = document.createElement('div');\n div.innerHTML = html;\n return div.textContent || div.innerText || '';\n }\n}\n","\nexport default class Events {\n static initialiseEventHandler(selectorElement, classInitialised, eventHandler) {\n document.querySelectorAll(selectorElement).forEach(function(element) {\n if (element.classList.contains(classInitialised)) return;\n eventHandler(element);\n element.classList.add(classInitialised);\n });\n }\n static hookupEventHandler(eventType, selector, callback) {\n Events.initialiseEventHandler(selector, flagInitialised, (element) => {\n element.addEventListener(eventType, (event) => {\n event.stopPropagation();\n callback(event, element);\n });\n });\n }\n}","\nimport Validation from \"./validation.js\";\n\nexport default class LocalStorage {\n/*\nfunction getPageLocalStorage(pageHash) {\n\n let ls;\n try {\n ls = JSON.parse(localStorage.getItem(pageHash));\n } catch {\n\n }\n\n if (Validation.isEmpty(ls)) return {}\n\n return ls;\n}\nfunction getPageLocalStorageCurrent() {\n\n return JSON.parse(localStorage.getItem(hashPageCurrent));\n}\n\nfunction setPageLocalStorage(pageHash, newLS) {\n\n localStorage.setItem(pageHash, JSON.stringify(newLS));\n}\n\nfunction clearPageLocalStorage(pageHash) {\n localStorage.removeItem(pageHash);\n}\n\nfunction setupPageLocalStorage(pageHash) {\n\n let ls = getPageLocalStorage(pageHash);\n\n if (Validation.isEmpty(ls)) ls = {};\n\n setPageLocalStorage(pageHash, ls);\n}\n*/\n\n static getLocalStorage(key) {\n return JSON.parse(localStorage.getItem(key));\n }\n\n static setLocalStorage(key, newLS) {\n localStorage.setItem(key, JSON.stringify(newLS));\n }\n\n/*\nfunction setupPageLocalStorageNext(pageHashNext) {\n let lsOld = getPageLocalStorage(hashPageCurrent);\n hashPageCurrent = pageHashNext;\n clearPageLocalStorage(hashPageCurrent);\n setupPageLocalStorage(hashPageCurrent);\n let lsNew = getPageLocalStorage(hashPageCurrent);\n lsNew[keyBasket] = (keyBasket in lsOld) ? lsOld[keyBasket] : {'items': []};\n setPageLocalStorage(hashPageCurrent, lsNew);\n}\n*/\n}","import DOM from './dom.js';\n\nexport default class API {\n \n static getCsrfToken() {\n return document.querySelector(idCSRFToken).getAttribute('content');\n }\n \n static async request(hashEndpoint, method = 'GET', data = null, params = null) {\n const url = API.getUrlFromHash(hashEndpoint, params);\n const csrfToken = API.getCsrfToken();\n const options = {\n method,\n headers: {\n 'Content-Type': 'application/json',\n [flagCsrfToken]: csrfToken,\n }\n };\n\n if (data && (method === 'POST' || method === 'PUT' || method === 'PATCH')) {\n data = { \n ...data, \n [flagCsrfToken]: csrfToken,\n };\n options.body = JSON.stringify(data);\n }\n\n try {\n const response = await fetch(url, options);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n return await response.json();\n } catch (error) {\n console.error('API request failed:', error);\n throw error;\n }\n }\n \n static getUrlFromHash(hash, params = null) {\n if (hash == null) hash = hashPageHome;\n let url = API.parameteriseUrl(_pathHost + hash, params);\n return url;\n }\n static parameteriseUrl(url, params) {\n if (params) {\n url += '?' + new URLSearchParams(params).toString();\n }\n return url;\n }\n static goToUrl(url) {\n window.location.href = url;\n }\n static goToHash(hash, params = null) {\n const url = API.getUrlFromHash(hash, params);\n API.goToUrl(url);\n }\n\n // specific api calls\n /* Example:\n getUsers: () => request('/users'),\n getUserById: (id) => request(`/users/${id}`),\n createUser: (userData) => request('/users', 'POST', userData),\n updateUser: (id, userData) => request(`/users/${id}`, 'PUT', userData),\n deleteUser: (id) => request(`/users/${id}`, 'DELETE'),\n */\n\n // User\n // user\n static async loginUser() {\n let callback = {};\n callback[flagCallback] = DOM.getHashPageCurrent();\n return await API.request(hashPageUserLogin, 'POST', callback);\n }\n static async saveUsers(users, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagUser] = users;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveUserUser, 'POST', dataRequest);\n }\n // company\n static async saveCompanies(companies, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCompany] = companies;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCompany, 'POST', dataRequest);\n }\n \n\n // dog\n // Command categories\n static async saveCommandCategories(commandCategories, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCommandCategory] = commandCategories;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCommandCategory, 'POST', dataRequest);\n }\n \n // Commands\n static async saveCommands(commands, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCommand] = commands;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCommand, 'POST', dataRequest);\n }\n \n // Dog Command Links\n static async saveDogCommandLinks(dogCommandLinks, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagDogCommandLink] = dogCommandLinks;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogDogCommandLink, 'POST', dataRequest);\n }\n \n // Locations\n static async saveLocations(locations, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagLocation] = locations;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogLocation, 'POST', dataRequest);\n }\n \n // Button Icons\n static async saveButtonIcons(buttonIcons, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagButtonIcon] = buttonIcons;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogButtonIcon, 'POST', dataRequest);\n }\n \n // Command Button Links\n static async saveCommandButtonLinks(links, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagCommandButtonLink] = links;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogCommandButtonLink, 'POST', dataRequest);\n }\n \n // Assessments\n static async saveAssessments(assessments, formFilters, comment) {\n let dataRequest = {};\n dataRequest[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n dataRequest[flagAssessment] = assessments;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogAssessment, 'POST', dataRequest);\n }\n \n // Assessments\n static async saveAssessmentsDistractionsAndResponses(assessments, formFilters, comment) {\n let filtersJson = DOM.convertForm2JSON(formFilters);\n filtersJson[attrIdAssessment] = null;\n let dataRequest = {};\n dataRequest[flagFormFilters] = filtersJson;\n dataRequest[flagAssessment] = assessments;\n dataRequest[flagComment] = comment;\n return await API.request(hashSaveDogAssessmentDistractionAndResponse, 'POST', dataRequest);\n }\n \n}\n","// Utility functions\n/*\nfunction $(selector) {\n return document.querySelector(selector);\n}\n\nfunction $$(selector) {\n return document.querySelectorAll(selector);\n}\n*/\nexport default class Utils {\n static getListFromDict(dict) {\n let list = [];\n for (let key in dict) {\n list.push(dict[key]);\n }\n return list;\n }\n static consoleLogIfNotProductionEnvironment(message) {\n if (environment.is_production != \"true\") {\n console.log(message);\n }\n }\n}","\nimport Events from \"../../../lib/events.js\";\n\nexport default class OverlayConfirm {\n static hookup(callbackSuccess) {\n Events.initialiseEventHandler(idOverlayConfirm + ' button.' + flagCancel, flagInitialised, (buttonCancel) => {\n buttonCancel.addEventListener('click', () => {\n let overlay = document.querySelector(idOverlayConfirm);\n overlay.style.visibility = 'hidden';\n });\n });\n Events.initialiseEventHandler(idOverlayConfirm + ' button.' + flagSubmit, flagInitialised, (buttonConfirm) => {\n buttonConfirm.addEventListener('click', () => {\n let overlay = document.querySelector(idOverlayConfirm);\n let textarea = overlay.querySelector('textarea');\n overlay.style.visibility = 'hidden';\n callbackSuccess(textarea.value);\n });\n });\n }\n static show() {\n let overlay = document.querySelector(idOverlayConfirm);\n overlay.classList.remove(flagIsCollapsed);\n overlay.style.visibility = 'visible';\n }\n}","\nimport BusinessObjects from \"../lib/business_objects/business_objects.js\";\nimport Events from \"../lib/events.js\";\nimport LocalStorage from \"../lib/local_storage.js\";\nimport API from \"../api.js\";\nimport DOM from \"../dom.js\";\nimport Utils from \"../lib/utils.js\";\n\nimport OverlayConfirm from \"../components/common/temporary/overlay_confirm.js\";\nimport OverlayError from \"../components/common/temporary/overlay_error.js\";\nimport Validation from \"../lib/validation.js\";\n\nexport default class BasePage {\n constructor(router) {\n if (!router) {\n throw new Error(\"Router is required\");\n }\n else {\n Utils.consoleLogIfNotProductionEnvironment(\"initialising with router: \", router);\n }\n this.router = router;\n this.title = titlePageCurrent;\n if (this.constructor === BasePage) {\n throw new Error(\"Cannot instantiate abstract class\");\n }\n \n if (!this.constructor.hash) {\n throw new Error(`Class ${this.constructor.name} must have a static hash attribute.`);\n }\n }\n\n initialize() {\n throw new Error(\"Method 'initialize()' must be implemented.\");\n }\n\n sharedInitialize() {\n this.logInitialisation();\n this.hookupCommonElements();\n }\n\n logInitialisation() {\n Utils.consoleLogIfNotProductionEnvironment('Initialising ' + this.title + ' page');\n }\n \n hookupCommonElements() {\n // hookupVideos();\n this.hookupLogos();\n this.hookupNavigation();\n this.hookupOverlays();\n }\n hookupLogos() {\n Events.hookupEventHandler(\"click\", \".\" + flagImageLogo + \",\" + \".\" + flagLogo, (event, element) => {\n Utils.consoleLogIfNotProductionEnvironment('clicking logo');\n this.router.navigateToHash(hashPageHome);\n });\n }\n /*\n hookupEventHandler(eventType, selector, callback) {\n Events.initialiseEventHandler(selector, flagInitialised, (element) => {\n element.addEventListener(eventType, (event) => {\n event.stopPropagation();\n callback(event, element);\n });\n });\n }\n */\n hookupNavigation() {\n Events.hookupEventHandler(\"click\", idButtonHamburger, (event, element) => {\n let overlayHamburger = document.querySelector(idOverlayHamburger);\n if (overlayHamburger.classList.contains(flagIsCollapsed)) {\n overlayHamburger.classList.remove(flagIsCollapsed);\n overlayHamburger.classList.add(flagExpanded);\n } else {\n overlayHamburger.classList.remove(flagExpanded);\n overlayHamburger.classList.add(flagIsCollapsed);\n }\n });\n\n this.hookupButtonsNavUserAccount();\n this.hookupButtonsNavUserLogout();\n this.hookupButtonsNavUserLogin();\n }\n hookupButtonsNav(buttonSelector) {\n Events.hookupEventHandler(\"click\", buttonSelector, (event, button) => {\n let pageHash = buttonSelector.getAttribute('href');\n this.router.navigateToHash(pageHash); \n });\n }\n hookupButtonsNavUserAccount() {\n // this.hookupButtonsNav('.' + flagNavUserAccount);\n }\n hookupButtonsNavUserLogout() {\n // this.hookupButtonsNav('.' + flagNavUserLogout);\n }\n hookupButtonsNavUserLogin() {\n Events.hookupEventHandler(\"click\", '.' + flagNavUserLogin, (event, navigator) => { \n event.stopPropagation();\n this.leave();\n API.loginUser()\n .then((response) => {\n if (response.Success) {\n window.location.href = response[flagCallback];\n } else {\n DOM.alertError(\"Error\", response.Message);\n }\n });\n });\n }\n\n hookupOverlays() {\n this.hookupOverlayFromId(idOverlayConfirm);\n this.hookupOverlayFromId(idOverlayError);\n }\n\n hookupOverlayFromId(idOverlay) {\n Events.initialiseEventHandler(idOverlay, flagInitialised, (overlay) => {\n overlay.querySelector('button.' + flagCancel).addEventListener(\"click\", (event) => {\n event.stopPropagation();\n overlay.style.display = 'none';\n });\n });\n }\n\n hookupButtonSave() {\n Events.initialiseEventHandler('.' + flagContainer + '.' + flagSave + '.' + flagCancel + ' button.' + flagSave, flagInitialised, (button) => {\n button.addEventListener(\"click\", (event) => {\n event.stopPropagation();\n button = event.target;\n if (button.classList.contains(flagIsCollapsed)) return;\n Utils.consoleLogIfNotProductionEnvironment('saving page: ', this.title);\n OverlayConfirm.show();\n });\n });\n }\n\n leave() {\n Utils.consoleLogIfNotProductionEnvironment('Leaving ' + this.title + ' page');\n if (this.constructor === BasePage) {\n throw new Error(\"Must implement leave() method.\");\n }\n }\n setLocalStoragePage(dataPage) {\n LocalStorage.setLocalStorage(this.hash, dataPage);\n }\n getLocalStoragePage() {\n return LocalStorage.getLocalStorage(this.hash);\n }\n\n toggleShowButtonsSaveCancel(show, buttonContainerSelector = null) { // , buttonSave = null, buttonCancel = null\n if (Validation.isEmpty(buttonContainerSelector)) buttonContainerSelector = '.' + flagContainer + '.' + flagSave + '.' + flagCancel;\n let buttonSave = document.querySelector(buttonContainerSelector + ' ' + idButtonSave);\n let buttonCancel = document.querySelector(buttonContainerSelector + ' ' + idButtonCancel);\n Utils.consoleLogIfNotProductionEnvironment({ show, buttonContainerSelector, buttonCancel, buttonSave });\n if (show) {\n buttonCancel.classList.remove(flagIsCollapsed);\n buttonSave.classList.remove(flagIsCollapsed);\n Utils.consoleLogIfNotProductionEnvironment('showing buttons');\n } else {\n buttonCancel.classList.add(flagIsCollapsed);\n buttonSave.classList.add(flagIsCollapsed);\n Utils.consoleLogIfNotProductionEnvironment('hiding buttons');\n }\n }\n\n static isDirtyFilter(filter) {\n let isDirty = DOM.updateAndCheckIsElementDirty(filter);\n if (isDirty) document.querySelectorAll(idTableMain + ' tbody tr').remove();\n return isDirty;\n }\n\n}","\n// internal\nimport BasePage from \"../base.js\";\n// external\n\n\nexport default class PageHome extends BasePage {\n static hash = hashPageHome;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n // this.hookupButtonsNav();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","var hi = Object.defineProperty;\nvar Or = (e) => {\n throw TypeError(e);\n};\nvar gi = (e, t, r) => t in e ? hi(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;\nvar ne = (e, t, r) => gi(e, typeof t != \"symbol\" ? t + \"\" : t, r), zr = (e, t, r) => t.has(e) || Or(\"Cannot \" + r);\nvar H = (e, t, r) => (zr(e, t, \"read from private field\"), r ? r.call(e) : t.get(e)), Mt = (e, t, r) => t.has(e) ? Or(\"Cannot add the same private member more than once\") : t instanceof WeakSet ? t.add(e) : t.set(e, r), Ut = (e, t, r, l) => (zr(e, t, \"write to private field\"), l ? l.call(e, r) : t.set(e, r), r);\nconst en = `(function(){\"use strict\";const d=new TextEncoder;function p(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,\"0\")).join(\"\")}async function b(e,t,r){if(typeof crypto>\"u\"||!(\"subtle\"in crypto)||!(\"digest\"in crypto.subtle))throw new Error(\"Web Crypto is not available. Secure context is required (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).\");return p(await crypto.subtle.digest(r.toUpperCase(),d.encode(e+t)))}function w(e,t,r=\"SHA-256\",n=1e6,s=0){const o=new AbortController,a=Date.now();return{promise:(async()=>{for(let c=s;c<=n;c+=1){if(o.signal.aborted)return null;if(await b(t,c,r)===e)return{number:c,took:Date.now()-a}}return null})(),controller:o}}function h(e){const t=atob(e),r=new Uint8Array(t.length);for(let n=0;n{for(let u=n;u<=r;u+=1){if(o.signal.aborted||!c||!y)return null;try{const f=await crypto.subtle.decrypt({name:s,iv:g(u)},c,y);if(f)return{clearText:new TextDecoder().decode(f),took:Date.now()-a}}catch{}}return null};let c=null,y=null;try{y=h(e);const u=await crypto.subtle.digest(\"SHA-256\",d.encode(t));c=await crypto.subtle.importKey(\"raw\",u,s,!1,[\"decrypt\"])}catch{return{promise:Promise.reject(),controller:o}}return{promise:l(),controller:o}}let i;onmessage=async e=>{const{type:t,payload:r,start:n,max:s}=e.data;let o=null;if(t===\"abort\")i==null||i.abort(),i=void 0;else if(t===\"work\"){if(\"obfuscated\"in r){const{key:a,obfuscated:l}=r||{};o=await m(l,a,s,n)}else{const{algorithm:a,challenge:l,salt:c}=r||{};o=w(l,c,a,s,n)}i=o.controller,o.promise.then(a=>{self.postMessage(a&&{...a,worker:!0})})}}})();\n`, Fr = typeof self < \"u\" && self.Blob && new Blob([en], { type: \"text/javascript;charset=utf-8\" });\nfunction _i(e) {\n let t;\n try {\n if (t = Fr && (self.URL || self.webkitURL).createObjectURL(Fr), !t) throw \"\";\n const r = new Worker(t, {\n name: e == null ? void 0 : e.name\n });\n return r.addEventListener(\"error\", () => {\n (self.URL || self.webkitURL).revokeObjectURL(t);\n }), r;\n } catch {\n return new Worker(\n \"data:text/javascript;charset=utf-8,\" + encodeURIComponent(en),\n {\n name: e == null ? void 0 : e.name\n }\n );\n } finally {\n t && (self.URL || self.webkitURL).revokeObjectURL(t);\n }\n}\nconst mi = \"5\";\nvar Qr;\ntypeof window < \"u\" && ((Qr = window.__svelte ?? (window.__svelte = {})).v ?? (Qr.v = /* @__PURE__ */ new Set())).add(mi);\nconst wi = 1, pi = 4, yi = 8, bi = 16, Ei = 1, xi = 2, Wt = \"[\", tn = \"[!\", rn = \"]\", Je = {}, W = Symbol(), $i = \"http://www.w3.org/1999/xhtml\", Mr = !1, oe = 2, nn = 4, It = 8, Yt = 16, pe = 32, ze = 64, yt = 128, re = 256, bt = 512, K = 1024, ye = 2048, et = 4096, Ke = 8192, St = 16384, ki = 32768, Zt = 65536, Ci = 1 << 19, ln = 1 << 20, ut = Symbol(\"$state\"), an = Symbol(\"legacy props\"), Ai = Symbol(\"\");\nvar on = Array.isArray, Ri = Array.prototype.indexOf, Ii = Array.from, Et = Object.keys, xt = Object.defineProperty, Pe = Object.getOwnPropertyDescriptor, Si = Object.getOwnPropertyDescriptors, Ti = Object.prototype, Ni = Array.prototype, sn = Object.getPrototypeOf;\nfunction fn(e) {\n for (var t = 0; t < e.length; t++)\n e[t]();\n}\nconst Li = typeof requestIdleCallback > \"u\" ? (e) => setTimeout(e, 1) : requestIdleCallback;\nlet dt = [], vt = [];\nfunction un() {\n var e = dt;\n dt = [], fn(e);\n}\nfunction cn() {\n var e = vt;\n vt = [], fn(e);\n}\nfunction Gt(e) {\n dt.length === 0 && queueMicrotask(un), dt.push(e);\n}\nfunction Di(e) {\n vt.length === 0 && Li(cn), vt.push(e);\n}\nfunction Ur() {\n dt.length > 0 && un(), vt.length > 0 && cn();\n}\nfunction dn(e) {\n return e === this.v;\n}\nfunction Pi(e, t) {\n return e != e ? t == t : e !== t || e !== null && typeof e == \"object\" || typeof e == \"function\";\n}\nfunction vn(e) {\n return !Pi(e, this.v);\n}\nfunction Oi(e) {\n throw new Error(\"https://svelte.dev/e/effect_in_teardown\");\n}\nfunction zi() {\n throw new Error(\"https://svelte.dev/e/effect_in_unowned_derived\");\n}\nfunction Fi(e) {\n throw new Error(\"https://svelte.dev/e/effect_orphan\");\n}\nfunction Mi() {\n throw new Error(\"https://svelte.dev/e/effect_update_depth_exceeded\");\n}\nfunction Ui() {\n throw new Error(\"https://svelte.dev/e/hydration_failed\");\n}\nfunction ji(e) {\n throw new Error(\"https://svelte.dev/e/props_invalid_value\");\n}\nfunction Vi() {\n throw new Error(\"https://svelte.dev/e/state_descriptors_fixed\");\n}\nfunction Bi() {\n throw new Error(\"https://svelte.dev/e/state_prototype_fixed\");\n}\nfunction qi() {\n throw new Error(\"https://svelte.dev/e/state_unsafe_local_read\");\n}\nfunction Hi() {\n throw new Error(\"https://svelte.dev/e/state_unsafe_mutation\");\n}\nlet Wi = !1;\nfunction ue(e, t) {\n var r = {\n f: 0,\n // TODO ideally we could skip this altogether, but it causes type errors\n v: e,\n reactions: null,\n equals: dn,\n rv: 0,\n wv: 0\n };\n return r;\n}\nfunction He(e) {\n return /* @__PURE__ */ Yi(ue(e));\n}\n// @__NO_SIDE_EFFECTS__\nfunction hn(e, t = !1) {\n const r = ue(e);\n return t || (r.equals = vn), r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction Yi(e) {\n return k !== null && !ae && (k.f & oe) !== 0 && (ce === null ? Qi([e]) : ce.push(e)), e;\n}\nfunction P(e, t) {\n return k !== null && !ae && Dn() && (k.f & (oe | Yt)) !== 0 && // If the source was created locally within the current derived, then\n // we allow the mutation.\n (ce === null || !ce.includes(e)) && Hi(), Zi(e, t);\n}\nfunction Zi(e, t) {\n return e.equals(t) || (e.v, e.v = t, e.wv = En(), gn(e, ye), A !== null && (A.f & K) !== 0 && (A.f & (pe | ze)) === 0 && (ge === null ? el([e]) : ge.push(e))), t;\n}\nfunction gn(e, t) {\n var r = e.reactions;\n if (r !== null)\n for (var l = r.length, i = 0; i < l; i++) {\n var a = r[i], o = a.f;\n (o & ye) === 0 && (de(a, t), (o & (K | re)) !== 0 && ((o & oe) !== 0 ? gn(\n /** @type {Derived} */\n a,\n et\n ) : Lt(\n /** @type {Effect} */\n a\n )));\n }\n}\n// @__NO_SIDE_EFFECTS__\nfunction De(e) {\n var t = oe | ye, r = k !== null && (k.f & oe) !== 0 ? (\n /** @type {Derived} */\n k\n ) : null;\n return A === null || r !== null && (r.f & re) !== 0 ? t |= re : A.f |= ln, {\n ctx: B,\n deps: null,\n effects: null,\n equals: dn,\n f: t,\n fn: e,\n reactions: null,\n rv: 0,\n v: (\n /** @type {V} */\n null\n ),\n wv: 0,\n parent: r ?? A\n };\n}\nfunction _n(e) {\n var t = e.effects;\n if (t !== null) {\n e.effects = null;\n for (var r = 0; r < t.length; r += 1)\n we(\n /** @type {Effect} */\n t[r]\n );\n }\n}\nfunction Gi(e) {\n for (var t = e.parent; t !== null; ) {\n if ((t.f & oe) === 0)\n return (\n /** @type {Effect} */\n t\n );\n t = t.parent;\n }\n return null;\n}\nfunction Ji(e) {\n var t, r = A;\n Se(Gi(e));\n try {\n _n(e), t = $n(e);\n } finally {\n Se(r);\n }\n return t;\n}\nfunction mn(e) {\n var t = Ji(e), r = (Ce || (e.f & re) !== 0) && e.deps !== null ? et : K;\n de(e, r), e.equals(t) || (e.v = t, e.wv = En());\n}\nfunction Tt(e) {\n console.warn(\"https://svelte.dev/e/hydration_mismatch\");\n}\nlet D = !1;\nfunction Ge(e) {\n D = e;\n}\nlet O;\nfunction Re(e) {\n if (e === null)\n throw Tt(), Je;\n return O = e;\n}\nfunction Xe() {\n return Re(\n /** @type {TemplateNode} */\n /* @__PURE__ */ Te(O)\n );\n}\nfunction Z(e) {\n if (D) {\n if (/* @__PURE__ */ Te(O) !== null)\n throw Tt(), Je;\n O = e;\n }\n}\nfunction Ki() {\n for (var e = 0, t = O; ; ) {\n if (t.nodeType === 8) {\n var r = (\n /** @type {Comment} */\n t.data\n );\n if (r === rn) {\n if (e === 0) return t;\n e -= 1;\n } else (r === Wt || r === tn) && (e += 1);\n }\n var l = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ Te(t)\n );\n t.remove(), t = l;\n }\n}\nfunction le(e, t = null, r) {\n if (typeof e != \"object\" || e === null || ut in e)\n return e;\n const l = sn(e);\n if (l !== Ti && l !== Ni)\n return e;\n var i = /* @__PURE__ */ new Map(), a = on(e), o = ue(0);\n a && i.set(\"length\", ue(\n /** @type {any[]} */\n e.length\n ));\n var f;\n return new Proxy(\n /** @type {any} */\n e,\n {\n defineProperty(s, c, v) {\n (!(\"value\" in v) || v.configurable === !1 || v.enumerable === !1 || v.writable === !1) && Vi();\n var h = i.get(c);\n return h === void 0 ? (h = ue(v.value), i.set(c, h)) : P(h, le(v.value, f)), !0;\n },\n deleteProperty(s, c) {\n var v = i.get(c);\n if (v === void 0)\n c in s && i.set(c, ue(W));\n else {\n if (a && typeof c == \"string\") {\n var h = (\n /** @type {Source} */\n i.get(\"length\")\n ), g = Number(c);\n Number.isInteger(g) && g < h.v && P(h, g);\n }\n P(v, W), jr(o);\n }\n return !0;\n },\n get(s, c, v) {\n var w;\n if (c === ut)\n return e;\n var h = i.get(c), g = c in s;\n if (h === void 0 && (!g || (w = Pe(s, c)) != null && w.writable) && (h = ue(le(g ? s[c] : W, f)), i.set(c, h)), h !== void 0) {\n var m = d(h);\n return m === W ? void 0 : m;\n }\n return Reflect.get(s, c, v);\n },\n getOwnPropertyDescriptor(s, c) {\n var v = Reflect.getOwnPropertyDescriptor(s, c);\n if (v && \"value\" in v) {\n var h = i.get(c);\n h && (v.value = d(h));\n } else if (v === void 0) {\n var g = i.get(c), m = g == null ? void 0 : g.v;\n if (g !== void 0 && m !== W)\n return {\n enumerable: !0,\n configurable: !0,\n value: m,\n writable: !0\n };\n }\n return v;\n },\n has(s, c) {\n var m;\n if (c === ut)\n return !0;\n var v = i.get(c), h = v !== void 0 && v.v !== W || Reflect.has(s, c);\n if (v !== void 0 || A !== null && (!h || (m = Pe(s, c)) != null && m.writable)) {\n v === void 0 && (v = ue(h ? le(s[c], f) : W), i.set(c, v));\n var g = d(v);\n if (g === W)\n return !1;\n }\n return h;\n },\n set(s, c, v, h) {\n var F;\n var g = i.get(c), m = c in s;\n if (a && c === \"length\")\n for (var w = v; w < /** @type {Source} */\n g.v; w += 1) {\n var z = i.get(w + \"\");\n z !== void 0 ? P(z, W) : w in s && (z = ue(W), i.set(w + \"\", z));\n }\n g === void 0 ? (!m || (F = Pe(s, c)) != null && F.writable) && (g = ue(void 0), P(g, le(v, f)), i.set(c, g)) : (m = g.v !== W, P(g, le(v, f)));\n var T = Reflect.getOwnPropertyDescriptor(s, c);\n if (T != null && T.set && T.set.call(h, v), !m) {\n if (a && typeof c == \"string\") {\n var Y = (\n /** @type {Source} */\n i.get(\"length\")\n ), M = Number(c);\n Number.isInteger(M) && M >= Y.v && P(Y, M + 1);\n }\n jr(o);\n }\n return !0;\n },\n ownKeys(s) {\n d(o);\n var c = Reflect.ownKeys(s).filter((g) => {\n var m = i.get(g);\n return m === void 0 || m.v !== W;\n });\n for (var [v, h] of i)\n h.v !== W && !(v in s) && c.push(v);\n return c;\n },\n setPrototypeOf() {\n Bi();\n }\n }\n );\n}\nfunction jr(e, t = 1) {\n P(e, e.v + t);\n}\nvar Vr, wn, pn, yn;\nfunction jt() {\n if (Vr === void 0) {\n Vr = window, wn = /Firefox/.test(navigator.userAgent);\n var e = Element.prototype, t = Node.prototype;\n pn = Pe(t, \"firstChild\").get, yn = Pe(t, \"nextSibling\").get, e.__click = void 0, e.__className = void 0, e.__attributes = null, e.__style = void 0, e.__e = void 0, Text.prototype.__t = void 0;\n }\n}\nfunction Jt(e = \"\") {\n return document.createTextNode(e);\n}\n// @__NO_SIDE_EFFECTS__\nfunction me(e) {\n return pn.call(e);\n}\n// @__NO_SIDE_EFFECTS__\nfunction Te(e) {\n return yn.call(e);\n}\nfunction G(e, t) {\n if (!D)\n return /* @__PURE__ */ me(e);\n var r = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(O)\n );\n return r === null && (r = O.appendChild(Jt())), Re(r), r;\n}\nfunction Br(e, t) {\n if (!D) {\n var r = (\n /** @type {DocumentFragment} */\n /* @__PURE__ */ me(\n /** @type {Node} */\n e\n )\n );\n return r instanceof Comment && r.data === \"\" ? /* @__PURE__ */ Te(r) : r;\n }\n return O;\n}\nfunction he(e, t = 1, r = !1) {\n let l = D ? O : e;\n for (var i; t--; )\n i = l, l = /** @type {TemplateNode} */\n /* @__PURE__ */ Te(l);\n if (!D)\n return l;\n var a = l == null ? void 0 : l.nodeType;\n if (r && a !== 3) {\n var o = Jt();\n return l === null ? i == null || i.after(o) : l.before(o), Re(o), o;\n }\n return Re(l), /** @type {TemplateNode} */\n l;\n}\nfunction Xi(e) {\n e.textContent = \"\";\n}\nlet wt = !1, $t = !1, kt = null, Oe = !1, Kt = !1;\nfunction qr(e) {\n Kt = e;\n}\nlet ct = [];\nlet k = null, ae = !1;\nfunction Ie(e) {\n k = e;\n}\nlet A = null;\nfunction Se(e) {\n A = e;\n}\nlet ce = null;\nfunction Qi(e) {\n ce = e;\n}\nlet V = null, J = 0, ge = null;\nfunction el(e) {\n ge = e;\n}\nlet bn = 1, Ct = 0, Ce = !1;\nfunction En() {\n return ++bn;\n}\nfunction ht(e) {\n var h;\n var t = e.f;\n if ((t & ye) !== 0)\n return !0;\n if ((t & et) !== 0) {\n var r = e.deps, l = (t & re) !== 0;\n if (r !== null) {\n var i, a, o = (t & bt) !== 0, f = l && A !== null && !Ce, s = r.length;\n if (o || f) {\n var c = (\n /** @type {Derived} */\n e\n ), v = c.parent;\n for (i = 0; i < s; i++)\n a = r[i], (o || !((h = a == null ? void 0 : a.reactions) != null && h.includes(c))) && (a.reactions ?? (a.reactions = [])).push(c);\n o && (c.f ^= bt), f && v !== null && (v.f & re) === 0 && (c.f ^= re);\n }\n for (i = 0; i < s; i++)\n if (a = r[i], ht(\n /** @type {Derived} */\n a\n ) && mn(\n /** @type {Derived} */\n a\n ), a.wv > e.wv)\n return !0;\n }\n (!l || A !== null && !Ce) && de(e, K);\n }\n return !1;\n}\nfunction tl(e, t) {\n for (var r = t; r !== null; ) {\n if ((r.f & yt) !== 0)\n try {\n r.fn(e);\n return;\n } catch {\n r.f ^= yt;\n }\n r = r.parent;\n }\n throw wt = !1, e;\n}\nfunction rl(e) {\n return (e.f & St) === 0 && (e.parent === null || (e.parent.f & yt) === 0);\n}\nfunction Nt(e, t, r, l) {\n if (wt) {\n if (r === null && (wt = !1), rl(t))\n throw e;\n return;\n }\n r !== null && (wt = !0);\n {\n tl(e, t);\n return;\n }\n}\nfunction xn(e, t, r = !0) {\n var l = e.reactions;\n if (l !== null)\n for (var i = 0; i < l.length; i++) {\n var a = l[i];\n (a.f & oe) !== 0 ? xn(\n /** @type {Derived} */\n a,\n t,\n !1\n ) : t === a && (r ? de(a, ye) : (a.f & K) !== 0 && de(a, et), Lt(\n /** @type {Effect} */\n a\n ));\n }\n}\nfunction $n(e) {\n var m;\n var t = V, r = J, l = ge, i = k, a = Ce, o = ce, f = B, s = ae, c = e.f;\n V = /** @type {null | Value[]} */\n null, J = 0, ge = null, Ce = (c & re) !== 0 && (ae || !Oe || k === null), k = (c & (pe | ze)) === 0 ? e : null, ce = null, Wr(e.ctx), ae = !1, Ct++;\n try {\n var v = (\n /** @type {Function} */\n (0, e.fn)()\n ), h = e.deps;\n if (V !== null) {\n var g;\n if (At(e, J), h !== null && J > 0)\n for (h.length = J + V.length, g = 0; g < V.length; g++)\n h[J + g] = V[g];\n else\n e.deps = h = V;\n if (!Ce)\n for (g = J; g < h.length; g++)\n ((m = h[g]).reactions ?? (m.reactions = [])).push(e);\n } else h !== null && J < h.length && (At(e, J), h.length = J);\n if (Dn() && ge !== null && !ae && h !== null && (e.f & (oe | et | ye)) === 0)\n for (g = 0; g < /** @type {Source[]} */\n ge.length; g++)\n xn(\n ge[g],\n /** @type {Effect} */\n e\n );\n return i !== null && Ct++, v;\n } finally {\n V = t, J = r, ge = l, k = i, Ce = a, ce = o, Wr(f), ae = s;\n }\n}\nfunction nl(e, t) {\n let r = t.reactions;\n if (r !== null) {\n var l = Ri.call(r, e);\n if (l !== -1) {\n var i = r.length - 1;\n i === 0 ? r = t.reactions = null : (r[l] = r[i], r.pop());\n }\n }\n r === null && (t.f & oe) !== 0 && // Destroying a child effect while updating a parent effect can cause a dependency to appear\n // to be unused, when in fact it is used by the currently-updating parent. Checking `new_deps`\n // allows us to skip the expensive work of disconnecting and immediately reconnecting it\n (V === null || !V.includes(t)) && (de(t, et), (t.f & (re | bt)) === 0 && (t.f ^= bt), _n(\n /** @type {Derived} **/\n t\n ), At(\n /** @type {Derived} **/\n t,\n 0\n ));\n}\nfunction At(e, t) {\n var r = e.deps;\n if (r !== null)\n for (var l = t; l < r.length; l++)\n nl(e, r[l]);\n}\nfunction Xt(e) {\n var t = e.f;\n if ((t & St) === 0) {\n de(e, K);\n var r = A, l = B, i = Oe;\n A = e, Oe = !0;\n try {\n (t & Yt) !== 0 ? hl(e) : An(e), Cn(e);\n var a = $n(e);\n e.teardown = typeof a == \"function\" ? a : null, e.wv = bn;\n var o = e.deps, f;\n Mr && Wi && e.f & ye;\n } catch (s) {\n Nt(s, e, r, l || e.ctx);\n } finally {\n Oe = i, A = r;\n }\n }\n}\nfunction il() {\n try {\n Mi();\n } catch (e) {\n if (kt !== null)\n Nt(e, kt, null);\n else\n throw e;\n }\n}\nfunction kn() {\n var e = Oe;\n try {\n var t = 0;\n for (Oe = !0; ct.length > 0; ) {\n t++ > 1e3 && il();\n var r = ct, l = r.length;\n ct = [];\n for (var i = 0; i < l; i++) {\n var a = al(r[i]);\n ll(a);\n }\n }\n } finally {\n $t = !1, Oe = e, kt = null;\n }\n}\nfunction ll(e) {\n var t = e.length;\n if (t !== 0)\n for (var r = 0; r < t; r++) {\n var l = e[r];\n if ((l.f & (St | Ke)) === 0)\n try {\n ht(l) && (Xt(l), l.deps === null && l.first === null && l.nodes_start === null && (l.teardown === null ? Rn(l) : l.fn = null));\n } catch (i) {\n Nt(i, l, null, l.ctx);\n }\n }\n}\nfunction Lt(e) {\n $t || ($t = !0, queueMicrotask(kn));\n for (var t = kt = e; t.parent !== null; ) {\n t = t.parent;\n var r = t.f;\n if ((r & (ze | pe)) !== 0) {\n if ((r & K) === 0) return;\n t.f ^= K;\n }\n }\n ct.push(t);\n}\nfunction al(e) {\n for (var t = [], r = e; r !== null; ) {\n var l = r.f, i = (l & (pe | ze)) !== 0, a = i && (l & K) !== 0;\n if (!a && (l & Ke) === 0) {\n if ((l & nn) !== 0)\n t.push(r);\n else if (i)\n r.f ^= K;\n else {\n var o = k;\n try {\n k = r, ht(r) && Xt(r);\n } catch (c) {\n Nt(c, r, null, r.ctx);\n } finally {\n k = o;\n }\n }\n var f = r.first;\n if (f !== null) {\n r = f;\n continue;\n }\n }\n var s = r.parent;\n for (r = r.next; r === null && s !== null; )\n r = s.next, s = s.parent;\n }\n return t;\n}\nfunction $(e) {\n var t;\n for (Ur(); ct.length > 0; )\n $t = !0, kn(), Ur();\n return (\n /** @type {T} */\n t\n );\n}\nasync function ol() {\n await Promise.resolve(), $();\n}\nfunction d(e) {\n var t = e.f, r = (t & oe) !== 0;\n if (k !== null && !ae) {\n ce !== null && ce.includes(e) && qi();\n var l = k.deps;\n e.rv < Ct && (e.rv = Ct, V === null && l !== null && l[J] === e ? J++ : V === null ? V = [e] : (!Ce || !V.includes(e)) && V.push(e));\n } else if (r && /** @type {Derived} */\n e.deps === null && /** @type {Derived} */\n e.effects === null) {\n var i = (\n /** @type {Derived} */\n e\n ), a = i.parent;\n a !== null && (a.f & re) === 0 && (i.f ^= re);\n }\n return r && (i = /** @type {Derived} */\n e, ht(i) && mn(i)), e.v;\n}\nfunction Qe(e) {\n var t = ae;\n try {\n return ae = !0, e();\n } finally {\n ae = t;\n }\n}\nconst sl = -7169;\nfunction de(e, t) {\n e.f = e.f & sl | t;\n}\nfunction fl(e) {\n A === null && k === null && Fi(), k !== null && (k.f & re) !== 0 && A === null && zi(), Kt && Oi();\n}\nfunction ul(e, t) {\n var r = t.last;\n r === null ? t.last = t.first = e : (r.next = e, e.prev = r, t.last = e);\n}\nfunction Fe(e, t, r, l = !0) {\n var i = A, a = {\n ctx: B,\n deps: null,\n nodes_start: null,\n nodes_end: null,\n f: e | ye,\n first: null,\n fn: t,\n last: null,\n next: null,\n parent: i,\n prev: null,\n teardown: null,\n transitions: null,\n wv: 0\n };\n if (r)\n try {\n Xt(a), a.f |= ki;\n } catch (s) {\n throw we(a), s;\n }\n else t !== null && Lt(a);\n var o = r && a.deps === null && a.first === null && a.nodes_start === null && a.teardown === null && (a.f & (ln | yt)) === 0;\n if (!o && l && (i !== null && ul(a, i), k !== null && (k.f & oe) !== 0)) {\n var f = (\n /** @type {Derived} */\n k\n );\n (f.effects ?? (f.effects = [])).push(a);\n }\n return a;\n}\nfunction cl(e) {\n const t = Fe(It, null, !1);\n return de(t, K), t.teardown = e, t;\n}\nfunction Vt(e) {\n fl();\n var t = A !== null && (A.f & pe) !== 0 && B !== null && !B.m;\n if (t) {\n var r = (\n /** @type {ComponentContext} */\n B\n );\n (r.e ?? (r.e = [])).push({\n fn: e,\n effect: A,\n reaction: k\n });\n } else {\n var l = Qt(e);\n return l;\n }\n}\nfunction dl(e) {\n const t = Fe(ze, e, !0);\n return () => {\n we(t);\n };\n}\nfunction vl(e) {\n const t = Fe(ze, e, !0);\n return (r = {}) => new Promise((l) => {\n r.outro ? Bt(t, () => {\n we(t), l(void 0);\n }) : (we(t), l(void 0));\n });\n}\nfunction Qt(e) {\n return Fe(nn, e, !1);\n}\nfunction er(e) {\n return Fe(It, e, !0);\n}\nfunction We(e, t = [], r = De) {\n const l = t.map(r);\n return tr(() => e(...l.map(d)));\n}\nfunction tr(e, t = 0) {\n return Fe(It | Yt | t, e, !0);\n}\nfunction Rt(e, t = !0) {\n return Fe(It | pe, e, !0, t);\n}\nfunction Cn(e) {\n var t = e.teardown;\n if (t !== null) {\n const r = Kt, l = k;\n qr(!0), Ie(null);\n try {\n t.call(null);\n } finally {\n qr(r), Ie(l);\n }\n }\n}\nfunction An(e, t = !1) {\n var r = e.first;\n for (e.first = e.last = null; r !== null; ) {\n var l = r.next;\n (r.f & ze) !== 0 ? r.parent = null : we(r, t), r = l;\n }\n}\nfunction hl(e) {\n for (var t = e.first; t !== null; ) {\n var r = t.next;\n (t.f & pe) === 0 && we(t), t = r;\n }\n}\nfunction we(e, t = !0) {\n var r = !1;\n if ((t || (e.f & Ci) !== 0) && e.nodes_start !== null) {\n for (var l = e.nodes_start, i = e.nodes_end; l !== null; ) {\n var a = l === i ? null : (\n /** @type {TemplateNode} */\n /* @__PURE__ */ Te(l)\n );\n l.remove(), l = a;\n }\n r = !0;\n }\n An(e, t && !r), At(e, 0), de(e, St);\n var o = e.transitions;\n if (o !== null)\n for (const s of o)\n s.stop();\n Cn(e);\n var f = e.parent;\n f !== null && f.first !== null && Rn(e), e.next = e.prev = e.teardown = e.ctx = e.deps = e.fn = e.nodes_start = e.nodes_end = null;\n}\nfunction Rn(e) {\n var t = e.parent, r = e.prev, l = e.next;\n r !== null && (r.next = l), l !== null && (l.prev = r), t !== null && (t.first === e && (t.first = l), t.last === e && (t.last = r));\n}\nfunction Bt(e, t) {\n var r = [];\n In(e, r, !0), gl(r, () => {\n we(e), t && t();\n });\n}\nfunction gl(e, t) {\n var r = e.length;\n if (r > 0) {\n var l = () => --r || t();\n for (var i of e)\n i.out(l);\n } else\n t();\n}\nfunction In(e, t, r) {\n if ((e.f & Ke) === 0) {\n if (e.f ^= Ke, e.transitions !== null)\n for (const o of e.transitions)\n (o.is_global || r) && t.push(o);\n for (var l = e.first; l !== null; ) {\n var i = l.next, a = (l.f & Zt) !== 0 || (l.f & pe) !== 0;\n In(l, t, a ? r : !1), l = i;\n }\n }\n}\nfunction Hr(e) {\n Sn(e, !0);\n}\nfunction Sn(e, t) {\n if ((e.f & Ke) !== 0) {\n e.f ^= Ke, (e.f & K) === 0 && (e.f ^= K), ht(e) && (de(e, ye), Lt(e));\n for (var r = e.first; r !== null; ) {\n var l = r.next, i = (r.f & Zt) !== 0 || (r.f & pe) !== 0;\n Sn(r, i ? t : !1), r = l;\n }\n if (e.transitions !== null)\n for (const a of e.transitions)\n (a.is_global || t) && a.in();\n }\n}\nfunction Tn(e) {\n throw new Error(\"https://svelte.dev/e/lifecycle_outside_component\");\n}\nlet B = null;\nfunction Wr(e) {\n B = e;\n}\nfunction Nn(e, t = !1, r) {\n B = {\n p: B,\n c: null,\n e: null,\n m: !1,\n s: e,\n x: null,\n l: null\n };\n}\nfunction Ln(e) {\n const t = B;\n if (t !== null) {\n e !== void 0 && (t.x = e);\n const o = t.e;\n if (o !== null) {\n var r = A, l = k;\n t.e = null;\n try {\n for (var i = 0; i < o.length; i++) {\n var a = o[i];\n Se(a.effect), Ie(a.reaction), Qt(a.fn);\n }\n } finally {\n Se(r), Ie(l);\n }\n }\n B = t.p, t.m = !0;\n }\n return e || /** @type {T} */\n {};\n}\nfunction Dn() {\n return !0;\n}\nconst _l = [\"touchstart\", \"touchmove\"];\nfunction ml(e) {\n return _l.includes(e);\n}\nlet Yr = !1;\nfunction Pn() {\n Yr || (Yr = !0, document.addEventListener(\n \"reset\",\n (e) => {\n Promise.resolve().then(() => {\n var t;\n if (!e.defaultPrevented)\n for (\n const r of\n /**@type {HTMLFormElement} */\n e.target.elements\n )\n (t = r.__on_r) == null || t.call(r);\n });\n },\n // In the capture phase to guarantee we get noticed of it (no possiblity of stopPropagation)\n { capture: !0 }\n ));\n}\nfunction On(e) {\n var t = k, r = A;\n Ie(null), Se(null);\n try {\n return e();\n } finally {\n Ie(t), Se(r);\n }\n}\nfunction wl(e, t, r, l = r) {\n e.addEventListener(t, () => On(r));\n const i = e.__on_r;\n i ? e.__on_r = () => {\n i(), l(!0);\n } : e.__on_r = () => l(!0), Pn();\n}\nconst zn = /* @__PURE__ */ new Set(), qt = /* @__PURE__ */ new Set();\nfunction pl(e, t, r, l = {}) {\n function i(a) {\n if (l.capture || ft.call(t, a), !a.cancelBubble)\n return On(() => r == null ? void 0 : r.call(this, a));\n }\n return e.startsWith(\"pointer\") || e.startsWith(\"touch\") || e === \"wheel\" ? Gt(() => {\n t.addEventListener(e, i, l);\n }) : t.addEventListener(e, i, l), i;\n}\nfunction yl(e, t, r, l, i) {\n var a = { capture: l, passive: i }, o = pl(e, t, r, a);\n (t === document.body || t === window || t === document) && cl(() => {\n t.removeEventListener(e, o, a);\n });\n}\nfunction bl(e) {\n for (var t = 0; t < e.length; t++)\n zn.add(e[t]);\n for (var r of qt)\n r(e);\n}\nfunction ft(e) {\n var M;\n var t = this, r = (\n /** @type {Node} */\n t.ownerDocument\n ), l = e.type, i = ((M = e.composedPath) == null ? void 0 : M.call(e)) || [], a = (\n /** @type {null | Element} */\n i[0] || e.target\n ), o = 0, f = e.__root;\n if (f) {\n var s = i.indexOf(f);\n if (s !== -1 && (t === document || t === /** @type {any} */\n window)) {\n e.__root = t;\n return;\n }\n var c = i.indexOf(t);\n if (c === -1)\n return;\n s <= c && (o = s);\n }\n if (a = /** @type {Element} */\n i[o] || e.target, a !== t) {\n xt(e, \"currentTarget\", {\n configurable: !0,\n get() {\n return a || r;\n }\n });\n var v = k, h = A;\n Ie(null), Se(null);\n try {\n for (var g, m = []; a !== null; ) {\n var w = a.assignedSlot || a.parentNode || /** @type {any} */\n a.host || null;\n try {\n var z = a[\"__\" + l];\n if (z != null && (!/** @type {any} */\n a.disabled || // DOM could've been updated already by the time this is reached, so we check this as well\n // -> the target could not have been disabled because it emits the event in the first place\n e.target === a))\n if (on(z)) {\n var [T, ...Y] = z;\n T.apply(a, [e, ...Y]);\n } else\n z.call(a, e);\n } catch (F) {\n g ? m.push(F) : g = F;\n }\n if (e.cancelBubble || w === t || w === null)\n break;\n a = w;\n }\n if (g) {\n for (let F of m)\n queueMicrotask(() => {\n throw F;\n });\n throw g;\n }\n } finally {\n e.__root = t, delete e.currentTarget, Ie(v), Se(h);\n }\n }\n}\nfunction rr(e) {\n var t = document.createElement(\"template\");\n return t.innerHTML = e, t.content;\n}\nfunction Ae(e, t) {\n var r = (\n /** @type {Effect} */\n A\n );\n r.nodes_start === null && (r.nodes_start = e, r.nodes_end = t);\n}\n// @__NO_SIDE_EFFECTS__\nfunction ve(e, t) {\n var r = (t & Ei) !== 0, l = (t & xi) !== 0, i, a = !e.startsWith(\"\");\n return () => {\n if (D)\n return Ae(O, null), O;\n i === void 0 && (i = rr(a ? e : \"\" + e), r || (i = /** @type {Node} */\n /* @__PURE__ */ me(i)));\n var o = (\n /** @type {TemplateNode} */\n l || wn ? document.importNode(i, !0) : i.cloneNode(!0)\n );\n if (r) {\n var f = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(o)\n ), s = (\n /** @type {TemplateNode} */\n o.lastChild\n );\n Ae(f, s);\n } else\n Ae(o, o);\n return o;\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction El(e, t, r = \"svg\") {\n var l = !e.startsWith(\"\"), i = `<${r}>${l ? e : \"\" + e}`, a;\n return () => {\n if (D)\n return Ae(O, null), O;\n if (!a) {\n var o = (\n /** @type {DocumentFragment} */\n rr(i)\n ), f = (\n /** @type {Element} */\n /* @__PURE__ */ me(o)\n );\n a = /** @type {Element} */\n /* @__PURE__ */ me(f);\n }\n var s = (\n /** @type {TemplateNode} */\n a.cloneNode(!0)\n );\n return Ae(s, s), s;\n };\n}\nfunction ee(e, t) {\n if (D) {\n A.nodes_end = O, Xe();\n return;\n }\n e !== null && e.before(\n /** @type {Node} */\n t\n );\n}\nfunction Fn(e, t) {\n return Mn(e, t);\n}\nfunction xl(e, t) {\n jt(), t.intro = t.intro ?? !1;\n const r = t.target, l = D, i = O;\n try {\n for (var a = (\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(r)\n ); a && (a.nodeType !== 8 || /** @type {Comment} */\n a.data !== Wt); )\n a = /** @type {TemplateNode} */\n /* @__PURE__ */ Te(a);\n if (!a)\n throw Je;\n Ge(!0), Re(\n /** @type {Comment} */\n a\n ), Xe();\n const o = Mn(e, { ...t, anchor: a });\n if (O === null || O.nodeType !== 8 || /** @type {Comment} */\n O.data !== rn)\n throw Tt(), Je;\n return Ge(!1), /** @type {Exports} */\n o;\n } catch (o) {\n if (o === Je)\n return t.recover === !1 && Ui(), jt(), Xi(r), Ge(!1), Fn(e, t);\n throw o;\n } finally {\n Ge(l), Re(i);\n }\n}\nconst Ye = /* @__PURE__ */ new Map();\nfunction Mn(e, { target: t, anchor: r, props: l = {}, events: i, context: a, intro: o = !0 }) {\n jt();\n var f = /* @__PURE__ */ new Set(), s = (h) => {\n for (var g = 0; g < h.length; g++) {\n var m = h[g];\n if (!f.has(m)) {\n f.add(m);\n var w = ml(m);\n t.addEventListener(m, ft, { passive: w });\n var z = Ye.get(m);\n z === void 0 ? (document.addEventListener(m, ft, { passive: w }), Ye.set(m, 1)) : Ye.set(m, z + 1);\n }\n }\n };\n s(Ii(zn)), qt.add(s);\n var c = void 0, v = vl(() => {\n var h = r ?? t.appendChild(Jt());\n return Rt(() => {\n if (a) {\n Nn({});\n var g = (\n /** @type {ComponentContext} */\n B\n );\n g.c = a;\n }\n i && (l.$$events = i), D && Ae(\n /** @type {TemplateNode} */\n h,\n null\n ), c = e(h, l) || {}, D && (A.nodes_end = O), a && Ln();\n }), () => {\n var w;\n for (var g of f) {\n t.removeEventListener(g, ft);\n var m = (\n /** @type {number} */\n Ye.get(g)\n );\n --m === 0 ? (document.removeEventListener(g, ft), Ye.delete(g)) : Ye.set(g, m);\n }\n qt.delete(s), h !== r && ((w = h.parentNode) == null || w.removeChild(h));\n };\n });\n return Ht.set(c, v), c;\n}\nlet Ht = /* @__PURE__ */ new WeakMap();\nfunction $l(e, t) {\n const r = Ht.get(e);\n return r ? (Ht.delete(e), r(t)) : Promise.resolve();\n}\nfunction ke(e, t, [r, l] = [0, 0]) {\n D && r === 0 && Xe();\n var i = e, a = null, o = null, f = W, s = r > 0 ? Zt : 0, c = !1;\n const v = (g, m = !0) => {\n c = !0, h(m, g);\n }, h = (g, m) => {\n if (f === (f = g)) return;\n let w = !1;\n if (D && l !== -1) {\n if (r === 0) {\n const T = (\n /** @type {Comment} */\n i.data\n );\n T === Wt ? l = 0 : T === tn ? l = 1 / 0 : (l = parseInt(T.substring(1)), l !== l && (l = f ? 1 / 0 : -1));\n }\n const z = l > r;\n !!f === z && (i = Ki(), Re(i), Ge(!1), w = !0, l = -1);\n }\n f ? (a ? Hr(a) : m && (a = Rt(() => m(i))), o && Bt(o, () => {\n o = null;\n })) : (o ? Hr(o) : m && (o = Rt(() => m(i, [r + 1, l]))), a && Bt(a, () => {\n a = null;\n })), w && Ge(!0);\n };\n tr(() => {\n c = !1, t(v), c || h(null, null);\n }, s), D && (i = O);\n}\nfunction Ze(e, t, r, l, i) {\n var a = e, o = \"\", f;\n tr(() => {\n if (o === (o = t() ?? \"\")) {\n D && Xe();\n return;\n }\n f !== void 0 && (we(f), f = void 0), o !== \"\" && (f = Rt(() => {\n if (D) {\n O.data;\n for (var s = Xe(), c = s; s !== null && (s.nodeType !== 8 || /** @type {Comment} */\n s.data !== \"\"); )\n c = s, s = /** @type {TemplateNode} */\n /* @__PURE__ */ Te(s);\n if (s === null)\n throw Tt(), Je;\n Ae(O, c), a = Re(s);\n return;\n }\n var v = o + \"\", h = rr(v);\n Ae(\n /** @type {TemplateNode} */\n /* @__PURE__ */ me(h),\n /** @type {TemplateNode} */\n h.lastChild\n ), a.before(h);\n }));\n });\n}\nfunction kl(e, t, r, l, i) {\n var f;\n D && Xe();\n var a = (f = t.$$slots) == null ? void 0 : f[r], o = !1;\n a === !0 && (a = t.children, o = !0), a === void 0 || a(e, o ? () => l : l);\n}\nfunction Cl(e, t) {\n Gt(() => {\n var r = e.getRootNode(), l = (\n /** @type {ShadowRoot} */\n r.host ? (\n /** @type {ShadowRoot} */\n r\n ) : (\n /** @type {Document} */\n r.head ?? /** @type {Document} */\n r.ownerDocument.head\n )\n );\n if (!l.querySelector(\"#\" + t.hash)) {\n const i = document.createElement(\"style\");\n i.id = t.hash, i.textContent = t.code, l.appendChild(i);\n }\n });\n}\nconst Zr = [...` \t\n\\r\\fΒ \\v\\uFEFF`];\nfunction Al(e, t, r) {\n var l = \"\" + e;\n if (r) {\n for (var i in r)\n if (r[i])\n l = l ? l + \" \" + i : i;\n else if (l.length)\n for (var a = i.length, o = 0; (o = l.indexOf(i, o)) >= 0; ) {\n var f = o + a;\n (o === 0 || Zr.includes(l[o - 1])) && (f === l.length || Zr.includes(l[f])) ? l = (o === 0 ? \"\" : l.substring(0, o)) + l.substring(f + 1) : o = f;\n }\n }\n return l === \"\" ? null : l;\n}\nfunction Rl(e, t, r, l, i, a) {\n var o = e.__className;\n if (D || o !== r) {\n var f = Al(r, l, a);\n (!D || f !== e.getAttribute(\"class\")) && (f == null ? e.removeAttribute(\"class\") : e.className = f), e.__className = r;\n } else if (a && i !== a)\n for (var s in a) {\n var c = !!a[s];\n (i == null || c !== !!i[s]) && e.classList.toggle(s, c);\n }\n return a;\n}\nconst Il = Symbol(\"is custom element\"), Sl = Symbol(\"is html\");\nfunction Gr(e) {\n if (D) {\n var t = !1, r = () => {\n if (!t) {\n if (t = !0, e.hasAttribute(\"value\")) {\n var l = e.value;\n ie(e, \"value\", null), e.value = l;\n }\n if (e.hasAttribute(\"checked\")) {\n var i = e.checked;\n ie(e, \"checked\", null), e.checked = i;\n }\n }\n };\n e.__on_r = r, Di(r), Pn();\n }\n}\nfunction Tl(e, t) {\n var r = Un(e);\n r.value === (r.value = // treat null and undefined the same for the initial value\n t ?? void 0) || // @ts-expect-error\n // `progress` elements always need their value set when it's `0`\n e.value === t && (t !== 0 || e.nodeName !== \"PROGRESS\") || (e.value = t ?? \"\");\n}\nfunction ie(e, t, r, l) {\n var i = Un(e);\n D && (i[t] = e.getAttribute(t), t === \"src\" || t === \"srcset\" || t === \"href\" && e.nodeName === \"LINK\") || i[t] !== (i[t] = r) && (t === \"loading\" && (e[Ai] = r), r == null ? e.removeAttribute(t) : typeof r != \"string\" && Nl(e).includes(t) ? e[t] = r : e.setAttribute(t, r));\n}\nfunction Un(e) {\n return (\n /** @type {Record} **/\n // @ts-expect-error\n e.__attributes ?? (e.__attributes = {\n [Il]: e.nodeName.includes(\"-\"),\n [Sl]: e.namespaceURI === $i\n })\n );\n}\nvar Jr = /* @__PURE__ */ new Map();\nfunction Nl(e) {\n var t = Jr.get(e.nodeName);\n if (t) return t;\n Jr.set(e.nodeName, t = []);\n for (var r, l = e, i = Element.prototype; i !== l; ) {\n r = Si(l);\n for (var a in r)\n r[a].set && t.push(a);\n l = sn(l);\n }\n return t;\n}\nfunction Ll(e, t, r = t) {\n wl(e, \"change\", (l) => {\n var i = l ? e.defaultChecked : e.checked;\n r(i);\n }), // If we are hydrating and the value has since changed,\n // then use the update value from the input instead.\n (D && e.defaultChecked !== e.checked || // If defaultChecked is set, then checked == defaultChecked\n Qe(t) == null) && r(e.checked), er(() => {\n var l = t();\n e.checked = !!l;\n });\n}\nfunction Kr(e, t) {\n return e === t || (e == null ? void 0 : e[ut]) === t;\n}\nfunction Xr(e = {}, t, r, l) {\n return Qt(() => {\n var i, a;\n return er(() => {\n i = a, a = [], Qe(() => {\n e !== r(...a) && (t(e, ...a), i && Kr(r(...i), e) && t(null, ...i));\n });\n }), () => {\n Gt(() => {\n a && Kr(r(...a), e) && t(null, ...a);\n });\n };\n }), e;\n}\nfunction jn(e) {\n B === null && Tn(), Vt(() => {\n const t = Qe(e);\n if (typeof t == \"function\") return (\n /** @type {() => void} */\n t\n );\n });\n}\nfunction Dl(e) {\n B === null && Tn(), jn(() => () => Qe(e));\n}\nlet mt = !1;\nfunction Pl(e) {\n var t = mt;\n try {\n return mt = !1, [e(), mt];\n } finally {\n mt = t;\n }\n}\nfunction C(e, t, r, l) {\n var be;\n var i = (r & wi) !== 0, a = !0, o = (r & yi) !== 0, f = (r & bi) !== 0, s = !1, c;\n o ? [c, s] = Pl(() => (\n /** @type {V} */\n e[t]\n )) : c = /** @type {V} */\n e[t];\n var v = ut in e || an in e, h = o && (((be = Pe(e, t)) == null ? void 0 : be.set) ?? (v && t in e && ((N) => e[t] = N))) || void 0, g = (\n /** @type {V} */\n l\n ), m = !0, w = !1, z = () => (w = !0, m && (m = !1, f ? g = Qe(\n /** @type {() => V} */\n l\n ) : g = /** @type {V} */\n l), g);\n c === void 0 && l !== void 0 && (h && a && ji(), c = z(), h && h(c));\n var T;\n if (T = () => {\n var N = (\n /** @type {V} */\n e[t]\n );\n return N === void 0 ? z() : (m = !0, w = !1, N);\n }, (r & pi) === 0)\n return T;\n if (h) {\n var Y = e.$$legacy;\n return function(N, X) {\n return arguments.length > 0 ? ((!X || Y || s) && h(X ? T() : N), N) : T();\n };\n }\n var M = !1, F = /* @__PURE__ */ hn(c), se = /* @__PURE__ */ De(() => {\n var N = T(), X = d(F);\n return M ? (M = !1, X) : F.v = N;\n });\n return i || (se.equals = vn), function(N, X) {\n if (arguments.length > 0) {\n const U = X ? d(se) : o ? le(N) : N;\n return se.equals(U) || (M = !0, P(F, U), w && g !== void 0 && (g = U), Qe(() => d(se))), N;\n }\n return d(se);\n };\n}\nfunction Ol(e) {\n return new zl(e);\n}\nvar _e, te;\nclass zl {\n /**\n * @param {ComponentConstructorOptions & {\n * component: any;\n * }} options\n */\n constructor(t) {\n /** @type {any} */\n Mt(this, _e);\n /** @type {Record} */\n Mt(this, te);\n var a;\n var r = /* @__PURE__ */ new Map(), l = (o, f) => {\n var s = /* @__PURE__ */ hn(f);\n return r.set(o, s), s;\n };\n const i = new Proxy(\n { ...t.props || {}, $$events: {} },\n {\n get(o, f) {\n return d(r.get(f) ?? l(f, Reflect.get(o, f)));\n },\n has(o, f) {\n return f === an ? !0 : (d(r.get(f) ?? l(f, Reflect.get(o, f))), Reflect.has(o, f));\n },\n set(o, f, s) {\n return P(r.get(f) ?? l(f, s), s), Reflect.set(o, f, s);\n }\n }\n );\n Ut(this, te, (t.hydrate ? xl : Fn)(t.component, {\n target: t.target,\n anchor: t.anchor,\n props: i,\n context: t.context,\n intro: t.intro ?? !1,\n recover: t.recover\n })), (!((a = t == null ? void 0 : t.props) != null && a.$$host) || t.sync === !1) && $(), Ut(this, _e, i.$$events);\n for (const o of Object.keys(H(this, te)))\n o === \"$set\" || o === \"$destroy\" || o === \"$on\" || xt(this, o, {\n get() {\n return H(this, te)[o];\n },\n /** @param {any} value */\n set(f) {\n H(this, te)[o] = f;\n },\n enumerable: !0\n });\n H(this, te).$set = /** @param {Record} next */\n (o) => {\n Object.assign(i, o);\n }, H(this, te).$destroy = () => {\n $l(H(this, te));\n };\n }\n /** @param {Record} props */\n $set(t) {\n H(this, te).$set(t);\n }\n /**\n * @param {string} event\n * @param {(...args: any[]) => any} callback\n * @returns {any}\n */\n $on(t, r) {\n H(this, _e)[t] = H(this, _e)[t] || [];\n const l = (...i) => r.call(this, ...i);\n return H(this, _e)[t].push(l), () => {\n H(this, _e)[t] = H(this, _e)[t].filter(\n /** @param {any} fn */\n (i) => i !== l\n );\n };\n }\n $destroy() {\n H(this, te).$destroy();\n }\n}\n_e = new WeakMap(), te = new WeakMap();\nlet Vn;\ntypeof HTMLElement == \"function\" && (Vn = class extends HTMLElement {\n /**\n * @param {*} $$componentCtor\n * @param {*} $$slots\n * @param {*} use_shadow_dom\n */\n constructor(t, r, l) {\n super();\n /** The Svelte component constructor */\n ne(this, \"$$ctor\");\n /** Slots */\n ne(this, \"$$s\");\n /** @type {any} The Svelte component instance */\n ne(this, \"$$c\");\n /** Whether or not the custom element is connected */\n ne(this, \"$$cn\", !1);\n /** @type {Record} Component props data */\n ne(this, \"$$d\", {});\n /** `true` if currently in the process of reflecting component props back to attributes */\n ne(this, \"$$r\", !1);\n /** @type {Record} Props definition (name, reflected, type etc) */\n ne(this, \"$$p_d\", {});\n /** @type {Record} Event listeners */\n ne(this, \"$$l\", {});\n /** @type {Map} Event listener unsubscribe functions */\n ne(this, \"$$l_u\", /* @__PURE__ */ new Map());\n /** @type {any} The managed render effect for reflecting attributes */\n ne(this, \"$$me\");\n this.$$ctor = t, this.$$s = r, l && this.attachShadow({ mode: \"open\" });\n }\n /**\n * @param {string} type\n * @param {EventListenerOrEventListenerObject} listener\n * @param {boolean | AddEventListenerOptions} [options]\n */\n addEventListener(t, r, l) {\n if (this.$$l[t] = this.$$l[t] || [], this.$$l[t].push(r), this.$$c) {\n const i = this.$$c.$on(t, r);\n this.$$l_u.set(r, i);\n }\n super.addEventListener(t, r, l);\n }\n /**\n * @param {string} type\n * @param {EventListenerOrEventListenerObject} listener\n * @param {boolean | AddEventListenerOptions} [options]\n */\n removeEventListener(t, r, l) {\n if (super.removeEventListener(t, r, l), this.$$c) {\n const i = this.$$l_u.get(r);\n i && (i(), this.$$l_u.delete(r));\n }\n }\n async connectedCallback() {\n if (this.$$cn = !0, !this.$$c) {\n let t = function(i) {\n return (a) => {\n const o = document.createElement(\"slot\");\n i !== \"default\" && (o.name = i), ee(a, o);\n };\n };\n if (await Promise.resolve(), !this.$$cn || this.$$c)\n return;\n const r = {}, l = Fl(this);\n for (const i of this.$$s)\n i in l && (i === \"default\" && !this.$$d.children ? (this.$$d.children = t(i), r.default = !0) : r[i] = t(i));\n for (const i of this.attributes) {\n const a = this.$$g_p(i.name);\n a in this.$$d || (this.$$d[a] = pt(a, i.value, this.$$p_d, \"toProp\"));\n }\n for (const i in this.$$p_d)\n !(i in this.$$d) && this[i] !== void 0 && (this.$$d[i] = this[i], delete this[i]);\n this.$$c = Ol({\n component: this.$$ctor,\n target: this.shadowRoot || this,\n props: {\n ...this.$$d,\n $$slots: r,\n $$host: this\n }\n }), this.$$me = dl(() => {\n er(() => {\n var i;\n this.$$r = !0;\n for (const a of Et(this.$$c)) {\n if (!((i = this.$$p_d[a]) != null && i.reflect)) continue;\n this.$$d[a] = this.$$c[a];\n const o = pt(\n a,\n this.$$d[a],\n this.$$p_d,\n \"toAttribute\"\n );\n o == null ? this.removeAttribute(this.$$p_d[a].attribute || a) : this.setAttribute(this.$$p_d[a].attribute || a, o);\n }\n this.$$r = !1;\n });\n });\n for (const i in this.$$l)\n for (const a of this.$$l[i]) {\n const o = this.$$c.$on(i, a);\n this.$$l_u.set(a, o);\n }\n this.$$l = {};\n }\n }\n // We don't need this when working within Svelte code, but for compatibility of people using this outside of Svelte\n // and setting attributes through setAttribute etc, this is helpful\n /**\n * @param {string} attr\n * @param {string} _oldValue\n * @param {string} newValue\n */\n attributeChangedCallback(t, r, l) {\n var i;\n this.$$r || (t = this.$$g_p(t), this.$$d[t] = pt(t, l, this.$$p_d, \"toProp\"), (i = this.$$c) == null || i.$set({ [t]: this.$$d[t] }));\n }\n disconnectedCallback() {\n this.$$cn = !1, Promise.resolve().then(() => {\n !this.$$cn && this.$$c && (this.$$c.$destroy(), this.$$me(), this.$$c = void 0);\n });\n }\n /**\n * @param {string} attribute_name\n */\n $$g_p(t) {\n return Et(this.$$p_d).find(\n (r) => this.$$p_d[r].attribute === t || !this.$$p_d[r].attribute && r.toLowerCase() === t\n ) || t;\n }\n});\nfunction pt(e, t, r, l) {\n var a;\n const i = (a = r[e]) == null ? void 0 : a.type;\n if (t = i === \"Boolean\" && typeof t != \"boolean\" ? t != null : t, !l || !r[e])\n return t;\n if (l === \"toAttribute\")\n switch (i) {\n case \"Object\":\n case \"Array\":\n return t == null ? null : JSON.stringify(t);\n case \"Boolean\":\n return t ? \"\" : null;\n case \"Number\":\n return t ?? null;\n default:\n return t;\n }\n else\n switch (i) {\n case \"Object\":\n case \"Array\":\n return t && JSON.parse(t);\n case \"Boolean\":\n return t;\n // conversion already handled above\n case \"Number\":\n return t != null ? +t : t;\n default:\n return t;\n }\n}\nfunction Fl(e) {\n const t = {};\n return e.childNodes.forEach((r) => {\n t[\n /** @type {Element} node */\n r.slot || \"default\"\n ] = !0;\n }), t;\n}\nfunction Ml(e, t, r, l, i, a) {\n let o = class extends Vn {\n constructor() {\n super(e, r, i), this.$$p_d = t;\n }\n static get observedAttributes() {\n return Et(t).map(\n (f) => (t[f].attribute || f).toLowerCase()\n );\n }\n };\n return Et(t).forEach((f) => {\n xt(o.prototype, f, {\n get() {\n return this.$$c && f in this.$$c ? this.$$c[f] : this.$$d[f];\n },\n set(s) {\n var h;\n s = pt(f, s, t), this.$$d[f] = s;\n var c = this.$$c;\n if (c) {\n var v = (h = Pe(c, f)) == null ? void 0 : h.get;\n v ? c[f] = s : c.$set({ [f]: s });\n }\n }\n });\n }), l.forEach((f) => {\n xt(o.prototype, f, {\n get() {\n var s;\n return (s = this.$$c) == null ? void 0 : s[f];\n }\n });\n }), e.element = /** @type {any} */\n o, o;\n}\nconst Bn = new TextEncoder();\nfunction Ul(e) {\n return [...new Uint8Array(e)].map((t) => t.toString(16).padStart(2, \"0\")).join(\"\");\n}\nasync function jl(e, t = \"SHA-256\", r = 1e5) {\n const l = Date.now().toString(16);\n e || (e = Math.round(Math.random() * r));\n const i = await qn(l, e, t);\n return {\n algorithm: t,\n challenge: i,\n salt: l,\n signature: \"\"\n };\n}\nasync function qn(e, t, r) {\n if (typeof crypto > \"u\" || !(\"subtle\" in crypto) || !(\"digest\" in crypto.subtle))\n throw new Error(\"Web Crypto is not available. Secure context is required (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).\");\n return Ul(\n await crypto.subtle.digest(\n r.toUpperCase(),\n Bn.encode(e + t)\n )\n );\n}\nfunction Vl(e, t, r = \"SHA-256\", l = 1e6, i = 0) {\n const a = new AbortController(), o = Date.now();\n return {\n promise: (async () => {\n for (let s = i; s <= l; s += 1) {\n if (a.signal.aborted)\n return null;\n if (await qn(t, s, r) === e)\n return {\n number: s,\n took: Date.now() - o\n };\n }\n return null;\n })(),\n controller: a\n };\n}\nfunction Bl() {\n try {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n } catch {\n }\n}\nfunction ql(e) {\n const t = atob(e), r = new Uint8Array(t.length);\n for (let l = 0; l < t.length; l++)\n r[l] = t.charCodeAt(l);\n return r;\n}\nfunction Hl(e, t = 12) {\n const r = new Uint8Array(t);\n for (let l = 0; l < t; l++)\n r[l] = e % 256, e = Math.floor(e / 256);\n return r;\n}\nasync function Wl(e, t = \"\", r = 1e6, l = 0) {\n const i = \"AES-GCM\", a = new AbortController(), o = Date.now(), f = async () => {\n for (let v = l; v <= r; v += 1) {\n if (a.signal.aborted || !s || !c)\n return null;\n try {\n const h = await crypto.subtle.decrypt(\n {\n name: i,\n iv: Hl(v)\n },\n s,\n c\n );\n if (h)\n return {\n clearText: new TextDecoder().decode(h),\n took: Date.now() - o\n };\n } catch {\n }\n }\n return null;\n };\n let s = null, c = null;\n try {\n c = ql(e);\n const v = await crypto.subtle.digest(\n \"SHA-256\",\n Bn.encode(t)\n );\n s = await crypto.subtle.importKey(\n \"raw\",\n v,\n i,\n !1,\n [\"decrypt\"]\n );\n } catch {\n return {\n promise: Promise.reject(),\n controller: a\n };\n }\n return {\n promise: f(),\n controller: a\n };\n}\nvar E = /* @__PURE__ */ ((e) => (e.ERROR = \"error\", e.VERIFIED = \"verified\", e.VERIFYING = \"verifying\", e.UNVERIFIED = \"unverified\", e.EXPIRED = \"expired\", e))(E || {}), Yl = /* @__PURE__ */ El(''), Zl = /* @__PURE__ */ ve(' ', 1), Gl = /* @__PURE__ */ ve(''), Jl = /* @__PURE__ */ ve(''), Kl = /* @__PURE__ */ ve('
'), Xl = /* @__PURE__ */ ve('
'), Ql = /* @__PURE__ */ ve('
'), ea = /* @__PURE__ */ ve('
'), ta = /* @__PURE__ */ ve(''), ra = /* @__PURE__ */ ve('
'), na = /* @__PURE__ */ ve('
', 1);\nconst ia = {\n hash: \"svelte-ddsc3z\",\n code: `.altcha.svelte-ddsc3z {background:var(--altcha-color-base, transparent);border:var(--altcha-border-width, 1px) solid var(--altcha-color-border, #a0a0a0);border-radius:var(--altcha-border-radius, 3px);color:var(--altcha-color-text, currentColor);display:flex;flex-direction:column;max-width:var(--altcha-max-width, 260px);position:relative;text-align:left;}.altcha.svelte-ddsc3z:focus-within {border-color:var(--altcha-color-border-focus, currentColor);}.altcha[data-floating].svelte-ddsc3z {background:var(--altcha-color-base, white);display:none;filter:drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.2));left:-100%;position:fixed;top:-100%;width:var(--altcha-max-width, 260px);z-index:999999;}.altcha[data-floating=top].svelte-ddsc3z .altcha-anchor-arrow:where(.svelte-ddsc3z) {border-bottom-color:transparent;border-top-color:var(--altcha-color-border, #a0a0a0);bottom:-12px;top:auto;}.altcha[data-floating=bottom].svelte-ddsc3z:focus-within::after {border-bottom-color:var(--altcha-color-border-focus, currentColor);}.altcha[data-floating=top].svelte-ddsc3z:focus-within::after {border-top-color:var(--altcha-color-border-focus, currentColor);}.altcha[data-floating].svelte-ddsc3z:not([data-state=unverified]) {display:block;}.altcha-anchor-arrow.svelte-ddsc3z {border:6px solid transparent;border-bottom-color:var(--altcha-color-border, #a0a0a0);content:\"\";height:0;left:12px;position:absolute;top:-12px;width:0;}.altcha-main.svelte-ddsc3z {align-items:center;display:flex;gap:0.4rem;padding:0.7rem;}.altcha-label.svelte-ddsc3z {flex-grow:1;}.altcha-label.svelte-ddsc3z label:where(.svelte-ddsc3z) {cursor:pointer;}.altcha-logo.svelte-ddsc3z {color:currentColor;opacity:0.3;}.altcha-logo.svelte-ddsc3z:hover {opacity:1;}.altcha-error.svelte-ddsc3z {color:var(--altcha-color-error-text, #f23939);display:flex;font-size:0.85rem;gap:0.3rem;padding:0 0.7rem 0.7rem;}.altcha-footer.svelte-ddsc3z {align-items:center;background-color:var(--altcha-color-footer-bg, transparent);display:flex;font-size:0.75rem;opacity:0.4;padding:0.2rem 0.7rem;text-align:right;}.altcha-footer.svelte-ddsc3z:hover {opacity:1;}.altcha-footer.svelte-ddsc3z > :where(.svelte-ddsc3z):first-child {flex-grow:1;}.altcha-footer.svelte-ddsc3z a {color:currentColor;}.altcha-checkbox.svelte-ddsc3z {display:flex;align-items:center;height:24px;width:24px;}.altcha-checkbox.svelte-ddsc3z input:where(.svelte-ddsc3z) {width:18px;height:18px;margin:0;}.altcha-hidden.svelte-ddsc3z {display:none;}.altcha-spinner.svelte-ddsc3z {\n animation: svelte-ddsc3z-altcha-spinner 0.75s infinite linear;transform-origin:center;}\n\n@keyframes svelte-ddsc3z-altcha-spinner {\n 100% {\n transform: rotate(360deg);\n }\n}`\n};\nfunction la(e, t) {\n var Lr, Dr;\n Nn(t, !0), Cl(e, ia);\n let r = C(t, \"auto\", 7, void 0), l = C(t, \"blockspam\", 7, void 0), i = C(t, \"challengeurl\", 7, void 0), a = C(t, \"challengejson\", 7, void 0), o = C(t, \"customfetch\", 7, void 0), f = C(t, \"debug\", 7, !1), s = C(t, \"delay\", 7, 0), c = C(t, \"expire\", 7, void 0), v = C(t, \"floating\", 7, void 0), h = C(t, \"floatinganchor\", 7, void 0), g = C(t, \"floatingoffset\", 7, void 0), m = C(t, \"hidefooter\", 7, !1), w = C(t, \"hidelogo\", 7, !1), z = C(t, \"id\", 7, void 0), T = C(t, \"name\", 7, \"altcha\"), Y = C(t, \"maxnumber\", 7, 1e6), M = C(t, \"mockerror\", 7, !1), F = C(t, \"obfuscated\", 7, void 0), se = C(t, \"plugins\", 7, void 0), be = C(t, \"refetchonexpire\", 7, !0), N = C(t, \"spamfilter\", 7, !1), X = C(t, \"strings\", 7, void 0), U = C(t, \"test\", 7, !1), Ee = C(t, \"verifyurl\", 7, void 0), Me = C(t, \"workers\", 23, () => Math.min(16, navigator.hardwareConcurrency || 8)), tt = C(t, \"workerurl\", 7, void 0);\n const nr = [\"SHA-256\", \"SHA-384\", \"SHA-512\"], ir = \"Visit Altcha.org\", lr = \"https://altcha.org/\", rt = (n, u) => {\n t.$$host.dispatchEvent(new CustomEvent(n, { detail: u }));\n }, ar = (Dr = (Lr = document.documentElement.lang) == null ? void 0 : Lr.split(\"-\")) == null ? void 0 : Dr[0], Dt = /* @__PURE__ */ De(() => {\n var n;\n return i() && new URL(i(), location.origin).host.endsWith(\".altcha.org\") && !!((n = i()) != null && n.includes(\"apiKey=ckey_\"));\n }), Pt = /* @__PURE__ */ De(() => a() ? wr(a()) : void 0), or = /* @__PURE__ */ De(() => X() ? wr(X()) : {}), Q = /* @__PURE__ */ De(() => {\n var n;\n return {\n ariaLinkLabel: ir,\n error: \"Verification failed. Try again later.\",\n expired: \"Verification expired. Try again.\",\n footer: `Protected by ALTCHA`,\n label: \"I'm not a robot\",\n verified: \"Verified\",\n verifying: \"Verifying...\",\n waitAlert: \"Verifying... please wait.\",\n ...d(or)\n };\n }), sr = /* @__PURE__ */ De(() => z() || `${T()}_checkbox`);\n let Ue = He(!1), R = He(le(E.UNVERIFIED)), j = He(void 0), nt = He(null), je = null, y = null, Ve = He(null), fe = null, xe = [], Ne = He(null);\n Vt(() => {\n Xn(d(Ve));\n }), Vt(() => {\n Qn(d(R));\n }), Dl(() => {\n Hn(), y && (y.removeEventListener(\"submit\", hr), y.removeEventListener(\"reset\", gr), y.removeEventListener(\"focusin\", vr), y = null), fe && (clearTimeout(fe), fe = null), document.removeEventListener(\"click\", cr), document.removeEventListener(\"scroll\", dr), window.removeEventListener(\"resize\", mr);\n }), jn(() => {\n var n;\n I(\"mounted\", \"1.3.0\"), I(\"workers\", Me()), Jn(), I(\"plugins\", xe.length ? xe.map((u) => u.constructor.pluginName).join(\", \") : \"none\"), U() && I(\"using test mode\"), c() && Ot(c()), r() !== void 0 && I(\"auto\", r()), v() !== void 0 && pr(v()), y = (n = d(j)) == null ? void 0 : n.closest(\"form\"), y && (y.addEventListener(\"submit\", hr, { capture: !0 }), y.addEventListener(\"reset\", gr), r() === \"onfocus\" && y.addEventListener(\"focusin\", vr)), r() === \"onload\" && (F() ? it() : $e()), d(Dt) && (m() || w()) && I(\"Attributes hidefooter and hidelogo ignored because usage with free API Keys requires attribution.\"), requestAnimationFrame(() => {\n rt(\"load\");\n });\n });\n function fr(n, u) {\n return btoa(JSON.stringify({\n algorithm: n.algorithm,\n challenge: n.challenge,\n number: u.number,\n salt: n.salt,\n signature: n.signature,\n test: U() ? !0 : void 0,\n took: u.took\n }));\n }\n function Hn() {\n for (const n of xe)\n n.destroy();\n }\n function ur() {\n i() && be() && d(R) === E.VERIFIED ? $e() : lt(E.EXPIRED, d(Q).expired);\n }\n async function Wn() {\n var n;\n if (M())\n throw I(\"mocking error\"), new Error(\"Mocked error.\");\n if (d(Pt))\n return I(\"using provided json data\"), d(Pt);\n if (U())\n return I(\"generating test challenge\", { test: U() }), jl(typeof U() != \"boolean\" ? +U() : void 0);\n {\n if (!i() && y) {\n const L = y.getAttribute(\"action\");\n L != null && L.includes(\"/form/\") && i(L + \"/altcha\");\n }\n if (!i())\n throw new Error(\"Attribute challengeurl not set.\");\n I(\"fetching challenge from\", i());\n let u = null, _ = null;\n if (o())\n if (I(\"using customfetch\"), typeof o() == \"string\") {\n if (u = globalThis[o()] || null, !u)\n throw new Error(`Custom fetch function not found: ${o()}`);\n } else\n u = o();\n const b = {\n headers: N() !== !1 ? { \"x-altcha-spam-filter\": \"1\" } : {}\n };\n if (u) {\n if (_ = await u(i(), b), !_ || !(_ instanceof Response))\n throw new Error(\"Custom fetch function did not return a response.\");\n } else\n _ = await fetch(i(), b);\n if (_.status !== 200)\n throw new Error(`Server responded with ${_.status}.`);\n const S = _.headers.get(\"X-Altcha-Config\"), x = await _.json(), p = new URLSearchParams((n = x.salt.split(\"?\")) == null ? void 0 : n[1]), q = p.get(\"expires\") || p.get(\"expire\");\n if (q) {\n const L = new Date(+q * 1e3), qe = isNaN(L.getTime()) ? 0 : L.getTime() - Date.now();\n qe > 0 && Ot(qe);\n }\n if (S)\n try {\n const L = JSON.parse(S);\n L && typeof L == \"object\" && (L.verifyurl && (L.verifyurl = new URL(L.verifyurl, new URL(i())).toString()), Er(L));\n } catch (L) {\n I(\"unable to configure from X-Altcha-Config\", L);\n }\n return x;\n }\n }\n function Yn(n) {\n var _;\n const u = y == null ? void 0 : y.querySelector(typeof n == \"string\" ? `input[name=\"${n}\"]` : 'input[type=\"email\"]:not([data-no-spamfilter])');\n return ((_ = u == null ? void 0 : u.value) == null ? void 0 : _.slice(u.value.indexOf(\"@\"))) || void 0;\n }\n function Zn() {\n return N() === \"ipAddress\" ? {\n blockedCountries: void 0,\n classifier: void 0,\n disableRules: void 0,\n email: !1,\n expectedCountries: void 0,\n expectedLanguages: void 0,\n fields: !1,\n ipAddress: void 0,\n text: void 0,\n timeZone: void 0\n } : typeof N() == \"object\" ? N() : {\n blockedCountries: void 0,\n classifier: void 0,\n disableRules: void 0,\n email: void 0,\n expectedCountries: void 0,\n expectedLanguages: void 0,\n fields: void 0,\n ipAddress: void 0,\n text: void 0,\n timeZone: void 0\n };\n }\n function Gn(n) {\n return [\n ...(y == null ? void 0 : y.querySelectorAll(n != null && n.length ? n.map((_) => `input[name=\"${_}\"]`).join(\", \") : 'input[type=\"text\"]:not([data-no-spamfilter]), textarea:not([data-no-spamfilter])')) || []\n ].reduce(\n (_, b) => {\n const S = b.name, x = b.value;\n return S && x && (_[S] = /\\n/.test(x) ? x.replace(new RegExp(\"(? u instanceof Error)) && console[n[0] instanceof Error ? \"error\" : \"log\"](\"ALTCHA\", `[name=${T()}]`, ...n);\n }\n function Kn() {\n [E.UNVERIFIED, E.ERROR, E.EXPIRED].includes(d(R)) ? N() !== !1 && (y == null ? void 0 : y.reportValidity()) === !1 ? P(Ue, !1) : F() ? it() : $e() : P(Ue, !0);\n }\n function cr(n) {\n const u = n.target;\n v() && u && !d(j).contains(u) && (d(R) === E.VERIFIED || r() === \"off\" && d(R) === E.UNVERIFIED) && (d(j).style.display = \"none\");\n }\n function dr() {\n v() && d(R) !== E.UNVERIFIED && gt();\n }\n function Xn(n) {\n for (const u of xe)\n typeof u.onErrorChange == \"function\" && u.onErrorChange(d(Ve));\n }\n function vr(n) {\n d(R) === E.UNVERIFIED && $e();\n }\n function hr(n) {\n y && r() === \"onsubmit\" ? d(R) === E.UNVERIFIED ? (n.preventDefault(), n.stopPropagation(), $e().then(() => {\n y == null || y.requestSubmit();\n })) : d(R) !== E.VERIFIED && (n.preventDefault(), n.stopPropagation(), d(R) === E.VERIFYING && _r()) : y && v() && r() === \"off\" && d(R) === E.UNVERIFIED && (n.preventDefault(), n.stopPropagation(), d(j).style.display = \"block\", gt());\n }\n function gr() {\n lt();\n }\n function _r() {\n d(R) === E.VERIFYING && d(Q).waitAlert && alert(d(Q).waitAlert);\n }\n function Qn(n) {\n for (const u of xe)\n typeof u.onStateChange == \"function\" && u.onStateChange(d(R));\n v() && d(R) !== E.UNVERIFIED && requestAnimationFrame(() => {\n gt();\n }), P(Ue, d(R) === E.VERIFIED);\n }\n function mr() {\n v() && gt();\n }\n function wr(n) {\n return JSON.parse(n);\n }\n function gt(n = 20) {\n if (d(j))\n if (je || (je = (h() ? document.querySelector(h()) : y == null ? void 0 : y.querySelector('input[type=\"submit\"], button[type=\"submit\"], button:not([type=\"button\"]):not([type=\"reset\"])')) || y), je) {\n const u = parseInt(g(), 10) || 12, _ = je.getBoundingClientRect(), b = d(j).getBoundingClientRect(), S = document.documentElement.clientHeight, x = document.documentElement.clientWidth, p = v() === \"auto\" ? _.bottom + b.height + u + n > S : v() === \"top\", q = Math.max(n, Math.min(x - n - b.width, _.left + _.width / 2 - b.width / 2));\n if (p ? d(j).style.top = `${_.top - (b.height + u)}px` : d(j).style.top = `${_.bottom + u}px`, d(j).style.left = `${q}px`, d(j).setAttribute(\"data-floating\", p ? \"top\" : \"bottom\"), d(nt)) {\n const L = d(nt).getBoundingClientRect();\n d(nt).style.left = _.left - q + _.width / 2 - L.width / 2 + \"px\";\n }\n } else\n I(\"unable to find floating anchor element\");\n }\n async function ei(n) {\n if (!Ee())\n throw new Error(\"Attribute verifyurl not set.\");\n I(\"requesting server verification from\", Ee());\n const u = { payload: n };\n if (N() !== !1) {\n const {\n blockedCountries: S,\n classifier: x,\n disableRules: p,\n email: q,\n expectedLanguages: L,\n expectedCountries: qe,\n fields: ot,\n ipAddress: st,\n text: vi,\n timeZone: Pr\n } = Zn();\n u.blockedCountries = S, u.classifier = x, u.disableRules = p, u.email = q === !1 ? void 0 : Yn(q), u.expectedCountries = qe, u.expectedLanguages = L || (ar ? [ar] : void 0), u.fields = ot === !1 ? void 0 : Gn(ot), u.ipAddress = st === !1 ? void 0 : st || \"auto\", u.text = vi, u.timeZone = Pr === !1 ? void 0 : Pr || Bl();\n }\n const _ = await fetch(Ee(), {\n body: JSON.stringify(u),\n headers: { \"content-type\": \"application/json\" },\n method: \"POST\"\n });\n if (_.status !== 200)\n throw new Error(`Server responded with ${_.status}.`);\n const b = await _.json();\n if (b != null && b.payload && P(Ne, le(b.payload)), rt(\"serververification\", b), l() && b.classification === \"BAD\")\n throw new Error(\"SpamFilter returned negative classification.\");\n }\n function Ot(n) {\n I(\"expire\", n), fe && (clearTimeout(fe), fe = null), n < 1 ? ur() : fe = setTimeout(ur, n);\n }\n function pr(n) {\n I(\"floating\", n), v() !== n && (d(j).style.left = \"\", d(j).style.top = \"\"), v(n === !0 || n === \"\" ? \"auto\" : n === !1 || n === \"false\" ? void 0 : v()), v() ? (r() || r(\"onsubmit\"), document.addEventListener(\"scroll\", dr), document.addEventListener(\"click\", cr), window.addEventListener(\"resize\", mr)) : r() === \"onsubmit\" && r(void 0);\n }\n function yr(n) {\n if (!n.algorithm)\n throw new Error(\"Invalid challenge. Property algorithm is missing.\");\n if (n.signature === void 0)\n throw new Error(\"Invalid challenge. Property signature is missing.\");\n if (!nr.includes(n.algorithm.toUpperCase()))\n throw new Error(`Unknown algorithm value. Allowed values: ${nr.join(\", \")}`);\n if (!n.challenge || n.challenge.length < 40)\n throw new Error(\"Challenge is too short. Min. 40 chars.\");\n if (!n.salt || n.salt.length < 10)\n throw new Error(\"Salt is too short. Min. 10 chars.\");\n }\n async function br(n) {\n let u = null;\n if (\"Worker\" in window) {\n try {\n u = await ti(n, n.maxnumber);\n } catch (_) {\n I(_);\n }\n if ((u == null ? void 0 : u.number) !== void 0 || \"obfuscated\" in n)\n return { data: n, solution: u };\n }\n if (\"obfuscated\" in n) {\n const _ = await Wl(n.obfuscated, n.key, n.maxnumber);\n return { data: n, solution: await _.promise };\n }\n return {\n data: n,\n solution: await Vl(n.challenge, n.salt, n.algorithm, n.maxnumber || Y()).promise\n };\n }\n async function ti(n, u = typeof U() == \"number\" ? U() : Y(), _ = Math.ceil(Me())) {\n const b = [];\n _ = Math.min(16, Math.max(1, _));\n for (let p = 0; p < _; p++)\n b.push(altchaCreateWorker(tt()));\n const S = Math.ceil(u / _), x = await Promise.all(b.map((p, q) => {\n const L = q * S;\n return new Promise((qe) => {\n p.addEventListener(\"message\", (ot) => {\n if (ot.data)\n for (const st of b)\n st !== p && st.postMessage({ type: \"abort\" });\n qe(ot.data);\n }), p.postMessage({\n payload: n,\n max: L + S,\n start: L,\n type: \"work\"\n });\n });\n }));\n for (const p of b)\n p.terminate();\n return x.find((p) => !!p) || null;\n }\n async function it() {\n if (!F()) {\n Le(E.ERROR);\n return;\n }\n const n = xe.find((u) => u.constructor.pluginName === \"obfuscation\");\n if (!n || !(\"clarify\" in n)) {\n Le(E.ERROR), I(\"Plugin `obfuscation` not found. Import `altcha/plugins/obfuscation` to load it.\");\n return;\n }\n if (\"clarify\" in n && typeof n.clarify == \"function\")\n return n.clarify();\n }\n function Er(n) {\n n.obfuscated !== void 0 && F(n.obfuscated), n.auto !== void 0 && (r(n.auto), r() === \"onload\" && (F() ? it() : $e())), n.blockspam !== void 0 && l(!!n.blockspam), n.customfetch !== void 0 && o(n.customfetch), n.floatinganchor !== void 0 && h(n.floatinganchor), n.delay !== void 0 && s(n.delay), n.floatingoffset !== void 0 && g(n.floatingoffset), n.floating !== void 0 && pr(n.floating), n.expire !== void 0 && (Ot(n.expire), c(n.expire)), n.challenge && (a(typeof n.challenge == \"string\" ? n.challenge : JSON.stringify(n.challenge)), yr(d(Pt))), n.challengeurl !== void 0 && i(n.challengeurl), n.debug !== void 0 && f(!!n.debug), n.hidefooter !== void 0 && m(!!n.hidefooter), n.hidelogo !== void 0 && w(!!n.hidelogo), n.maxnumber !== void 0 && Y(+n.maxnumber), n.mockerror !== void 0 && M(!!n.mockerror), n.name !== void 0 && T(n.name), n.refetchonexpire !== void 0 && be(!!n.refetchonexpire), n.spamfilter !== void 0 && N(typeof n.spamfilter == \"object\" ? n.spamfilter : !!n.spamfilter), n.strings && X(typeof n.strings == \"string\" ? n.strings : JSON.stringify(n.strings)), n.test !== void 0 && U(typeof n.test == \"number\" ? n.test : !!n.test), n.verifyurl !== void 0 && Ee(n.verifyurl), n.workers !== void 0 && Me(+n.workers), n.workerurl !== void 0 && tt(n.workerurl);\n }\n function xr() {\n return {\n auto: r(),\n blockspam: l(),\n challengeurl: i(),\n debug: f(),\n delay: s(),\n expire: c(),\n floating: v(),\n floatinganchor: h(),\n floatingoffset: g(),\n hidefooter: m(),\n hidelogo: w(),\n name: T(),\n maxnumber: Y(),\n mockerror: M(),\n obfuscated: F(),\n refetchonexpire: be(),\n spamfilter: N(),\n strings: d(Q),\n test: U(),\n verifyurl: Ee(),\n workers: Me(),\n workerurl: tt()\n };\n }\n function $r() {\n return je;\n }\n function ri(n) {\n return xe.find((u) => u.constructor.pluginName === n);\n }\n function kr() {\n return d(R);\n }\n function lt(n = E.UNVERIFIED, u = null) {\n fe && (clearTimeout(fe), fe = null), P(Ue, !1), P(Ne, null), Le(n, u);\n }\n function Cr(n) {\n je = n;\n }\n function Le(n, u = null) {\n P(R, le(n)), P(Ve, le(u)), rt(\"statechange\", {\n payload: d(Ne),\n state: d(R)\n });\n }\n async function $e() {\n return lt(E.VERIFYING), await new Promise((n) => setTimeout(n, s() || 0)), Wn().then((n) => (yr(n), I(\"challenge\", n), br(n))).then(({ data: n, solution: u }) => {\n if (I(\"solution\", u), \"challenge\" in n && u && !(\"clearText\" in u))\n if ((u == null ? void 0 : u.number) !== void 0) {\n if (Ee())\n return ei(fr(n, u));\n P(Ne, le(fr(n, u))), I(\"payload\", d(Ne));\n } else\n throw I(\"Unable to find a solution. Ensure that the 'maxnumber' attribute is greater than the randomly generated number.\"), new Error(\"Unexpected result returned.\");\n }).then(() => {\n Le(E.VERIFIED), I(\"verified\"), ol().then(() => {\n rt(\"verified\", { payload: d(Ne) });\n });\n }).catch((n) => {\n I(n), Le(E.ERROR, n.message);\n });\n }\n var Ar = na(), Rr = Br(Ar);\n kl(Rr, t, \"default\", {});\n var at = he(Rr, 2), zt = G(at), Ir = G(zt);\n {\n var ni = (n) => {\n var u = Yl();\n ee(n, u);\n };\n ke(Ir, (n) => {\n d(R) === E.VERIFYING && n(ni);\n });\n }\n var _t = he(Ir, 2);\n let Sr;\n var Be = G(_t);\n Gr(Be), Be.__change = Kn, Z(_t);\n var Ft = he(_t, 2), ii = G(Ft);\n {\n var li = (n) => {\n var u = Zl(), _ = Br(u), b = G(_);\n Ze(b, () => d(Q).verified), Z(_);\n var S = he(_, 2);\n Gr(S), We(() => {\n ie(S, \"name\", T()), Tl(S, d(Ne));\n }), ee(n, u);\n }, ai = (n, u) => {\n {\n var _ = (S) => {\n var x = Gl(), p = G(x);\n Ze(p, () => d(Q).verifying), Z(x), ee(S, x);\n }, b = (S) => {\n var x = Jl(), p = G(x);\n Ze(p, () => d(Q).label), Z(x), We(() => ie(x, \"for\", d(sr))), ee(S, x);\n };\n ke(\n n,\n (S) => {\n d(R) === E.VERIFYING ? S(_) : S(b, !1);\n },\n u\n );\n }\n };\n ke(ii, (n) => {\n d(R) === E.VERIFIED ? n(li) : n(ai, !1);\n });\n }\n Z(Ft);\n var oi = he(Ft, 2);\n {\n var si = (n) => {\n var u = Kl(), _ = G(u);\n ie(_, \"href\", lr), Z(u), We(() => ie(_, \"aria-label\", d(Q).ariaLinkLabel)), ee(n, u);\n };\n ke(oi, (n) => {\n (w() !== !0 || d(Dt)) && n(si);\n });\n }\n Z(zt);\n var Tr = he(zt, 2);\n {\n var fi = (n) => {\n var u = ea(), _ = he(G(u), 2);\n {\n var b = (x) => {\n var p = Xl(), q = G(p);\n Ze(q, () => d(Q).expired), Z(p), We(() => ie(p, \"title\", d(Ve))), ee(x, p);\n }, S = (x) => {\n var p = Ql(), q = G(p);\n Ze(q, () => d(Q).error), Z(p), We(() => ie(p, \"title\", d(Ve))), ee(x, p);\n };\n ke(_, (x) => {\n d(R) === E.EXPIRED ? x(b) : x(S, !1);\n });\n }\n Z(u), ee(n, u);\n };\n ke(Tr, (n) => {\n (d(Ve) || d(R) === E.EXPIRED) && n(fi);\n });\n }\n var Nr = he(Tr, 2);\n {\n var ui = (n) => {\n var u = ta(), _ = G(u), b = G(_);\n Ze(b, () => d(Q).footer), Z(_), Z(u), ee(n, u);\n };\n ke(Nr, (n) => {\n d(Q).footer && (m() !== !0 || d(Dt)) && n(ui);\n });\n }\n var ci = he(Nr, 2);\n {\n var di = (n) => {\n var u = ra();\n Xr(u, (_) => P(nt, _), () => d(nt)), ee(n, u);\n };\n ke(ci, (n) => {\n v() && n(di);\n });\n }\n return Z(at), Xr(at, (n) => P(j, n), () => d(j)), We(\n (n) => {\n ie(at, \"data-state\", d(R)), ie(at, \"data-floating\", v()), Sr = Rl(_t, 1, \"altcha-checkbox svelte-ddsc3z\", null, Sr, n), ie(Be, \"id\", d(sr)), Be.required = r() !== \"onsubmit\" && (!v() || r() !== \"off\");\n },\n [\n () => ({\n \"altcha-hidden\": d(R) === E.VERIFYING\n })\n ]\n ), yl(\"invalid\", Be, _r), Ll(Be, () => d(Ue), (n) => P(Ue, n)), ee(e, Ar), Ln({\n clarify: it,\n configure: Er,\n getConfiguration: xr,\n getFloatingAnchor: $r,\n getPlugin: ri,\n getState: kr,\n reset: lt,\n setFloatingAnchor: Cr,\n setState: Le,\n verify: $e,\n get auto() {\n return r();\n },\n set auto(n = void 0) {\n r(n), $();\n },\n get blockspam() {\n return l();\n },\n set blockspam(n = void 0) {\n l(n), $();\n },\n get challengeurl() {\n return i();\n },\n set challengeurl(n = void 0) {\n i(n), $();\n },\n get challengejson() {\n return a();\n },\n set challengejson(n = void 0) {\n a(n), $();\n },\n get customfetch() {\n return o();\n },\n set customfetch(n = void 0) {\n o(n), $();\n },\n get debug() {\n return f();\n },\n set debug(n = !1) {\n f(n), $();\n },\n get delay() {\n return s();\n },\n set delay(n = 0) {\n s(n), $();\n },\n get expire() {\n return c();\n },\n set expire(n = void 0) {\n c(n), $();\n },\n get floating() {\n return v();\n },\n set floating(n = void 0) {\n v(n), $();\n },\n get floatinganchor() {\n return h();\n },\n set floatinganchor(n = void 0) {\n h(n), $();\n },\n get floatingoffset() {\n return g();\n },\n set floatingoffset(n = void 0) {\n g(n), $();\n },\n get hidefooter() {\n return m();\n },\n set hidefooter(n = !1) {\n m(n), $();\n },\n get hidelogo() {\n return w();\n },\n set hidelogo(n = !1) {\n w(n), $();\n },\n get id() {\n return z();\n },\n set id(n = void 0) {\n z(n), $();\n },\n get name() {\n return T();\n },\n set name(n = \"altcha\") {\n T(n), $();\n },\n get maxnumber() {\n return Y();\n },\n set maxnumber(n = 1e6) {\n Y(n), $();\n },\n get mockerror() {\n return M();\n },\n set mockerror(n = !1) {\n M(n), $();\n },\n get obfuscated() {\n return F();\n },\n set obfuscated(n = void 0) {\n F(n), $();\n },\n get plugins() {\n return se();\n },\n set plugins(n = void 0) {\n se(n), $();\n },\n get refetchonexpire() {\n return be();\n },\n set refetchonexpire(n = !0) {\n be(n), $();\n },\n get spamfilter() {\n return N();\n },\n set spamfilter(n = !1) {\n N(n), $();\n },\n get strings() {\n return X();\n },\n set strings(n = void 0) {\n X(n), $();\n },\n get test() {\n return U();\n },\n set test(n = !1) {\n U(n), $();\n },\n get verifyurl() {\n return Ee();\n },\n set verifyurl(n = void 0) {\n Ee(n), $();\n },\n get workers() {\n return Me();\n },\n set workers(n = Math.min(16, navigator.hardwareConcurrency || 8)) {\n Me(n), $();\n },\n get workerurl() {\n return tt();\n },\n set workerurl(n = void 0) {\n tt(n), $();\n }\n });\n}\nbl([\"change\"]);\ncustomElements.define(\"altcha-widget\", Ml(\n la,\n {\n blockspam: { type: \"Boolean\" },\n debug: { type: \"Boolean\" },\n delay: { type: \"Number\" },\n expire: { type: \"Number\" },\n floatingoffset: { type: \"Number\" },\n hidefooter: { type: \"Boolean\" },\n hidelogo: { type: \"Boolean\" },\n maxnumber: { type: \"Number\" },\n mockerror: { type: \"Boolean\" },\n refetchonexpire: { type: \"Boolean\" },\n test: { type: \"Boolean\" },\n workers: { type: \"Number\" },\n auto: {},\n challengeurl: {},\n challengejson: {},\n customfetch: {},\n floating: {},\n floatinganchor: {},\n id: {},\n name: {},\n obfuscated: {},\n plugins: {},\n spamfilter: {},\n strings: {},\n verifyurl: {},\n workerurl: {}\n },\n [\"default\"],\n [\n \"clarify\",\n \"configure\",\n \"getConfiguration\",\n \"getFloatingAnchor\",\n \"getPlugin\",\n \"getState\",\n \"reset\",\n \"setFloatingAnchor\",\n \"setState\",\n \"verify\"\n ],\n !1\n));\nglobalThis.altchaCreateWorker = (e) => e ? new Worker(new URL(e)) : new _i();\nglobalThis.altchaPlugins = globalThis.altchaPlugins || [];\nexport {\n la as Altcha\n};","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageContact extends BasePage {\n static hash = hashPageContact;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupButtonSubmitFormContactUs();\n }\n\n hookupButtonSubmitFormContactUs() {\n const button = document.querySelector('form input[type=\"submit\"]');\n button.classList.add(flagButton);\n button.classList.add(flagButtonPrimary);\n }\n}\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageContactSuccess extends BasePage {\n static hash = hashPageContactSuccess;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n}\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageApplyFoundingPartner extends BasePage {\n static hash = hashPageApplyFoundingPartner;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupButtonSubmitFormApplyFoundingPartnerUs();\n }\n\n hookupButtonSubmitFormApplyFoundingPartnerUs() {\n const button = document.querySelector('form input[type=\"submit\"]');\n button.classList.add(flagButton);\n button.classList.add(flagButtonPrimary);\n }\n}\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageApplyFoundingPartnerSuccess extends BasePage {\n static hash = hashPageApplyFoundingPartnerSuccess;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n}\n","\n// internal\nimport BasePage from \"../base.js\";\n// external\n\n\nexport default class PageBlogHome extends BasePage {\n static hash = hashPageBlogHome;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n // this.hookupButtonsNav();\n this.hookupFormNewsletter();\n this.hookupButtonSubmitFormContactUs();\n }\n\n hookupButtonSubmitFormContactUs() {\n const button = document.querySelector('form input[type=\"submit\"]');\n button.classList.add(flagButton);\n button.classList.add(flagButtonPrimary);\n button.innerText = 'Subscribe Now';\n }\n\n hookupFormNewsletter() {\n let submitButton = document.querySelector('#submit');\n submitButton.innerText = 'Subscribe Now';\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\n// internal\n// import BasePage from \"../base.js\";\nimport PageBlogHome from \"./home.js\";\n// external\n\n\nexport default class PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients extends PageBlogHome {\n static hash = hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupFormNewsletter();\n this.hookupButtonSubmitFormContactUs();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\n// internal\n// import BasePage from \"../base.js\";\nimport PageBlogHome from \"./home.js\";\n// external\n\n\nexport default class PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress extends PageBlogHome {\n static hash = hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n // this.hookupButtonsNav();\n this.hookupFormNewsletter();\n this.hookupButtonSubmitFormContactUs();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\n// internal\n// import BasePage from \"../base.js\";\nimport PageBlogHome from \"./home.js\";\n// external\n\n\nexport default class PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 extends PageBlogHome {\n static hash = hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupFormNewsletter();\n this.hookupButtonSubmitFormContactUs();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","// internal\nimport BasePage from \"../base.js\";\n// vendor\nimport { Altcha } from \"../../vendor/altcha.js\";\n\nexport default class PageBlogNewsletterSuccess extends BasePage {\n static hash = hashPageBlogNewsletterSuccess;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n}\n","\nimport BasePage from \"../base.js\";\n\nexport default class PageDogHome extends BasePage {\n static hash = hashPageDogHome;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupDogHome();\n }\n hookupDogHome() {\n \n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport Utils from '../utils.js';\n\nexport default class BusinessObjects {\n static getOptionJsonFromObjectJsonAndKeys(objectJson, keyText, keyValue, valueSelected = null) {\n return {\n text: objectJson[keyText],\n value: objectJson[keyValue],\n selected: (objectJson[keyValue] == valueSelected),\n };\n }\n static getOptionJsonFromObjectJson(objectJson, valueSelected = null) {\n let keyText = objectJson[flagNameAttrOptionText];\n let keyValue = objectJson[flagNameAttrOptionValue];\n // Utils.consoleLogIfNotProductionEnvironment({objectJson, keyText, keyValue});\n return BusinessObjects.getOptionJsonFromObjectJsonAndKeys(objectJson, keyText, keyValue, valueSelected);\n }\n static getObjectText(objectJson) {\n return objectJson == null ? '' : objectJson[objectJson[flagNameAttrOptionText]];\n }\n static getListObjectsFromIdDictAndCsv(idDict, idCsv) {\n let listObjects = [];\n let ids = idCsv.split(',');\n for (let id of ids) {\n listObjects.push(idDict[id]);\n }\n return listObjects;\n }\n}","\nimport Events from \"../../../lib/events.js\";\n\nexport default class OverlayError {\n static hookup() {\n Events.initialiseEventHandler(idOverlayError + ' button.' + flagCancel, flagInitialised, (buttonCancel) => {\n buttonCancel.addEventListener('click', () => {\n let overlay = document.querySelector(idOverlayError);\n overlay.style.visibility = 'hidden';\n });\n });\n }\n static show(msgError) {\n let overlay = document.querySelector(idOverlayError);\n let labelError = overlay.querySelector(idLabelError);\n labelError.innerText = msgError;\n overlay.style.visibility = 'visible';\n }\n}","\nimport BusinessObjects from \"../lib/business_objects/business_objects.js\";\nimport Events from \"../lib/events.js\";\nimport LocalStorage from \"../lib/local_storage.js\";\nimport Validation from \"../lib/validation.js\";\nimport BasePage from \"./base.js\";\nimport API from \"../api.js\";\nimport DOM from \"../dom.js\";\nimport Utils from \"../lib/utils.js\";\n\nimport OverlayConfirm from \"../components/common/temporary/overlay_confirm.js\";\nimport OverlayError from \"../components/common/temporary/overlay_error.js\";\n\nexport default class TableBasePage extends BasePage {\n // static hash\n // static attrIdRowObject\n // callSaveTableContent\n\n constructor(router) {\n super(router);\n this.cursorYInitial = null;\n this.rowInitial = null;\n this.placeholder = null;\n this.dragSrcEl = null;\n this.dragSrcRow = null;\n\n this.hookupTableCellDdls = this.hookupTableCellDdls.bind(this);\n }\n \n initialize(isPopState = false) {\n throw new Error(\"Must implement initialize() method.\");\n }\n sharedInitialize(isPopState = false, isSinglePageApp = false) {\n if (!isPopState) {\n super.sharedInitialize();\n this.hookupFilters();\n this.hookupButtonsSaveCancel();\n this.hookupTableMain();\n OverlayConfirm.hookup(() => {\n if (isSinglePageApp) {\n this.saveRecordsTableDirtySinglePageApp();\n }\n else {\n this.saveRecordsTableDirty();\n }\n });\n } else {\n let dataPage = this.getLocalStoragePage();\n let filters = dataPage[flagFormFilters];\n let formFilters = TableBasePage.getFormFilters();\n let filtersDefault = DOM.convertForm2JSON(formFilters);\n if (!Validation.areEqualDicts(filters, filtersDefault)) {\n this.callFilterTableContent();\n }\n }\n }\n hookupFilters() {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Subclass of TableBasePage must implement method hookupFilters().\");\n }\n }\n sharedHookupFilters() {\n this.hookupButtonApplyFilters();\n this.hookupSearchTextFilter();\n }\n hookupFilterActive() {\n let filterSelector = idFormFilters + ' #' + flagActiveOnly;\n let filterActiveOld = document.querySelector(filterSelector);\n filterActiveOld.removeAttribute('id');\n let parentDiv = filterActiveOld.parentElement;\n let isChecked = (DOM.getElementAttributeValuePrevious(parentDiv) == \"True\");\n let filterActiveNew = document.querySelector(idFormFilters + ' div.' + flagActiveOnly + '.' + flagContainerInput + ' svg.' + flagActiveOnly);\n filterActiveNew.setAttribute('id', flagActiveOnly);\n if (isChecked) filterActiveNew.classList.add(flagIsChecked);\n\n Events.hookupEventHandler(\"click\", filterSelector, (event, filterActive) => {\n Utils.consoleLogIfNotProductionEnvironment({ filterActive });\n Utils.consoleLogIfNotProductionEnvironment({ [filterActive.tagName]: filterActive.tagName });\n let svgElement = (filterActive.tagName.toUpperCase() == 'SVG') ? filterActive : filterActive.parentElement;\n let wasChecked = svgElement.classList.contains(flagIsChecked);\n if (wasChecked) {\n svgElement.classList.remove(flagIsChecked);\n }\n else {\n svgElement.classList.add(flagIsChecked);\n }\n return this.handleChangeFilter(event, filterActive);\n });\n let filter = document.querySelector(filterSelector);\n let filterValuePrevious = DOM.getElementValueCurrent(filter);\n filter.setAttribute(attrValueCurrent, filterValuePrevious);\n filter.setAttribute(attrValuePrevious, filterValuePrevious);\n }\n hookupFilter(filterFlag, handler = (event, filter) => { return this.handleChangeFilter(event, filter); }) {\n let filterSelector = idFormFilters + ' #' + filterFlag;\n Events.hookupEventHandler(\"change\", filterSelector, handler);\n let filter = document.querySelector(filterSelector);\n let filterValuePrevious = DOM.getElementValueCurrent(filter);\n filter.setAttribute(attrValueCurrent, filterValuePrevious);\n filter.setAttribute(attrValuePrevious, filterValuePrevious);\n }\n handleChangeFilter(event, filter) {\n let isDirtyFilter = DOM.updateAndCheckIsElementDirty(filter);\n let formFilters = TableBasePage.getFormFilters();\n let areDirtyFilters = isDirtyFilter || DOM.hasDirtyChildrenContainer(formFilters);\n let tbody = document.querySelector(idTableMain + ' tbody');\n let rows = tbody.querySelectorAll(':scope > tr');\n rows.forEach((row) => {\n if (areDirtyFilters && !row.classList.contains(flagIsCollapsed)) row.classList.add(flagIsCollapsed);\n if (!areDirtyFilters && row.classList.contains(flagIsCollapsed)) {\n row.classList.remove(flagIsCollapsed);\n let dirtyInputs = row.querySelectorAll('input.' + flagDirty);\n dirtyInputs.forEach((dirtyInput) => {\n dirtyInput.value = DOM.getElementAttributeValueCurrent(dirtyInput);\n });\n }\n });\n if (areDirtyFilters) {\n /*\n tbody.querySelectorAll('tr').forEach((tr) => { \n if (!DOM.hasDirtyChildrenContainer(tr)) tr.remove(); \n });\n */\n tbody.innerHTML = '
Press \"Apply Filters\" to refresh the table.
' + tbody.innerHTML;\n if (!tbody.classList.contains(flagIsCollapsed)) tbody.classList.add(flagIsCollapsed);\n }\n else {\n let isDirtyLabel = tbody.querySelector(\":scope > div\");\n if (isDirtyLabel != null) isDirtyLabel.remove();\n if (tbody.classList.contains(flagIsCollapsed)) tbody.classList.remove(flagIsCollapsed);\n let initialisedElements = tbody.querySelectorAll('.' + flagInitialised);\n initialisedElements.forEach((initialisedElement) => {\n initialisedElement.classList.remove(flagInitialised);\n });\n this.hookupTableMain();\n }\n this.updateAndToggleShowButtonsSaveCancel();\n }\n hookupFilterIsNotEmpty() {\n this.hookupFilter(flagIsNotEmpty);\n }\n hookupButtonApplyFilters() {\n Events.hookupEventHandler(\"click\", idButtonApplyFilters, (event, button) => {\n event.stopPropagation();\n this.callFilterTableContent();\n });\n }\n hookupSearchTextFilter() {\n this.hookupFilter(flagSearch);\n }\n hookupFilterDog() {\n this.hookupFilter(attrIdDog); \n }\n hookupFilterCommandCategory() {\n this.hookupFilter(attrIdCommandCategory, (event, filterCommandCategory) => {\n this.handleChangeFilter();\n let isDirtyFilter = filterCommandCategory.classList.contains(flagDirty);\n let idCommandCategory = DOM.getElementValueCurrent(filterCommandCategory);\n console.log(\"filter commands unsorted\");\n console.log(Utils.getListFromDict(filterCommands));\n let commandsInCategory = Utils.getListFromDict(filterCommands).filter(command => command[attrIdCommandCategory] == idCommandCategory);\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n let filterCommand = document.querySelector(idFormFilters + ' .' + flagCommand);\n let idCommandPrevious = DOM.getElementAttributeValuePrevious(filterCommand);\n filterCommand.innerHTML = '';\n let optionJson, option;\n option = DOM.createOption(null);\n filterCommand.appendChild(option);\n sortedCommands.forEach((command) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(command, idCommandPrevious);\n option = DOM.createOption(optionJson);\n filterCommand.appendChild(option);\n });\n filterCommand.dispatchEvent(new Event('change'));\n return isDirtyFilter;\n });\n }\n hookupFilterCommand() {\n this.hookupFilter(attrIdCommand);\n }\n hookupFilterLocation() {\n this.hookupFilter(attrIdLocation);\n }\n /*\n getAndLoadFilteredTableContent = () => {\n this.callFilterTableContent()\n .catch(error => console.error('Error:', error));\n }\n */\n static getFormFilters() {\n return document.querySelector(idFormFilters);\n }\n callFilterTableContent() {\n let formFilters = TableBasePage.getFormFilters();\n let filtersJson = DOM.convertForm2JSON(formFilters);\n Utils.consoleLogIfNotProductionEnvironment(\"callFilterTableContent\");\n Utils.consoleLogIfNotProductionEnvironment(\"formFilters\");\n Utils.consoleLogIfNotProductionEnvironment(formFilters);\n Utils.consoleLogIfNotProductionEnvironment(\"filtersJson\");\n Utils.consoleLogIfNotProductionEnvironment(filtersJson);\n this.leave();\n API.goToHash(this.constructor.hash, filtersJson);\n }\n callbackLoadTableContent(response) {\n let table = TableBasePage.getTableMain();\n let bodyTable = table.querySelector('tbody');\n bodyTable.querySelectorAll('tr').forEach(function(row) { row.remove(); });\n let rowsJson = response.data[flagRows];\n if (!Validation.isEmpty(rowsJson) && rowsJson.every(row => row.hasOwnProperty('display_order'))) {\n rowsJson = rowsJson.sort((a, b) => a.display_order - b.display_order);\n }\n rowsJson.forEach(this.loadRowTable.bind(this));\n this.hookupTableMain();\n }\n static getTableMain() {\n return document.querySelector(idTableMain);\n }\n loadRowTable(rowJson) {\n throw new Error(\"Subclass of TableBasePage must implement method loadRowTable().\");\n }\n getAndLoadFilteredTableContentSinglePageApp() {\n this.callFilterTableContent()\n .then(data => {\n Utils.consoleLogIfNotProductionEnvironment('Table data received:', data);\n this.callbackLoadTableContent(data);\n })\n .catch(error => console.error('Error:', error));\n }\n hookupButtonsSaveCancel() {\n this.hookupButtonSave();\n this.hookupButtonCancel();\n this.toggleShowButtonsSaveCancel(false);\n }\n saveRecordsTableDirty() {\n let records = this.getTableRecords(true);\n if (records.length == 0) {\n OverlayError.show('No records to save');\n return;\n }\n let formElement = TableBasePage.getFormFilters();\n let comment = DOM.getElementValueCurrent(document.querySelector(idTextareaConfirm));\n /*\n Utils.consoleLogIfNotProductionEnvironment({ formElement, comment, records });\n Utils.consoleLogIfNotProductionEnvironment('records');\n Utils.consoleLogIfNotProductionEnvironment(records);\n debugger;\n */\n this.callSaveTableContent(records, formElement, comment)\n .then(data => {\n if (data[flagStatus] == flagSuccess) {\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment('Records saved!');\n Utils.consoleLogIfNotProductionEnvironment('Data received:', data);\n }\n this.callFilterTableContent();\n }\n else {\n Utils.consoleLogIfNotProductionEnvironment(\"error: \", data[flagMessage]);\n OverlayError.show(data[flagMessage]);\n }\n })\n .catch(error => console.error('Error:', error));\n }\n getTableRecords(dirtyOnly = false) {\n let records = [];\n let record;\n document.querySelectorAll(idTableMain + ' > tbody > tr').forEach((row) => {\n if (dirtyOnly && !DOM.hasDirtyChildrenContainer(row)) return;\n record = this.getJsonRow(row);\n records.push(record);\n });\n return records;\n }\n getJsonRow(row) {\n throw new Error(\"Subclass of TableBasePage must implement method getJsonRow().\");\n }\n saveRecordsTableDirtySinglePageApp() {\n let records = this.getTableRecords(true);\n if (records.length == 0) {\n OverlayError.show('No records to save');\n return;\n }\n let formElement = TableBasePage.getFormFilters();\n let comment = DOM.getElementValueCurrent(document.querySelector(idTextareaConfirm));\n this.callSaveTableContent(records, formElement, comment)\n .then(data => {\n if (data[flagStatus] == flagSuccess) {\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment('Records saved!');\n Utils.consoleLogIfNotProductionEnvironment('Data received:', data);\n }\n this.callbackLoadTableContent(data);\n }\n else {\n Utils.consoleLogIfNotProductionEnvironment(\"error: \", data[flagMessage]);\n OverlayError.show(data[flagMessage]);\n }\n })\n .catch(error => console.error('Error:', error));\n }\n hookupButtonCancel() {\n Events.initialiseEventHandler('.' + flagContainer + '.' + flagSave + '.' + flagCancel + ' button.' + flagCancel, flagInitialised, (button) => {\n button.addEventListener(\"click\", (event) => {\n event.stopPropagation();\n button = event.target;\n if (button.classList.contains(flagIsCollapsed)) return;\n this.callFilterTableContent();\n });\n button.classList.add(flagIsCollapsed);\n });\n }\n handleClickAddRowTable(event, button) {\n event.stopPropagation();\n _rowBlank.setAttribute(this.constructor.attrIdRowObject, -1 - _rowBlank.getAttribute(this.constructor.attrIdRowObject));\n let tbody = document.querySelector(idTableMain + ' tbody');\n if (tbody.classList.contains(flagIsCollapsed)) return;\n let row = _rowBlank.cloneNode(true);\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableMain + ' > tbody > tr').length;\n row.setAttribute(this.constructor.attrIdRowObject, -1 - countRows);\n this.initialiseRowNew(tbody, row);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTableMain();\n this.postInitialiseRowNewCallback(tbody);\n }\n initialiseRowNew(tbody, row) {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Subclass of TableBasePage must implement method initialiseRowNew().\");\n }\n // row.classList.remove(flagRowNew);\n }\n hookupTableMain() {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Must implement hookupTableMain() method.\");\n }\n Events.initialiseEventHandler(idTableMain, flagInitialised, (table) => {\n this.cacheRowBlank();\n });\n }\n cacheRowBlank() {\n let selectorRowNew = idTableMain + ' tbody tr.' + flagRowNew;\n let rowBlankTemp = document.querySelector(selectorRowNew);\n Utils.consoleLogIfNotProductionEnvironment(\"row blank temp: \", rowBlankTemp);\n let countRows = document.querySelectorAll(idTableMain + ' > tbody > tr').length;\n _rowBlank = rowBlankTemp.cloneNode(true);\n document.querySelectorAll(selectorRowNew).forEach(function(row) {\n row.remove();\n });\n _rowBlank.setAttribute(this.constructor.attrIdRowObject, -1 - countRows);\n }\n postInitialiseRowNewCallback(tbody) {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Subclass of TableBasePage must implement method postInitialiseRowNewCallback(tbody).\");\n }\n }\n initialiseSliderDisplayOrderRowNew(tbody, row) {\n // let tdSelector = ':scope > tr > td.' + flagDisplayOrder;\n // let tbody = document.querySelector('table' + (Validation.isEmpty(flagTable) ? '' : '.' + flagTable) + ' > tbody');\n let slidersDisplayOrder = tbody.querySelectorAll(':scope > tr > td.' + flagDisplayOrder + ' input.' + flagSlider);\n let maxDisplayOrder = 0;\n slidersDisplayOrder.forEach((slider) => {\n maxDisplayOrder = Math.max(maxDisplayOrder, parseFloat(DOM.getElementValueCurrent(slider)));\n });\n let sliderDisplayOrder = row.querySelector('td.' + flagDisplayOrder + ' .' + flagSlider);\n DOM.setElementValuesCurrentAndPrevious(sliderDisplayOrder, maxDisplayOrder + 1);\n }\n hookupSlidersDisplayOrderTable() {\n let selectorDisplayOrder = idTableMain + ' tbody tr td.' + flagDisplayOrder + ' input.' + flagSlider + '.' + flagDisplayOrder;\n this.hookupChangeHandlerTableCells(selectorDisplayOrder);\n }\n hookupChangeHandlerTableCells(inputSelector, handler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n Events.initialiseEventHandler(inputSelector, flagInitialised, (input) => {\n input.addEventListener(\"change\", (event) => {\n handler(event, input);\n });\n handler(null, input);\n });\n }\n handleChangeNestedElementCellTable(event, element) {\n let wasDirtyParentRows = this.getAllIsDirtyRowsInParentTree(element);\n let wasDirtyElement = element.classList.contains(flagDirty);\n let isDirtyElement = DOM.updateAndCheckIsElementDirty(element);\n // Utils.consoleLogIfNotProductionEnvironment({isDirtyElement, wasDirtyElement, wasDirtyParentRows});\n // let td = DOM.getCellFromElement(element);\n // DOM.setElementAttributeValueCurrent(td, DOM.getElementAttributeValueCurrent(element));\n if (isDirtyElement != wasDirtyElement) {\n // DOM.handleDirtyElement(td, isDirtyElement);\n this.updateAndToggleShowButtonsSaveCancel();\n this.cascadeChangedIsDirtyNestedElementCellTable(element, isDirtyElement, wasDirtyParentRows);\n }\n }\n getAllIsDirtyRowsInParentTree(element) {\n let rows = [];\n let parent = element;\n let isDirty;\n while (parent) {\n if (parent.tagName.toUpperCase() == 'TR') {\n isDirty = parent.classList.contains(flagDirty)\n rows.push(isDirty);\n }\n parent = parent.parentElement;\n }\n return rows;\n }\n cascadeChangedIsDirtyNestedElementCellTable(element, isDirtyElement, wasDirtyParentRows) {\n if (Validation.isEmpty(wasDirtyParentRows)) return;\n let tr = DOM.getRowFromElement(element);\n let isDirtyRow = isDirtyElement || DOM.hasDirtyChildrenContainer(tr);\n let wasDirtyRow = wasDirtyParentRows.shift();\n Utils.consoleLogIfNotProductionEnvironment({isDirtyRow, wasDirtyRow});\n if (isDirtyRow != wasDirtyRow) {\n DOM.handleDirtyElement(tr, isDirtyRow);\n this.updateAndToggleShowButtonsSaveCancel();\n this.cascadeChangedIsDirtyNestedElementCellTable(tr.parentElement, isDirtyRow, wasDirtyParentRows);\n }\n }\n hookupChangeHandlerTableCellsWhenNotCollapsed(inputSelector, handler = (event, element) => {\n if (!element.classList.contains(flagIsCollapsed)) this.handleChangeNestedElementCellTable(event, element);\n }) {\n Events.hookupEventHandler(\"change\", inputSelector, handler);\n }\n hookupFieldsCodeTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagCode + ' > .' + flagCode);\n }\n hookupFieldsNameTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagName + ' > .' + flagName);\n }\n hookupFieldsDescriptionTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagDescription + ' > .' + flagDescription);\n }\n hookupFieldsNotesTable() {\n this.hookupChangeHandlerTableCells(idTableMain + ' > tbody > tr > td.' + flagNotes + ' > .' + flagNotes);\n }\n hookupFieldsActive(flagTable = '', handleClickRowNew = (event, element) => { this.handleClickAddRowTable(event, element); }) {\n let selectorButton = 'table.table-main' + (Validation.isEmpty(flagTable) ? '' : '.' + flagTable) + ' > tbody > tr > td.' + flagActive + ' .' + flagButton + '.' + flagActive;\n let selectorButtonDelete = selectorButton + '.' + flagDelete;\n let selectorButtonUndelete = selectorButton + ':not(.' + flagDelete + ')';\n Utils.consoleLogIfNotProductionEnvironment(\"hookupFieldsActive: \", selectorButtonDelete, selectorButtonUndelete);\n this.hookupButtonsRowDelete(selectorButtonDelete, selectorButtonUndelete);\n this.hookupButtonsRowUndelete(selectorButtonDelete, selectorButtonUndelete);\n Events.hookupEventHandler(\n \"click\"\n , 'table.table-main' + (Validation.isEmpty(flagTable) ? '' : '.' + flagTable) + ' > thead > tr > th.' + flagActive + ' .' + flagButton + '.' + flagActive\n , (event, button) => { handleClickRowNew(event, button); }\n );\n }\n hookupButtonsRowDelete(selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n Events.hookupEventHandler(\"click\", selectorButtonDelete, (event, element) => {\n this.handleClickButtonRowDelete(event, element, selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n });\n }\n handleClickButtonRowDelete(event, element, selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n if (element.tagName.toUpperCase() != 'SVG') element = element.parentElement;\n let valuePrevious = DOM.getElementAttributeValuePrevious(element);\n let wasDirty = element.classList.contains(flagDirty);\n let row = DOM.getRowFromElement(element);\n if (row.classList.contains(flagRowNew) && !DOM.hasDirtyChildrenContainer(row)) {\n row.parentNode.removeChild(row);\n }\n else {\n let buttonAddTemplate = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagActive + '.' + flagAdd);\n let buttonAdd = buttonAddTemplate.cloneNode(true);\n DOM.setElementAttributeValuePrevious(buttonAdd, valuePrevious);\n DOM.setElementAttributeValueCurrent(buttonAdd, false);\n if (wasDirty) buttonAdd.classList.add(flagDirty);\n element.replaceWith(buttonAdd);\n changeHandler(null, buttonAdd);\n this.hookupButtonsRowUndelete(selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n }\n this.updateAndToggleShowButtonsSaveCancel();\n }\n hookupButtonsRowUndelete(selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n Events.hookupEventHandler(\"click\", selectorButtonUndelete, (event, element) => {\n this.handleClickButtonRowUndelete(event, element, selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n });\n }\n handleClickButtonRowUndelete(event, element, selectorButtonDelete, selectorButtonUndelete, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n if (element.tagName.toUpperCase() != 'SVG') element = element.parentElement;\n let valuePrevious = DOM.getElementAttributeValuePrevious(element);\n let wasDirty = DOM.isElementDirty(element);\n let buttonDeleteTemplate = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagActive + '.' + flagDelete);\n let buttonDelete = buttonDeleteTemplate.cloneNode(true);\n DOM.setElementAttributeValuePrevious(buttonDelete, valuePrevious);\n DOM.setElementAttributeValueCurrent(buttonDelete, true);\n if (wasDirty) buttonDelete.classList.add(flagDirty);\n element.replaceWith(buttonDelete);\n changeHandler(null, buttonDelete);\n this.hookupButtonsRowDelete(selectorButtonDelete, selectorButtonUndelete, (changeEvent, changeElement) => { changeHandler(changeEvent, changeElement); });\n this.updateAndToggleShowButtonsSaveCancel();\n }\n hookupTdsAccessLevel() {\n this.hookupTableCellDdlPreviews(flagAccessLevel, Utils.getListFromDict(accessLevels));\n }\n hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector = null\n , ddlHookup = (ddlSelector) => { this.hookupTableCellDdls(ddlSelector); }\n , changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n ) {\n if (cellSelector == null) cellSelector = idTableMain + ' > tbody > tr > td.' + fieldFlag;\n Events.hookupEventHandler(\"click\", cellSelector + ' div.' + fieldFlag, (event, div) => {\n this.handleClickTableCellDdlPreview(\n event\n , div\n , fieldFlag\n , optionList\n , cellSelector\n , (ddlSelector) => { ddlHookup(\n ddlSelector\n , (event, element) => { changeHandler(event, element); }\n ); }\n );\n });\n ddlHookup(cellSelector + ' select.' + fieldFlag);\n }\n hookupTableCellDdls(ddlSelector, changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { changeHandler(event, element); });\n }\n handleClickTableCellDdlPreview(event, div, fieldFlag, optionObjectList, cellSelector = null, ddlHookup = (cellSelector) => { this.hookupTableCellDdls(cellSelector); }) {\n if (Validation.isEmpty(cellSelector)) cellSelector = idTableMain + ' > tbody > tr > td.' + fieldFlag;\n let idSelected = DOM.getElementAttributeValueCurrent(div);\n let td = DOM.getCellFromElement(div);\n td.innerHTML = '';\n let ddl = document.createElement('select');\n ddl.classList.add(fieldFlag);\n DOM.setElementValuesCurrentAndPrevious(ddl, idSelected);\n let optionJson, option;\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment(\"click table cell ddl preview\");\n Utils.consoleLogIfNotProductionEnvironment({optionObjectList, cellSelector});\n }\n option = DOM.createOption(null);\n ddl.appendChild(option);\n optionObjectList.forEach((optionObjectJson) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(optionObjectJson, idSelected);\n option = DOM.createOption(optionJson);\n ddl.appendChild(option);\n });\n td.appendChild(ddl);\n let ddlSelector = cellSelector + ' select.' + fieldFlag;\n ddlHookup(ddlSelector);\n }\n /*\n hookupTableCellDDlPreviewsWhenNotCollapsed(cellSelector, optionList, ddlHookup = (event, element) => { this.hookupTableCellDdls(event, element); }) {\n Events.hookupEventHandler(\"click\", cellSelector + ' div', (event, div) => {\n this.handleClickTableCellDdlPreview(event, div, optionList, cellSelector, (event, element) => { ddlHookup(event, element); });\n });\n }\n */\n toggleColumnCollapsed(flagColumn, isCollapsed) {\n this.toggleColumnHasClassnameFlag(flagColumn, isCollapsed, flagIsCollapsed);\n }\n toggleColumnHeaderCollapsed(flagColumn, isCollapsed) {\n this.toggleColumnHasClassnameFlag(flagColumn, isCollapsed, flagIsCollapsed);\n }\n\n hookupFieldsCommandCategory(idTable = null) {\n if (idTable == null) idTable = idTableMain;\n this.hookupTableCellDdlPreviews(\n flagCommandCategory\n , Utils.getListFromDict(filterCommandCategories).sort((a, b) => a[flagName].localeCompare(b[flagName]))\n , idTable + ' > tbody > tr > td.' + flagCommandCategory // + ' .' + flagCommandCategory\n , (cellSelector) => { this.hookupCommandCategoryDdls(cellSelector); }\n );\n }\n hookupCommandCategoryDdls(ddlSelector) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { this.handleChangeCommandCategoryDdl(event, element); });\n }\n handleChangeCommandCategoryDdl(event, ddlCategory) {\n let row = DOM.getRowFromElement(ddlCategory);\n let idCommandCategoryRowOld = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n this.handleChangeNestedElementCellTable(event, ddlCategory);\n let idCommandCategoryRowNew = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n if (\n idCommandCategoryRowOld == idCommandCategoryRowNew\n || idCommandCategoryRowNew == 0\n ) return;\n console.log({ idCommandCategoryRowNew, idCommandCategoryRowOld });\n let idCommandCategoryFilter = this.getIdCommandCategoryFilter();\n let tdCommand = row.querySelector('td.' + flagCommand);\n tdCommand.dispatchEvent(new Event('click'));\n let ddlCommand = row.querySelector('td.' + flagCommand + ' select.' + flagCommand);\n ddlCommand.innerHTML = '';\n ddlCommand.appendChild(DOM.createOption(null));\n let optionJson, option;\n let commandsInCategory = Utils.getListFromDict(filterCommands).filter(command => \n (\n command[attrIdCommandCategory] == idCommandCategoryRowNew\n || idCommandCategoryRowNew == 0\n )\n && (\n command[attrIdCommandCategory] == idCommandCategoryFilter\n || idCommandCategoryFilter == 0\n )\n );\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n sortedCommands.forEach((command) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(command);\n option = DOM.createOption(optionJson);\n ddlCommand.appendChild(option);\n });\n this.handleChangeNestedElementCellTable(event, ddlCommand);\n }\n hookupFieldsCommand(idTable = null) {\n if (idTable == null) idTable = idTableMain;\n Events.hookupEventHandler(\"click\", idTable + ' > tbody > tr > td.' + flagCommand + ' div.' + flagCommand, (event, div) => {\n Utils.consoleLogIfNotProductionEnvironment(div);\n let parentTr = DOM.getRowFromElement(div);\n Utils.consoleLogIfNotProductionEnvironment({ div, parentTr });\n let tdCommandCategory = parentTr.querySelector('td.' + flagCommandCategory);\n let idCommandCategoryRow = this.getIdCommandCategoryRow(parentTr); // DOM.getElementAttributeValueCurrent(tdCommandCategory);\n let idCommandCategoryFilter = this.getIdCommandCategoryFilter();\n let filterCommandList = Utils.getListFromDict(filterCommands);\n let commandsInCategory = filterCommandList.filter(command => \n (\n command[attrIdCommandCategory] == idCommandCategoryRow\n || idCommandCategoryRow == 0\n )\n && (\n command[attrIdCommandCategory] == idCommandCategoryFilter\n || idCommandCategoryFilter == 0\n )\n );\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n Utils.consoleLogIfNotProductionEnvironment({ tdCommandCategory, idCommandCategoryRow, idCommandCategoryFilter, filterCommandList, commandsInCategory });\n Utils.consoleLogIfNotProductionEnvironment(filterCommandList);\n this.handleClickTableCellDdlPreview(\n event\n , div\n , flagCommand // fieldFlag\n , sortedCommands // optionList\n , idTable + ' > tbody > tr > td.' + flagCommand // cellSelector\n , (cellSelector) => { this.hookupTableCellDdls(\n cellSelector\n , (event, element) => { this.handleChangeCommandDdl(event, element); }\n ); }\n );\n });\n this.hookupTableCellDdls(\n idTable + ' > tbody > tr > td.' + flagCommand + ' select.' + flagCommand\n , (event, element) => { this.handleChangeCommandDdl(event, element); }\n );\n }\n handleChangeCommandDdl(event, ddlCommand) {\n // console.log(\"handle change command ddl\");\n let row = DOM.getRowFromElement(ddlCommand);\n this.handleChangeNestedElementCellTable(event, ddlCommand);\n let idCommandCategoryRowOld = this.getIdCommandCategoryRow(row);\n let idCommandNew = this.getIdCommandRow(row);\n let commandNew = filterCommands[idCommandNew];\n // console.log({ idCommandCategoryRowOld, commandNew });\n if (commandNew == null || idCommandCategoryRowOld == commandNew[attrIdCommandCategory]) return;\n let divCommandCategory = row.querySelector('td.' + flagCommandCategory + ' div');\n if (divCommandCategory) divCommandCategory.dispatchEvent(new Event('click'));\n let ddlCommandCategory = row.querySelector('td.' + flagCommandCategory + ' select.' + flagCommandCategory);\n DOM.setElementValueCurrent(ddlCommandCategory, commandNew[attrIdCommandCategory]);\n // console.log({ ddlCommandCategory, commandNew });\n this.handleChangeNestedElementCellTable(event, ddlCommandCategory);\n }\n getIdCommandCategoryRow(tr) {\n let elementCommandCategory = tr.querySelector('td.' + flagCommandCategory + ' .' + flagCommandCategory);\n return DOM.getElementAttributeValueCurrent(elementCommandCategory);\n }\n getIdCommandCategoryFilter() {\n let formFilters = TableBasePage.getFormFilters();\n let idCommandCategory = 0;\n if (formFilters == null) return idCommandCategory;\n let commandCategoryFilter = formFilters.querySelector('#' + attrIdCommandCategory);\n let commandFilter = formFilters.querySelector('#' + attrIdCommand);\n let valueCurrentCommandCategoryFilter = DOM.getElementAttributeValueCurrent(commandCategoryFilter);\n Utils.consoleLogIfNotProductionEnvironment({ valueCurrentCommandCategoryFilter });\n if (valueCurrentCommandCategoryFilter == \"\") {\n let valueCurrentCommandFilter = DOM.getElementAttributeValueCurrent(commandFilter);\n Utils.consoleLogIfNotProductionEnvironment({ valueCurrentCommandFilter });\n if (valueCurrentCommandFilter != \"\") {\n let command = filterCommands[valueCurrentCommandFilter];\n idCommandCategory = command[attrIdCommandCategory];\n }\n } else {\n idCommandCategory = Number(valueCurrentCommandCategoryFilter);\n }\n return idCommandCategory;\n }\n getHasCommandCategoryFilter() {\n let idCommandCategoryFilter = this.getIdCommandCategoryFilter();\n return !(Validation.isEmpty(idCommandCategoryFilter) || idCommandCategoryFilter == 0);\n }\n getIdCommandRow(tr) {\n let elementCommand = tr.querySelector('td.' + flagCommand + ' .' + flagCommand);\n return DOM.getElementAttributeValueCurrent(elementCommand);\n }\n getIdCommandFilter() {\n let formFilters = TableBasePage.getFormFilters();\n let commandFilter = formFilters.querySelector('#' + attrIdCommand);\n let valueCurrentCommandFilter = DOM.getElementAttributeValueCurrent(commandFilter);\n let idCommand = Number(valueCurrentCommandFilter);\n return idCommand;\n }\n getHasCommandFilter() {\n let idCommandFilter = this.getIdCommandFilter();\n return !(Validation.isEmpty(idCommandFilter) || idCommandFilter == 0);\n }\n hookupFieldsDog() {\n this.hookupTableCellDdlPreviews(flagDog, Utils.getListFromDict(filterDogs));\n }\n getIdDogRow(tr) {\n let elementDog = tr.querySelector('td.' + flagDog + ' .' + flagDog);\n return DOM.getElementAttributeValueCurrent(elementDog);\n }\n /*\n createTdActive(isActive) {\n let tdActive = document.createElement(\"td\");\n tdActive.classList.add(flagActive);\n let buttonActive = document.createElement(\"button\");\n buttonActive.classList.add(flagActive);\n buttonActive.classList.add(isActive ? flagDelete : flagAdd);\n buttonActive.textContent = isActive ? 'x' : '+';\n DOM.setElementAttributesValuesCurrentAndPrevious(buttonActive, isActive);\n tdActive.appendChild(buttonActive);\n return tdActive;\n }\n */\n leave() {\n if (this.constructor === TableBasePage) {\n throw new Error(\"Must implement leave() method.\");\n }\n super.leave();\n let formFilters = TableBasePage.getFormFilters();\n let dataPage = {};\n dataPage[flagFormFilters] = DOM.convertForm2JSON(formFilters);\n this.setLocalStoragePage(dataPage);\n }\n\n toggleColumnHasClassnameFlag(columnFlag, isRequiredFlag, classnameFlag) {\n let table = TableBasePage.getTableMain();\n let columnTh = table.querySelector('th.' + columnFlag);\n let columnThHasFlag = columnTh.classList.contains(classnameFlag);\n if (isRequiredFlag == columnThHasFlag) return;\n DOM.toggleElementHasClassnameFlag(columnTh, isRequiredFlag, classnameFlag);\n }\n toggleColumnHeaderHasClassnameFlag(columnFlag, isRequiredFlag, classnameFlag) {\n let table = TableBasePage.getTableMain();\n let columnTh = table.querySelector('th.' + columnFlag);\n DOM.toggleElementHasClassnameFlag(columnTh, isRequiredFlag, classnameFlag);\n }\n\n updateAndToggleShowButtonsSaveCancel() {\n let records = this.getTableRecords(true);\n let isDirtyMainTable = records.length > 0;\n\n let formFilters = TableBasePage.getFormFilters();\n let areDirtyFilters = DOM.hasDirtyChildrenContainer(formFilters);\n\n console.log({ records, isDirtyMainTable, formFilters, areDirtyFilters });\n\n this.toggleShowButtonsSaveCancel(isDirtyMainTable && !areDirtyFilters);\n }\n}\n","\nimport Events from \"../../lib/events.js\";\nimport LocalStorage from \"../../lib/local_storage.js\";\nimport Validation from \"../../lib/validation.js\";\n// import BasePage from \"../base.js\";\nimport DOM from \"../../dom.js\";\nimport { isEmpty } from \"../../lib/utils.js\";\nimport TableBasePage from \"../base_table.js\";\n\nexport default class DogMixinPage {\n constructor(pageCurrent) {\n this.page = pageCurrent;\n }\n\n initialize() {\n Utils.consoleLogIfNotProductionEnvironment('hookup dog start for ', this.page.hash);\n this.hookupFilters();\n this.hookupLocalStorageDog();\n }\n hookupFilters() {\n }\n hookupLocalStorageDog() {\n \n }\n\n /*\n hookupDogCardsProduct() {\n \n let d; // , lsShared;\n let selectorCardProduct = '.card.subcard';\n Events.initialiseEventHandler(selectorCardProduct, flagInitialised, function(cardProduct) {\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"initialising product card: \", cardProduct); }\n cardProduct.addEventListener(\"click\", function(event) {\n // d = { keyIdProduct: product.getAttribute(attrIdProduct) }\n var elemClicked = event.target;\n if (elemClicked.id != 'submit') { // disable for submit buttons\n if (_verbose) { \n Utils.consoleLogIfNotProductionEnvironment(\"product click: \" + cardProduct.getAttribute(attrIdProduct));\n Utils.consoleLogIfNotProductionEnvironment(\"permutation click: \" + cardProduct.getAttribute(attrIdPermutation));\n }\n var d = {}\n d[keyIdProduct] = cardProduct.getAttribute(attrIdProduct)\n d[keyIdPermutation] = cardProduct.getAttribute(attrIdPermutation)\n // send quantity requested\n goToPage(hashPageDogProduct, d);\n }\n });\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"click method added for product ID: \" + cardProduct.getAttribute(attrIdProduct) + ', permutation ID: ', cardProduct.getAttribute(attrIdPermutation)); }\n });\n }\n */\n \n leave() {}\n}\n","\nimport Events from \"../../lib/events.js\";\nimport LocalStorage from \"../../lib/local_storage.js\";\nimport Validation from \"../../lib/validation.js\";\n// import BasePage from \"../base.js\";\nimport DOM from \"../../dom.js\";\nimport { isEmpty } from \"../../lib/utils.js\";\nimport DogMixinPage from \"./mixin.js\";\nimport Utils from \"../../lib/utils.js\";\n\nexport default class DogTableMixinPage extends DogMixinPage {\n constructor(pageCurrent) {\n super(pageCurrent);\n }\n initialize() {\n super.initialize();\n this.hookupFilters();\n this.hookupTable();\n }\n hookupFilters() {\n // Implement filter-specific functionality here\n }\n hookupTable() {\n // Implement table-specific functionality here\n }\n hookupFieldsLocation() {\n this.page.hookupTableCellDdlPreviews(\n flagLocation\n , Utils.getListFromDict(filterLocations) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n}","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCommandCategories extends TableBasePage {\n static hash = hashPageDogCommandCategories;\n static attrIdRowObject = attrIdCommandCategory;\n callSaveTableContent = API.saveCommandCategories;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n Utils.consoleLogIfNotProductionEnvironment({ row });\n if (row == null) return;\n let inputCode = row.querySelector('td.' + flagCode + ' .' + flagCode);\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n \n console.log(\"inputCode\");\n console.log(inputCode);\n\n let jsonRow = {};\n jsonRow[attrIdCommandCategory] = row.getAttribute(attrIdCommandCategory);\n jsonRow[flagCode] = DOM.getElementAttributeValueCurrent(inputCode);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n // let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCodeTable();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCommands extends TableBasePage {\n static hash = hashPageDogCommands;\n static attrIdRowObject = attrIdCommand;\n callSaveTableContent = API.saveCommands;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterCommandCategory();\n this.hookupFilterActive();\n }\n hookupFilterCommandCategory() {\n this.hookupFilter(attrIdCommandCategory);\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let inputHandSignalDefaultDescription = row.querySelector('td.' + flagHandSignalDefaultDescription + ' .' + flagHandSignalDefaultDescription);\n let inputCanHaveButton = row.querySelector('td.' + flagCanHaveButton + ' .' + flagCanHaveButton);\n let inputNotes = row.querySelector('td.' + flagNotes + ' .' + flagNotes);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n /*\n Utils.consoleLogIfNotProductionEnvironment({ inputName, inputHandSignalDefaultDescription, inputCanHaveButton, inputNotes, buttonActive });\n debugger;\n */\n\n let jsonRow = {};\n jsonRow[attrIdCommand] = row.getAttribute(attrIdCommand);\n jsonRow[attrIdCommandCategory] = this.getIdCommandCategoryRow(row);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagHandSignalDefaultDescription] = DOM.getElementAttributeValueCurrent(inputHandSignalDefaultDescription);\n jsonRow[flagCanHaveButton] = (DOM.getElementAttributeValueCurrent(inputCanHaveButton) == \"true\");\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDog + ' div.' + flagDog\n , ',td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCommandCategory();\n this.hookupFieldsNameTable();\n this.hookupTextareasHandSignalDefaultDescription();\n this.hookupFieldsCanHaveButton();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsCommandCategory() {\n this.hookupTableCellDdlPreviews(\n flagCommandCategory\n , Utils.getListFromDict(filterCommandCategories)\n );\n }\n hookupTextareasHandSignalDefaultDescription() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagHandSignalDefaultDescription + ' .' + flagHandSignalDefaultDescription);\n }\n hookupFieldsCanHaveButton() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagCanHaveButton + ' .' + flagCanHaveButton);\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogDogCommandLinks extends TableBasePage {\n static hash = hashPageDogDogCommandLinks;\n static attrIdRowObject = attrIdDogCommandLink;\n callSaveTableContent = API.saveDogCommandLinks;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterDog();\n this.hookupFilterCommandCategory();\n this.hookupFilterCommand();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputHandSignalDescription = row.querySelector('td.' + flagHandSignalDescription + ' textarea');\n let inputNotes = row.querySelector('td.' + flagNotes + ' textarea');\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdDogCommandLink] = row.getAttribute(attrIdDogCommandLink);\n jsonRow[attrIdDog] = this.getIdDogRow(row);\n jsonRow[attrIdCommand] = this.getIdCommandRow(row);\n jsonRow[flagHandSignalDescription] = DOM.getElementAttributeValueCurrent(inputHandSignalDescription);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDog + ' div.' + flagDog\n , ',td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsDog();\n this.hookupFieldsCommandCategory();\n this.hookupFieldsCommand();\n this.hookupTextareasHandSignalDescription();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupTextareasHandSignalDescription() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagHandSignalDescription + ' .' + flagHandSignalDescription);\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogDogs extends TableBasePage {\n static hash = hashPageDogDogs;\n static attrIdRowObject = attrIdDog;\n callSaveTableContent = API.saveDogs;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let inputAppearance = row.querySelector('td.' + flagAppearance + ' .' + flagAppearance);\n let inputMassKg = row.querySelector('td.' + flagMassKg + ' .' + flagMassKg);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdDog] = row.getAttribute(attrIdDog);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagAppearance] = DOM.getElementAttributeValueCurrent(inputAppearance);\n jsonRow[flagMassKg] = DOM.getElementAttributeValueCurrent(inputMassKg);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n }\n postInitialiseRowNewCallback(tbody) {\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsNameTable();\n this.hookupFieldsAppearance();\n this.hookupFieldsMassKg();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsAppearance() {\n this.hookupChangeHandlerTableCells(flagAppearance);\n }\n hookupFieldsMassKg() {\n this.hookupChangeHandlerTableCells(flagMassKg);\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogLocations extends TableBasePage {\n static hash = hashPageDogLocations;\n static attrIdRowObject = attrIdLocation;\n callSaveTableContent = API.saveLocations;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdLocation] = row.getAttribute(attrIdLocation);\n jsonRow[flagLocationParent] = this.getIdLocationParentRow(row);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n getIdLocationParentRow(row) {\n let elementLocationParent = row.querySelector('td.' + flagLocationParent + ' .' + flagLocationParent);\n return DOM.getElementAttributeValueCurrent(elementLocationParent);\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagLocationParent + ' div.' + flagLocationParent\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsLocationParent();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n hookupFieldsLocationParent() {\n /*\n this.hookupTableCellDdlPreviews(\n flagLocationParent\n , Utils.getListFromDict(locations).filter(location => \n (\n location[attrIdLocation] == idLocationRow\n || idLocationRow < 1\n )\n ) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n , null // cellSelector\n , (cellSelector) => { this.hookupLocationParentDdls(cellSelector); }\n ,\n );\n\n fieldFlag\n , optionList\n , cellSelector = null\n , ddlHookup = (ddlSelector) => { this.hookupTableCellDdls(ddlSelector); }\n , changeHandler = (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n ) {\n\n */\n let cellSelector = idTableMain + ' > tbody > tr > td.' + flagLocationParent;\n Events.hookupEventHandler(\"click\", cellSelector + ' div.' + flagLocationParent, (event, div) => {\n let row = DOM.getRowFromElement(div);\n let idLocationRow = Number(row.getAttribute(attrIdLocation));\n Utils.consoleLogIfNotProductionEnvironment({ idLocationRow });\n this.handleClickTableCellDdlPreview(\n event\n , div\n , flagLocationParent\n , Utils.getListFromDict(locations).filter(location => \n (\n location[attrIdLocation] != idLocationRow\n || idLocationRow < 1\n )\n ) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n , cellSelector\n , (ddlSelector) => { this.hookupTableCellDdls(\n ddlSelector\n , (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n ); }\n );\n });\n this.hookupTableCellDdls(\n cellSelector + ' select.' + flagLocationParent\n , (event, element) => { this.handleChangeNestedElementCellTable(event, element); }\n );\n }\n /*\n hookupLocationParentDdls(ddlSelector) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { this.handleChangeNestedElementCellTable(event, element); });\n }\n */\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogButtonIcons extends TableBasePage {\n static hash = hashPageDogButtonIcons;\n static attrIdRowObject = attrIdButtonIcon;\n callSaveTableContent = API.saveButtonIcons;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterActive();\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdButtonIcon] = row.getAttribute(attrIdButtonIcon);\n jsonRow[flagImage] = this.getIdImageRow(row);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n getIdImageRow(row) {\n let elementImage = row.querySelector('td.' + flagImage + ' .' + flagImage);\n return DOM.getElementAttributeValueCurrent(elementImage);\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagImage + ' div.' + flagImage\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsImage();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n hookupFieldsImage() {\n this.hookupTableCellDdlPreviews(\n flagImage\n , Utils.getListFromDict(buttonicons) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCommandButtonLinks extends TableBasePage {\n static hash = hashPageDogCommandButtonLinks;\n static attrIdRowObject = attrIdCommandButtonLink;\n callSaveTableContent = API.saveCommandButtonLinks;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterCommandCategory();\n this.hookupFilterCommand();\n this.hookupFilterButtonShape();\n this.hookupFilterColour();\n this.hookupFilterButtonIcon();\n this.hookupFilterLocation();\n this.hookupFilterActive();\n }\n hookupFilterButtonShape() {\n this.hookupFilter(attrIdButtonShape);\n }\n hookupFilterColour() {\n this.hookupFilter(attrIdColour);\n }\n hookupFilterButtonIcon() {\n this.hookupFilter(attrIdButtonIcon);\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputHandSignalDescription = row.querySelector('td.' + flagHandSignalDescription + ' textarea');\n let inputNotes = row.querySelector('td.' + flagNotes + ' textarea');\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdCommandButtonLink] = row.getAttribute(attrIdCommandButtonLink);\n jsonRow[attrIdDog] = this.getIdDogRow(row);\n jsonRow[attrIdCommand] = this.getIdCommandRow(row);\n jsonRow[flagHandSignalDescription] = DOM.getElementAttributeValueCurrent(inputHandSignalDescription);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDog + ' div.' + flagDog\n , ',td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCommandCategory();\n this.hookupFieldsCommand();\n this.hookupFieldsButtonShape();\n this.hookupFieldsColour();\n this.hookupFieldsButtonIcon();\n this.dogMixin.hookupFieldsLocation();\n this.hookupFieldsActive();\n }\n hookupFieldsButtonShape() {\n this.hookupTableCellDdlPreviews(\n flagButtonShape\n , Utils.getListFromDict(filterButtonShapes) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsColour() {\n this.hookupTableCellDdlPreviews(\n flagColour\n , Utils.getListFromDict(filterColours) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsButtonIcon() {\n this.hookupTableCellDdlPreviews(\n flagButtonIcon\n , Utils.getListFromDict(filterButtonIcons) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nvar _rowBlankDistraction;\nvar _rowBlankAssessmentCommandModalityLink;\n\nexport default class PageDogAssessment extends TableBasePage {\n static hash = hashPageDogAssessment;\n static attrIdRowObject = attrIdAssessment;\n callSaveTableContent = API.saveAssessmentsDistractionsAndResponses;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getTableRecords(dirtyOnly = false) {\n dirtyOnly = true;\n let row = document.querySelector(idTableAssessment + ' tbody tr.' + flagAssessment);\n return [this.getJsonRow(row)];\n }\n getJsonRow(row) {\n console.log(\"getJsonRow: \", row);\n if (row == null) return;\n let inputWeather = row.querySelector(idTableAssessment + ' td.' + flagWeather + ' .' + flagWeather);\n let inputLightingLevel = row.querySelector(idTableAssessment + ' td.' + flagLightingLevel + ' .' + flagLightingLevel);\n let inputTemeratureCelcius = row.querySelector(idTableAssessment + ' td.' + flagTemperatureCelcius + ' .' + flagTemperatureCelcius);\n let inputLocation = row.querySelector(idTableAssessment + ' td.' + flagLocation + ' .' + flagLocation);\n let inputUserHandler = row.querySelector(idTableAssessment + ' td.' + flagUserHandler + ' .' + flagUserHandler);\n let inputNotes = row.querySelector(idTableAssessment + ' td.' + flagNotes + ' .' + flagNotes);\n // let buttonActive = row.querySelector(idTableAssessment + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n let idAssessment = row.getAttribute(attrIdAssessment);\n let jsonRow = {};\n jsonRow[attrIdAssessment] = idAssessment;\n jsonRow[attrIdWeather] = DOM.getElementAttributeValueCurrent(inputWeather);\n jsonRow[attrIdLightingLevel] = DOM.getElementAttributeValueCurrent(inputLightingLevel);\n jsonRow[flagTemperatureCelcius] = DOM.getElementAttributeValueCurrent(inputTemeratureCelcius);\n jsonRow[attrIdLocation] = DOM.getElementAttributeValueCurrent(inputLocation);\n jsonRow[flagUserHandler] = DOM.getElementAttributeValueCurrent(inputUserHandler);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = true; // buttonActive.classList.contains(flagDelete);\n jsonRow[flagDistraction] = this.getDirtyDistractions(idAssessment);\n jsonRow[flagAssessmentCommandModalityLink] = this.getDirtyAssessmentCommandModalityLinks(idAssessment);\n console.log({ jsonRow });\n return jsonRow;\n }\n getDirtyDistractions(idAssessment) {\n let dirtyRows = document.querySelectorAll(idTableDistractions + ' tbody tr.' + flagDistraction + '.' + flagDirty);\n if (dirtyRows == null || dirtyRows.length == 0) return [];\n // dirtyRows = Array.from(dirtyRows);\n let dirtyRow,\n inputDistractionType, distractionType,\n inputIntensityLevelEmotional, intensityLevelEmotional,\n inputIntensityLevelScent, intensityLevelScent,\n inputIntensityLevelSight, intensityLevelSight,\n inputIntensityLevelSound, intensityLevelSound,\n inputIntensityLevelTouch, intensityLevelTouch,\n inputQuantity, quantity,\n inputProximityMetres, proximityMetres,\n inputNotes, notes,\n buttonActive, active;\n console.log('getDirtyDistractions');\n console.log({ dirtyRows });\n let dirtyDistractions = [];\n for(let indexRow = 0; indexRow < dirtyRows.length; indexRow++) {\n dirtyRow = dirtyRows[indexRow];\n inputDistractionType = dirtyRow.querySelector('td.' + flagDistractionType + ' .' + flagDistractionType);\n distractionType = DOM.getElementAttributeValueCurrent(inputDistractionType);\n inputIntensityLevelEmotional = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelEmotional + ' .' + flagDistractionIntensityLevelEmotional);\n intensityLevelEmotional = DOM.getElementAttributeValueCurrent(inputIntensityLevelEmotional);\n inputIntensityLevelScent = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelScent + ' .' + flagDistractionIntensityLevelScent);\n intensityLevelScent = DOM.getElementAttributeValueCurrent(inputIntensityLevelScent);\n inputIntensityLevelSight = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelSight + ' .' + flagDistractionIntensityLevelSight);\n intensityLevelSight = DOM.getElementAttributeValueCurrent(inputIntensityLevelSight);\n inputIntensityLevelSound = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelSound + ' .' + flagDistractionIntensityLevelSound);\n intensityLevelSound = DOM.getElementAttributeValueCurrent(inputIntensityLevelSound);\n inputIntensityLevelTouch = dirtyRow.querySelector('td.' + flagDistractionIntensityLevelTouch + ' .' + flagDistractionIntensityLevelTouch);\n intensityLevelTouch = DOM.getElementAttributeValueCurrent(inputIntensityLevelTouch);\n inputQuantity = dirtyRow.querySelector('td.' + flagQuantity + ' .' + flagQuantity);\n quantity = DOM.getElementAttributeValueCurrent(inputQuantity);\n inputProximityMetres = dirtyRow.querySelector('td.' + flagProximityMetres + ' .' + flagProximityMetres);\n proximityMetres = DOM.getElementAttributeValueCurrent(inputProximityMetres);\n inputNotes = dirtyRow.querySelector('td.' + flagNotes + ' .' + flagNotes);\n notes = DOM.getElementAttributeValueCurrent(inputNotes);\n buttonActive = dirtyRow.querySelector(idTableDistractions + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n active = buttonActive.classList.contains(flagDelete);\n dirtyDistractions.push({\n [attrIdDistraction]: dirtyRow.getAttribute(attrIdDistraction)\n , [attrIdAssessment]: idAssessment\n , [attrIdDistractionType]: distractionType\n , [flagDistractionIntensityLevelEmotional]: intensityLevelEmotional\n , [flagDistractionIntensityLevelScent]: intensityLevelScent\n , [flagDistractionIntensityLevelSight]: intensityLevelSight\n , [flagDistractionIntensityLevelSound]: intensityLevelSound\n , [flagDistractionIntensityLevelTouch]: intensityLevelTouch\n , [flagQuantity]: quantity\n , [flagProximityMetres]: proximityMetres\n , [flagNotes]: notes\n , [flagActive]: active\n });\n };\n return dirtyDistractions;\n }\n getDirtyAssessmentCommandModalityLinks(idAssessment) {\n let dirtyRows = document.querySelectorAll(idTableAssessmentCommandModalityLinks + ' > tbody > tr.' + flagAssessmentCommandModalityLink + '.' + flagDirty);\n if (dirtyRows == null || dirtyRows.length == 0) return [];\n dirtyRows = Array.from(dirtyRows);\n let dirtyRow, idAssessmentCommandModalityLink,\n inputCommand, command,\n inputCommandModality, commandModality,\n inputBribe, bribe,\n inputDistanceFromHandler, distanceFromhandler,\n inputIsInHearingRangeOfHandler, isInHearingRangeOfHandler,\n inputIsInScentRangeOfHandler, isInScentRangeOfHandler,\n inputIsInSightOfHandler, isInSightOfHandler,\n inputIsOnLead, isOnLead,\n inputNotes, notes,\n buttonActive, active;\n console.log('getDirtyAssessmentCommandModalityLinks');\n console.log({ dirtyRows });\n let dirtyLinks = [];\n for(let indexRow = 0; indexRow < dirtyRows.length; indexRow++) {\n dirtyRow = dirtyRows[indexRow];\n idAssessmentCommandModalityLink = dirtyRow.getAttribute(attrIdAssessmentCommandModalityLink);\n inputCommand = dirtyRow.querySelector('td.' + flagCommand + ' .' + flagCommand);\n command = DOM.getElementAttributeValueCurrent(inputCommand);\n inputCommandModality = dirtyRow.querySelector('td.' + flagCommandModality + ' .' + flagCommandModality);\n commandModality = DOM.getElementAttributeValueCurrent(inputCommandModality);\n inputBribe = dirtyRow.querySelector('td.' + flagBribe + ' .' + flagBribe);\n bribe = DOM.getElementAttributeValueCurrent(inputBribe);\n inputDistanceFromHandler = dirtyRow.querySelector('td.' + flagDistanceFromHandlerMetres + ' .' + flagDistanceFromHandlerMetres);\n distanceFromhandler = DOM.getElementAttributeValueCurrent(inputDistanceFromHandler);\n inputIsInHearingRangeOfHandler = dirtyRow.querySelector('td.' + flagIsInHearingRangeOfHandler + ' .' + flagIsInHearingRangeOfHandler);\n isInHearingRangeOfHandler = DOM.getElementAttributeValueCurrent(inputIsInHearingRangeOfHandler);\n inputIsInScentRangeOfHandler = dirtyRow.querySelector('td.' + flagIsInScentRangeOfHandler + ' .' + flagIsInScentRangeOfHandler);\n isInScentRangeOfHandler = DOM.getElementAttributeValueCurrent(inputIsInScentRangeOfHandler);\n inputIsInSightOfHandler = dirtyRow.querySelector('td.' + flagIsInSightOfHandler + ' .' + flagIsInSightOfHandler);\n isInSightOfHandler = DOM.getElementAttributeValueCurrent(inputIsInSightOfHandler);\n inputIsOnLead = dirtyRow.querySelector('td.' + flagIsOnLead + ' .' + flagIsOnLead);\n isOnLead = DOM.getElementAttributeValueCurrent(inputIsOnLead);\n inputNotes = dirtyRow.querySelector('td.' + flagNotes + ' .' + flagNotes);\n notes = DOM.getElementAttributeValueCurrent(inputNotes);\n buttonActive = dirtyRow.querySelector(idTableAssessmentCommandModalityLinks + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n active = buttonActive.classList.contains(flagDelete);\n dirtyLinks.push({\n [attrIdAssessmentCommandModalityLink]: idAssessmentCommandModalityLink\n , [attrIdAssessment]: idAssessment\n , [attrIdCommand]: command\n , [attrIdCommandModality]: commandModality\n , [attrIdBribe]: bribe\n , [flagDistanceFromHandlerMetres]: distanceFromhandler\n , [flagIsInHearingRangeOfHandler]: isInHearingRangeOfHandler\n , [flagIsInScentRangeOfHandler]: isInScentRangeOfHandler\n , [flagIsInSightOfHandler]: isInSightOfHandler\n , [flagIsOnLead]: isOnLead\n , [flagNotes]: notes\n , [flagActive]: active\n , [flagAssessmentResponse]: this.getDirtyAssessmentResponses(dirtyRow, idAssessmentCommandModalityLink)\n });\n }\n return dirtyLinks;\n }\n getDirtyAssessmentResponses(rowAssessmentCommandModalityLink, idAssessmentCommandModalityLink) {\n let dirtyRows = rowAssessmentCommandModalityLink.querySelectorAll(idTableAssessmentResponses + ' tbody tr.' + flagAssessmentResponse + '.' + flagDirty);\n if (dirtyRows == null || dirtyRows.length == 0) return [];\n dirtyRows = Array.from(dirtyRows);\n let dirtyRow,\n inputResponseQualityMetric, responseQualityMetric,\n inputObedienceLevel, obedienceLevel,\n inputValueMeasured, valueMeasured,\n inputNotes, notes,\n buttonActive, active;\n console.log('getDirtyAssessmentResponses');\n console.log({ dirtyRows });\n let dirtyResponses = [];\n for(let indexRow = 0; indexRow < dirtyRows.length; indexRow++) {\n dirtyRow = dirtyRows[indexRow];\n inputResponseQualityMetric = dirtyRow.querySelector('td.' + flagResponseQualityMetric + ' .' + flagResponseQualityMetric);\n responseQualityMetric = DOM.getElementAttributeValueCurrent(inputResponseQualityMetric);\n inputObedienceLevel = dirtyRow.querySelector('td.' + flagObedienceLevel + ' .' + flagObedienceLevel);\n obedienceLevel = DOM.getElementAttributeValueCurrent(inputObedienceLevel);\n inputValueMeasured = dirtyRow.querySelector('td.' + flagValueMeasured + ' .' + flagValueMeasured);\n valueMeasured = DOM.getElementAttributeValueCurrent(inputValueMeasured);\n inputNotes = dirtyRow.querySelector('td.' + flagNotes + ' .' + flagNotes);\n notes = DOM.getElementAttributeValueCurrent(inputNotes);\n buttonActive = dirtyRow.querySelector(idTableAssessmentResponses + ' td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n active = buttonActive.classList.contains(flagDelete);\n dirtyResponses.push({\n [attrIdAssessmentResponse]: dirtyRow.getAttribute(attrIdAssessmentResponse)\n , [attrIdAssessmentCommandModalityLink]: idAssessmentCommandModalityLink\n , [attrIdResponseQualityMetric]: responseQualityMetric\n , [attrIdObedienceLevel]: obedienceLevel\n , [flagValueMeasured]: valueMeasured\n , [flagNotes]: notes\n , [flagActive]: active\n });\n }\n return dirtyResponses;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagWeather + ' div.' + flagWeather\n , ',td.' + flagLightingLevel + ' div.' + flagLightingLevel\n , ',td.' + flagLocation + ' div.' + flagLocation\n , ',td.' + flagUserHandler + ' div.' + flagUserHandler\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n callFilterTableContent() {\n if (assessment[attrIdAssessment] < 1) {\n let formFilters = TableBasePage.getFormFilters();\n let filterAssessment = formFilters.querySelector('#' + attrIdAssessment);\n DOM.setElementValueCurrent(filterAssessment, '');\n }\n super.callFilterTableContent();\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupTableAssessmentHeader();\n this.hookupTableDistractions();\n this.hookupTableAssessmentCommandModalityLinks();\n }\n hookupTableAssessmentHeader() {\n this.hookupTableAssessmentFieldWeather();\n this.hookupTableAssessmentFieldLightingLevel();\n this.hookupTableAssessmentFieldTemperature();\n this.hookupTableAssessmentFieldLocation();\n this.hookupTableAssessmentFieldUserHandler();\n this.hookupTableAssessmentFieldNotes();\n if (assessment[attrIdAssessment] < 1) {\n let tbody = document.querySelector(idTableAssessment + ' tbody');\n let row = tbody.querySelector('tr');\n row.classList.add(flagRowNew);\n this.postInitialiseRowNewCallback(tbody);\n }\n }\n hookupTableAssessmentFieldWeather() {\n let fieldFlag = flagWeather;\n let optionList = Utils.getListFromDict(filterWeathers); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessment + ' td.' + flagWeather;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldLightingLevel() {\n let fieldFlag = flagLightingLevel;\n let optionList = Utils.getListFromDict(filterLightingLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessment + ' td.' + flagLightingLevel;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldTemperature() {\n this.hookupChangeHandlerTableCells(idTableAssessment + ' td.' + flagTemperatureCelcius + ' .' + flagTemperatureCelcius);\n }\n hookupTableAssessmentFieldLocation() {\n let fieldFlag = flagLocation;\n let optionList = Utils.getListFromDict(filterLocations); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessment + ' td.' + flagLocation;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldUserHandler() {\n let fieldFlag = flagUserHandler;\n let optionList = Utils.getListFromDict(filterUserHandlers); // .sort((a, b) => a[flagName].localeCompare(b[flagName]));\n let cellSelector = idTableAssessment + ' td.' + flagUserHandler;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentFieldNotes() {\n this.hookupChangeHandlerTableCells(idTableAssessment + ' td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableDistractions() {\n Events.initialiseEventHandler(idTableDistractions, flagInitialised, (table) => {\n let selectorRowNew = idTableDistractions + ' tbody tr.' + flagRowNew;\n let rowBlankTemp = document.querySelector(selectorRowNew);\n Utils.consoleLogIfNotProductionEnvironment(\"row blank temp: \", rowBlankTemp);\n let countRows = document.querySelectorAll(idTableDistractions + ' > tbody > tr').length;\n _rowBlankDistraction = rowBlankTemp.cloneNode(true);\n document.querySelectorAll(selectorRowNew).forEach(function(row) {\n row.remove();\n });\n _rowBlankDistraction.setAttribute(attrIdDistraction, -1 - countRows);\n });\n\n this.hookupTableDistractionsFieldsDistractionType();\n this.hookupTableDistractionsFieldsIntensityLevelEmotional();\n this.hookupTableDistractionsFieldsIntensityLevelScent();\n this.hookupTableDistractionsFieldsIntensityLevelSight();\n this.hookupTableDistractionsFieldsIntensityLevelSound();\n this.hookupTableDistractionsFieldsIntensityLevelTouch();\n this.hookupTableDistractionsFieldsQuantity();\n this.hookupTableDistractionsFieldsProximityMetres();\n this.hookupTableDistractionsFieldsNotes();\n this.hookupTableDistractionsFieldsActive();\n }\n hookupTableDistractionsFieldsDistractionType() {\n let fieldFlag = flagDistractionType;\n let optionList = Utils.getListFromDict(filterDistractionTypes); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionType;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelEmotional() {\n let fieldFlag = flagDistractionIntensityLevelEmotional;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelEmotional;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelScent() {\n let fieldFlag = flagDistractionIntensityLevelScent;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelScent;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelSight() {\n let fieldFlag = flagDistractionIntensityLevelSight;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelSight;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelSound() {\n let fieldFlag = flagDistractionIntensityLevelSound;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelSound;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsIntensityLevelTouch() {\n let fieldFlag = flagDistractionIntensityLevelTouch;\n let optionList = Utils.getListFromDict(filterDistractionIntensityLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableDistractions + ' td.' + flagDistractionIntensityLevelTouch;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableDistractionsFieldsQuantity() {\n this.hookupChangeHandlerTableCells(idTableDistractions + ' td.' + flagQuantity + ' .' + flagQuantity);\n }\n hookupTableDistractionsFieldsProximityMetres() {\n this.hookupChangeHandlerTableCells(idTableDistractions + ' td.' + flagProximityMetres + ' .' + flagProximityMetres);\n }\n hookupTableDistractionsFieldsNotes() {\n this.hookupChangeHandlerTableCells(idTableDistractions + ' td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableDistractionsFieldsActive() {\n this.hookupFieldsActive(flagDistraction, (event, element) => { this.handleClickAddRowTableDistractions(event, element); });\n }\n handleClickAddRowTableDistractions(event, button) {\n event.stopPropagation();\n _rowBlankDistraction.setAttribute(attrIdDistraction, -1 - _rowBlankDistraction.getAttribute(attrIdDistraction));\n let tbody = document.querySelector(idTableDistractions + ' tbody');\n if (tbody.classList.contains(flagIsCollapsed)) return;\n let row = _rowBlankDistraction.cloneNode(true);\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableDistractions + ' > tbody > tr').length;\n row.setAttribute(attrIdDistraction, -1 - countRows);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTableDistractions();\n this.postInitialiseDistractionRowNewCallback(tbody);\n }\n postInitialiseDistractionRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDistractionType + ' div.' + flagDistractionType\n , ',td.' + flagDistractionIntensityLevelEmotional + ' div.' + flagDistractionIntensityLevelEmotional\n , ',td.' + flagDistractionIntensityLevelScent + ' div.' + flagDistractionIntensityLevelScent\n , ',td.' + flagDistractionIntensityLevelSight + ' div.' + flagDistractionIntensityLevelSight\n , ',td.' + flagDistractionIntensityLevelSound + ' div.' + flagDistractionIntensityLevelSound\n , ',td.' + flagDistractionIntensityLevelTouch + ' div.' + flagDistractionIntensityLevelTouch\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n hookupTableAssessmentCommandModalityLinks() {\n Events.initialiseEventHandler(idTableAssessmentCommandModalityLinks, flagInitialised, (table) => {\n let selectorRowNew = idTableAssessmentCommandModalityLinks + ' tbody tr.' + flagRowNew;\n let rowBlankTemp = document.querySelector(selectorRowNew);\n Utils.consoleLogIfNotProductionEnvironment(\"row blank temp: \", rowBlankTemp);\n let countRows = document.querySelectorAll(idTableAssessmentCommandModalityLinks + ' > tbody > tr').length;\n _rowBlankAssessmentCommandModalityLink = rowBlankTemp.cloneNode(true);\n document.querySelectorAll(selectorRowNew).forEach(function(row) {\n row.remove();\n });\n _rowBlankAssessmentCommandModalityLink.setAttribute(attrIdAssessmentCommandModalityLink, -1 - countRows);\n });\n\n this.hookupTableAssessmentCommandModalityLinksFieldsCommandCategory();\n this.hookupTableAssessmentCommandModalityLinksFieldsCommand();\n this.hookupTableAssessmentCommandModalityLinksFieldsCommandModality();\n this.hookupTableAssessmentCommandModalityLinksFieldsBribe();\n this.hookupTableAssessmentCommandModalityLinksFieldsDistanceFromHandlerMetres();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsInHearingRangeOfHandler();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsInScentRangeOfHandler();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsInSightOfHandler();\n this.hookupTableAssessmentCommandModalityLinksFieldsIsOnLead();\n this.hookupTableAssessmentCommandModalityLinksFieldsTrialCount();\n this.hookupTableAssessmentCommandModalityLinksFieldsNotes();\n this.hookupTableAssessmentCommandModalityLinksFieldsResponses();\n this.hookupTableAssessmentCommandModalityLinksFieldsActive();\n }\n hookupTableAssessmentCommandModalityLinksFieldsCommandCategory() {\n this.hookupFieldsCommandCategory(idTableAssessmentCommandModalityLinks);\n /*\n let fieldFlag = flagCommandCategory;\n let optionList = Utils.getListFromDict(filterCommandCategories).sort((a, b) => a[flagName].localeCompare(b[flagName]));\n let cellSelector = idTableAssessmentCommandModalityLinks + ' td.' + flagCommandCategory;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n , (tdSelector) => { this.hookupTableAssessmentCommandModalityLinksDdlsCommandCategory(tdSelector); }\n , (event, element) => { this.handleChangeTableAssessmentCommandModalityLinksDdlCommandCategory(event, element); }\n );\n */\n }\n /*\n hookupTableAssessmentCommandModalityLinksDdlsCommandCategory(ddlSelector) {\n this.hookupChangeHandlerTableCells(ddlSelector, (event, element) => { this.handleChangeTableAssessmentCommandModalityLinksDdlCommandCategory(event, element); });\n }\n handleChangeTableAssessmentCommandModalityLinksDdlCommandCategory(event, ddlCategory) {\n let row = DOM.getRowFromElement(ddlCategory);\n let idCommandCategoryRowOld = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n this.handleChangeNestedElementCellTable(event, ddlCategory);\n let idCommandCategoryRowNew = this.getIdCommandCategoryRow(row); // DOM.getElementAttributeValueCurrent(ddlCategory);\n if (idCommandCategoryRowOld == idCommandCategoryRowNew) return;\n let divCommand = row.querySelector('td.' + flagCommand + ' div');\n if (divCommand) divCommand.dispatchEvent(new Event('click'));\n let ddlCommand = row.querySelector('td.' + flagCommand + ' select.' + flagCommand);\n ddlCommand.innerHTML = '';\n ddlCommand.appendChild(DOM.createOption(null));\n let optionJson, option;\n let commandsInCategory = Utils.getListFromDict(filterCommands).filter(command => \n (\n command[attrIdCommandCategory] == idCommandCategoryRowNew\n || idCommandCategoryRowNew == 0\n )\n );\n let sortedCommands = commandsInCategory.sort((a, b) => a[flagName].localeCompare(b[flagName]));\n sortedCommands.forEach((command) => {\n optionJson = BusinessObjects.getOptionJsonFromObjectJson(command);\n option = DOM.createOption(optionJson);\n ddlCommand.appendChild(option);\n });\n this.handleChangeNestedElementCellTable(event, ddlCommand);\n }\n */\n hookupTableAssessmentCommandModalityLinksFieldsCommand() {\n this.hookupFieldsCommand(idTableAssessmentCommandModalityLinks);\n }\n hookupTableAssessmentCommandModalityLinksFieldsCommandModality() {\n let fieldFlag = flagCommandModality;\n let optionList = Utils.getListFromDict(filterCommandModalities); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentCommandModalityLinks + ' td.' + flagCommandModality;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentCommandModalityLinksFieldsBribe() {\n let fieldFlag = flagBribe;\n let optionList = Utils.getListFromDict(filterBribes); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentCommandModalityLinks + ' td.' + flagBribe;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentCommandModalityLinksFieldsDistanceFromHandlerMetres() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagDistanceFromHandlerMetres + ' .' + flagDistanceFromHandlerMetres);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsInHearingRangeOfHandler() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsInHearingRangeOfHandler + ' .' + flagIsInHearingRangeOfHandler);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsInScentRangeOfHandler() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsInScentRangeOfHandler + ' .' + flagIsInScentRangeOfHandler);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsInSightOfHandler() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsInSightOfHandler + ' .' + flagIsInSightOfHandler);\n }\n hookupTableAssessmentCommandModalityLinksFieldsIsOnLead() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagIsOnLead + ' .' + flagIsOnLead);\n }\n hookupTableAssessmentCommandModalityLinksFieldsTrialCount() {\n // this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' td.' + flagTrialCount + ' .' + flagTrialCount);\n }\n hookupTableAssessmentCommandModalityLinksFieldsNotes() {\n this.hookupChangeHandlerTableCells(idTableAssessmentCommandModalityLinks + ' > tbody > tr > td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableAssessmentCommandModalityLinksFieldsResponses() {\n let eventType = \"click\";\n let selector = idTableAssessmentCommandModalityLinks + ' td.' + flagAssessmentResponse + ' div.' + flagAssessmentResponse;\n let handler = (event, element) => {\n let parentTd = DOM.getCellFromElement(element);\n let rowAssessmentCommandModalityLink = parentTd.closest('tr.' + flagAssessmentCommandModalityLink);\n let idAssessmentCommandModalityLink = rowAssessmentCommandModalityLink.getAttribute(attrIdAssessmentCommandModalityLink);\n let responsesTable = document.createElement(\"table\");\n responsesTable.id = idTableAssessmentResponses.replace(\"#\", \"\");\n responsesTable.classList.add(flagTableMain, flagAssessmentResponse);\n\n let head = document.createElement(\"thead\");\n let headRow = document.createElement(\"tr\");\n let thResponseQualityMetric = document.createElement(\"th\");\n thResponseQualityMetric.classList.add(flagResponseQualityMetric);\n thResponseQualityMetric.innerText = 'Response Quality Metric';\n headRow.appendChild(thResponseQualityMetric);\n let thObedienceLevel = document.createElement(\"th\");\n thObedienceLevel.classList.add(flagObedienceLevel);\n thObedienceLevel.innerText = 'Obedience Level';\n headRow.appendChild(thObedienceLevel);\n let thValueMeasured = document.createElement(\"th\");\n thValueMeasured.classList.add(flagValueMeasured);\n thValueMeasured.innerText = 'Value Measured';\n headRow.appendChild(thValueMeasured);\n let thNotes = document.createElement(\"th\");\n thNotes.classList.add(flagNotes);\n thNotes.innerText = 'Notes';\n headRow.appendChild(thNotes);\n let thActive = document.createElement(\"th\");\n thActive.classList.add(flagActive);\n let templateAddIcon = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagAdd);\n thActive.appendChild(templateAddIcon.cloneNode(true));\n headRow.appendChild(thActive);\n head.appendChild(headRow);\n responsesTable.appendChild(head);\n\n let body = document.createElement(\"tbody\");\n \n let assessmentCommandModalityLinks = assessment[flagAssessmentCommandModalityLink].filter(link => link[attrIdAssessmentCommandModalityLink] == idAssessmentCommandModalityLink);\n let assessmentCommandModalityLink = (assessmentCommandModalityLinks == null || assessmentCommandModalityLinks.length == 0) ? null : assessmentCommandModalityLinks[0];\n let responses = (assessmentCommandModalityLink == null) ? null : assessmentCommandModalityLink[flagAssessmentResponse];\n \n console.log({ assessmentCommandModalityLinks, responses });\n if (responses != null && responses.length > 0) {\n for (let responseKey in Object.keys(responses)) {\n let response = responses[responseKey];\n let row = PageDogAssessment.createNewRowTableAssessmentResponses(response);\n body.appendChild(row);\n }\n }\n responsesTable.appendChild(body);\n\n parentTd.innerHTML = responsesTable.outerHTML;\n\n let responseRows = parentTd.querySelectorAll('tbody tr.' + flagAssessmentResponse);\n if (responseRows != null && responseRows.length > 0) {\n for (let indexRow = 0; indexRow < responseRows.length; indexRow++) {\n let row = responseRows[indexRow];\n // let idAssessmentResponse = row.getAttribute(attrIdAssessmentResponse);\n \n let response = responses[indexRow]; // idAssessmentResponse];\n console.log({ indexRow, row, response }); // idAssessmentResponse,\n let inputValueMeasured = row.querySelector('td.' + flagValueMeasured + ' .' + flagValueMeasured);\n DOM.setElementValueCurrent(inputValueMeasured, response[flagValueMeasured]);\n let inputNotes = row.querySelector('td.' + flagNotes + ' .' + flagNotes);\n DOM.setElementValueCurrent(inputNotes, response[flagNotes]);\n }\n }\n\n this.hookupTablesAssessmentResponses();\n };\n Events.hookupEventHandler(\n eventType\n , selector\n , handler\n );\n this.hookupTablesAssessmentResponses();\n }\n static createNewRowTableAssessmentResponses(response) {\n if (response == null) response = {\n [attrIdAssessmentResponse]: null\n , [attrIdResponseQualityMetric]: {\n [attrIdResponseQualityMetric]: 0\n }\n , [attrIdObedienceLevel]: {\n [attrIdObedienceLevel]: 0\n }\n , [flagValueMeasured]: ''\n , [flagNotes]: ''\n , [flagActive]: true\n };\n console.log({ response });\n let isNew = (response[attrIdAssessmentResponse] == null || response[attrIdAssessmentResponse] < 1);\n let row = document.createElement(\"tr\");\n row.classList.add(flagAssessmentResponse);\n if (isNew) row.classList.add(flagRowNew);\n row.setAttribute(attrIdAssessmentResponse, response[attrIdAssessmentResponse]);\n\n let tdResponseQualityMetric = document.createElement(\"td\");\n tdResponseQualityMetric.classList.add(flagResponseQualityMetric, flagDdlPreview);\n let divResponseQualityMetric = document.createElement(\"div\");\n divResponseQualityMetric.classList.add(flagResponseQualityMetric);\n let idResponseQualityMetric = response[attrIdResponseQualityMetric][attrIdResponseQualityMetric];\n let responseQualityMetric = filterResponseQualityMetrics[idResponseQualityMetric];\n DOM.setElementAttributesValuesCurrentAndPrevious(divResponseQualityMetric, idResponseQualityMetric);\n divResponseQualityMetric.innerText = (responseQualityMetric == null) ? '' : responseQualityMetric[flagName];\n tdResponseQualityMetric.appendChild(divResponseQualityMetric);\n row.appendChild(tdResponseQualityMetric);\n\n let tdObedienceLevel = document.createElement(\"td\");\n tdObedienceLevel.classList.add(flagObedienceLevel, flagDdlPreview);\n let divObedienceLevel = document.createElement(\"div\");\n divObedienceLevel.classList.add(flagObedienceLevel);\n let idObedienceLevel = response[attrIdObedienceLevel][attrIdObedienceLevel];\n let obedienceLevel = filterObedienceLevels[idObedienceLevel];\n DOM.setElementAttributesValuesCurrentAndPrevious(divObedienceLevel, idObedienceLevel);\n divObedienceLevel.innerText = (obedienceLevel == null) ? '' : obedienceLevel[flagName];\n tdObedienceLevel.appendChild(divObedienceLevel);\n row.appendChild(tdObedienceLevel);\n\n let tdValueMeasured = document.createElement(\"td\");\n tdValueMeasured.classList.add(flagValueMeasured, flagDdlPreview);\n let inputValueMeasured = document.createElement(\"input\");\n inputValueMeasured.type = \"number\";\n inputValueMeasured.classList.add(flagValueMeasured);\n let valueMeasured = response[flagValueMeasured];\n DOM.setElementValueCurrent(inputValueMeasured, valueMeasured);\n DOM.setElementAttributeValuePrevious(inputValueMeasured, valueMeasured);\n tdValueMeasured.appendChild(inputValueMeasured);\n row.appendChild(tdValueMeasured);\n\n let tdNotes = document.createElement(\"td\");\n tdNotes.classList.add(flagNotes, flagDdlPreview);\n let inputNotes = document.createElement(\"textarea\");\n inputNotes.classList.add(flagNotes);\n let notes = response[flagNotes];\n DOM.setElementValueCurrent(inputNotes, notes);\n DOM.setElementAttributeValuePrevious(inputNotes, notes);\n tdNotes.appendChild(inputNotes);\n row.appendChild(tdNotes);\n\n console.log(inputValueMeasured.tagName);\n console.log(inputNotes.tagName);\n console.log({ valueMeasured, notes });\n\n let tdActive = document.createElement(\"td\");\n tdActive.classList.add(flagActive, flagDdlPreview);\n let templateAddIcon = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagAdd);\n let templateDeleteIcon = document.querySelector(idContainerTemplateElements + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagDelete);\n let buttonActive = (response[flagActive]) ? templateDeleteIcon.cloneNode(true) : templateAddIcon.cloneNode(true);\n tdActive.appendChild(buttonActive);\n row.appendChild(tdActive);\n\n return row;\n }\n hookupTablesAssessmentResponses() {\n this.hookupTableAssessmentResponsesFieldsResponseQualityMetric();\n this.hookupTableAssessmentResponsesFieldsObedienceLevel();\n this.hookupTableAssessmentResponsesFieldsValueMeasured();\n this.hookupTableAssessmentResponsesFieldsNotes();\n this.hookupTableAssessmentResponsesFieldsActive();\n }\n hookupTableAssessmentResponsesFieldsResponseQualityMetric() {\n let fieldFlag = flagResponseQualityMetric;\n let optionList = Utils.getListFromDict(filterResponseQualityMetrics); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentResponses + ' td.' + flagResponseQualityMetric;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentResponsesFieldsObedienceLevel() {\n let fieldFlag = flagObedienceLevel;\n let optionList = Utils.getListFromDict(filterObedienceLevels); // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n let cellSelector = idTableAssessmentResponses + ' td.' + flagObedienceLevel;\n this.hookupTableCellDdlPreviews(\n fieldFlag\n , optionList\n , cellSelector\n );\n }\n hookupTableAssessmentResponsesFieldsValueMeasured() {\n this.hookupChangeHandlerTableCells(idTableAssessmentResponses + ' td.' + flagValueMeasured + ' .' + flagValueMeasured);\n }\n hookupTableAssessmentResponsesFieldsNotes() {\n this.hookupChangeHandlerTableCells(idTableAssessmentResponses + ' td.' + flagNotes + ' .' + flagNotes);\n }\n hookupTableAssessmentResponsesFieldsActive() {\n this.hookupFieldsActive(flagAssessmentResponse, (event, element) => { this.handleClickAddRowTableAssessmentResponses(event, element); });\n }\n handleClickAddRowTableAssessmentResponses(event, button) {\n event.stopPropagation();\n let tableResponses = DOM.getClosestParent(button, \"table\");\n let tbody = tableResponses.querySelector(\":scope > tbody\");\n let row = PageDogAssessment.createNewRowTableAssessmentResponses(null);\n if (tbody.classList.contains(flagIsCollapsed)) return;\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableAssessmentResponses + ' > tbody > tr').length;\n row.setAttribute(attrIdAssessmentResponse, -1 - countRows);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTablesAssessmentResponses();\n this.postInitialiseAssessmentResponseRowNewCallback(tbody);\n }\n postInitialiseAssessmentResponseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagResponseQualityMetric + ' div.' + flagResponseQualityMetric\n , ',td.' + flagObedienceLevel + ' div.' + flagObedienceLevel\n , ',td.' + flagValueMeasured + ' div.' + flagValueMeasured\n , ',td.' + flagNotes + ' div.' + flagNotes\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n let countActiveRows = tbody.querySelectorAll('td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive + '.' + flagDelete).length;\n /*\n newRows.filter(row => {\n let activeButton = row.querySelector('td.' + flagActive + ' .' + flagButton + '.' + flagIcon + '.' + flagActive);\n return activeButton.classList.contains(flagDelete);\n }).length;\n */\n let rowAssessmentCommandModalityLink = DOM.getRowFromElement(tbody);\n let divTrialCount = rowAssessmentCommandModalityLink.querySelector('td.' + flagTrialCount + ' div.' + flagTrialCount);\n divTrialCount.innerText = countActiveRows;\n }\n\n hookupTableAssessmentCommandModalityLinksFieldsActive() {\n this.hookupFieldsActive(flagAssessmentCommandModalityLink, (event, element) => { this.handleClickAddRowTableAssessmentCommandModalityLinks(event, element); });\n }\n handleClickAddRowTableAssessmentCommandModalityLinks(event, button) {\n event.stopPropagation();\n _rowBlankAssessmentCommandModalityLink.setAttribute(attrIdAssessmentCommandModalityLink, -1 - _rowBlankAssessmentCommandModalityLink.getAttribute(attrIdAssessmentCommandModalityLink));\n let tbody = document.querySelector(idTableAssessmentCommandModalityLinks + ' tbody');\n if (tbody.classList.contains(flagIsCollapsed)) return;\n let row = _rowBlankAssessmentCommandModalityLink.cloneNode(true);\n row.classList.remove(flagInitialised);\n row.querySelectorAll('.' + flagInitialised).forEach(function(element) {\n element.classList.remove(flagInitialised);\n });\n let countRows = document.querySelectorAll(idTableAssessmentCommandModalityLinks + ' > tbody > tr').length;\n row.setAttribute(attrIdAssessmentCommandModalityLink, -1 - countRows);\n tbody.prepend(row);\n tbody.scrollTop = 0;\n this.hookupTableAssessmentCommandModalityLinks();\n this.postInitialiseAssessmentCommandModalityLinkRowNewCallback(tbody);\n }\n postInitialiseAssessmentCommandModalityLinkRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagCommandCategory + ' div.' + flagCommandCategory\n , ',td.' + flagCommand + ' div.' + flagCommand\n , ',td.' + flagCommandModality + ' div.' + flagCommandModality\n , ',td.' + flagBribe + ' div.' + flagBribe\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogAssessments extends TableBasePage {\n static hash = hashPageDogAssessments;\n static attrIdRowObject = attrIdAssessment;\n callSaveTableContent = API.saveAssessments;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterWeather();\n this.hookupFilterLightingLevel();\n this.hookupFilterLocation();\n this.hookupFilterHandler();\n this.hookupFilterActive();\n }\n hookupFilterWeather() {\n this.hookupFilter(attrIdWeather);\n }\n hookupFilterLightingLevel() {\n this.hookupFilter(attrIdLightingLevel);\n }\n hookupFilterHandler() {\n this.hookupFilter(flagUserHandler);\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n let inputTemperatureCelcius = row.querySelector('td.' + flagTemperatureCelcius + ' input');\n let inputNotes = row.querySelector('td.' + flagNotes + ' textarea');\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {};\n jsonRow[attrIdAssessment] = row.getAttribute(attrIdAssessment);\n jsonRow[attrIdWeather] = this.getIdWeatherRow(row);\n jsonRow[attrIdLightingLevel] = this.getIdLightingLevelRow(row);\n jsonRow[flagTemperatureCelcius] = DOM.getElementAttributeValueCurrent(inputTemperatureCelcius);\n jsonRow[attrIdLocation] = this.getIdLocationRow(row);\n jsonRow[flagUserHandler] = this.getIdUserHandlerRow(row);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n getIdWeatherRow(tr) {\n let elementWeather = tr.querySelector('td.' + flagWeather + ' .' + flagWeather);\n return DOM.getElementAttributeValueCurrent(elementWeather);\n }\n getIdLightingLevelRow(tr) {\n let elementLightingLevel = tr.querySelector('td.' + flagLightingLevel + ' .' + flagLightingLevel);\n return DOM.getElementAttributeValueCurrent(elementLightingLevel);\n }\n getIdLocationRow(tr) {\n let elementLocation = tr.querySelector('td.' + flagLocation + ' .' + flagLocation);\n return DOM.getElementAttributeValueCurrent(elementLocation);\n }\n getIdUserHandlerRow(tr) {\n let elementUserHandler = tr.querySelector('td.' + flagUserHandler + ' .' + flagUserHandler);\n return DOM.getElementAttributeValueCurrent(elementUserHandler);\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagDetail + ' .' + flagDetail\n ].join('');\n let detailButton = newestRow.querySelector('td.' + flagDetail + ' .' + flagDetail); /*.forEach((clickableElement) => {\n clickableElement.\n clickableElement.click();\n });\n */\n newestRow.classList.add(flagIsCollapsed);\n detailButton.click();\n // console.log({ newestRow, detailButton });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsDetail();\n this.hookupFieldsWeather();\n this.hookupFieldsLightingLevel();\n this.hookupFieldsTemperature();\n this.dogMixin.hookupFieldsLocation();\n this.hookupFieldsHandler();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsDetail() {\n Events.hookupEventHandler(\n \"click\" // eventType\n , idTableMain + ' td.' + flagDetail + ' button.' + flagDetail // selector\n , (event, element) => {\n let parentTr = DOM.getRowFromElement(element);\n let idAssessment = parentTr.getAttribute(attrIdAssessment);\n /*\n console.log(\"click detail\");\n console.log({ element, parentTr, idAssessment });\n const data = {};\n const params = {\n [attrIdAssessment]: idAssessment\n };\n API.request(\n hashPageDogAssessment // hashEndpoint\n , 'GET' // method\n , data\n , params\n );\n */\n\n let formFilters = TableBasePage.getFormFilters();\n let filtersJson = DOM.convertForm2JSON(formFilters);\n filtersJson[attrIdAssessment] = idAssessment;\n Utils.consoleLogIfNotProductionEnvironment(\"hookupFieldsDetail\");\n Utils.consoleLogIfNotProductionEnvironment(\"formFilters\");\n Utils.consoleLogIfNotProductionEnvironment(formFilters);\n Utils.consoleLogIfNotProductionEnvironment(\"filtersJson\");\n Utils.consoleLogIfNotProductionEnvironment(filtersJson);\n this.leave();\n API.goToHash(hashPageDogAssessment, filtersJson);\n }\n );\n }\n hookupFieldsWeather() {\n this.hookupTableCellDdlPreviews(\n flagWeather\n , Utils.getListFromDict(filterWeathers) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsLightingLevel() {\n this.hookupTableCellDdlPreviews(\n flagLightingLevel\n , Utils.getListFromDict(filterLightingLevels) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsTemperature() {\n this.hookupChangeHandlerTableCells(idTableMain + ' td.' + flagTemperatureCelcius + ' input.' + flagTemperatureCelcius);\n }\n hookupFieldsHandler() {\n this.hookupTableCellDdlPreviews(\n flagUserHandler\n , Utils.getListFromDict(filterUserHandlers) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n\n leave() {\n super.leave();\n }\n}\n\n","\nimport API from \"../../api.js\";\nimport BusinessObjects from \"../../lib/business_objects/business_objects.js\";\nimport DOM from \"../../dom.js\";\nimport Events from \"../../lib/events.js\";\nimport TableBasePage from \"../base_table.js\";\nimport Utils from \"../../lib/utils.js\";\nimport Validation from \"../../lib/validation.js\";\nimport DogTableMixinPage from \"./mixin_table.js\";\n\nexport default class PageDogCalendarEntries extends TableBasePage {\n static hash = hashPageDogCalendarEntries;\n static attrIdRowObject = attrIdCalendarEntry;\n callSaveTableContent = API.saveCalendarEntries;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n // this.hookupFilterCalendarEntryType();\n this.hookupFilterActive();\n }\n /*\n hookupFilterCalendarEntryType() {\n let filterSelector = idFormFilters + ' #' + attrIdCalendarEntryType;\n let filterCalendarEntryTypeOld = document.querySelector(filterSelector);\n filterCalendarEntryTypeOld.removeAttribute('id');\n let parentDiv = filterCalendarEntryTypeOld.parentElement;\n let isChecked = (DOM.getElementAttributeValuePrevious(parentDiv) == \"True\");\n let filterCalendarEntryTypeNew = document.querySelector(idFormFilters + ' div.' + flagCalendarEntryTypeOnly + '.' + flagContainerInput + ' svg.' + flagCalendarEntryTypeOnly);\n filterCalendarEntryTypeNew.setAttribute('id', flagCalendarEntryTypeOnly);\n if (isChecked) filterCalendarEntryTypeNew.classList.add(flagIsChecked);\n\n Events.hookupEventHandler(\"click\", filterSelector, (event, filterCalendarEntryType) => {\n Utils.consoleLogIfNotProductionEnvironment({ filterCalendarEntryType });\n Utils.consoleLogIfNotProductionEnvironment({ [filterCalendarEntryType.tagName]: filterCalendarEntryType.tagName });\n let svgElement = (filterCalendarEntryType.tagName.toUpperCase() == 'SVG') ? filterCalendarEntryType : filterCalendarEntryType.parentElement;\n let wasChecked = svgElement.classList.contains(flagIsChecked);\n if (wasChecked) {\n svgElement.classList.remove(flagIsChecked);\n }\n else {\n svgElement.classList.add(flagIsChecked);\n }\n return this.handleChangeFilter(event, filterCalendarEntryType);\n });\n let filter = document.querySelector(filterSelector);\n let filterValuePrevious = DOM.getElementValueCurrent(filter);\n filter.setAttribute(attrValueCurrent, filterValuePrevious);\n filter.setAttribute(attrValuePrevious, filterValuePrevious);\n }\n */\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n Utils.consoleLogIfNotProductionEnvironment({ row });\n if (row == null) return;\n let inputCode = row.querySelector('td.' + flagCode + ' .' + flagCode);\n let inputName = row.querySelector('td.' + flagName + ' .' + flagName);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n \n console.log(\"inputCode\");\n console.log(inputCode);\n\n let jsonRow = {};\n jsonRow[attrIdCalendarEntry] = row.getAttribute(attrIdCalendarEntry);\n jsonRow[flagCode] = DOM.getElementAttributeValueCurrent(inputCode);\n jsonRow[flagName] = DOM.getElementAttributeValueCurrent(inputName);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n return jsonRow;\n }\n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n // let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsCodeTable();\n this.hookupFieldsNameTable();\n this.hookupFieldsActive();\n }\n\n leave() {\n super.leave();\n }\n}\n\n","import BasePage from \"../base.js\";\n\nexport default class PageAccessibilityReport extends BasePage {\n static hash = hashPageAccessibilityReport;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","import BasePage from \"../base.js\";\n\nexport default class PageAccessibilityStatement extends BasePage {\n static hash = hashPageAccessibilityStatement;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport BasePage from \"../base.js\";\n\nexport default class PageLicense extends BasePage {\n static hash = hashPageLicense;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}","\nimport BasePage from \"../base.js\";\n\nexport default class PagePrivacyPolicy extends BasePage {\n static hash = hashPagePrivacyPolicy;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}","import BasePage from \"../base.js\";\n\nexport default class PageRetentionSchedule extends BasePage {\n static hash = hashPageDataRetentionSchedule;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport API from \"../../api.js\";\nimport DogTableMixinPage from \"../dog/mixin_table.js\";\nimport DOM from \"../../dom.js\";\nimport TableBasePage from \"../base_table.js\";\n\nexport default class PageUser extends TableBasePage {\n static hash = hashPageUserAccount;\n static attrIdRowObject = attrIdUser;\n callSaveTableContent = API.saveUsers;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n this.hookupTableMain();\n }\n\n\n hookupFilters() {\n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getTableRecords(dirtyOnly = false) {\n dirtyOnly = true;\n let container = document.querySelector('.' + flagCard + '.' + flagUser);\n return [this.getJsonRow(container)];\n }\n getJsonRow(container) {\n console.log(\"getJsonRow: \", container);\n if (container == null) return;\n let inputFirstname = container.querySelector(' #' + flagFirstname);\n let inputSurname = container.querySelector(' #' + flagSurname);\n let inputEmail = container.querySelector(' #' + flagEmail);\n let divRole = container.querySelector('.' + flagRole);\n\n let idUser = container.getAttribute(attrIdUser);\n \n let jsonRow = {\n [attrIdUserAuth0]: null\n , [flagEmail]: null\n , [flagIsEmailVerified]: null\n , [attrIdCompany]: company[attrIdCompany]\n , [flagIsSuperUser]: null\n , [flagCanAdminDog]: null\n , [flagCanAdminUser]: null\n , [flagCompany]: null\n , [flagRole]: null\n };\n\n jsonRow[attrIdUser] = idUser;\n jsonRow[attrIdRole] = DOM.getElementAttributeValueCurrent(divRole);\n jsonRow[flagFirstname] = DOM.getElementAttributeValueCurrent(inputFirstname);\n jsonRow[flagSurname] = DOM.getElementAttributeValueCurrent(inputSurname);\n jsonRow[flagEmail] = DOM.getElementAttributeValueCurrent(inputEmail);\n return jsonRow;\n }\n \n initialiseRowNew(tbody, row) {\n }\n postInitialiseRowNewCallback(tbody) {\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsFirstname();\n this.hookupFieldsSurname();\n this.hookupFieldsEmail();\n }\n hookupFieldsFirstname() {\n this.hookupChangeHandlerTableCells('.' + flagCard + '.' + flagUser + ' #' + flagFirstname);\n }\n hookupFieldsSurname() {\n this.hookupChangeHandlerTableCells('.' + flagCard + '.' + flagUser + ' #' + flagSurname);\n }\n hookupFieldsEmail() {\n this.hookupChangeHandlerTableCells('.' + flagCard + '.' + flagUser + ' #' + flagEmail);\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport API from \"../../api\";\nimport DogTableMixinPage from \"../dog/mixin_table\";\nimport DOM from \"../../dom\";\nimport TableBasePage from \"../base_table\";\nimport Utils from \"../../lib/utils\";\n\nexport default class PageUsers extends TableBasePage {\n static hash = hashPageUserAccounts;\n static attrIdRowObject = attrIdUser;\n callSaveTableContent = API.saveUsers;\n\n constructor(router) {\n super(router);\n this.dogMixin = new DogTableMixinPage(this);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n hookupFilters() {\n this.sharedHookupFilters();\n this.hookupFilterCompany();\n this.hookupFilterActive();\n }\n hookupFilterCompany() {\n this.hookupFilter(attrIdCompany); \n }\n\n loadRowTable(rowJson) {\n if (rowJson == null) return;\n if (_verbose) { Utils.consoleLogIfNotProductionEnvironment(\"applying data row: \", rowJson); }\n }\n getJsonRow(row) {\n if (row == null) return;\n // let tdCompany = row.querySelector('td.' + flagCompany);\n let inputRole = row.querySelector('td.' + flagRole + ' .' + flagRole);\n let inputFirstname = row.querySelector('td.' + flagFirstname + ' .' + flagFirstname);\n let inputSurname = row.querySelector('td.' + flagSurname + ' .' + flagSurname);\n let inputNotes = row.querySelector('td.' + flagNotes + ' .' + flagNotes);\n let buttonActive = row.querySelector('td.' + flagActive + ' .' + flagActive);\n\n let jsonRow = {\n [attrIdUserAuth0]: null\n , [flagEmail]: null\n , [flagIsEmailVerified]: null\n , [attrIdCompany]: company[attrIdCompany]\n , [flagIsSuperUser]: null\n , [flagCanAdminDog]: null\n , [flagCanAdminUser]: null\n , [flagCompany]: null\n , [flagRole]: null\n };\n jsonRow[attrIdUser] = row.getAttribute(attrIdUser);\n // jsonRow[attrIdCompany] = tdCompany.getAttribute(attrIdCompany);\n jsonRow[attrIdRole] = DOM.getElementAttributeValueCurrent(inputRole);\n jsonRow[flagFirstname] = DOM.getElementAttributeValueCurrent(inputFirstname);\n jsonRow[flagSurname] = DOM.getElementAttributeValueCurrent(inputSurname);\n jsonRow[flagNotes] = DOM.getElementAttributeValueCurrent(inputNotes);\n jsonRow[flagActive] = buttonActive.classList.contains(flagDelete);\n\n console.log(\"jsonRow\");\n console.log(jsonRow);\n\n return jsonRow;\n }\n \n initialiseRowNew(tbody, row) {\n \n }\n postInitialiseRowNewCallback(tbody) {\n let newRows = tbody.querySelectorAll('tr.' + flagRowNew);\n let newestRow = newRows[0];\n let clickableElementsSelector = [\n 'td.' + flagRole + ' div.' + flagRole\n ].join('');\n newestRow.querySelectorAll(clickableElementsSelector).forEach((clickableElement) => {\n clickableElement.click();\n });\n }\n\n hookupTableMain() {\n super.hookupTableMain();\n this.hookupFieldsRole();\n this.hookupFieldsFirstname();\n this.hookupFieldsSurname();\n this.hookupFieldsNotesTable();\n this.hookupFieldsActive();\n }\n hookupFieldsRole() {\n this.hookupTableCellDdlPreviews(\n flagRole\n , Utils.getListFromDict(filterRoles) // .sort((a, b) => a[flagName].localeCompare(b[flagName]))\n );\n }\n hookupFieldsFirstname() {\n this.hookupChangeHandlerTableCells(flagFirstname);\n }\n hookupFieldsSurname() {\n this.hookupChangeHandlerTableCells(flagSurname);\n }\n\n leave() {\n super.leave();\n }\n}\n","\nimport BasePage from \"../base.js\";\n\nexport default class PageUserCompany extends BasePage {\n static hash = hashPageUserCompany;\n\n constructor(router) {\n super(router);\n }\n\n initialize() {\n this.sharedInitialize();\n }\n\n leave() {\n super.leave();\n }\n}\n","\n// Pages\n// Core\nimport PageHome from './pages/core/home.js';\nimport PageContact from './pages/core/contact.js';\nimport PageContactSuccess from './pages/core/contact-success.js';\nimport PageApplyFoundingPartner from './pages/core/apply-founding-partner.js';\nimport PageApplyFoundingPartnerSuccess from './pages/core/apply-founding-partner-success.js';\n// Blog\nimport PageBlogHome from './pages/blog/home.js';\nimport PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients from './pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js';\nimport PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess from './pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js';\nimport PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress from './pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js';\nimport PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 from './pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js';\nimport PageBlogNewsletterSuccess from './pages/blog/newsletter-success.js';\n// Dog\nimport PageDogHome from './pages/dog/home.js';\nimport PageDogCommandCategories from './pages/dog/command_categories.js';\nimport PageDogCommands from './pages/dog/commands.js';\nimport PageDogDogCommandLinks from './pages/dog/dog_command_links.js';\nimport PageDogDogs from './pages/dog/dogs.js';\nimport PageDogLocations from './pages/dog/locations.js';\nimport PageDogButtonIcons from './pages/dog/button_icons.js';\nimport PageDogCommandButtonLinks from './pages/dog/command_button_links.js';\nimport PageDogAssessment from './pages/dog/assessment.js';\nimport PageDogAssessments from './pages/dog/assessments.js';\nimport PageDogCalendarEntries from './pages/dog/calendar_entries.js'\n// Legal\nimport PageAccessibilityReport from './pages/legal/accessibility_report.js';\nimport PageAccessibilityStatement from './pages/legal/accessibility_statement.js';\nimport PageLicense from './pages/legal/license.js';\nimport PagePrivacyPolicy from './pages/legal/privacy_policy.js';\nimport PageRetentionSchedule from './pages/legal/retention_schedule.js';\n// User\n// import PageUserLogin from './pages/user/login.js';\n// import PageUserLogout from './pages/user/logout.js';\nimport PageUser from './pages/user/user.js';\nimport PageUsers from './pages/user/users.js';\nimport PageUserCompany from './pages/user/company.js';\n\nimport API from './api.js';\nimport DOM from './dom.js';\nimport Utils from './lib/utils.js';\n\n\nexport default class Router {\n constructor() {\n // Pages\n this.pages = {};\n // Core\n this.pages[hashPageHome] = { name: 'PageHome', module: PageHome };\n this.pages[hashPageContact] = { name: 'PageContact', module: PageContact };\n this.pages[hashPageContactSuccess] = { name: 'PageContactSuccess', module: PageContactSuccess };\n this.pages[hashPageApplyFoundingPartner] = { name: 'PageApplyFoundingPartner', module: PageApplyFoundingPartner };\n this.pages[hashPageApplyFoundingPartnerSuccess] = { name: 'PageApplyFoundingPartnerSuccess', module: PageApplyFoundingPartnerSuccess };\n // Blog\n this.pages[hashPageBlogHome] = { name: 'PageBlogHome', module: PageBlogHome };\n this.pages[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients] = { name: 'PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients', module: PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients };\n this.pages[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess] = { name: 'PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess', module: PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess };\n this.pages[hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress] = { name: 'PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress', module: PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress };\n this.pages[hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025] = { name: 'PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025', module: PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 };\n this.pages[hashPageBlogNewsletterSuccess] = { name: 'PageBlogNewsletterSuccess', module: PageBlogNewsletterSuccess };\n // Dog\n this.pages[hashPageDogHome] = { name: 'PageDogHome', module: PageDogHome };\n this.pages[hashPageDogCommandCategories] = { name: 'PageDogCommands', module: PageDogCommandCategories };\n this.pages[hashPageDogCommands] = { name: 'PageDogCommands', module: PageDogCommands };\n this.pages[hashPageDogDogCommandLinks] = { name: 'PageDogDogCommandLinks', module: PageDogDogCommandLinks };\n this.pages[hashPageDogDogs] = { name: 'PageDogDogs', module: PageDogDogs };\n this.pages[hashPageDogLocations] = { name: 'PageDogLocations', module: PageDogLocations };\n this.pages[hashPageDogButtonIcons] = { name: 'PageDogButtonIcons', module: PageDogButtonIcons };\n this.pages[hashPageDogCommandButtonLinks] = { name: 'PageDogCommandButtonLinks', module: PageDogCommandButtonLinks };\n this.pages[hashPageDogAssessment] = { name: 'PageDogAssessment', module: PageDogAssessment };\n this.pages[hashPageDogAssessments] = { name: 'PageDogAssessments', module: PageDogAssessments };\n this.pages[hashPageDogCalendarEntries] = { name: 'PageDogCalendarEntries', module: PageDogCalendarEntries };\n // Legal\n this.pages[hashPageAccessibilityStatement] = { name: 'PageAccessibilityStatement', module: PageAccessibilityStatement };\n this.pages[hashPageDataRetentionSchedule] = { name: 'PageDataRetentionSchedule', module: PageRetentionSchedule };\n this.pages[hashPageLicense] = { name: 'PageLicense', module: PageLicense };\n this.pages[hashPagePrivacyPolicy] = { name: 'PagePrivacyPolicy', module: PagePrivacyPolicy };\n // User\n // this.pages[hashPageUserLogin] = { name: 'PageUserLogin', module: PageUserLogin }; // pathModule: './pages/user/login.js' };\n // this.pages[hashPageUserLogout] = { name: 'PageUserLogout', module: PageUserLogout }; // pathModule: './pages/user/logout.js' };\n this.pages[hashPageUserAccount] = { name: 'PageUser', module: PageUser };\n this.pages[hashPageUserAccounts] = { name: 'PageUsers', module: PageUsers };\n this.pages[hashPageUserCompany] = { name: 'PageUserCompany', module: PageUserCompany };\n // Routes\n this.routes = {};\n // Core\n this.routes[hashPageHome] = (isPopState = false) => this.navigateToHash(hashPageHome, isPopState);\n this.routes[hashPageContact] = (isPopState = false) => this.navigateToHash(hashPageContact, isPopState);\n this.routes[hashPageContactSuccess] = (isPopState = false) => this.navigateToHash(hashPageContactSuccess, isPopState);\n this.routes[hashPageApplyFoundingPartner] = (isPopState = false) => this.navigateToHash(hashPageApplyFoundingPartner, isPopState);\n this.routes[hashPageApplyFoundingPartnerSuccess] = (isPopState = false) => this.navigateToHash(hashPageApplyFoundingPartnerSuccess, isPopState);\n // Blog\n this.routes[hashPageBlogHome] = (isPopState = false) => this.navigateToHash(hashPageBlogHome, isPopState);\n this.routes[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, isPopState);\n this.routes[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess, isPopState);\n this.routes[hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, isPopState);\n this.routes[hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, isPopState);\n this.routes[hashPageBlogNewsletterSuccess] = (isPopState = false) => this.navigateToHash(hashPageBlogNewsletterSuccess, isPopState);\n // Dog\n this.routes[hashPageDogHome] = (isPopState = false) => this.navigateToHash(hashPageDogHome, isPopState);\n this.routes[hashPageDogCommandCategories] = (isPopState = false) => this.navigateToHash(hashPageDogCommandCategories, isPopState);\n this.routes[hashPageDogCommands] = (isPopState = false) => this.navigateToHash(hashPageDogCommands, isPopState);\n this.routes[hashPageDogDogCommandLinks] = (isPopState = false) => this.navigateToHash(hashPageDogDogCommandLinks, isPopState);\n this.routes[hashPageDogDogs] = (isPopState = false) => this.navigateToHash(hashPageDogDogs, isPopState);\n this.routes[hashPageDogLocations] = (isPopState = false) => this.navigateToHash(hashPageDogLocations, isPopState);\n this.routes[hashPageDogButtonIcons] = (isPopState = false) => this.navigateToHash(hashPageDogButtonIcons, isPopState);\n this.routes[hashPageDogCommandButtonLinks] = (isPopState = false) => this.navigateToHash(hashPageDogCommandButtonLinks, isPopState);\n this.routes[hashPageDogAssessment] = (isPopState = false) => this.navigateToHash(hashPageDogAssessment, isPopState);\n this.routes[hashPageDogAssessments] = (isPopState = false) => this.navigateToHash(hashPageDogAssessments, isPopState);\n this.routes[hashPageDogCalendarEntries] = (isPopState = false) => this.navigateToHash(hashPageDogCalendarEntries, isPopState);\n // Legal\n this.routes[hashPageAccessibilityStatement] = (isPopState = false) => this.navigateToHash(hashPageAccessibilityStatement, isPopState);\n this.routes[hashPageDataRetentionSchedule] = (isPopState = false) => this.navigateToHash(hashPageDataRetentionSchedule, isPopState);\n this.routes[hashPageLicense] = (isPopState = false) => this.navigateToHash(hashPageLicense, isPopState);\n this.routes[hashPagePrivacyPolicy] = (isPopState = false) => this.navigateToHash(hashPagePrivacyPolicy, isPopState);\n // User\n // this.routes[hashPageUserLogin] = (isPopState = false) => this.navigateToHash(hashPageUserLogin, isPopState);\n // this.routes[hashPageUserLogout] = (isPopState = false) => this.navigateToHash(hashPageUserLogout, isPopState);\n this.routes[hashPageUserAccount] = (isPopState = false) => this.navigateToHash(hashPageUserAccount, isPopState);\n this.routes[hashPageUserAccounts] = (isPopState = false) => this.navigateToHash(hashPageUserAccounts, isPopState);\n this.routes[hashPageUserCompany] = (isPopState = false) => this.navigateToHash(hashPageUserCompany, isPopState);\n this.initialize();\n }\n loadPage(hashPage, isPopState = false) {\n const PageClass = this.getClassPageFromHash(hashPage);\n this.currentPage = new PageClass(this);\n this.currentPage.initialize(isPopState);\n window.addEventListener('beforeunload', () => this.currentPage.leave());\n }\n getClassPageFromHash(hashPage) {\n \n let pageJson = this.pages[hashPage];\n try {\n const module = pageJson.module;\n return module; \n }\n catch (error) {\n Utils.consoleLogIfNotProductionEnvironment(\"this.pages: \", this.pages);\n console.error('Page not found:', hashPage);\n throw error;\n }\n }\n initialize() {\n window.addEventListener('popstate', this.handlePopState.bind(this));\n }\n handlePopState(event) {\n this.loadPageCurrent();\n }\n loadPageCurrent() {\n const hashPageCurrent = DOM.getHashPageCurrent();\n this.loadPage(hashPageCurrent);\n }\n navigateToHash(hash, data = null, params = null, isPopState = false) {\n let url = API.getUrlFromHash(hash, params);\n history.pushState({data: data, params: params}, '', hash);\n API.goToUrl(url, data);\n }\n \n navigateToUrl(url, data = null, appendHistory = true) {\n // this.beforeLeave();\n if (appendHistory) history.pushState(data, '', url);\n url = API.parameteriseUrl(url, data);\n API.goToUrl(url);\n }\n\n static loadPageBodyFromResponse(response) {\n DOM.loadPageBody(response.data);\n }\n}\n\nexport const router = new Router();\n","\n'use strict';\n\nimport DOM from './dom.js';\nimport Router from './router.js';\n\n\nclass App {\n constructor() {\n this.dom = new DOM();\n this.router = new Router();\n }\n\n initialize() {\n this.setupEventListeners();\n this.start();\n }\n\n setupEventListeners() {\n // document.addEventListener('click', this.handleGlobalClick.bind(this));\n }\n\n handleGlobalClick(event) {\n }\n\n start() {\n this.initPageCurrent();\n }\n\n initPageCurrent() {\n this.router.loadPageCurrent();\n }\n \n}\n\nconst app = new App();\n\nfunction domReady(fn) {\n if (document.readyState !== 'loading') {\n fn();\n } else {\n document.addEventListener('DOMContentLoaded', fn);\n }\n}\n\ndomReady(() => {\n app.initialize();\n});\n\nwindow.app = app;\n\nexport default app;","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};"],"names":["Validation","_classCallCheck","_createClass","key","value","isEmpty","object","undefined","length","isString","trim","i","isValidNumber","positiveOnly","isNaN","parseFloat","getDataContentType","params","data","contentType","JSON","stringify","Data","ContentType","arrayContainsItem","array","itemValue","hasItem","isJQueryElementArray","jQuery","document","querySelectorAll","is","isDate","Date","getTime","dictHasKey","d","k","areEqualDicts","dict1","dict2","keys1","Object","keys","keys2","_i3","_keys","imageExists","url","callback","img","Image","onload","onerror","src","toFixedOrDefault","decimalPlaces","defaultValue","arguments","toFixed","default","Utils","DOM","setElementAttributesValuesCurrentAndPrevious","element","setElementAttributeValueCurrent","setElementAttributeValuePrevious","setAttribute","attrValueCurrent","attrValuePrevious","setElementValuesCurrentAndPrevious","setElementValueCurrent","tagName","toUpperCase","type","checked","textContent","setElementValueCurrentIfEmpty","getElementValueCurrent","getCellFromElement","closest","getRowFromElement","flagRow","selector","getClosestParent","parentSelector","parent","parentElement","matches","convertForm2JSON","elementForm","dataForm","containersFilter","flagContainerInput","flagFilter","containerFilter","labelFilter","keyFilter","filter","indexFilter","querySelector","getAttribute","concat","loadPageBody","contentNew","pageBody","idPageBody","innerHTML","getHashPageCurrent","hashPageCurrent","body","dataset","page","updateAndCheckIsElementDirty","isElementDirty","isDirty","handleDirtyElement","toggleElementHasClassnameFlag","flagDirty","elementHasFlag","flag","elementAlreadyHasFlag","classList","contains","add","remove","hasDirtyChildrenContainer","container","hasDirtyChildrenNotDeletedContainer","flagDelete","returnVal","flagButton","flagActive","getElementAttributeValueCurrent","flagCheckbox","flagIsChecked","getElementAttributeValuePrevious","scrollToElement","scrollTop","offset","top","isElementInContainer","containerBounds","getBoundingClientRect","elementBounds","left","height","width","alertError","errorType","errorText","alert","createOptionUnselectedProductVariation","_defineProperty","flagProductVariationType","flagNameAttrOptionText","flagName","flagNameAttrOptionValue","attrIdProductVariationType","flagProductVariation","attrIdProductVariation","createOption","optionJson","text","option","createElement","selected","escapeHtml","div","unescapeHtml","html","innerText","Events","initialiseEventHandler","selectorElement","classInitialised","eventHandler","forEach","hookupEventHandler","eventType","flagInitialised","addEventListener","event","stopPropagation","LocalStorage","getLocalStorage","parse","localStorage","getItem","setLocalStorage","newLS","setItem","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","ownKeys","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","_objectSpread","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_defineProperties","_toPrimitive","toPrimitive","String","Number","API","getCsrfToken","idCSRFToken","_request","_callee","hashEndpoint","csrfToken","options","response","_args","_callee$","_context","getUrlFromHash","headers","flagCsrfToken","fetch","ok","status","json","t0","console","error","request","_x","hash","hashPageHome","parameteriseUrl","_pathHost","URLSearchParams","toString","goToUrl","window","location","href","goToHash","_loginUser","_callee2","_callee2$","_context2","flagCallback","hashPageUserLogin","loginUser","_saveUsers","_callee3","users","formFilters","comment","dataRequest","_callee3$","_context3","flagFormFilters","flagUser","flagComment","hashSaveUserUser","saveUsers","_x2","_x3","_x4","_saveCompanies","_callee4","companies","_callee4$","_context4","flagCompany","hashSaveDogCompany","saveCompanies","_x5","_x6","_x7","_saveCommandCategories","_callee5","commandCategories","_callee5$","_context5","flagCommandCategory","hashSaveDogCommandCategory","saveCommandCategories","_x8","_x9","_x10","_saveCommands","_callee6","commands","_callee6$","_context6","flagCommand","hashSaveDogCommand","saveCommands","_x11","_x12","_x13","_saveDogCommandLinks","_callee7","dogCommandLinks","_callee7$","_context7","flagDogCommandLink","hashSaveDogDogCommandLink","saveDogCommandLinks","_x14","_x15","_x16","_saveLocations","_callee8","locations","_callee8$","_context8","flagLocation","hashSaveDogLocation","saveLocations","_x17","_x18","_x19","_saveButtonIcons","_callee9","buttonIcons","_callee9$","_context9","flagButtonIcon","hashSaveDogButtonIcon","saveButtonIcons","_x20","_x21","_x22","_saveCommandButtonLinks","_callee10","links","_callee10$","_context10","flagCommandButtonLink","hashSaveDogCommandButtonLink","saveCommandButtonLinks","_x23","_x24","_x25","_saveAssessments","_callee11","assessments","_callee11$","_context11","flagAssessment","hashSaveDogAssessment","saveAssessments","_x26","_x27","_x28","_saveAssessmentsDistractionsAndResponses","_callee12","filtersJson","_callee12$","_context12","attrIdAssessment","hashSaveDogAssessmentDistractionAndResponse","saveAssessmentsDistractionsAndResponses","_x29","_x30","_x31","getListFromDict","dict","list","consoleLogIfNotProductionEnvironment","message","environment","is_production","log","OverlayConfirm","hookup","callbackSuccess","idOverlayConfirm","flagCancel","buttonCancel","overlay","style","visibility","flagSubmit","buttonConfirm","textarea","show","flagIsCollapsed","BusinessObjects","OverlayError","BasePage","router","title","titlePageCurrent","initialize","sharedInitialize","logInitialisation","hookupCommonElements","hookupLogos","hookupNavigation","hookupOverlays","_this","flagImageLogo","flagLogo","navigateToHash","idButtonHamburger","overlayHamburger","idOverlayHamburger","flagExpanded","hookupButtonsNavUserAccount","hookupButtonsNavUserLogout","hookupButtonsNavUserLogin","hookupButtonsNav","buttonSelector","_this2","button","pageHash","_this3","flagNavUserLogin","navigator","leave","Success","Message","hookupOverlayFromId","idOverlayError","idOverlay","display","hookupButtonSave","_this4","flagContainer","flagSave","target","setLocalStoragePage","dataPage","getLocalStoragePage","toggleShowButtonsSaveCancel","buttonContainerSelector","buttonSave","idButtonSave","idButtonCancel","isDirtyFilter","idTableMain","PageHome","_BasePage","_callSuper","_inherits","_superPropGet","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","_get","get","bind","_superPropBase","_setPrototypeOf","_wrapNativeSuper","Map","_isNativeFunction","has","set","Wrapper","_construct","Boolean","valueOf","Function","indexOf","_toArray","_arrayWithHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableRest","_toConsumableArray","_arrayWithoutHoles","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_iterableToArrayLimit","_createForOfIteratorHelper","_n2","F","test","hi","Or","gi","ne","zr","H","Mt","WeakSet","Ut","en","Fr","self","Blob","_i","URL","webkitURL","createObjectURL","Worker","revokeObjectURL","_unused","encodeURIComponent","mi","Qr","_Qr$v","_window$__svelte","__svelte","Set","wi","pi","yi","bi","Ei","xi","Wt","tn","rn","Je","W","$i","Mr","oe","nn","It","Yt","pe","ze","yt","re","bt","K","ye","et","Ke","St","ki","Zt","Ci","ln","ut","an","Ai","on","Ri","Ii","Et","xt","Pe","Si","Ti","Ni","sn","fn","Li","requestIdleCallback","setTimeout","dt","vt","un","cn","Gt","queueMicrotask","Di","Ur","dn","Pi","vn","Oi","zi","Fi","Mi","Ui","ji","Vi","Bi","qi","Hi","Wi","ue","reactions","equals","rv","wv","He","Yi","hn","ae","ce","Qi","P","Dn","includes","Zi","En","gn","A","ge","el","de","Lt","De","ctx","B","deps","effects","_n","we","Gi","Ji","Se","$n","mn","Ce","Tt","warn","D","Ge","O","Re","Xe","Te","Z","Ki","nodeType","le","Proxy","deleteProperty","isInteger","jr","w","m","z","T","Y","M","_iterator","_step","_step$value","err","Vr","wn","pn","yn","jt","userAgent","Element","Node","__click","__className","__attributes","__style","__e","Text","__t","Jt","createTextNode","me","G","appendChild","Br","Comment","he","after","before","Xi","wt","$t","kt","Oe","Kt","qr","ct","Ie","V","J","bn","Ct","ht","_a$reactions","tl","_unused2","rl","Nt","xn","Wr","At","_m$reactions","nl","Xt","hl","An","Cn","teardown","il","kn","al","ll","first","nodes_start","Rn","$","ol","_ol","Qe","sl","fl","ul","last","Fe","nodes_end","transitions","_f$effects","cl","Vt","_r$e","effect","reaction","Qt","dl","vl","outro","Bt","er","We","map","tr","Rt","_iterator2","_step2","In","gl","_iterator3","_step3","out","_iterator4","_step4","is_global","Hr","Sn","_iterator5","_step5","Tn","Nn","x","Ln","_l","ml","Yr","Pn","defaultPrevented","_iterator6","elements","_step6","__on_r","capture","On","wl","zn","qt","pl","ft","cancelBubble","startsWith","yl","passive","removeEventListener","bl","_iterator7","_step7","ownerDocument","composedPath","__root","assignedSlot","parentNode","host","disabled","_z","_z2","_iterator8","_step8","_loop","currentTarget","rr","content","Ae","ve","importNode","cloneNode","lastChild","El","ee","Fn","Mn","xl","_t$intro","intro","anchor","recover","Ye","_ref","_ref$props","props","events","context","_ref$intro","$$events","_iterator9","_step9","removeChild","Ht","WeakMap","$l","ke","_ref2","_ref3","parseInt","substring","Ze","_t2","kl","$$slots","children","Cl","_r$head","getRootNode","head","id","code","Zr","Al","Rl","removeAttribute","className","toggle","Il","Sl","Gr","hasAttribute","ie","Tl","Un","nodeName","Nl","_e$__attributes","namespaceURI","Jr","Ll","defaultChecked","Kr","Xr","jn","Dl","mt","Pl","C","_Pl","_Pl2","_ref4","be","N","$$legacy","X","se","U","Ol","zl","_e","te","_t$intro2","_r$get","_r$get2","_r$get3","hydrate","component","$$host","sync","_loop2","_Object$keys","_i2","$set","assign","$destroy","$on","_len","_key","Vn","HTMLElement","_HTMLElement","$$ctor","$$s","attachShadow","mode","$$l","$$c","$$l_u","_connectedCallback","_this5","_iterator10","_step10","_i4","_iterator11","_step11","_i5","_a","_iterator13","_step13","$$cn","Fl","$$d","attributes","$$g_p","pt","$$p_d","shadowRoot","$$me","$$r","_iterator12","_step12","reflect","attribute","connectedCallback","attributeChangedCallback","disconnectedCallback","_this6","_this7","find","toLowerCase","childNodes","slot","Ml","_Vn","_this8","Bn","TextEncoder","Ul","Uint8Array","padStart","join","jl","_jl","_args10","now","Math","round","random","qn","algorithm","challenge","salt","signature","_qn","crypto","subtle","digest","encode","t1","Vl","AbortController","promise","signal","aborted","number","took","controller","Bl","Intl","DateTimeFormat","resolvedOptions","timeZone","_unused3","ql","atob","charCodeAt","Hl","floor","Wl","_Wl","_callee13","_args13","_callee13$","_context13","_ref7","decrypt","iv","clearText","TextDecoder","decode","importKey","reject","E","ERROR","VERIFIED","VERIFYING","UNVERIFIED","EXPIRED","Yl","Zl","Gl","Jl","Kl","Xl","Ql","ea","ta","ra","na","ia","la","Lr","Dr","Ee","Me","min","hardwareConcurrency","tt","nr","ir","lr","rt","dispatchEvent","CustomEvent","detail","ar","documentElement","lang","split","Dt","origin","endsWith","Pt","wr","or","Q","ariaLinkLabel","expired","footer","label","verified","verifying","waitAlert","sr","Ue","R","j","nt","je","Ve","fe","xe","Ne","Xn","Qn","Hn","hr","gr","vr","clearTimeout","cr","dr","mr","I","Jn","pluginName","Ot","pr","it","$e","requestAnimationFrame","fr","btoa","_i6","_xe","destroy","ur","lt","Wn","_Wn","L","_","b","S","q","_L","qe","_L2","globalThis","Response","verifyurl","Er","Yn","Zn","blockedCountries","classifier","disableRules","email","expectedCountries","expectedLanguages","fields","ipAddress","Gn","reduce","replace","RegExp","_iterator14","altchaPlugins","_step14","clarify","dispatch","getConfiguration","xr","getFloatingAnchor","$r","getState","kr","solve","br","setState","Le","setFloatingAnchor","Cr","verify","_console","_len2","_key2","some","Kn","reportValidity","gt","_i7","_xe2","onErrorChange","preventDefault","requestSubmit","_r","_i8","_xe3","onStateChange","clientHeight","clientWidth","bottom","max","ei","_ei","_Zn","ot","st","vi","Pr","payload","classification","yr","_br","ti","maxnumber","solution","obfuscated","t2","t3","t4","_ti","_i10","_b2","_p","_args6","ceil","altchaCreateWorker","all","_i9","_b","postMessage","start","terminate","_it","auto","blockspam","customfetch","floatinganchor","delay","floatingoffset","floating","expire","challengeurl","debug","hidefooter","hidelogo","mockerror","refetchonexpire","spamfilter","strings","workers","workerurl","ri","state","_$e","_ref6","Ar","Rr","at","zt","Ir","ni","_t","Sr","Be","__change","Ft","ii","li","ai","oi","si","Tr","fi","Nr","ui","ci","di","required","configure","getPlugin","challengejson","plugins","customElements","Altcha","PageContact","hookupButtonSubmitFormContactUs","flagButtonPrimary","hashPageContact","PageContactSuccess","hashPageContactSuccess","PageApplyFoundingPartner","hookupButtonSubmitFormApplyFoundingPartnerUs","hashPageApplyFoundingPartner","PageApplyFoundingPartnerSuccess","hashPageApplyFoundingPartnerSuccess","PageBlogHome","hookupFormNewsletter","submitButton","hashPageBlogHome","PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients","_PageBlogHome","hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients","PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress","hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress","PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025","hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025","PageBlogNewsletterSuccess","hashPageBlogNewsletterSuccess","PageDogHome","hookupDogHome","hashPageDogHome","getOptionJsonFromObjectJsonAndKeys","objectJson","keyText","keyValue","valueSelected","getOptionJsonFromObjectJson","getObjectText","getListObjectsFromIdDictAndCsv","idDict","idCsv","listObjects","ids","msgError","labelError","idLabelError","TableBasePage","cursorYInitial","rowInitial","placeholder","dragSrcEl","dragSrcRow","hookupTableCellDdls","isPopState","isSinglePageApp","hookupFilters","hookupButtonsSaveCancel","hookupTableMain","saveRecordsTableDirtySinglePageApp","saveRecordsTableDirty","filters","getFormFilters","filtersDefault","callFilterTableContent","sharedHookupFilters","hookupButtonApplyFilters","hookupSearchTextFilter","hookupFilterActive","filterSelector","idFormFilters","flagActiveOnly","filterActiveOld","parentDiv","isChecked","filterActiveNew","filterActive","svgElement","wasChecked","handleChangeFilter","filterValuePrevious","hookupFilter","filterFlag","handler","areDirtyFilters","tbody","rows","row","dirtyInputs","dirtyInput","isDirtyLabel","initialisedElements","initialisedElement","updateAndToggleShowButtonsSaveCancel","hookupFilterIsNotEmpty","flagIsNotEmpty","idButtonApplyFilters","flagSearch","hookupFilterDog","attrIdDog","hookupFilterCommandCategory","attrIdCommandCategory","filterCommandCategory","idCommandCategory","filterCommands","commandsInCategory","command","sortedCommands","sort","localeCompare","filterCommand","idCommandPrevious","Event","hookupFilterCommand","attrIdCommand","hookupFilterLocation","attrIdLocation","callbackLoadTableContent","table","getTableMain","bodyTable","rowsJson","flagRows","every","display_order","loadRowTable","rowJson","getAndLoadFilteredTableContentSinglePageApp","hookupButtonCancel","records","getTableRecords","formElement","idTextareaConfirm","callSaveTableContent","flagStatus","flagSuccess","_verbose","flagMessage","_this9","dirtyOnly","record","getJsonRow","_this10","_this11","handleClickAddRowTable","_rowBlank","attrIdRowObject","countRows","initialiseRowNew","prepend","postInitialiseRowNewCallback","_this12","cacheRowBlank","selectorRowNew","flagRowNew","rowBlankTemp","initialiseSliderDisplayOrderRowNew","slidersDisplayOrder","flagDisplayOrder","flagSlider","maxDisplayOrder","slider","sliderDisplayOrder","hookupSlidersDisplayOrderTable","selectorDisplayOrder","hookupChangeHandlerTableCells","inputSelector","_this13","handleChangeNestedElementCellTable","input","wasDirtyParentRows","getAllIsDirtyRowsInParentTree","wasDirtyElement","isDirtyElement","cascadeChangedIsDirtyNestedElementCellTable","isDirtyRow","wasDirtyRow","shift","hookupChangeHandlerTableCellsWhenNotCollapsed","_this14","hookupFieldsCodeTable","flagCode","hookupFieldsNameTable","hookupFieldsDescriptionTable","flagDescription","hookupFieldsNotesTable","flagNotes","hookupFieldsActive","_this15","flagTable","handleClickRowNew","selectorButton","selectorButtonDelete","selectorButtonUndelete","hookupButtonsRowDelete","hookupButtonsRowUndelete","_this16","changeHandler","handleClickButtonRowDelete","changeEvent","changeElement","_this17","valuePrevious","wasDirty","buttonAddTemplate","idContainerTemplateElements","flagAdd","buttonAdd","replaceWith","_this18","handleClickButtonRowUndelete","_this19","buttonDeleteTemplate","buttonDelete","hookupTdsAccessLevel","hookupTableCellDdlPreviews","flagAccessLevel","accessLevels","fieldFlag","optionList","_this20","cellSelector","ddlHookup","ddlSelector","handleClickTableCellDdlPreview","_this21","optionObjectList","_this22","idSelected","td","ddl","optionObjectJson","toggleColumnCollapsed","flagColumn","isCollapsed","toggleColumnHasClassnameFlag","toggleColumnHeaderCollapsed","hookupFieldsCommandCategory","_this23","idTable","filterCommandCategories","hookupCommandCategoryDdls","_this24","handleChangeCommandCategoryDdl","ddlCategory","idCommandCategoryRowOld","getIdCommandCategoryRow","idCommandCategoryRowNew","idCommandCategoryFilter","getIdCommandCategoryFilter","tdCommand","ddlCommand","hookupFieldsCommand","_this25","parentTr","tdCommandCategory","idCommandCategoryRow","filterCommandList","handleChangeCommandDdl","idCommandNew","getIdCommandRow","commandNew","divCommandCategory","ddlCommandCategory","elementCommandCategory","commandCategoryFilter","commandFilter","valueCurrentCommandCategoryFilter","valueCurrentCommandFilter","getHasCommandCategoryFilter","elementCommand","getIdCommandFilter","idCommand","getHasCommandFilter","idCommandFilter","hookupFieldsDog","flagDog","filterDogs","getIdDogRow","elementDog","columnFlag","isRequiredFlag","classnameFlag","columnTh","columnThHasFlag","toggleColumnHeaderHasClassnameFlag","isDirtyMainTable","DogMixinPage","pageCurrent","hookupLocalStorageDog","DogTableMixinPage","_DogMixinPage","hookupTable","hookupFieldsLocation","filterLocations","PageDogCommandCategories","_TableBasePage","dogMixin","inputCode","inputName","buttonActive","jsonRow","hashPageDogCommandCategories","PageDogCommands","inputHandSignalDefaultDescription","flagHandSignalDefaultDescription","inputCanHaveButton","flagCanHaveButton","inputNotes","newRows","newestRow","clickableElementsSelector","clickableElement","click","hookupTextareasHandSignalDefaultDescription","hookupFieldsCanHaveButton","hashPageDogCommands","PageDogDogCommandLinks","inputHandSignalDescription","flagHandSignalDescription","attrIdDogCommandLink","hookupTextareasHandSignalDescription","hashPageDogDogCommandLinks","PageDogDogs","saveDogs","inputAppearance","flagAppearance","inputMassKg","flagMassKg","hookupFieldsAppearance","hookupFieldsMassKg","hashPageDogDogs","PageDogLocations","flagLocationParent","getIdLocationParentRow","elementLocationParent","hookupFieldsLocationParent","idLocationRow","hashPageDogLocations","PageDogButtonIcons","attrIdButtonIcon","flagImage","getIdImageRow","elementImage","hookupFieldsImage","buttonicons","hashPageDogButtonIcons","PageDogCommandButtonLinks","hookupFilterButtonShape","hookupFilterColour","hookupFilterButtonIcon","attrIdButtonShape","attrIdColour","attrIdCommandButtonLink","hookupFieldsButtonShape","hookupFieldsColour","hookupFieldsButtonIcon","flagButtonShape","filterButtonShapes","flagColour","filterColours","filterButtonIcons","hashPageDogCommandButtonLinks","_rowBlankDistraction","_rowBlankAssessmentCommandModalityLink","PageDogAssessment","idTableAssessment","inputWeather","flagWeather","inputLightingLevel","flagLightingLevel","inputTemeratureCelcius","flagTemperatureCelcius","inputLocation","inputUserHandler","flagUserHandler","idAssessment","attrIdWeather","attrIdLightingLevel","flagDistraction","getDirtyDistractions","flagAssessmentCommandModalityLink","getDirtyAssessmentCommandModalityLinks","dirtyRows","idTableDistractions","dirtyRow","inputDistractionType","distractionType","inputIntensityLevelEmotional","intensityLevelEmotional","inputIntensityLevelScent","intensityLevelScent","inputIntensityLevelSight","intensityLevelSight","inputIntensityLevelSound","intensityLevelSound","inputIntensityLevelTouch","intensityLevelTouch","inputQuantity","quantity","inputProximityMetres","proximityMetres","notes","active","dirtyDistractions","indexRow","_dirtyDistractions$pu","flagDistractionType","flagDistractionIntensityLevelEmotional","flagDistractionIntensityLevelScent","flagDistractionIntensityLevelSight","flagDistractionIntensityLevelSound","flagDistractionIntensityLevelTouch","flagQuantity","flagProximityMetres","flagIcon","attrIdDistraction","attrIdDistractionType","idTableAssessmentCommandModalityLinks","idAssessmentCommandModalityLink","inputCommand","inputCommandModality","commandModality","inputBribe","bribe","inputDistanceFromHandler","distanceFromhandler","inputIsInHearingRangeOfHandler","isInHearingRangeOfHandler","inputIsInScentRangeOfHandler","isInScentRangeOfHandler","inputIsInSightOfHandler","isInSightOfHandler","inputIsOnLead","isOnLead","dirtyLinks","_dirtyLinks$push","attrIdAssessmentCommandModalityLink","flagCommandModality","flagBribe","flagDistanceFromHandlerMetres","flagIsInHearingRangeOfHandler","flagIsInScentRangeOfHandler","flagIsInSightOfHandler","flagIsOnLead","attrIdCommandModality","attrIdBribe","flagAssessmentResponse","getDirtyAssessmentResponses","rowAssessmentCommandModalityLink","idTableAssessmentResponses","inputResponseQualityMetric","responseQualityMetric","inputObedienceLevel","obedienceLevel","inputValueMeasured","valueMeasured","dirtyResponses","flagResponseQualityMetric","flagObedienceLevel","flagValueMeasured","attrIdAssessmentResponse","attrIdResponseQualityMetric","attrIdObedienceLevel","assessment","filterAssessment","hookupTableAssessmentHeader","hookupTableDistractions","hookupTableAssessmentCommandModalityLinks","hookupTableAssessmentFieldWeather","hookupTableAssessmentFieldLightingLevel","hookupTableAssessmentFieldTemperature","hookupTableAssessmentFieldLocation","hookupTableAssessmentFieldUserHandler","hookupTableAssessmentFieldNotes","filterWeathers","filterLightingLevels","filterUserHandlers","hookupTableDistractionsFieldsDistractionType","hookupTableDistractionsFieldsIntensityLevelEmotional","hookupTableDistractionsFieldsIntensityLevelScent","hookupTableDistractionsFieldsIntensityLevelSight","hookupTableDistractionsFieldsIntensityLevelSound","hookupTableDistractionsFieldsIntensityLevelTouch","hookupTableDistractionsFieldsQuantity","hookupTableDistractionsFieldsProximityMetres","hookupTableDistractionsFieldsNotes","hookupTableDistractionsFieldsActive","filterDistractionTypes","filterDistractionIntensityLevels","handleClickAddRowTableDistractions","postInitialiseDistractionRowNewCallback","hookupTableAssessmentCommandModalityLinksFieldsCommandCategory","hookupTableAssessmentCommandModalityLinksFieldsCommand","hookupTableAssessmentCommandModalityLinksFieldsCommandModality","hookupTableAssessmentCommandModalityLinksFieldsBribe","hookupTableAssessmentCommandModalityLinksFieldsDistanceFromHandlerMetres","hookupTableAssessmentCommandModalityLinksFieldsIsInHearingRangeOfHandler","hookupTableAssessmentCommandModalityLinksFieldsIsInScentRangeOfHandler","hookupTableAssessmentCommandModalityLinksFieldsIsInSightOfHandler","hookupTableAssessmentCommandModalityLinksFieldsIsOnLead","hookupTableAssessmentCommandModalityLinksFieldsTrialCount","hookupTableAssessmentCommandModalityLinksFieldsNotes","hookupTableAssessmentCommandModalityLinksFieldsResponses","hookupTableAssessmentCommandModalityLinksFieldsActive","filterCommandModalities","filterBribes","parentTd","responsesTable","flagTableMain","headRow","thResponseQualityMetric","thObedienceLevel","thValueMeasured","thNotes","thActive","templateAddIcon","assessmentCommandModalityLinks","link","assessmentCommandModalityLink","responses","responseKey","createNewRowTableAssessmentResponses","outerHTML","responseRows","hookupTablesAssessmentResponses","hookupTableAssessmentResponsesFieldsResponseQualityMetric","hookupTableAssessmentResponsesFieldsObedienceLevel","hookupTableAssessmentResponsesFieldsValueMeasured","hookupTableAssessmentResponsesFieldsNotes","hookupTableAssessmentResponsesFieldsActive","filterResponseQualityMetrics","filterObedienceLevels","handleClickAddRowTableAssessmentResponses","tableResponses","postInitialiseAssessmentResponseRowNewCallback","countActiveRows","divTrialCount","flagTrialCount","handleClickAddRowTableAssessmentCommandModalityLinks","postInitialiseAssessmentCommandModalityLinkRowNewCallback","isNew","tdResponseQualityMetric","flagDdlPreview","divResponseQualityMetric","idResponseQualityMetric","tdObedienceLevel","divObedienceLevel","idObedienceLevel","tdValueMeasured","tdNotes","tdActive","templateDeleteIcon","hashPageDogAssessment","PageDogAssessments","hookupFilterWeather","hookupFilterLightingLevel","hookupFilterHandler","inputTemperatureCelcius","getIdWeatherRow","getIdLightingLevelRow","getIdLocationRow","getIdUserHandlerRow","elementWeather","elementLightingLevel","elementLocation","elementUserHandler","flagDetail","detailButton","hookupFieldsDetail","hookupFieldsWeather","hookupFieldsLightingLevel","hookupFieldsTemperature","hookupFieldsHandler","hashPageDogAssessments","PageDogCalendarEntries","saveCalendarEntries","attrIdCalendarEntry","hashPageDogCalendarEntries","PageAccessibilityReport","hashPageAccessibilityReport","PageAccessibilityStatement","hashPageAccessibilityStatement","PageLicense","hashPageLicense","PagePrivacyPolicy","hashPagePrivacyPolicy","PageRetentionSchedule","hashPageDataRetentionSchedule","PageUser","flagCard","inputFirstname","flagFirstname","inputSurname","flagSurname","inputEmail","flagEmail","divRole","flagRole","idUser","attrIdUser","attrIdUserAuth0","flagIsEmailVerified","attrIdCompany","company","flagIsSuperUser","flagCanAdminDog","flagCanAdminUser","attrIdRole","hookupFieldsFirstname","hookupFieldsSurname","hookupFieldsEmail","hashPageUserAccount","PageUsers","hookupFilterCompany","inputRole","hookupFieldsRole","filterRoles","hashPageUserAccounts","PageUserCompany","hashPageUserCompany","PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients","PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess","Router","pages","module","hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess","routes","loadPage","hashPage","PageClass","getClassPageFromHash","currentPage","pageJson","handlePopState","loadPageCurrent","history","pushState","navigateToUrl","appendHistory","loadPageBodyFromResponse","App","dom","setupEventListeners","handleGlobalClick","initPageCurrent","app","domReady","readyState"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/pages/blog/article.js b/static/js/pages/blog/DEPRECATED_article.js similarity index 89% rename from static/js/pages/blog/article.js rename to static/js/pages/blog/DEPRECATED_article.js index a7c93c8..cf15ab7 100644 --- a/static/js/pages/blog/article.js +++ b/static/js/pages/blog/DEPRECATED_article.js @@ -5,7 +5,7 @@ import BasePage from "../base.js"; export default class PageBlogArticle extends BasePage { - static hash = hashPageBlogHome; + static hash = null; constructor(router) { super(router); diff --git a/static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js b/static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js new file mode 100644 index 0000000..ed424b1 --- /dev/null +++ b/static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js @@ -0,0 +1,25 @@ + +// internal +// import BasePage from "../base.js"; +import PageBlogHome from "./home.js"; +// external + + +export default class PageBlogBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients extends PageBlogHome { + static hash = hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients; + + constructor(router) { + super(router); + } + + initialize() { + this.sharedInitialize(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + + leave() { + super.leave(); + } +} + diff --git a/static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_solo_to_multi_trainer_success.js b/static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_solo_to_multi_trainer_success.js new file mode 100644 index 0000000..f276594 --- /dev/null +++ b/static/js/pages/blog/article_how_to_scale_your_dog_training_business_from_solo_to_multi_trainer_success.js @@ -0,0 +1,25 @@ + +// internal +// import BasePage from "../base.js"; +import PageBlogHome from "./home.js"; +// external + + +export default class PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess extends PageBlogHome { + static hash = hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess; + + constructor(router) { + super(router); + } + + initialize() { + this.sharedInitialize(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + + leave() { + super.leave(); + } +} + diff --git a/static/js/pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js b/static/js/pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js new file mode 100644 index 0000000..ea9afc6 --- /dev/null +++ b/static/js/pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js @@ -0,0 +1,26 @@ + +// internal +// import BasePage from "../base.js"; +import PageBlogHome from "./home.js"; +// external + + +export default class PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress extends PageBlogHome { + static hash = hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress; + + constructor(router) { + super(router); + } + + initialize() { + this.sharedInitialize(); + // this.hookupButtonsNav(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + + leave() { + super.leave(); + } +} + diff --git a/static/js/pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js b/static/js/pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js new file mode 100644 index 0000000..3060b02 --- /dev/null +++ b/static/js/pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js @@ -0,0 +1,25 @@ + +// internal +// import BasePage from "../base.js"; +import PageBlogHome from "./home.js"; +// external + + +export default class PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 extends PageBlogHome { + static hash = hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025; + + constructor(router) { + super(router); + } + + initialize() { + this.sharedInitialize(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + + leave() { + super.leave(); + } +} + diff --git a/static/js/pages/blog/home.js b/static/js/pages/blog/home.js index 29ec736..65824da 100644 --- a/static/js/pages/blog/home.js +++ b/static/js/pages/blog/home.js @@ -14,6 +14,20 @@ export default class PageBlogHome extends BasePage { initialize() { this.sharedInitialize(); // this.hookupButtonsNav(); + this.hookupFormNewsletter(); + this.hookupButtonSubmitFormContactUs(); + } + + hookupButtonSubmitFormContactUs() { + const button = document.querySelector('form input[type="submit"]'); + button.classList.add(flagButton); + button.classList.add(flagButtonPrimary); + button.innerText = 'Subscribe Now'; + } + + hookupFormNewsletter() { + let submitButton = document.querySelector('#submit'); + submitButton.innerText = 'Subscribe Now'; } leave() { diff --git a/static/js/pages/blog/newsletter-success.js b/static/js/pages/blog/newsletter-success.js new file mode 100644 index 0000000..6058293 --- /dev/null +++ b/static/js/pages/blog/newsletter-success.js @@ -0,0 +1,16 @@ +// internal +import BasePage from "../base.js"; +// vendor +import { Altcha } from "../../vendor/altcha.js"; + +export default class PageBlogNewsletterSuccess extends BasePage { + static hash = hashPageBlogNewsletterSuccess; + + constructor(router) { + super(router); + } + + initialize() { + this.sharedInitialize(); + } +} diff --git a/static/js/router.js b/static/js/router.js index df67b1c..2e95961 100644 --- a/static/js/router.js +++ b/static/js/router.js @@ -8,6 +8,11 @@ import PageApplyFoundingPartner from './pages/core/apply-founding-partner.js'; import PageApplyFoundingPartnerSuccess from './pages/core/apply-founding-partner-success.js'; // Blog import PageBlogHome from './pages/blog/home.js'; +import PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients from './pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js'; +import PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess from './pages/blog/article_how_to_scale_your_dog_training_business_from_25_to_100_plus_clients.js'; +import PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress from './pages/blog/article_the_science_behind_dog_training_assessments_how_to_track_real_progress.js'; +import PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 from './pages/blog/article_why_every_professional_trainer_needs_a_command_dictionary_in_2025.js'; +import PageBlogNewsletterSuccess from './pages/blog/newsletter-success.js'; // Dog import PageDogHome from './pages/dog/home.js'; import PageDogCommandCategories from './pages/dog/command_categories.js'; @@ -50,6 +55,11 @@ export default class Router { this.pages[hashPageApplyFoundingPartnerSuccess] = { name: 'PageApplyFoundingPartnerSuccess', module: PageApplyFoundingPartnerSuccess }; // Blog this.pages[hashPageBlogHome] = { name: 'PageBlogHome', module: PageBlogHome }; + this.pages[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients] = { name: 'PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients', module: PageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients }; + this.pages[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess] = { name: 'PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess', module: PageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess }; + this.pages[hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress] = { name: 'PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress', module: PageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress }; + this.pages[hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025] = { name: 'PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025', module: PageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 }; + this.pages[hashPageBlogNewsletterSuccess] = { name: 'PageBlogNewsletterSuccess', module: PageBlogNewsletterSuccess }; // Dog this.pages[hashPageDogHome] = { name: 'PageDogHome', module: PageDogHome }; this.pages[hashPageDogCommandCategories] = { name: 'PageDogCommands', module: PageDogCommandCategories }; @@ -83,6 +93,11 @@ export default class Router { this.routes[hashPageApplyFoundingPartnerSuccess] = (isPopState = false) => this.navigateToHash(hashPageApplyFoundingPartnerSuccess, isPopState); // Blog this.routes[hashPageBlogHome] = (isPopState = false) => this.navigateToHash(hashPageBlogHome, isPopState); + this.routes[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients, isPopState); + this.routes[hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess, isPopState); + this.routes[hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress, isPopState); + this.routes[hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025] = (isPopState = false) => this.navigateToHash(hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025, isPopState); + this.routes[hashPageBlogNewsletterSuccess] = (isPopState = false) => this.navigateToHash(hashPageBlogNewsletterSuccess, isPopState); // Dog this.routes[hashPageDogHome] = (isPopState = false) => this.navigateToHash(hashPageDogHome, isPopState); this.routes[hashPageDogCommandCategories] = (isPopState = false) => this.navigateToHash(hashPageDogCommandCategories, isPopState); diff --git a/templates/layouts/_shared_header.html b/templates/layouts/_shared_header.html index f3b3259..4f1658b 100644 --- a/templates/layouts/_shared_header.html +++ b/templates/layouts/_shared_header.html @@ -21,7 +21,7 @@ Home
- Blog + Blog
Contact diff --git a/templates/layouts/_shared_scripts.html b/templates/layouts/_shared_scripts.html index b371f92..4959eaa 100644 --- a/templates/layouts/_shared_scripts.html +++ b/templates/layouts/_shared_scripts.html @@ -131,12 +131,14 @@ var hashPageAdminHome = "{{ model.HASH_PAGE_ADMIN_HOME }}"; var hashPageApplyFoundingPartner = "{{ model.HASH_PAGE_APPLY_FOUNDING_PARTNER }}"; var hashPageApplyFoundingPartnerSuccess = "{{ model.HASH_PAGE_APPLY_FOUNDING_PARTNER_SUCCESS }}"; - var hashPageBlogArticleHowToScaleYourDogTrainingBusiness = "{{ model.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS }}"; - var hashPageBlogArticleTheScienceBehindDogTrainingAssessments = "{{ model.HASH_PAGE_BLOG_ARTICLE_THE_SCIENCE_BEHIND_DOG_TRAINING_ASSESSMENTS }}"; - var hashPageBlogArticleWhyEveryTrainerNeedsACommandDictionary = "{{ model.HASH_PAGE_BLOG_ARTICLE_WHY_EVERY_TRAINER_NEEDS_A_COMMAND_DICTIONARY }}"; + var hashPageBlogArticleHowToScaleYourDogTrainingBusinessFrom25To100PlusClients = "{{ model.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_25_TO_100_PLUS_CLIENTS }}"; + var hashPageBlogArticleHowToScaleYourDogTrainingBusinessFromSoloToMultiTrainerSuccess = "{{ model.HASH_PAGE_BLOG_ARTICLE_HOW_TO_SCALE_YOUR_DOG_TRAINING_BUSINESS_FROM_SOLO_TO_MULTI_TRAINER_SUCCESS }}"; + var hashPageBlogArticleTheScienceBehindDogTrainingAssessmentsHowToTrackRealProgress = "{{ model.HASH_PAGE_BLOG_ARTICLE_THE_SCIENCE_BEHIND_DOG_TRAINING_ASSESSMENTS_HOW_TRACK_REAL_PROGRESS }}"; + var hashPageBlogArticleWhyEveryProfessionalTrainerNeedsACommandDictionaryIn2025 = "{{ model.HASH_PAGE_BLOG_ARTICLE_WHY_EVERY_PROFESSIONAL_TRAINER_NEEDS_A_COMMAND_DICTIONARY_IN_2025 }}"; var hashPageBlogCategoryMarketingAndGrowth = "{{ model.HASH_PAGE_BLOG_CATEGORY_MARKETING_AND_GROWTH }}"; var hashPageBlogCategoryTrainingTechniques = "{{ model.HASH_PAGE_BLOG_CATEGORY_TRAINING_TECHNIQUES }}"; var hashPageBlogHome = "{{ model.HASH_PAGE_BLOG_HOME }}"; + var hashPageBlogNewsletterSuccess = "{{ model.HASH_PAGE_BLOG_NEWSLETTER_SUCCESS }}"; var hashPageContact = "{{ model.HASH_PAGE_CONTACT }}"; var hashPageContactSuccess = "{{ model.HASH_PAGE_CONTACT_SUCCESS }}"; var hashPageDataRetentionSchedule = "{{ model.HASH_PAGE_DATA_RETENTION_SCHEDULE }}"; diff --git a/templates/layouts/layout_blog_article.html b/templates/layouts/layout_blog_article.html index 2e442cc..67a094f 100644 --- a/templates/layouts/layout_blog_article.html +++ b/templates/layouts/layout_blog_article.html @@ -3,7 +3,7 @@ {% include 'layouts/_shared_head.html' %} - + {% block page_head %}{% endblock %}
@@ -11,13 +11,7 @@ {# filename='images/fetch-metrics-logo-and-company-name-radial-0.5-link-visited-LQ.webp', 'images/Wisp_LQ.webp' #}
{% include 'layouts/_shared_header.html' %} @@ -25,7 +19,7 @@
- +
- -

How to Scale Your Dog Training Business from 25 to 100+ Clients

- - + {% block article_header %}{% endblock %}
- - + +
-

Growing a dog training business from 25 to 100+ clients isn't just about finding more customersβ€”it's about building systems that can handle increased demand while maintaining the quality that made you successful in the first place.

- -

After working with over 200 professional trainers across the UK, I've identified the key strategies that separate trainers who successfully scale from those who plateau at 20-30 clients. Let's dive into the proven framework that works.

- -

The Scaling Mindset Shift

- -

The biggest obstacle to scaling isn't finding more clientsβ€”it's the mental shift from "doing everything yourself" to "building systems that work without you." Many trainers fear that delegating or systematizing will compromise their training quality, but the opposite is true.

- -
-

πŸ’‘ Key Insight

-

Successful trainers at 100+ clients spend 60% of their time on systems and business development, and only 40% on direct training. Compare this to trainers stuck at 25 clients who spend 90% of their time on direct training.

-
- -

The Four Pillars of Scalable Training Businesses

- -

1. Standardized Training Protocols

- -

Create consistent, repeatable training methods that produce reliable results regardless of which trainer delivers them. This includes:

- -
    -
  • Standardized command dictionary with hand signals
  • -
  • Assessment protocols for new dogs
  • -
  • Progress tracking metrics that all trainers use
  • -
  • Client communication templates
  • -
- -

When every trainer follows the same protocols, clients receive consistent experiences, and you can confidently guarantee results.

- -

2. Efficient Client Management Systems

- -

Manual scheduling, paper records, and email-based communication become impossible bottlenecks beyond 30 clients. Successful scaling requires:

- -
    -
  • Automated scheduling and booking systems
  • -
  • Digital progress tracking and reporting
  • -
  • Streamlined payment processing
  • -
  • Client portal for homework and progress updates
  • -
- -
- "Moving to a digital management system saved me 15 hours per week in admin time. That's 15 hours I can spend training dogs or developing my business." - Mark Thompson, Professional Dog Trainer, London -
- -

3. Strategic Team Building

- -

You can't personally train 100+ dogs. Building a team doesn't mean losing controlβ€”it means multiplying your impact:

- -
    -
  • Hire trainers who share your philosophy and methods
  • -
  • Create comprehensive training programs for new team members
  • -
  • Implement quality control and feedback systems
  • -
  • Develop clear career progression paths
  • -
- -

4. Data-Driven Decision Making

- -

Growing businesses need metrics to guide decisions. Track these essential KPIs:

- -
    -
  • Client acquisition cost and lifetime value
  • -
  • Training success rates by program type
  • -
  • Trainer utilization and efficiency metrics
  • -
  • Client satisfaction and retention rates
  • -
- -

The Scaling Timeline: What to Expect

- -

Based on our analysis of successful scaling stories, here's a realistic timeline:

- -
    -
  • Months 1-3: Systems setup and process documentation
  • -
  • Months 4-6: First hire and team training
  • -
  • Months 7-12: Marketing acceleration and capacity building
  • -
  • Year 2: Team expansion and market dominance
  • -
- -
-

⚠️ Common Pitfall

-

Many trainers try to scale too quickly without proper systems. This leads to quality issues, stressed teams, and ultimately business failure. Take time to build strong foundations before aggressive growth.

-
- -

Technology: Your Scaling Secret Weapon

- -

The right technology stack can automate 70% of administrative tasks, freeing you to focus on training and growth. Essential tools include:

- -
    -
  • Comprehensive business management software
  • -
  • Online booking and payment systems
  • -
  • Progress tracking and reporting tools
  • -
  • Client communication platforms
  • -
- -

While there are general business tools available, purpose-built solutions for dog training businesses offer specialized features like command tracking, behavioral assessments, and training-specific reporting that generic tools can't match.

- -

Pricing Strategy for Scale

- -

As you scale, your pricing strategy must evolve. Consider these approaches:

- -
    -
  • Package-based pricing: Reduces decision fatigue and increases average transaction value
  • -
  • Tiered service levels: Premium, standard, and basic options to capture different market segments
  • -
  • Group training programs: Higher profit margins and efficient trainer utilization
  • -
  • Maintenance programs: Recurring revenue for long-term client relationships
  • -
- -

Action Steps to Start Scaling Today

- -

Ready to begin your scaling journey? Here's your immediate action plan:

- -
    -
  1. Document your current training protocols and identify inconsistencies
  2. -
  3. Audit your current client management process for bottlenecks
  4. -
  5. Research business management software options
  6. -
  7. Create job descriptions for your first hire
  8. -
  9. Develop standard operating procedures for all client interactions
  10. -
- -

Remember, scaling is a marathon, not a sprint. Focus on building strong systems that can support sustainable growth, and you'll join the ranks of trainers successfully managing 100+ clients while maintaining the quality that makes your business special.

- -
-

πŸš€ Ready to Scale?

-

If you're serious about scaling your dog training business, consider investing in purpose-built business management software. The time you save on administration can be reinvested in growth activities that actually move your business forward.

-
+ {% block article_body %}{% endblock %}
@@ -270,15 +112,42 @@
- +
@@ -315,26 +185,6 @@