import { r as registerInstance, c as createEvent, h, a as getElement } from './index-ytAlchvh.js';

/**
 * @param {HTMLElement} element DOM element for component instantiation and scope
 * @param {Object} options
 * @param {String} options.format dateAdapter object with functions
 */
class Datepicker {
  /**
   * @static
   * Shorthand for instance creation and initialisation.
   *
   * @param {HTMLElement} root DOM element for component instantiation and scope
   *
   * @return {Datepicker} An instance of Datepicker.
   */
  static autoInit(root, { DATEPICKER: defaultOptions = {} } = {}) {
    const datepicker = new Datepicker(root, defaultOptions);
    datepicker.init();
    root.ECLDatepicker = datepicker;
    return datepicker;
  }

  constructor(element, { format = '', localization = {} } = {}) {
    // Check element
    if (!element || element.nodeType !== Node.ELEMENT_NODE) {
      throw new TypeError(
        'DOM element should be given to initialize this widget.',
      );
    }

    this.element = element;

    // Options
    this.picker = null;
    this.format = format;
    this.localization = {
      ...Datepicker.defaults.localization,
      ...localization,
    };

    // Bind `this` for use in callbacks
    this.normalizeDate = this.normalizeDate.bind(this);
  }

  /**
   * Initialise component.
   */
  init() {
    if (!customElements.get('duet-date-picker')) {
      throw new TypeError(
        'Duet datepicker is not available. Make sure to include the duet datepicker js in your project if you want to use the ECL datepicker',
      );
    }
    if (!ECL) {
      throw new TypeError('Called init but ECL is not present');
    }
    ECL.components = ECL.components || new Map();

    Datepicker.applyCustomizations = () => {
      this.picker = this.element.querySelector('duet-date-picker');

      // Convert ISO 8601 format YYYY-MM-DD into EU format DD-MM-YYYY
      const DEFAULT_DATE_ADAPTER = {
        parse(value = '', createDate) {
          const DATE_FORMAT_EU = /^(\d{2})-(\d{2})-(\d{4})$/;
          const matches = value.match(DATE_FORMAT_EU);
          if (matches) {
            return createDate(matches[3], matches[2], matches[1]);
          }
        },
        format(date) {
          const pad = (n) => String(n).padStart(2, '0');
          return `${pad(date.getDate())}-${pad(date.getMonth() + 1)}-${date.getFullYear()}`;
        },
      };

      this.direction = getComputedStyle(this.element).direction;

      if (!this.picker) return;

      if (!this.picker.identifier) {
        this.picker.identifier = `ecl-datepicker-${Math.random().toString(36).substr(2, length)}`;
      }

      if (this.element.dataset.value) {
        this.picker.value = this.normalizeDate(this.element.dataset.value);
      }

      this.picker.direction = this.direction === 'ltr' ? 'right' : 'left';

      this.picker.localization = this.localization;

      if (this.element.dataset.placeholder) {
        this.picker.localization.placeholder = this.element.dataset.placeholder;
      }

      // Prevent errors if a simple string is used in this option
      this.picker.dateAdapter =
        this.format && typeof this.format === 'object'
          ? this.format
          : DEFAULT_DATE_ADAPTER;
    };

    setTimeout(Datepicker.applyCustomizations, 50);

    // Set ecl initialized attribute
    this.element.setAttribute('data-ecl-auto-initialized', 'true');
    ECL.components.set(this.element, this);

    return this.picker;
  }

  /**
   * Normalize the default value when it contains extra info.
   */
  normalizeDate(value) {
    if (typeof value !== 'string') return value;
    const match = value.match(/(\d{4})-(\d{2})-(\d{2})/);
    if (!match) return '';

    // return YYYY-MM-DD
    return `${match[1]}-${match[2]}-${match[3]}`;
  }

  /**
   * Destroy component.
   */
  destroy() {
    if (this.element) {
      this.element.removeAttribute('data-ecl-auto-initialized');
      ECL.components.delete(this.element);
    }
  }
}

Datepicker.defaults = {
  localization: {
    previousMonth: 'Previous Month',
    nextMonth: 'Next Month',
    dayNames: [
      'Sunday',
      'Monday',
      'Tuesday',
      'Wednesday',
      'Thursday',
      'Friday',
      'Saturday',
    ],
    months: [
      'January',
      'February',
      'March',
      'April',
      'May',
      'June',
      'July',
      'August',
      'September',
      'October',
      'November',
      'December',
    ],
    weekdays: [
      'Sunday',
      'Monday',
      'Tuesday',
      'Wednesday',
      'Thursday',
      'Friday',
      'Saturday',
    ],
    weekdaysShort: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
    monthNames: [
      'January',
      'February',
      'March',
      'April',
      'May',
      'June',
      'July',
      'August',
      'September',
      'October',
      'November',
      'December',
    ],
    monthNamesShort: [
      'Jan',
      'Feb',
      'Mar',
      'Apr',
      'May',
      'Jun',
      'Jul',
      'Aug',
      'Sep',
      'Oct',
      'Nov',
      'Dec',
    ],
    placeholder: 'DD-MM-YYYY',
    prevMonthLabel: 'Previous month',
    nextMonthLabel: 'Next month',
    monthSelectLabel: 'Month',
    yearSelectLabel: 'Year',
    closeLabel: 'Close window',
    calendarHeading: 'Choose a date',
    selectedDateMessage: 'Selected date is',
    buttonLabel: 'Choose date',
  },
};

const eclDatepickerEcCss = () => `.ecl-container{box-sizing:border-box;margin-inline-end:auto;margin-inline-start:auto;padding-inline-end:1rem;padding-inline-start:1rem;position:relative;width:100%}@media (min-width:480px){.ecl-container{padding-inline-end:1rem;padding-inline-start:1rem}}@media (min-width:768px){.ecl-container{padding-inline-end:1.5rem;padding-inline-start:1.5rem}}@media (min-width:996px){.ecl-container{padding-inline-end:1.5rem;padding-inline-start:1.5rem}}@media (min-width:1140px){.ecl-container{padding-inline-end:2rem;padding-inline-start:2rem}}@media (min-width:480px){.ecl-container{max-width:100%;width:768px}}@media (min-width:768px){.ecl-container{max-width:100%;width:996px}}@media (min-width:996px){.ecl-container{max-width:100%;width:1140px}}@media (min-width:1140px){.ecl-container{max-width:100%;width:1368px}}.ecl-row{box-sizing:border-box;display:flex;flex-wrap:wrap;margin-inline-end:-.5rem;margin-inline-start:-.5rem}@media (min-width:480px){.ecl-row{margin-inline-end:-.5rem;margin-inline-start:-.5rem}}@media (min-width:768px){.ecl-row{margin-inline-end:-.75rem;margin-inline-start:-.75rem}}@media (min-width:996px){.ecl-row{margin-inline-end:-.75rem;margin-inline-start:-.75rem}}@media (min-width:1140px){.ecl-row{margin-inline-end:-1rem;margin-inline-start:-1rem}}.ecl-no-gutters{margin-inline-end:0;margin-inline-start:0}.ecl-no-gutters>.ecl-col,.ecl-no-gutters>[class*=ecl-col-]{padding-inline-end:0;padding-inline-start:0}.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{box-sizing:border-box;min-height:1px;padding-inline-end:.5rem;padding-inline-start:.5rem;position:relative;width:100%}@media (min-width:480px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:.5rem;padding-inline-start:.5rem}}@media (min-width:768px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:.75rem;padding-inline-start:.75rem}}@media (min-width:996px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:.75rem;padding-inline-start:.75rem}}@media (min-width:1140px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:1rem;padding-inline-start:1rem}}.ecl-col-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-3{flex:0 0 25%;max-width:25%}.ecl-col-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-6{flex:0 0 50%;max-width:50%}.ecl-col-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-9{flex:0 0 75%;max-width:75%}.ecl-col-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-12{flex:0 0 100%;max-width:100%}.ecl-pull-0{right:auto}.ecl-pull-1{right:8.3333333333%}.ecl-pull-2{right:16.6666666667%}.ecl-pull-3{right:25%}.ecl-pull-4{right:33.3333333333%}.ecl-pull-5{right:41.6666666667%}.ecl-pull-6{right:50%}.ecl-pull-7{right:58.3333333333%}.ecl-pull-8{right:66.6666666667%}.ecl-pull-9{right:75%}.ecl-pull-10{right:83.3333333333%}.ecl-pull-11{right:91.6666666667%}.ecl-pull-12{right:100%}.ecl-push-0{left:auto}.ecl-push-1{left:8.3333333333%}.ecl-push-2{left:16.6666666667%}.ecl-push-3{left:25%}.ecl-push-4{left:33.3333333333%}.ecl-push-5{left:41.6666666667%}.ecl-push-6{left:50%}.ecl-push-7{left:58.3333333333%}.ecl-push-8{left:66.6666666667%}.ecl-push-9{left:75%}.ecl-push-10{left:83.3333333333%}.ecl-push-11{left:91.6666666667%}.ecl-push-12{left:100%}.ecl-offset-1{margin-inline-start:8.3333333333%}.ecl-offset-2{margin-inline-start:16.6666666667%}.ecl-offset-3{margin-inline-start:25%}.ecl-offset-4{margin-inline-start:33.3333333333%}.ecl-offset-5{margin-inline-start:41.6666666667%}.ecl-offset-6{margin-inline-start:50%}.ecl-offset-7{margin-inline-start:58.3333333333%}.ecl-offset-8{margin-inline-start:66.6666666667%}.ecl-offset-9{margin-inline-start:75%}.ecl-offset-10{margin-inline-start:83.3333333333%}.ecl-offset-11{margin-inline-start:91.6666666667%}@media (min-width:480px){.ecl-col-s-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-s-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-s-3{flex:0 0 25%;max-width:25%}.ecl-col-s-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-s-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-s-6{flex:0 0 50%;max-width:50%}.ecl-col-s-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-s-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-s-9{flex:0 0 75%;max-width:75%}.ecl-col-s-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-s-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-s-12{flex:0 0 100%;max-width:100%}.ecl-pull-s-0{right:auto}.ecl-pull-s-1{right:8.3333333333%}.ecl-pull-s-2{right:16.6666666667%}.ecl-pull-s-3{right:25%}.ecl-pull-s-4{right:33.3333333333%}.ecl-pull-s-5{right:41.6666666667%}.ecl-pull-s-6{right:50%}.ecl-pull-s-7{right:58.3333333333%}.ecl-pull-s-8{right:66.6666666667%}.ecl-pull-s-9{right:75%}.ecl-pull-s-10{right:83.3333333333%}.ecl-pull-s-11{right:91.6666666667%}.ecl-pull-s-12{right:100%}.ecl-push-s-0{left:auto}.ecl-push-s-1{left:8.3333333333%}.ecl-push-s-2{left:16.6666666667%}.ecl-push-s-3{left:25%}.ecl-push-s-4{left:33.3333333333%}.ecl-push-s-5{left:41.6666666667%}.ecl-push-s-6{left:50%}.ecl-push-s-7{left:58.3333333333%}.ecl-push-s-8{left:66.6666666667%}.ecl-push-s-9{left:75%}.ecl-push-s-10{left:83.3333333333%}.ecl-push-s-11{left:91.6666666667%}.ecl-push-s-12{left:100%}.ecl-offset-s-0{margin-inline-start:0}.ecl-offset-s-1{margin-inline-start:8.3333333333%}.ecl-offset-s-2{margin-inline-start:16.6666666667%}.ecl-offset-s-3{margin-inline-start:25%}.ecl-offset-s-4{margin-inline-start:33.3333333333%}.ecl-offset-s-5{margin-inline-start:41.6666666667%}.ecl-offset-s-6{margin-inline-start:50%}.ecl-offset-s-7{margin-inline-start:58.3333333333%}.ecl-offset-s-8{margin-inline-start:66.6666666667%}.ecl-offset-s-9{margin-inline-start:75%}.ecl-offset-s-10{margin-inline-start:83.3333333333%}.ecl-offset-s-11{margin-inline-start:91.6666666667%}}@media (min-width:768px){.ecl-col-m-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-m-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-m-3{flex:0 0 25%;max-width:25%}.ecl-col-m-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-m-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-m-6{flex:0 0 50%;max-width:50%}.ecl-col-m-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-m-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-m-9{flex:0 0 75%;max-width:75%}.ecl-col-m-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-m-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-m-12{flex:0 0 100%;max-width:100%}.ecl-pull-m-0{right:auto}.ecl-pull-m-1{right:8.3333333333%}.ecl-pull-m-2{right:16.6666666667%}.ecl-pull-m-3{right:25%}.ecl-pull-m-4{right:33.3333333333%}.ecl-pull-m-5{right:41.6666666667%}.ecl-pull-m-6{right:50%}.ecl-pull-m-7{right:58.3333333333%}.ecl-pull-m-8{right:66.6666666667%}.ecl-pull-m-9{right:75%}.ecl-pull-m-10{right:83.3333333333%}.ecl-pull-m-11{right:91.6666666667%}.ecl-pull-m-12{right:100%}.ecl-push-m-0{left:auto}.ecl-push-m-1{left:8.3333333333%}.ecl-push-m-2{left:16.6666666667%}.ecl-push-m-3{left:25%}.ecl-push-m-4{left:33.3333333333%}.ecl-push-m-5{left:41.6666666667%}.ecl-push-m-6{left:50%}.ecl-push-m-7{left:58.3333333333%}.ecl-push-m-8{left:66.6666666667%}.ecl-push-m-9{left:75%}.ecl-push-m-10{left:83.3333333333%}.ecl-push-m-11{left:91.6666666667%}.ecl-push-m-12{left:100%}.ecl-offset-m-0{margin-inline-start:0}.ecl-offset-m-1{margin-inline-start:8.3333333333%}.ecl-offset-m-2{margin-inline-start:16.6666666667%}.ecl-offset-m-3{margin-inline-start:25%}.ecl-offset-m-4{margin-inline-start:33.3333333333%}.ecl-offset-m-5{margin-inline-start:41.6666666667%}.ecl-offset-m-6{margin-inline-start:50%}.ecl-offset-m-7{margin-inline-start:58.3333333333%}.ecl-offset-m-8{margin-inline-start:66.6666666667%}.ecl-offset-m-9{margin-inline-start:75%}.ecl-offset-m-10{margin-inline-start:83.3333333333%}.ecl-offset-m-11{margin-inline-start:91.6666666667%}}@media (min-width:996px){.ecl-col-l-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-l-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-l-3{flex:0 0 25%;max-width:25%}.ecl-col-l-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-l-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-l-6{flex:0 0 50%;max-width:50%}.ecl-col-l-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-l-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-l-9{flex:0 0 75%;max-width:75%}.ecl-col-l-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-l-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-l-12{flex:0 0 100%;max-width:100%}.ecl-pull-l-0{right:auto}.ecl-pull-l-1{right:8.3333333333%}.ecl-pull-l-2{right:16.6666666667%}.ecl-pull-l-3{right:25%}.ecl-pull-l-4{right:33.3333333333%}.ecl-pull-l-5{right:41.6666666667%}.ecl-pull-l-6{right:50%}.ecl-pull-l-7{right:58.3333333333%}.ecl-pull-l-8{right:66.6666666667%}.ecl-pull-l-9{right:75%}.ecl-pull-l-10{right:83.3333333333%}.ecl-pull-l-11{right:91.6666666667%}.ecl-pull-l-12{right:100%}.ecl-push-l-0{left:auto}.ecl-push-l-1{left:8.3333333333%}.ecl-push-l-2{left:16.6666666667%}.ecl-push-l-3{left:25%}.ecl-push-l-4{left:33.3333333333%}.ecl-push-l-5{left:41.6666666667%}.ecl-push-l-6{left:50%}.ecl-push-l-7{left:58.3333333333%}.ecl-push-l-8{left:66.6666666667%}.ecl-push-l-9{left:75%}.ecl-push-l-10{left:83.3333333333%}.ecl-push-l-11{left:91.6666666667%}.ecl-push-l-12{left:100%}.ecl-offset-l-0{margin-inline-start:0}.ecl-offset-l-1{margin-inline-start:8.3333333333%}.ecl-offset-l-2{margin-inline-start:16.6666666667%}.ecl-offset-l-3{margin-inline-start:25%}.ecl-offset-l-4{margin-inline-start:33.3333333333%}.ecl-offset-l-5{margin-inline-start:41.6666666667%}.ecl-offset-l-6{margin-inline-start:50%}.ecl-offset-l-7{margin-inline-start:58.3333333333%}.ecl-offset-l-8{margin-inline-start:66.6666666667%}.ecl-offset-l-9{margin-inline-start:75%}.ecl-offset-l-10{margin-inline-start:83.3333333333%}.ecl-offset-l-11{margin-inline-start:91.6666666667%}}@media (min-width:1140px){.ecl-col-xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-xl-3{flex:0 0 25%;max-width:25%}.ecl-col-xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-xl-6{flex:0 0 50%;max-width:50%}.ecl-col-xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-xl-9{flex:0 0 75%;max-width:75%}.ecl-col-xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-xl-12{flex:0 0 100%;max-width:100%}.ecl-pull-xl-0{right:auto}.ecl-pull-xl-1{right:8.3333333333%}.ecl-pull-xl-2{right:16.6666666667%}.ecl-pull-xl-3{right:25%}.ecl-pull-xl-4{right:33.3333333333%}.ecl-pull-xl-5{right:41.6666666667%}.ecl-pull-xl-6{right:50%}.ecl-pull-xl-7{right:58.3333333333%}.ecl-pull-xl-8{right:66.6666666667%}.ecl-pull-xl-9{right:75%}.ecl-pull-xl-10{right:83.3333333333%}.ecl-pull-xl-11{right:91.6666666667%}.ecl-pull-xl-12{right:100%}.ecl-push-xl-0{left:auto}.ecl-push-xl-1{left:8.3333333333%}.ecl-push-xl-2{left:16.6666666667%}.ecl-push-xl-3{left:25%}.ecl-push-xl-4{left:33.3333333333%}.ecl-push-xl-5{left:41.6666666667%}.ecl-push-xl-6{left:50%}.ecl-push-xl-7{left:58.3333333333%}.ecl-push-xl-8{left:66.6666666667%}.ecl-push-xl-9{left:75%}.ecl-push-xl-10{left:83.3333333333%}.ecl-push-xl-11{left:91.6666666667%}.ecl-push-xl-12{left:100%}.ecl-offset-xl-0{margin-inline-start:0}.ecl-offset-xl-1{margin-inline-start:8.3333333333%}.ecl-offset-xl-2{margin-inline-start:16.6666666667%}.ecl-offset-xl-3{margin-inline-start:25%}.ecl-offset-xl-4{margin-inline-start:33.3333333333%}.ecl-offset-xl-5{margin-inline-start:41.6666666667%}.ecl-offset-xl-6{margin-inline-start:50%}.ecl-offset-xl-7{margin-inline-start:58.3333333333%}.ecl-offset-xl-8{margin-inline-start:66.6666666667%}.ecl-offset-xl-9{margin-inline-start:75%}.ecl-offset-xl-10{margin-inline-start:83.3333333333%}.ecl-offset-xl-11{margin-inline-start:91.6666666667%}}:root{--duet-color-button:var(--c-g-50,var(--c-p-5));--duet-font:Inter,arial,sans-serif;--duet-font-bold:600;--duet-color-surface:var(--cm-surface-inverted,#fff);--duet-color-border:var(--cm-border-grey-medium);--duet-color-text:var(--cm-on-surface-brand);--duet-color-primary:var(--cm-border-primary);--duet-font-normal:400;--duet-radius:4px;--duet-color-placeholder:var(--cm-on-surface-grey-medium);--duet-z-index:15}.ecl-datepicker{max-width:100%}.ecl-datepicker--s{width:100%}@media (min-width:480px){.ecl-datepicker--s{width:100%}}@media (min-width:768px){.ecl-datepicker--s{width:223px}}@media (min-width:996px){.ecl-datepicker--s{width:223px}}@media (min-width:1140px){.ecl-datepicker--s{width:252px}}.ecl-datepicker--m{width:100%}@media (min-width:480px){.ecl-datepicker--m{width:100%}}@media (min-width:768px){.ecl-datepicker--m{width:287px}}@media (min-width:996px){.ecl-datepicker--m{width:299px}}@media (min-width:1140px){.ecl-datepicker--m{width:347px}}.ecl-datepicker--l{width:100%}@media (min-width:480px){.ecl-datepicker--l{width:100%}}@media (min-width:768px){.ecl-datepicker--l{width:351px}}@media (min-width:996px){.ecl-datepicker--l{width:382px}}@media (min-width:1140px){.ecl-datepicker--l{width:442px}}.duet-date__input{font-family:Inter,arial,sans-serif;font-size:var(--fs-xs);height:2.75rem;line-height:var(--lh-xs);outline:0}@media (min-width:480px){.duet-date__input{font-size:var(--fs-s);line-height:var(--lh-s)}}.duet-date__input:hover{box-shadow:var(--sh-1)}.duet-date__input:focus-visible{border-color:var(--duet-color-primary);box-shadow:0 0 0 1px var(--duet-color-primary)}.duet-date__input[disabled]{background-color:var(--cm-surface-grey-low-0-transparent);border-color:var(--cm-border-grey-lowest);color:var(--cm-on-surface-grey);cursor:not-allowed;opacity:1}.ecl-datepicker[invalid] .duet-date__input{border-color:var(--ecl-color-error)}.duet-date__toggle,.ecl button.duet-date__toggle{background:#fff;border:0;border-radius:0;border-bottom-right-radius:var(--duet-radius);border-top-right-radius:var(--duet-radius);color:var(--duet-color-text);display:flex;min-height:auto;padding:0;width:2.75rem}.duet-date__toggle:before,.ecl button.duet-date__toggle:before{background-color:var(--cm-border-brand,var(--c-d));content:"";height:80%;left:-1px;position:absolute;top:10%;width:1px}.duet-date__toggle:hover,.duet-date__toggle[disabled],.ecl button.duet-date__toggle:hover,.ecl button.duet-date__toggle[disabled]{background:var(--duet-color-button);box-shadow:inset 1px 0 0 rgba(0,0,0,.1);color:var(--duet-color-text)}.duet-date__toggle[disabled],.ecl button.duet-date__toggle[disabled]{opacity:.5}.duet-date__toggle:focus-visible,.ecl button.duet-date__toggle:focus-visible{background:#fff;box-shadow:0 0 0 2px var(--duet-color-primary);color:var(--duet-color-text);outline:0}.duet-date__dialog-content{background-color:var(--cm-surface-inverted);border-radius:4px;border-width:0;box-shadow:var(--sh-2);color:var(--cm-on-surface-brand);margin-block-start:var(--s-s);padding-block-end:var(--s-m)}.duet-date__dialog-content .duet-date__select:focus-within{outline:0}.duet-date__dialog-content button.duet-date__next{margin-inline-start:var(--s-xs)}.duet-date__dialog-content button.duet-date__close,.duet-date__dialog-content button.duet-date__next,.duet-date__dialog-content button.duet-date__prev{background:var(--duet-color-button);border:0;border-radius:50%;color:var(--duet-color-text);line-height:100%;min-height:auto;min-width:0;outline:0;padding:0}.duet-date__dialog-content button.duet-date__close:focus-visible,.duet-date__dialog-content button.duet-date__next:focus-visible,.duet-date__dialog-content button.duet-date__prev:focus-visible{background:var(--duet-color-button);border:0;color:var(--duet-color-text);outline:0;padding:0}.duet-date__dialog-content button.duet-date__close:hover,.duet-date__dialog-content button.duet-date__next:hover,.duet-date__dialog-content button.duet-date__prev:hover{background:var(--duet-color-button);color:var(--duet-color-text)}.duet-date__dialog-content button.duet-date__close:hover:focus,.duet-date__dialog-content button.duet-date__next:hover:focus,.duet-date__dialog-content button.duet-date__prev:hover:focus{box-shadow:0 0 0 2px var(--duet-color-primary)}.duet-date__dialog-content button.duet-date__close svg,.duet-date__dialog-content button.duet-date__next svg,.duet-date__dialog-content button.duet-date__prev svg{margin-block-start:1px}.duet-date__dialog-content .duet-date__header{margin-block-end:var(--s-xs)}.duet-date__dialog-content .duet-date__table{background-color:var(--cm-surface-inverted);border-collapse:initial;border-spacing:0}.duet-date__dialog-content .duet-date__table th{color:var(--cm-on-surface-brand)}.duet-date__dialog-content .duet-date__table .duet-date__table-header{padding-block-start:var(--s-xs)}.duet-date__dialog-content .duet-date__table .duet-date__day{background-color:var(--cm-surface-inverted,#fff);border-radius:50%;border-width:0;color:var(--cm-on-surface-brand);font-size:var(--fs-2xs);min-height:auto;min-width:auto;padding:0}.duet-date__dialog-content .duet-date__table .duet-date__day:hover{background-color:var(--cm-surface-grey-low);border-color:var(--cm-on-surface-brand,var(--c-d));border-width:1px;color:var(--cm-on-surface-brand)}.duet-date__dialog-content .duet-date__table .duet-date__day:focus,.duet-date__dialog-content .duet-date__table .duet-date__day:focus-visible{background-color:var(--cm-on-surface-primary);border-color:var(--duet-color-primary);border-width:2px;box-shadow:none;color:var(--cm-on-surface-inverted,#fff);outline:0;padding:0}.duet-date__dialog-content .duet-date__table .duet-date__day[aria-pressed=true]{background-color:var(--cm-on-surface-primary);border-radius:50%;box-shadow:none;color:var(--cm-on-surface-inverted,#fff);padding:0}.duet-date__dialog-content .duet-date__table .duet-date__day[aria-pressed=true]:before{background-color:var(--cm-surface-inverted,#fff)}.duet-date__dialog-content .duet-date__table .duet-date__day[aria-pressed=true]:hover{border-width:0}.duet-date__dialog-content .duet-date__table .duet-date__day.is-today{border-width:1px}.duet-date__dialog-content .duet-date__table .duet-date__day.is-today:hover{border-width:0}.ecl-form-group .ecl-datepicker{margin-top:.75rem}`;

const eclDatepickerEuCss = () => `.ecl-container{box-sizing:border-box;margin-inline-end:auto;margin-inline-start:auto;padding-inline-end:1rem;padding-inline-start:1rem;position:relative;width:100%}@media (min-width:480px){.ecl-container{padding-inline-end:1rem;padding-inline-start:1rem}}@media (min-width:768px){.ecl-container{padding-inline-end:1.5rem;padding-inline-start:1.5rem}}@media (min-width:996px){.ecl-container{padding-inline-end:1.5rem;padding-inline-start:1.5rem}}@media (min-width:1140px){.ecl-container{padding-inline-end:2rem;padding-inline-start:2rem}}@media (min-width:480px){.ecl-container{max-width:100%;width:768px}}@media (min-width:768px){.ecl-container{max-width:100%;width:996px}}@media (min-width:996px){.ecl-container{max-width:100%;width:1140px}}@media (min-width:1140px){.ecl-container{max-width:100%;width:1368px}}.ecl-row{box-sizing:border-box;display:flex;flex-wrap:wrap;margin-inline-end:-.5rem;margin-inline-start:-.5rem}@media (min-width:480px){.ecl-row{margin-inline-end:-.5rem;margin-inline-start:-.5rem}}@media (min-width:768px){.ecl-row{margin-inline-end:-.75rem;margin-inline-start:-.75rem}}@media (min-width:996px){.ecl-row{margin-inline-end:-.75rem;margin-inline-start:-.75rem}}@media (min-width:1140px){.ecl-row{margin-inline-end:-1rem;margin-inline-start:-1rem}}.ecl-no-gutters{margin-inline-end:0;margin-inline-start:0}.ecl-no-gutters>.ecl-col,.ecl-no-gutters>[class*=ecl-col-]{padding-inline-end:0;padding-inline-start:0}.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{box-sizing:border-box;min-height:1px;padding-inline-end:.5rem;padding-inline-start:.5rem;position:relative;width:100%}@media (min-width:480px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:.5rem;padding-inline-start:.5rem}}@media (min-width:768px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:.75rem;padding-inline-start:.75rem}}@media (min-width:996px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:.75rem;padding-inline-start:.75rem}}@media (min-width:1140px){.ecl-col-1,.ecl-col-10,.ecl-col-11,.ecl-col-12,.ecl-col-2,.ecl-col-3,.ecl-col-4,.ecl-col-5,.ecl-col-6,.ecl-col-7,.ecl-col-8,.ecl-col-9,.ecl-col-l-1,.ecl-col-l-10,.ecl-col-l-11,.ecl-col-l-12,.ecl-col-l-2,.ecl-col-l-3,.ecl-col-l-4,.ecl-col-l-5,.ecl-col-l-6,.ecl-col-l-7,.ecl-col-l-8,.ecl-col-l-9,.ecl-col-m-1,.ecl-col-m-10,.ecl-col-m-11,.ecl-col-m-12,.ecl-col-m-2,.ecl-col-m-3,.ecl-col-m-4,.ecl-col-m-5,.ecl-col-m-6,.ecl-col-m-7,.ecl-col-m-8,.ecl-col-m-9,.ecl-col-s-1,.ecl-col-s-10,.ecl-col-s-11,.ecl-col-s-12,.ecl-col-s-2,.ecl-col-s-3,.ecl-col-s-4,.ecl-col-s-5,.ecl-col-s-6,.ecl-col-s-7,.ecl-col-s-8,.ecl-col-s-9,.ecl-col-xl-1,.ecl-col-xl-10,.ecl-col-xl-11,.ecl-col-xl-12,.ecl-col-xl-2,.ecl-col-xl-3,.ecl-col-xl-4,.ecl-col-xl-5,.ecl-col-xl-6,.ecl-col-xl-7,.ecl-col-xl-8,.ecl-col-xl-9{padding-inline-end:1rem;padding-inline-start:1rem}}.ecl-col-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-3{flex:0 0 25%;max-width:25%}.ecl-col-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-6{flex:0 0 50%;max-width:50%}.ecl-col-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-9{flex:0 0 75%;max-width:75%}.ecl-col-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-12{flex:0 0 100%;max-width:100%}.ecl-pull-0{right:auto}.ecl-pull-1{right:8.3333333333%}.ecl-pull-2{right:16.6666666667%}.ecl-pull-3{right:25%}.ecl-pull-4{right:33.3333333333%}.ecl-pull-5{right:41.6666666667%}.ecl-pull-6{right:50%}.ecl-pull-7{right:58.3333333333%}.ecl-pull-8{right:66.6666666667%}.ecl-pull-9{right:75%}.ecl-pull-10{right:83.3333333333%}.ecl-pull-11{right:91.6666666667%}.ecl-pull-12{right:100%}.ecl-push-0{left:auto}.ecl-push-1{left:8.3333333333%}.ecl-push-2{left:16.6666666667%}.ecl-push-3{left:25%}.ecl-push-4{left:33.3333333333%}.ecl-push-5{left:41.6666666667%}.ecl-push-6{left:50%}.ecl-push-7{left:58.3333333333%}.ecl-push-8{left:66.6666666667%}.ecl-push-9{left:75%}.ecl-push-10{left:83.3333333333%}.ecl-push-11{left:91.6666666667%}.ecl-push-12{left:100%}.ecl-offset-1{margin-inline-start:8.3333333333%}.ecl-offset-2{margin-inline-start:16.6666666667%}.ecl-offset-3{margin-inline-start:25%}.ecl-offset-4{margin-inline-start:33.3333333333%}.ecl-offset-5{margin-inline-start:41.6666666667%}.ecl-offset-6{margin-inline-start:50%}.ecl-offset-7{margin-inline-start:58.3333333333%}.ecl-offset-8{margin-inline-start:66.6666666667%}.ecl-offset-9{margin-inline-start:75%}.ecl-offset-10{margin-inline-start:83.3333333333%}.ecl-offset-11{margin-inline-start:91.6666666667%}@media (min-width:480px){.ecl-col-s-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-s-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-s-3{flex:0 0 25%;max-width:25%}.ecl-col-s-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-s-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-s-6{flex:0 0 50%;max-width:50%}.ecl-col-s-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-s-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-s-9{flex:0 0 75%;max-width:75%}.ecl-col-s-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-s-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-s-12{flex:0 0 100%;max-width:100%}.ecl-pull-s-0{right:auto}.ecl-pull-s-1{right:8.3333333333%}.ecl-pull-s-2{right:16.6666666667%}.ecl-pull-s-3{right:25%}.ecl-pull-s-4{right:33.3333333333%}.ecl-pull-s-5{right:41.6666666667%}.ecl-pull-s-6{right:50%}.ecl-pull-s-7{right:58.3333333333%}.ecl-pull-s-8{right:66.6666666667%}.ecl-pull-s-9{right:75%}.ecl-pull-s-10{right:83.3333333333%}.ecl-pull-s-11{right:91.6666666667%}.ecl-pull-s-12{right:100%}.ecl-push-s-0{left:auto}.ecl-push-s-1{left:8.3333333333%}.ecl-push-s-2{left:16.6666666667%}.ecl-push-s-3{left:25%}.ecl-push-s-4{left:33.3333333333%}.ecl-push-s-5{left:41.6666666667%}.ecl-push-s-6{left:50%}.ecl-push-s-7{left:58.3333333333%}.ecl-push-s-8{left:66.6666666667%}.ecl-push-s-9{left:75%}.ecl-push-s-10{left:83.3333333333%}.ecl-push-s-11{left:91.6666666667%}.ecl-push-s-12{left:100%}.ecl-offset-s-0{margin-inline-start:0}.ecl-offset-s-1{margin-inline-start:8.3333333333%}.ecl-offset-s-2{margin-inline-start:16.6666666667%}.ecl-offset-s-3{margin-inline-start:25%}.ecl-offset-s-4{margin-inline-start:33.3333333333%}.ecl-offset-s-5{margin-inline-start:41.6666666667%}.ecl-offset-s-6{margin-inline-start:50%}.ecl-offset-s-7{margin-inline-start:58.3333333333%}.ecl-offset-s-8{margin-inline-start:66.6666666667%}.ecl-offset-s-9{margin-inline-start:75%}.ecl-offset-s-10{margin-inline-start:83.3333333333%}.ecl-offset-s-11{margin-inline-start:91.6666666667%}}@media (min-width:768px){.ecl-col-m-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-m-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-m-3{flex:0 0 25%;max-width:25%}.ecl-col-m-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-m-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-m-6{flex:0 0 50%;max-width:50%}.ecl-col-m-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-m-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-m-9{flex:0 0 75%;max-width:75%}.ecl-col-m-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-m-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-m-12{flex:0 0 100%;max-width:100%}.ecl-pull-m-0{right:auto}.ecl-pull-m-1{right:8.3333333333%}.ecl-pull-m-2{right:16.6666666667%}.ecl-pull-m-3{right:25%}.ecl-pull-m-4{right:33.3333333333%}.ecl-pull-m-5{right:41.6666666667%}.ecl-pull-m-6{right:50%}.ecl-pull-m-7{right:58.3333333333%}.ecl-pull-m-8{right:66.6666666667%}.ecl-pull-m-9{right:75%}.ecl-pull-m-10{right:83.3333333333%}.ecl-pull-m-11{right:91.6666666667%}.ecl-pull-m-12{right:100%}.ecl-push-m-0{left:auto}.ecl-push-m-1{left:8.3333333333%}.ecl-push-m-2{left:16.6666666667%}.ecl-push-m-3{left:25%}.ecl-push-m-4{left:33.3333333333%}.ecl-push-m-5{left:41.6666666667%}.ecl-push-m-6{left:50%}.ecl-push-m-7{left:58.3333333333%}.ecl-push-m-8{left:66.6666666667%}.ecl-push-m-9{left:75%}.ecl-push-m-10{left:83.3333333333%}.ecl-push-m-11{left:91.6666666667%}.ecl-push-m-12{left:100%}.ecl-offset-m-0{margin-inline-start:0}.ecl-offset-m-1{margin-inline-start:8.3333333333%}.ecl-offset-m-2{margin-inline-start:16.6666666667%}.ecl-offset-m-3{margin-inline-start:25%}.ecl-offset-m-4{margin-inline-start:33.3333333333%}.ecl-offset-m-5{margin-inline-start:41.6666666667%}.ecl-offset-m-6{margin-inline-start:50%}.ecl-offset-m-7{margin-inline-start:58.3333333333%}.ecl-offset-m-8{margin-inline-start:66.6666666667%}.ecl-offset-m-9{margin-inline-start:75%}.ecl-offset-m-10{margin-inline-start:83.3333333333%}.ecl-offset-m-11{margin-inline-start:91.6666666667%}}@media (min-width:996px){.ecl-col-l-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-l-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-l-3{flex:0 0 25%;max-width:25%}.ecl-col-l-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-l-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-l-6{flex:0 0 50%;max-width:50%}.ecl-col-l-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-l-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-l-9{flex:0 0 75%;max-width:75%}.ecl-col-l-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-l-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-l-12{flex:0 0 100%;max-width:100%}.ecl-pull-l-0{right:auto}.ecl-pull-l-1{right:8.3333333333%}.ecl-pull-l-2{right:16.6666666667%}.ecl-pull-l-3{right:25%}.ecl-pull-l-4{right:33.3333333333%}.ecl-pull-l-5{right:41.6666666667%}.ecl-pull-l-6{right:50%}.ecl-pull-l-7{right:58.3333333333%}.ecl-pull-l-8{right:66.6666666667%}.ecl-pull-l-9{right:75%}.ecl-pull-l-10{right:83.3333333333%}.ecl-pull-l-11{right:91.6666666667%}.ecl-pull-l-12{right:100%}.ecl-push-l-0{left:auto}.ecl-push-l-1{left:8.3333333333%}.ecl-push-l-2{left:16.6666666667%}.ecl-push-l-3{left:25%}.ecl-push-l-4{left:33.3333333333%}.ecl-push-l-5{left:41.6666666667%}.ecl-push-l-6{left:50%}.ecl-push-l-7{left:58.3333333333%}.ecl-push-l-8{left:66.6666666667%}.ecl-push-l-9{left:75%}.ecl-push-l-10{left:83.3333333333%}.ecl-push-l-11{left:91.6666666667%}.ecl-push-l-12{left:100%}.ecl-offset-l-0{margin-inline-start:0}.ecl-offset-l-1{margin-inline-start:8.3333333333%}.ecl-offset-l-2{margin-inline-start:16.6666666667%}.ecl-offset-l-3{margin-inline-start:25%}.ecl-offset-l-4{margin-inline-start:33.3333333333%}.ecl-offset-l-5{margin-inline-start:41.6666666667%}.ecl-offset-l-6{margin-inline-start:50%}.ecl-offset-l-7{margin-inline-start:58.3333333333%}.ecl-offset-l-8{margin-inline-start:66.6666666667%}.ecl-offset-l-9{margin-inline-start:75%}.ecl-offset-l-10{margin-inline-start:83.3333333333%}.ecl-offset-l-11{margin-inline-start:91.6666666667%}}@media (min-width:1140px){.ecl-col-xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.ecl-col-xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.ecl-col-xl-3{flex:0 0 25%;max-width:25%}.ecl-col-xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.ecl-col-xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.ecl-col-xl-6{flex:0 0 50%;max-width:50%}.ecl-col-xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.ecl-col-xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.ecl-col-xl-9{flex:0 0 75%;max-width:75%}.ecl-col-xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.ecl-col-xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.ecl-col-xl-12{flex:0 0 100%;max-width:100%}.ecl-pull-xl-0{right:auto}.ecl-pull-xl-1{right:8.3333333333%}.ecl-pull-xl-2{right:16.6666666667%}.ecl-pull-xl-3{right:25%}.ecl-pull-xl-4{right:33.3333333333%}.ecl-pull-xl-5{right:41.6666666667%}.ecl-pull-xl-6{right:50%}.ecl-pull-xl-7{right:58.3333333333%}.ecl-pull-xl-8{right:66.6666666667%}.ecl-pull-xl-9{right:75%}.ecl-pull-xl-10{right:83.3333333333%}.ecl-pull-xl-11{right:91.6666666667%}.ecl-pull-xl-12{right:100%}.ecl-push-xl-0{left:auto}.ecl-push-xl-1{left:8.3333333333%}.ecl-push-xl-2{left:16.6666666667%}.ecl-push-xl-3{left:25%}.ecl-push-xl-4{left:33.3333333333%}.ecl-push-xl-5{left:41.6666666667%}.ecl-push-xl-6{left:50%}.ecl-push-xl-7{left:58.3333333333%}.ecl-push-xl-8{left:66.6666666667%}.ecl-push-xl-9{left:75%}.ecl-push-xl-10{left:83.3333333333%}.ecl-push-xl-11{left:91.6666666667%}.ecl-push-xl-12{left:100%}.ecl-offset-xl-0{margin-inline-start:0}.ecl-offset-xl-1{margin-inline-start:8.3333333333%}.ecl-offset-xl-2{margin-inline-start:16.6666666667%}.ecl-offset-xl-3{margin-inline-start:25%}.ecl-offset-xl-4{margin-inline-start:33.3333333333%}.ecl-offset-xl-5{margin-inline-start:41.6666666667%}.ecl-offset-xl-6{margin-inline-start:50%}.ecl-offset-xl-7{margin-inline-start:58.3333333333%}.ecl-offset-xl-8{margin-inline-start:66.6666666667%}.ecl-offset-xl-9{margin-inline-start:75%}.ecl-offset-xl-10{margin-inline-start:83.3333333333%}.ecl-offset-xl-11{margin-inline-start:91.6666666667%}}:root{--duet-color-button:var(--c-g-50,var(--c-p-5));--duet-font:arial,sans-serif;--duet-font-bold:600;--duet-color-surface:var(--cm-surface-inverted,#fff);--duet-color-border:var(--c-d-80);--duet-color-text:var(--c-d-140);--duet-color-primary:var(--c-p);--duet-font-normal:400;--duet-radius:4px;--duet-color-placeholder:var(--c-d-40);--duet-z-index:15}.ecl-datepicker{max-width:100%}.ecl-datepicker--s{width:100%}@media (min-width:480px){.ecl-datepicker--s{width:100%}}@media (min-width:768px){.ecl-datepicker--s{width:223px}}@media (min-width:996px){.ecl-datepicker--s{width:223px}}@media (min-width:1140px){.ecl-datepicker--s{width:252px}}.ecl-datepicker--m{width:100%}@media (min-width:480px){.ecl-datepicker--m{width:100%}}@media (min-width:768px){.ecl-datepicker--m{width:287px}}@media (min-width:996px){.ecl-datepicker--m{width:299px}}@media (min-width:1140px){.ecl-datepicker--m{width:347px}}.ecl-datepicker--l{width:100%}@media (min-width:480px){.ecl-datepicker--l{width:100%}}@media (min-width:768px){.ecl-datepicker--l{width:351px}}@media (min-width:996px){.ecl-datepicker--l{width:382px}}@media (min-width:1140px){.ecl-datepicker--l{width:442px}}.duet-date__input{font:var(--f-ui-m);height:2.75rem;outline:0}.duet-date__input:hover{box-shadow:var(--sh-i-2)}.duet-date__input:focus-visible{border-color:var(--duet-color-primary);box-shadow:0 0 0 1px var(--duet-color-primary)}.duet-date__input[disabled]{background-color:#fff;border-color:var(--c-d-80);color:var(--c-d-140);cursor:not-allowed;opacity:.5}.ecl-datepicker[invalid] .duet-date__input{border-color:var(--ecl-color-error)}.duet-date__toggle,.ecl button.duet-date__toggle{background:#fff;border:0;border-radius:0;border-bottom-right-radius:var(--duet-radius);border-top-right-radius:var(--duet-radius);color:var(--duet-color-text);display:flex;min-height:auto;padding:0;width:2.75rem}.duet-date__toggle:before,.ecl button.duet-date__toggle:before{background-color:var(--cm-border-brand,var(--c-d));content:"";height:80%;left:-1px;position:absolute;top:10%;width:1px}.duet-date__toggle:hover,.duet-date__toggle[disabled],.ecl button.duet-date__toggle:hover,.ecl button.duet-date__toggle[disabled]{background:var(--duet-color-button);box-shadow:inset 1px 0 0 rgba(0,0,0,.1);color:var(--duet-color-text)}.duet-date__toggle[disabled],.ecl button.duet-date__toggle[disabled]{opacity:.5}.duet-date__toggle:focus-visible,.ecl button.duet-date__toggle:focus-visible{background:#fff;box-shadow:0 0 0 2px var(--duet-color-primary);color:var(--duet-color-text);outline:0}.duet-date__dialog-content{background-color:#fff;border-radius:4px;border-width:0;box-shadow:var(--sh-2);color:var(--c-d-140);margin-block-start:var(--s-s);padding-block-end:var(--s-m)}.duet-date__dialog-content .duet-date__select:focus-within{outline:0}.duet-date__dialog-content button.duet-date__next{margin-inline-start:var(--s-xs)}.duet-date__dialog-content button.duet-date__close,.duet-date__dialog-content button.duet-date__next,.duet-date__dialog-content button.duet-date__prev{background:var(--duet-color-button);border:0;border-radius:50%;color:var(--duet-color-text);line-height:100%;min-height:auto;min-width:0;outline:0;padding:0}.duet-date__dialog-content button.duet-date__close:focus-visible,.duet-date__dialog-content button.duet-date__next:focus-visible,.duet-date__dialog-content button.duet-date__prev:focus-visible{background:var(--duet-color-button);border:0;color:var(--duet-color-text);outline:0;padding:0}.duet-date__dialog-content button.duet-date__close:hover,.duet-date__dialog-content button.duet-date__next:hover,.duet-date__dialog-content button.duet-date__prev:hover{background:var(--duet-color-button);color:var(--duet-color-text)}.duet-date__dialog-content button.duet-date__close:hover:focus,.duet-date__dialog-content button.duet-date__next:hover:focus,.duet-date__dialog-content button.duet-date__prev:hover:focus{box-shadow:0 0 0 2px var(--duet-color-primary)}.duet-date__dialog-content button.duet-date__close svg,.duet-date__dialog-content button.duet-date__next svg,.duet-date__dialog-content button.duet-date__prev svg{margin-block-start:1px}.duet-date__dialog-content .duet-date__header{margin-block-end:var(--s-xs)}.duet-date__dialog-content .duet-date__table{background-color:#fff;border-collapse:initial;border-spacing:0}.duet-date__dialog-content .duet-date__table th{color:var(--c-d-140)}.duet-date__dialog-content .duet-date__table .duet-date__table-header{padding-block-start:var(--s-xs)}.duet-date__dialog-content .duet-date__table .duet-date__day{background-color:var(--cm-surface-inverted,#fff);border-radius:50%;border-width:0;color:var(--c-d-140);font-size:var(--fs-s);min-height:auto;min-width:auto;padding:0}.duet-date__dialog-content .duet-date__table .duet-date__day:hover{background-color:#fff;border-color:var(--cm-on-surface-brand,var(--c-d));border-width:1px;color:var(--c-d-140)}.duet-date__dialog-content .duet-date__table .duet-date__day:focus,.duet-date__dialog-content .duet-date__table .duet-date__day:focus-visible{background-color:var(--c-p);border-color:var(--duet-color-primary);border-width:2px;box-shadow:none;color:var(--cm-on-surface-inverted,#fff);outline:0;padding:0}.duet-date__dialog-content .duet-date__table .duet-date__day[aria-pressed=true]{background-color:var(--c-p);border-radius:50%;box-shadow:none;color:var(--cm-on-surface-inverted,#fff);padding:0}.duet-date__dialog-content .duet-date__table .duet-date__day[aria-pressed=true]:before{background-color:var(--cm-surface-inverted,#fff)}.duet-date__dialog-content .duet-date__table .duet-date__day[aria-pressed=true]:hover{border-width:0}.duet-date__dialog-content .duet-date__table .duet-date__day.is-today{border-width:1px}.duet-date__dialog-content .duet-date__table .duet-date__day.is-today:hover{border-width:0}.ecl-form-group .ecl-datepicker{margin-top:.75rem}`;

const EclDatepicker = class {
    constructor(hostRef) {
        registerInstance(this, hostRef);
        this.valueChanged = createEvent(this, "valueChanged");
        this.focused = createEvent(this, "focused");
        this.blurred = createEvent(this, "blurred");
        this.disabled = false;
        this.required = false;
        this.placeholder = 'DD-MM-YYYY';
        this.inputId = `ecl-datepicker-${Math.random().toString(36).slice(2, 10)}`;
        this.invalid = false;
        this.firstDayOfTheWeek = 1;
        this.width = 'm';
        this.min = '';
        this.max = '';
        this.name = this.inputId;
    }
    handleChange(event) {
        const newValue = event.target.value;
        this.valueChanged.emit(newValue);
    }
    handleFocus() {
        this.focused.emit();
    }
    handleBlur() {
        this.blurred.emit();
    }
    getClass() {
        const styleClasses = [
            'ecl-datepicker',
            `ecl-datepicker--${this.width}`,
            this.styleClass
        ];
        if (this.invalid) {
            styleClasses.push('ecl-datepicker--invalid');
        }
        if (this.disabled) {
            styleClasses.push('ecl-datepicker--disabled');
        }
        return styleClasses.join(' ');
    }
    componentWillLoad() {
        var _a;
        this.theme = (_a = document.documentElement.getAttribute('data-ecl-theme')) !== null && _a !== void 0 ? _a : (this.theme || 'ec');
    }
    componentDidLoad() {
        const duetSrc = 'https://cdn.jsdelivr.net/npm/@duetds/date-picker@1.4.0/dist/duet/duet.esm.js';
        if (document.querySelector(`script[src="${duetSrc}"]`)) {
            document.querySelector(`script[src="${duetSrc}"]`).remove();
        }
        const duet = document.createElement('script');
        duet.setAttribute('type', 'module');
        duet.src = duetSrc;
        duet.onload = () => {
            window.ECL = window.ECL || {};
            ECL.Datepicker = Datepicker;
            const datepicker = new Datepicker(this.el.querySelector('.ecl-datepicker'));
            datepicker.init();
        };
        document.body.appendChild(duet);
    }
    render() {
        const attributes = {};
        if (this.invalid) {
            attributes['invalid'] = true;
        }
        if (this.inputId) {
            const group = this.el.closest('.ecl-form-group');
            if (group) {
                const label = group.querySelector('.ecl-form-label');
                if (label) {
                    label.setAttribute('for', this.inputId);
                    label.setAttribute('id', `${this.inputId}-label`);
                }
                const helper = group.querySelector('.ecl-help-block');
                if (helper) {
                    helper.setAttribute('id', `${this.inputId}-helper`);
                    attributes['aria-describedby'] = `${this.inputId}-helper`;
                }
            }
        }
        return (h("div", Object.assign({ key: 'fdb7c503134d140d7e8ae996be0a75cc0aa08320', class: this.getClass(), "data-ecl-datepicker-toggle": true, "data-placeholder": this.placeholder, "data-value": this.defaultValue }, attributes), h("duet-date-picker", { key: '0ad940a76d9d200d047a846ca3dc316fd86d7ac1', identifier: this.inputId, name: this.name, required: this.required, disabled: this.disabled, "first-day-of-the-week": this.firstDayOfTheWeek, min: this.min, max: this.max })));
    }
    get el() { return getElement(this); }
};
EclDatepicker.style = {
    ec: eclDatepickerEcCss(),
    eu: eclDatepickerEuCss()
};

export { EclDatepicker as ecl_datepicker };
