@postnord/pn-marketweb-components 3.0.0 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/pn-dropdown-choice-adds-row.cjs.entry.js +1 -1
- package/cjs/pn-dropdown-choice-adds-row.cjs.entry.js.map +1 -1
- package/cjs/pn-multi-row-connected-dropdown-row.cjs.entry.js +1 -1
- package/cjs/pn-multi-row-connected-dropdown-row.cjs.entry.js.map +1 -1
- package/collection/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.js +1 -1
- package/collection/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.js.map +1 -1
- package/collection/components/input/pn-multi-row-connected-dropdown/pn-multi-row-connected-dropdown-row.js +1 -1
- package/collection/components/input/pn-multi-row-connected-dropdown/pn-multi-row-connected-dropdown-row.js.map +1 -1
- package/components/pn-dropdown-choice-adds-row.js +1 -1
- package/components/pn-dropdown-choice-adds-row.js.map +1 -1
- package/components/pn-multi-row-connected-dropdown-row2.js +1 -1
- package/components/pn-multi-row-connected-dropdown-row2.js.map +1 -1
- package/esm/pn-dropdown-choice-adds-row.entry.js +1 -1
- package/esm/pn-dropdown-choice-adds-row.entry.js.map +1 -1
- package/esm/pn-multi-row-connected-dropdown-row.entry.js +1 -1
- package/esm/pn-multi-row-connected-dropdown-row.entry.js.map +1 -1
- package/package.json +3 -2
- package/pn-market-web-components/p-07253be3.entry.js +2 -0
- package/pn-market-web-components/{p-3847f9af.entry.js.map → p-07253be3.entry.js.map} +1 -1
- package/pn-market-web-components/{p-00ea6211.entry.js → p-e9088d97.entry.js} +2 -2
- package/pn-market-web-components/{p-00ea6211.entry.js.map → p-e9088d97.entry.js.map} +1 -1
- package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
- package/pn-market-web-components/p-3847f9af.entry.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"pn-multi-row-connected-dropdown-row.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/input/pn-multi-row-connected-dropdown/pn-multi-row-connected-dropdown-row.scss?tag=pn-multi-row-connected-dropdown-row","src/components/input/pn-multi-row-connected-dropdown/pn-multi-row-connected-dropdown-row.tsx"],"sourcesContent":["@import '../../../globals/main.scss';\n\npn-multi-row-connected-dropdown-row {\n gap: 1rem;\n\n .connected-dropdown-parent-element {\n margin-bottom: 0.5rem;\n }\n\n pn-select {\n width: 35%;\n }\n\n pn-marketweb-input {\n width: 10%;\n\n input {\n height: 4.3rem;\n }\n }\n\n .connected-dropdown {\n padding: 1rem;\n border-left: 0.2rem solid $blue700;\n\n &:hover {\n background-color: $gray25;\n }\n\n &__toggle-date-button {\n width: 20%;\n margin-bottom: 0.5rem;\n }\n\n &__row {\n display: flex;\n align-items: flex-end;\n gap: 1rem;\n margin-bottom: 1rem;\n justify-content: space-between;\n\n &__no-margin {\n margin: 0;\n }\n }\n\n &__multi-date-row {\n display: flex;\n align-items: center;\n gap: 1rem;\n margin-bottom: 1rem;\n }\n\n &__button-container {\n display: flex;\n align-items: flex-end;\n gap: 1rem;\n }\n\n &__button {\n background-color: #ffffff;\n border: solid;\n border-width: 0.1rem;\n border-radius: 0.8rem;\n border-color: $blue700;\n padding: 0.4rem 0.8rem;\n color: $blue700;\n font-size: 1.4rem;\n text-align: center;\n text-decoration: none;\n cursor: pointer;\n\n &:hover,\n &.active {\n background-color: $blue900;\n border-color: $blue900;\n color: #ffffff;\n }\n }\n\n &__buttom-container-right {\n display: flex;\n }\n\n &__button-right {\n margin-left: auto;\n }\n\n &__label-container {\n margin-bottom: 0.4rem;\n color: $gray700;\n font-size: 0.875em;\n justify-content: space-between;\n align-items: flex-end;\n }\n\n &__checkbox {\n display: flex;\n gap: 0.5rem;\n }\n\n &__date-slot {\n border: 0.1rem solid $blue700;\n margin-bottom: 1rem;\n padding: 1rem;\n }\n }\n\n .generated-date-row {\n border-bottom: 0.1rem solid $blue700;\n }\n}\n","import { Component, Prop, h, Element, Host, State, Watch, Event, EventEmitter } from '@stencil/core';\nimport { Root, SelectItem, PredefinedValues } from './types';\nimport debounce from 'debounce';\nimport { v4 as uuidv4 } from 'uuid';\nimport { minus } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-multi-row-connected-dropdown-row',\n styleUrl: 'pn-multi-row-connected-dropdown-row.scss',\n})\nexport class PnMultiRowConnectedDropdownRow {\n @Element() hostElement: Element;\n private _dropdownData: Root[];\n private _predefinedValue: PredefinedValues;\n pnConnectedDropdown: HTMLElement = null;\n pnConnectedDropdownSlotElement: HTMLElement = null;\n pnAddFieldButton: HTMLElement = null;\n pnFirstDropdown: HTMLElement = null;\n pnSecondDropdown: HTMLElement = null;\n pnInputField: HTMLElement = null;\n pnSingleDatePicker: HTMLElement = null;\n pnStartDate: HTMLElement = null;\n pnEndDate: HTMLElement = null;\n pnShowDateRangeFiledButton: HTMLElement = null;\n pnDateRangeContainer: HTMLElement = null;\n pnGenerateDatesButton: HTMLElement = null;\n pnDaysRow: HTMLElement = null;\n pnGeneratedDatesSlot: HTMLElement = null;\n pnSaveGeneratedDatesButton: HTMLElement = null;\n pnDeleteRowButton: HTMLElement = null;\n\n @Prop() dropdownData: string | Root[] = null;\n @Prop() languageCode: string = null;\n @Prop() label: string = null;\n @Prop() firstDropdownLabel: string = null;\n @Prop() secondDropdownLabel: string = null;\n @Prop() dropdownPlaceholder: string = null;\n @Prop() addRowText: string = null;\n @Prop() inputFildLabel: string = null;\n @Prop() inputFildPlaceholder: string = null;\n @Prop() dateButtonText: string = null;\n @Prop() datePlaceholder: string = null;\n @Prop() dateDaysFromToday: number = 1;\n @Prop() allowMultipleDates: boolean = null;\n @Prop() startDateLabel: string = null;\n @Prop() endDateLabel: string = null;\n @Prop() multiDateHelperText: string = null;\n @Prop() generateDatesButtonText: string = null;\n @Prop() saveDateButtonText: string = null;\n @Prop() noDatesText: string = null;\n @Prop() index: number = null;\n @Prop() predefinedValue: string = null;\n @Prop() yearsToAddToEndDate: number = null;\n\n @State() buttonsArray: SelectItem[] = null;\n @State() firstDropdownArr: SelectItem[] = null;\n @State() secondDropdownArr: SelectItem[] = [];\n @State() firstDropdownClass: string = null;\n @State() secondDropdownClass: string = null;\n @State() firstValidDateString: string = '';\n @State() lastValidDateString: string = '';\n @State() firstDropdownPlaceholder: string = '-';\n @State() secondDropdownPlaceholder: string = '-';\n @State() starDateValue: string = '';\n @State() endDateValue: string = '';\n @State() generatedDatesArr: string[] = [];\n @State() selectedButtonValue: string = '';\n @State() inputFieldValue: string = '';\n @State() dateValue: string = '';\n @State() daysArr: SelectItem[] = null;\n\n @Event() rowValueChange: EventEmitter<PredefinedValues>;\n @Event() deleteRowEvent: EventEmitter<string>;\n\n componentWillLoad() {\n this.getPredefinedValues();\n this.setDropDownData();\n this.setFirstValidDate();\n }\n\n componentDidLoad() {\n this.setInitialValues();\n this.addEventHandlers();\n this.emittRowValues();\n }\n\n setDropDownData() {\n if (typeof this.dropdownData === 'string') {\n this._dropdownData = JSON.parse(this.dropdownData);\n } else {\n this._dropdownData = this.dropdownData;\n }\n }\n\n getPredefinedValues() {\n this._predefinedValue = JSON.parse(this.predefinedValue);\n }\n\n @Watch('predefinedValue')\n applyPredefinedValue() {\n this.getPredefinedValues();\n this.setInitialValues();\n }\n\n setInitialValues() {\n this.setButtonsValue();\n this.setFirstDropdownValues();\n this.setSecondDropdownValues();\n this.setInputField();\n this.setDateValue();\n this.setDateRangeDefaults();\n\n this.firstDropdownClass = this.firstDropdownLabel.replace(' ', '_') + '-dropdown';\n this.secondDropdownClass = this.secondDropdownLabel.replace(' ', '_') + '-dropdown';\n }\n\n setButtonsValue() {\n this.buttonsArray = [];\n\n if (this._predefinedValue.buttons?.length) {\n this.buttonsArray = this._predefinedValue.buttons;\n\n this.buttonsArray.forEach(item => {\n if (item.selected) {\n this.selectedButtonValue = item.value;\n }\n });\n } else {\n this._dropdownData.forEach(item => {\n const button: SelectItem = { selected: false, value: item.label, label: item.label };\n this.buttonsArray.push(button);\n });\n }\n }\n\n setFirstDropdownValues() {\n this.firstDropdownArr = [];\n\n if (this._predefinedValue.firstDropdown?.length) {\n this.firstDropdownArr = [...this._predefinedValue.firstDropdown];\n }\n }\n\n setSecondDropdownValues() {\n this.secondDropdownArr = [];\n\n if (this._predefinedValue.secondDropdown?.length) {\n this.secondDropdownArr = [...this._predefinedValue.secondDropdown];\n }\n }\n\n setInputField() {\n this.inputFieldValue = this._predefinedValue.input?.length ? this._predefinedValue.input : '';\n }\n\n setDateValue() {\n if (this.allowMultipleDates) {\n this.pnDateRangeContainer.style.display = this._predefinedValue.dates?.length ? '' : 'none';\n this.generatedDatesArr = this._predefinedValue.dates?.length ? this._predefinedValue.dates.split(',') : [];\n this.saveGeneratedDates();\n } else {\n this.dateValue = this._predefinedValue.dates?.length ? this._predefinedValue.dates : '';\n }\n }\n\n setDateRangeDefaults() {\n this.daysArr = this._predefinedValue.dateRange.days;\n this.starDateValue = this._predefinedValue.dateRange.startDate?.length ? this._predefinedValue.dateRange.startDate : '';\n this.endDateValue = this._predefinedValue.dateRange.endDate?.length ? this._predefinedValue.dateRange.endDate : '';\n }\n\n setFirstValidDate() {\n const yearsToadd = this.yearsToAddToEndDate ? this.yearsToAddToEndDate : 2;\n const date = new Date();\n date.setDate(date.getDate() + this.dateDaysFromToday ?? 0);\n\n const year = date.getFullYear();\n const month = (date.getMonth() + 1).toString().padStart(2, '0');\n const day = date.getDate().toString().padStart(2, '0');\n const endYear = year + yearsToadd;\n\n this.firstValidDateString = `${year.toString()}-${month}-${day}`;\n this.lastValidDateString = `${endYear.toString()}-${month}-${day}`;\n }\n\n addEventHandlers() {\n const emmitValues = debounce(this.emittRowValues.bind(this), 500);\n\n this.pnInputField.addEventListener('keyup', this.handleInput.bind(this));\n this.pnInputField.addEventListener('change', this.handleInput.bind(this));\n this.pnInputField.addEventListener('input', this.handleInput.bind(this));\n this.pnInputField.addEventListener('keyup', emmitValues);\n this.pnInputField.addEventListener('change', emmitValues);\n this.pnInputField.addEventListener('input', emmitValues);\n\n if (this.allowMultipleDates) {\n this.pnShowDateRangeFiledButton.addEventListener('click', this.showDateRangeRow.bind(this));\n this.pnStartDate.addEventListener('dateselection', this.HandleRangeDatePickers.bind(this));\n this.pnEndDate.addEventListener('dateselection', this.HandleRangeDatePickers.bind(this));\n this.pnGenerateDatesButton.addEventListener('click', this.generateDates.bind(this));\n this.pnSaveGeneratedDatesButton.addEventListener('click', this.saveGeneratedDates.bind(this));\n this.pnSaveGeneratedDatesButton.addEventListener('click', emmitValues);\n } else {\n this.pnSingleDatePicker.addEventListener('dateselection', this.setSingleDateValue.bind(this));\n this.pnSingleDatePicker.addEventListener('dateselection', emmitValues);\n }\n\n if (this.index > 0) {\n this.pnDeleteRowButton.addEventListener('click', this.deleteRow.bind(this));\n }\n }\n\n generateUniqueId() {\n return uuidv4();\n }\n\n updateSelectItemArr(arr: SelectItem[], val: string) {\n arr.forEach(item => {\n if (item.value === val) {\n item.selected = !item.selected;\n } else {\n item.selected = false;\n }\n });\n return arr;\n }\n\n handleOptionButtonClick(e) {\n e.preventDefault();\n const elmValue = e.target.innerHTML;\n\n this.buttonsArray = [...this.updateSelectItemArr(this.buttonsArray, elmValue)];\n this.selectedButtonValue = this.buttonsArray.filter(e => e.selected === true).length > 0 ? elmValue : '';\n\n if (this.selectedButtonValue?.length) {\n this.firstDropdownArr = [];\n const selectionChildren = this._dropdownData.find(arr => arr.label === elmValue);\n selectionChildren.values.forEach(item => {\n this.firstDropdownArr.push({ selected: false, value: item.label, label: item.label });\n });\n\n this.firstDropdownArr = [...this.firstDropdownArr];\n this.firstDropdownPlaceholder = this.dropdownPlaceholder;\n const firstDropdownText = this.pnFirstDropdown.querySelector('.pn-select-content span');\n firstDropdownText.innerHTML = this.dropdownPlaceholder;\n\n this.secondDropdownArr = [];\n this.secondDropdownPlaceholder = '-';\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = this.secondDropdownPlaceholder;\n } else {\n this.firstDropdownArr = [];\n this.firstDropdownPlaceholder = '-';\n const firstDropdownText = this.pnFirstDropdown.querySelector('.pn-select-content span');\n firstDropdownText.innerHTML = this.firstDropdownPlaceholder;\n\n this.secondDropdownArr = [];\n this.secondDropdownPlaceholder = '-';\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = this.secondDropdownPlaceholder;\n }\n\n this.emittRowValues();\n }\n\n handleFirstDropdownChange() {\n const selected = this.pnFirstDropdown.querySelector(\"[aria-selected=true]\");\n const selectedValue = selected?.textContent;\n this.firstDropdownArr = [...this.updateSelectItemArr(this.firstDropdownArr, selectedValue)];\n const firstDropdownText = this.pnFirstDropdown.querySelector('.pn-select-content span');\n firstDropdownText.innerHTML = selectedValue;\n\n this.secondDropdownArr = [];\n const selectedButton = this.buttonsArray.findIndex(item => item.selected === true);\n const firstChildren = this._dropdownData.find(arr => arr.label === this.buttonsArray[selectedButton].value);\n const secondChildren = firstChildren.values.find(arr => arr.label === selectedValue);\n secondChildren.values.forEach(item => {\n this.secondDropdownArr.push({ selected: false, value: item.label, label: item.label });\n });\n\n this.secondDropdownPlaceholder = this.dropdownPlaceholder;\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = this.secondDropdownPlaceholder;\n this.emittRowValues();\n }\n\n handleSecondDropdownChange() {\n const selected = this.pnSecondDropdown.querySelector(\"[aria-selected=true]\");\n const selectedValue = selected?.textContent;\n this.secondDropdownArr = [...this.updateSelectItemArr(this.secondDropdownArr, selectedValue)];\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = selectedValue;\n this.emittRowValues();\n }\n\n handleInput(e) {\n const elm = e.target;\n if (elm.value !== '0') {\n this.inputFieldValue = elm.value;\n }\n }\n\n showDateRangeRow() {\n if (this.pnDateRangeContainer.style.display === 'none') {\n this.pnDateRangeContainer.style.display = '';\n } else {\n this.pnDateRangeContainer.style.display = 'none';\n }\n }\n\n HandleRangeDatePickers(e) {\n const elm = e.target;\n\n if (elm === this.pnStartDate) {\n this.starDateValue = e.detail;\n }\n\n if (elm === this.pnEndDate) {\n this.endDateValue = e.detail;\n }\n }\n\n generateDates(e) {\n e.preventDefault();\n const allCheckboxes = this.pnDaysRow.querySelectorAll('pn-filter-checkbox');\n const selectedDays: string[] = [];\n this.generatedDatesArr = [];\n allCheckboxes.forEach(element => {\n const input = element.querySelector('input');\n if (input.value) {\n selectedDays.push(input.value);\n }\n });\n\n if (selectedDays.length && this.starDateValue && this.endDateValue) {\n this.daysArr.forEach(item => {\n if (selectedDays.some(x => x === item.value)) {\n item.selected = true;\n } else {\n item.selected = false;\n }\n });\n\n const startDate = new Date(Date.parse(this.starDateValue));\n const endDate = new Date(Date.parse(this.endDateValue));\n\n for (var d = startDate; d <= endDate; d.setDate(d.getDate() + 1)) {\n const i = this.daysArr.findIndex(item => parseInt(item.value) === d.getDay());\n\n if (this.daysArr[i]?.selected) {\n const year = d.getFullYear();\n const month = (d.getMonth() + 1).toString().padStart(2, '0');\n const day = d.getDate().toString().padStart(2, '0');\n this.generatedDatesArr.push(`${year}-${month}-${day}`);\n }\n }\n }\n }\n\n deleteGeneratedDateRow(index) {\n this.generatedDatesArr.splice(index, 1);\n this.generatedDatesArr = [...this.generatedDatesArr];\n }\n\n saveGeneratedDates() {\n if (this.generatedDatesArr?.length) {\n this.dateValue = String(this.generatedDatesArr);\n const dateCount = this.generatedDatesArr.length;\n const buttonTextElm = this.pnShowDateRangeFiledButton.querySelector('.pn-button-content');\n buttonTextElm.innerHTML = dateCount > 0 ? `${this.dateButtonText} (${dateCount})` : this.dateButtonText;\n this.showDateRangeRow();\n }\n }\n\n setSingleDateValue(e) {\n const elm = e.target;\n if (elm === this.pnSingleDatePicker) {\n this.dateValue = e.detail;\n }\n }\n\n emittRowValues() {\n this.rowValueChange.emit({\n id: this._predefinedValue.id,\n buttons: this.buttonsArray,\n firstDropdown: this.firstDropdownArr,\n secondDropdown: this.secondDropdownArr,\n input: this.inputFieldValue,\n dates: this.dateValue,\n dateRange: {\n days: this.daysArr,\n startDate: this.starDateValue,\n endDate: this.endDateValue,\n },\n });\n }\n\n deleteRow() {\n this.deleteRowEvent.emit(this._predefinedValue.id);\n }\n\n setActive(active: boolean) {\n return active ? 'connected-dropdown__button active' : 'connected-dropdown__button';\n }\n\n render() {\n return (\n <Host>\n <div ref={el => (this.pnConnectedDropdownSlotElement = el as HTMLElement)} class=\"connected-dropdown-slot-element\">\n <div class=\"connected-dropdown-parent-element connected-dropdown\">\n <div class=\"connected-dropdown__row__no-margin\">\n <label>{this.label}</label>\n </div>\n\n <div class=\"connected-dropdown__row button-row\">\n <div class=\"connected-dropdown__button-container option-buttons\">\n {this.buttonsArray?.map(item => (\n <button class={`${this.setActive(item.selected)}`} id={this.generateUniqueId()} onClick={this.handleOptionButtonClick.bind(this)}>\n {item.value}\n </button>\n ))}\n </div>\n\n <div class=\"connected-dropdown__button-container delete-button\">\n {this.index > 0 ? (\n <pn-button ref={el => (this.pnDeleteRowButton = el as HTMLElement)} small=\"true\" icon={minus} appearance=\"warning\" index={this.index}>\n Delete\n </pn-button>\n ) : null}\n </div>\n </div>\n\n <div class=\"connected-dropdown__row input-row\">\n <pn-select\n ref={el => (this.pnFirstDropdown = el as HTMLElement)}\n class=\"pn-row-select-dropdown dropDown1-dropdown\"\n placeholder={this.firstDropdownPlaceholder}\n label={this.firstDropdownLabel}\n >\n {this.firstDropdownArr?.map((item, i) => (\n <pn-option index={i} label={item.label} value={item.value} selected={item.selected} onClick={debounce(this.handleFirstDropdownChange.bind(this), 500)}></pn-option>\n ))}\n </pn-select>\n\n <pn-select\n ref={el => (this.pnSecondDropdown = el as HTMLElement)}\n class=\"pn-row-select-dropdown dropDown2-dropdown\"\n placeholder={this.secondDropdownPlaceholder}\n label={this.secondDropdownLabel}\n >\n {this.secondDropdownArr?.map((item, i) => (\n <pn-option index={i} label={item.label} value={item.value} selected={item.selected} onClick={debounce(this.handleSecondDropdownChange.bind(this), 500)}></pn-option>\n ))}\n </pn-select>\n\n <pn-marketweb-input\n ref={el => (this.pnInputField = el as HTMLElement)}\n type=\"number\"\n placeholder=\"0\"\n label={this.inputFildLabel}\n value={this.inputFieldValue}\n min=\"1\"\n ></pn-marketweb-input>\n\n {this.allowMultipleDates ? (\n <pn-button ref={el => (this.pnShowDateRangeFiledButton = el as HTMLElement)} class=\"connected-dropdown__toggle-date-button\" small=\"true\" appearance=\"light\">\n {this.dateButtonText}\n </pn-button>\n ) : (\n <div class=\"connected-dropdown__date-container\">\n <div class=\"connected-dropdown__label-container\">\n <label>{this.dateButtonText}</label>\n </div>\n <pn-date-picker\n ref={el => (this.pnSingleDatePicker = el as HTMLElement)}\n range=\"false\"\n disable-weekends={true}\n min-date={this.firstValidDateString}\n language={this.languageCode}\n placeholder={this.datePlaceholder}\n class=\"connected-dropdown__date-picker\"\n start={this.dateValue?.length ? this.dateValue : null}\n ></pn-date-picker>\n </div>\n )}\n </div>\n\n {this.allowMultipleDates ? (\n <div ref={el => (this.pnDateRangeContainer = el as HTMLElement)} class=\"connected-dropdown__date-container\" style={{ display: 'none' }}>\n {this.multiDateHelperText ? (\n <div class=\"connected-dropdown__row\">\n <p>{this.multiDateHelperText}</p>\n </div>\n ) : null}\n\n <div class=\"connected-dropdown__multi-date-row\">\n <div class=\"connected-dropdown__date-container\">\n <div class=\"connected-dropdown__label-container\">\n <label>{this.startDateLabel}</label>\n </div>\n\n <pn-date-picker\n ref={el => (this.pnStartDate = el as HTMLElement)}\n range=\"false\"\n disable-weekends={true}\n class=\"connected-dropdown__date-picker\"\n min-date={this.firstValidDateString}\n max-date={this.lastValidDateString}\n language={this.languageCode}\n placeholder={this.datePlaceholder}\n start={this.starDateValue?.length ? this.starDateValue : null}\n ></pn-date-picker>\n </div>\n\n <div class=\"connected-dropdown__date-container\">\n <div class=\"connected-dropdown__label-container\">\n <label>{this.endDateLabel}</label>\n </div>\n <pn-date-picker\n ref={el => (this.pnEndDate = el as HTMLElement)}\n range=\"false\"\n disable-weekends={true}\n class=\"connected-dropdown__date-picker\"\n min-date={this.firstValidDateString}\n max-date={this.lastValidDateString}\n language={this.languageCode}\n placeholder={this.datePlaceholder}\n start={this.endDateValue?.length ? this.endDateValue : null}\n ></pn-date-picker>\n </div>\n </div>\n <div ref={el => (this.pnDaysRow = el as HTMLElement)} class=\"connected-dropdown__multi-date-row\">\n {this.daysArr?.map((day: SelectItem) => (\n <div class=\"connected-dropdown__checkbox\">\n <pn-filter-checkbox checkboxid={'day-' + day.value} name={'__' + day.label} value={day.value} checked={day.selected}></pn-filter-checkbox>\n <label htmlFor={'day-' + day.value}>{day.label}</label>\n </div>\n ))}\n </div>\n\n <div class=\"connected-dropdown__row\">\n <pn-button ref={el => (this.pnGenerateDatesButton = el as HTMLElement)} small=\"true\">\n {this.generateDatesButtonText}\n </pn-button>\n </div>\n\n <div ref={el => (this.pnGeneratedDatesSlot = el as HTMLElement)} class=\"connected-dropdown__date-slot\">\n {this.generatedDatesArr?.map((date: string, i) => (\n <div class=\"connected-dropdown__row generated-date-row\">\n <p>{date}</p>\n <pn-button index={i} small=\"true\" icon={minus} appearance=\"warning\" id={'delete-date-' + i} onClick={this.deleteGeneratedDateRow.bind(this, i)}>\n {date}\n </pn-button>\n </div>\n ))}\n\n {!this.generatedDatesArr?.length ? <p>{this.noDatesText}</p> : null}\n </div>\n\n <div class=\"connected-dropdown__row\">\n <pn-button ref={el => (this.pnSaveGeneratedDatesButton = el as HTMLElement)} class=\"connected-dropdown__button-right\" small=\"true\">\n {this.saveDateButtonText}\n </pn-button>\n </div>\n </div>\n ) : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"pn-multi-row-connected-dropdown-row.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/input/pn-multi-row-connected-dropdown/pn-multi-row-connected-dropdown-row.scss?tag=pn-multi-row-connected-dropdown-row","src/components/input/pn-multi-row-connected-dropdown/pn-multi-row-connected-dropdown-row.tsx"],"sourcesContent":["@import '../../../globals/main.scss';\n\npn-multi-row-connected-dropdown-row {\n gap: 1rem;\n\n .connected-dropdown-parent-element {\n margin-bottom: 0.5rem;\n }\n\n pn-select {\n width: 35%;\n }\n\n pn-marketweb-input {\n width: 10%;\n\n input {\n height: 4.3rem;\n }\n }\n\n .connected-dropdown {\n padding: 1rem;\n border-left: 0.2rem solid $blue700;\n\n &:hover {\n background-color: $gray25;\n }\n\n &__toggle-date-button {\n width: 20%;\n margin-bottom: 0.5rem;\n }\n\n &__row {\n display: flex;\n align-items: flex-end;\n gap: 1rem;\n margin-bottom: 1rem;\n justify-content: space-between;\n\n &__no-margin {\n margin: 0;\n }\n }\n\n &__multi-date-row {\n display: flex;\n align-items: center;\n gap: 1rem;\n margin-bottom: 1rem;\n }\n\n &__button-container {\n display: flex;\n align-items: flex-end;\n gap: 1rem;\n }\n\n &__button {\n background-color: #ffffff;\n border: solid;\n border-width: 0.1rem;\n border-radius: 0.8rem;\n border-color: $blue700;\n padding: 0.4rem 0.8rem;\n color: $blue700;\n font-size: 1.4rem;\n text-align: center;\n text-decoration: none;\n cursor: pointer;\n\n &:hover,\n &.active {\n background-color: $blue900;\n border-color: $blue900;\n color: #ffffff;\n }\n }\n\n &__buttom-container-right {\n display: flex;\n }\n\n &__button-right {\n margin-left: auto;\n }\n\n &__label-container {\n margin-bottom: 0.4rem;\n color: $gray700;\n font-size: 0.875em;\n justify-content: space-between;\n align-items: flex-end;\n }\n\n &__checkbox {\n display: flex;\n gap: 0.5rem;\n }\n\n &__date-slot {\n border: 0.1rem solid $blue700;\n margin-bottom: 1rem;\n padding: 1rem;\n }\n }\n\n .generated-date-row {\n border-bottom: 0.1rem solid $blue700;\n }\n}\n","import { Component, Prop, h, Element, Host, State, Watch, Event, EventEmitter } from '@stencil/core';\nimport { Root, SelectItem, PredefinedValues } from './types';\nimport debounce from 'debounce';\nimport { v4 as uuidv4 } from 'uuid';\nimport { minus } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-multi-row-connected-dropdown-row',\n styleUrl: 'pn-multi-row-connected-dropdown-row.scss',\n})\nexport class PnMultiRowConnectedDropdownRow {\n @Element() hostElement: Element;\n private _dropdownData: Root[];\n private _predefinedValue: PredefinedValues;\n pnConnectedDropdown: HTMLElement = null;\n pnConnectedDropdownSlotElement: HTMLElement = null;\n pnAddFieldButton: HTMLElement = null;\n pnFirstDropdown: HTMLElement = null;\n pnSecondDropdown: HTMLElement = null;\n pnInputField: HTMLElement = null;\n pnSingleDatePicker: HTMLElement = null;\n pnStartDate: HTMLElement = null;\n pnEndDate: HTMLElement = null;\n pnShowDateRangeFiledButton: HTMLElement = null;\n pnDateRangeContainer: HTMLElement = null;\n pnGenerateDatesButton: HTMLElement = null;\n pnDaysRow: HTMLElement = null;\n pnGeneratedDatesSlot: HTMLElement = null;\n pnSaveGeneratedDatesButton: HTMLElement = null;\n pnDeleteRowButton: HTMLElement = null;\n\n @Prop() dropdownData: string | Root[] = null;\n @Prop() languageCode: string = null;\n @Prop() label: string = null;\n @Prop() firstDropdownLabel: string = null;\n @Prop() secondDropdownLabel: string = null;\n @Prop() dropdownPlaceholder: string = null;\n @Prop() addRowText: string = null;\n @Prop() inputFildLabel: string = null;\n @Prop() inputFildPlaceholder: string = null;\n @Prop() dateButtonText: string = null;\n @Prop() datePlaceholder: string = null;\n @Prop() dateDaysFromToday: number = 1;\n @Prop() allowMultipleDates: boolean = null;\n @Prop() startDateLabel: string = null;\n @Prop() endDateLabel: string = null;\n @Prop() multiDateHelperText: string = null;\n @Prop() generateDatesButtonText: string = null;\n @Prop() saveDateButtonText: string = null;\n @Prop() noDatesText: string = null;\n @Prop() index: number = null;\n @Prop() predefinedValue: string = null;\n @Prop() yearsToAddToEndDate: number = null;\n\n @State() buttonsArray: SelectItem[] = null;\n @State() firstDropdownArr: SelectItem[] = null;\n @State() secondDropdownArr: SelectItem[] = [];\n @State() firstDropdownClass: string = null;\n @State() secondDropdownClass: string = null;\n @State() firstValidDateString: string = '';\n @State() lastValidDateString: string = '';\n @State() firstDropdownPlaceholder: string = '-';\n @State() secondDropdownPlaceholder: string = '-';\n @State() starDateValue: string = '';\n @State() endDateValue: string = '';\n @State() generatedDatesArr: string[] = [];\n @State() selectedButtonValue: string = '';\n @State() inputFieldValue: string = '';\n @State() dateValue: string = '';\n @State() daysArr: SelectItem[] = null;\n\n @Event() rowValueChange: EventEmitter<PredefinedValues>;\n @Event() deleteRowEvent: EventEmitter<string>;\n\n componentWillLoad() {\n this.getPredefinedValues();\n this.setDropDownData();\n this.setFirstValidDate();\n }\n\n componentDidLoad() {\n this.setInitialValues();\n this.addEventHandlers();\n this.emittRowValues();\n }\n\n setDropDownData() {\n if (typeof this.dropdownData === 'string') {\n this._dropdownData = JSON.parse(this.dropdownData);\n } else {\n this._dropdownData = this.dropdownData;\n }\n }\n\n getPredefinedValues() {\n this._predefinedValue = JSON.parse(this.predefinedValue);\n }\n\n @Watch('predefinedValue')\n applyPredefinedValue() {\n this.getPredefinedValues();\n this.setInitialValues();\n }\n\n setInitialValues() {\n this.setButtonsValue();\n this.setFirstDropdownValues();\n this.setSecondDropdownValues();\n this.setInputField();\n this.setDateValue();\n this.setDateRangeDefaults();\n\n this.firstDropdownClass = this.firstDropdownLabel.replace(' ', '_') + '-dropdown';\n this.secondDropdownClass = this.secondDropdownLabel.replace(' ', '_') + '-dropdown';\n }\n\n setButtonsValue() {\n this.buttonsArray = [];\n\n if (this._predefinedValue.buttons?.length) {\n this.buttonsArray = this._predefinedValue.buttons;\n\n this.buttonsArray.forEach(item => {\n if (item.selected) {\n this.selectedButtonValue = item.value;\n }\n });\n } else {\n this._dropdownData.forEach(item => {\n const button: SelectItem = { selected: false, value: item.label, label: item.label };\n this.buttonsArray.push(button);\n });\n }\n }\n\n setFirstDropdownValues() {\n this.firstDropdownArr = [];\n\n if (this._predefinedValue.firstDropdown?.length) {\n this.firstDropdownArr = [...this._predefinedValue.firstDropdown];\n }\n }\n\n setSecondDropdownValues() {\n this.secondDropdownArr = [];\n\n if (this._predefinedValue.secondDropdown?.length) {\n this.secondDropdownArr = [...this._predefinedValue.secondDropdown];\n }\n }\n\n setInputField() {\n this.inputFieldValue = this._predefinedValue.input?.length ? this._predefinedValue.input : '';\n }\n\n setDateValue() {\n if (this.allowMultipleDates) {\n this.pnDateRangeContainer.style.display = this._predefinedValue.dates?.length ? '' : 'none';\n this.generatedDatesArr = this._predefinedValue.dates?.length ? this._predefinedValue.dates.split(',') : [];\n this.saveGeneratedDates();\n } else {\n this.dateValue = this._predefinedValue.dates?.length ? this._predefinedValue.dates : '';\n }\n }\n\n setDateRangeDefaults() {\n this.daysArr = this._predefinedValue.dateRange.days;\n this.starDateValue = this._predefinedValue.dateRange.startDate?.length ? this._predefinedValue.dateRange.startDate : '';\n this.endDateValue = this._predefinedValue.dateRange.endDate?.length ? this._predefinedValue.dateRange.endDate : '';\n }\n\n setFirstValidDate() {\n const yearsToadd = this.yearsToAddToEndDate ? this.yearsToAddToEndDate : 2;\n const date = new Date();\n date.setDate(date.getDate() + this.dateDaysFromToday ?? 0);\n\n const year = date.getFullYear();\n const month = (date.getMonth() + 1).toString().padStart(2, '0');\n const day = date.getDate().toString().padStart(2, '0');\n const endYear = year + yearsToadd;\n\n this.firstValidDateString = `${year.toString()}-${month}-${day}`;\n this.lastValidDateString = `${endYear.toString()}-${month}-${day}`;\n }\n\n addEventHandlers() {\n const emmitValues = debounce(this.emittRowValues.bind(this), 500);\n\n this.pnInputField.addEventListener('keyup', this.handleInput.bind(this));\n this.pnInputField.addEventListener('change', this.handleInput.bind(this));\n this.pnInputField.addEventListener('input', this.handleInput.bind(this));\n this.pnInputField.addEventListener('keyup', emmitValues);\n this.pnInputField.addEventListener('change', emmitValues);\n this.pnInputField.addEventListener('input', emmitValues);\n\n if (this.allowMultipleDates) {\n this.pnShowDateRangeFiledButton.addEventListener('click', this.showDateRangeRow.bind(this));\n this.pnStartDate.addEventListener('dateselection', this.HandleRangeDatePickers.bind(this));\n this.pnEndDate.addEventListener('dateselection', this.HandleRangeDatePickers.bind(this));\n this.pnGenerateDatesButton.addEventListener('click', this.generateDates.bind(this));\n this.pnSaveGeneratedDatesButton.addEventListener('click', this.saveGeneratedDates.bind(this));\n this.pnSaveGeneratedDatesButton.addEventListener('click', emmitValues);\n } else {\n this.pnSingleDatePicker.addEventListener('dateselection', this.setSingleDateValue.bind(this));\n this.pnSingleDatePicker.addEventListener('dateselection', emmitValues);\n }\n\n if (this.index > 0) {\n this.pnDeleteRowButton.addEventListener('click', this.deleteRow.bind(this));\n }\n }\n\n generateUniqueId() {\n return uuidv4();\n }\n\n updateSelectItemArr(arr: SelectItem[], val: string) {\n arr.forEach(item => {\n if (item.value === val) {\n item.selected = !item.selected;\n } else {\n item.selected = false;\n }\n });\n return arr;\n }\n\n handleOptionButtonClick(e) {\n e.preventDefault();\n const elmValue = e.target.innerHTML;\n\n this.buttonsArray = [...this.updateSelectItemArr(this.buttonsArray, elmValue)];\n this.selectedButtonValue = this.buttonsArray.filter(e => e.selected === true).length > 0 ? elmValue : '';\n\n if (this.selectedButtonValue?.length) {\n this.firstDropdownArr = [];\n const selectionChildren = this._dropdownData.find(arr => arr.label === elmValue);\n selectionChildren.values.forEach(item => {\n this.firstDropdownArr.push({ selected: false, value: item.label, label: item.label });\n });\n\n this.firstDropdownArr = [...this.firstDropdownArr];\n this.firstDropdownPlaceholder = this.dropdownPlaceholder;\n const firstDropdownText = this.pnFirstDropdown.querySelector('.pn-select-content span');\n firstDropdownText.innerHTML = this.dropdownPlaceholder;\n\n this.secondDropdownArr = [];\n this.secondDropdownPlaceholder = '-';\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = this.secondDropdownPlaceholder;\n } else {\n this.firstDropdownArr = [];\n this.firstDropdownPlaceholder = '-';\n const firstDropdownText = this.pnFirstDropdown.querySelector('.pn-select-content span');\n firstDropdownText.innerHTML = this.firstDropdownPlaceholder;\n\n this.secondDropdownArr = [];\n this.secondDropdownPlaceholder = '-';\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = this.secondDropdownPlaceholder;\n }\n\n this.emittRowValues();\n }\n\n handleFirstDropdownChange() {\n const selected = this.pnFirstDropdown.querySelector(\"[aria-selected=true]\");\n const selectedValue = selected?.textContent;\n this.firstDropdownArr = [...this.updateSelectItemArr(this.firstDropdownArr, selectedValue)];\n const firstDropdownText = this.pnFirstDropdown.querySelector('.pn-select-content span');\n firstDropdownText.innerHTML = selectedValue;\n\n this.secondDropdownArr = [];\n const selectedButton = this.buttonsArray.findIndex(item => item.selected === true);\n const firstChildren = this._dropdownData.find(arr => arr.label === this.buttonsArray[selectedButton].value);\n const secondChildren = firstChildren.values.find(arr => arr.label === selectedValue);\n secondChildren.values.forEach(item => {\n this.secondDropdownArr.push({ selected: false, value: item.label, label: item.label });\n });\n\n this.secondDropdownPlaceholder = this.dropdownPlaceholder;\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = this.secondDropdownPlaceholder;\n this.emittRowValues();\n }\n\n handleSecondDropdownChange() {\n const selected = this.pnSecondDropdown.querySelector(\"[aria-selected=true]\");\n const selectedValue = selected?.textContent;\n this.secondDropdownArr = [...this.updateSelectItemArr(this.secondDropdownArr, selectedValue)];\n const secondDropdownText = this.pnSecondDropdown.querySelector('.pn-select-content span');\n secondDropdownText.innerHTML = selectedValue;\n this.emittRowValues();\n }\n\n handleInput(e) {\n const elm = e.target;\n if (elm.value !== '0') {\n this.inputFieldValue = elm.value;\n }\n }\n\n showDateRangeRow() {\n if (this.pnDateRangeContainer.style.display === 'none') {\n this.pnDateRangeContainer.style.display = '';\n } else {\n this.pnDateRangeContainer.style.display = 'none';\n }\n }\n\n HandleRangeDatePickers(e) {\n const elm = e.target;\n\n if (elm === this.pnStartDate) {\n this.starDateValue = e.detail;\n }\n\n if (elm === this.pnEndDate) {\n this.endDateValue = e.detail;\n }\n }\n\n generateDates(e) {\n e.preventDefault();\n const allCheckboxes = this.pnDaysRow.querySelectorAll('pn-filter-checkbox');\n const selectedDays: string[] = [];\n this.generatedDatesArr = [];\n allCheckboxes.forEach(element => {\n const input = element.querySelector('input');\n if (input.value) {\n selectedDays.push(input.value);\n }\n });\n\n if (selectedDays.length && this.starDateValue && this.endDateValue) {\n this.daysArr.forEach(item => {\n if (selectedDays.some(x => x === item.value)) {\n item.selected = true;\n } else {\n item.selected = false;\n }\n });\n\n const startDate = new Date(Date.parse(this.starDateValue));\n const endDate = new Date(Date.parse(this.endDateValue));\n\n for (var d = startDate; d <= endDate; d.setDate(d.getDate() + 1)) {\n const i = this.daysArr.findIndex(item => parseInt(item.value) === d.getDay());\n\n if (this.daysArr[i]?.selected) {\n const year = d.getFullYear();\n const month = (d.getMonth() + 1).toString().padStart(2, '0');\n const day = d.getDate().toString().padStart(2, '0');\n this.generatedDatesArr.push(`${year}-${month}-${day}`);\n }\n }\n }\n }\n\n deleteGeneratedDateRow(index) {\n this.generatedDatesArr.splice(index, 1);\n this.generatedDatesArr = [...this.generatedDatesArr];\n }\n\n saveGeneratedDates() {\n if (this.generatedDatesArr?.length) {\n this.dateValue = String(this.generatedDatesArr);\n const dateCount = this.generatedDatesArr.length;\n const buttonTextElm = this.pnShowDateRangeFiledButton.querySelector('.pn-button-content');\n buttonTextElm.innerHTML = dateCount > 0 ? `${this.dateButtonText} (${dateCount})` : this.dateButtonText;\n this.showDateRangeRow();\n }\n }\n\n setSingleDateValue(e) {\n const elm = e.target;\n if (elm === this.pnSingleDatePicker) {\n this.dateValue = e.detail;\n }\n }\n\n emittRowValues() {\n this.rowValueChange.emit({\n id: this._predefinedValue.id,\n buttons: this.buttonsArray,\n firstDropdown: this.firstDropdownArr,\n secondDropdown: this.secondDropdownArr,\n input: this.inputFieldValue,\n dates: this.dateValue,\n dateRange: {\n days: this.daysArr,\n startDate: this.starDateValue,\n endDate: this.endDateValue,\n },\n });\n }\n\n deleteRow() {\n this.deleteRowEvent.emit(this._predefinedValue.id);\n }\n\n setActive(active: boolean) {\n return active ? 'connected-dropdown__button active' : 'connected-dropdown__button';\n }\n\n render() {\n return (\n <Host>\n <div ref={el => (this.pnConnectedDropdownSlotElement = el as HTMLElement)} class=\"connected-dropdown-slot-element\">\n <div class=\"connected-dropdown-parent-element connected-dropdown\">\n <div class=\"connected-dropdown__row__no-margin\">\n <label>{this.label}</label>\n </div>\n\n <div class=\"connected-dropdown__row button-row\">\n <div class=\"connected-dropdown__button-container option-buttons\">\n {this.buttonsArray?.map(item => (\n <button class={`${this.setActive(item.selected)}`} id={this.generateUniqueId()} onClick={this.handleOptionButtonClick.bind(this)}>\n {item.value}\n </button>\n ))}\n </div>\n\n <div class=\"connected-dropdown__button-container delete-button\">\n {this.index > 0 ? (\n <pn-button ref={el => (this.pnDeleteRowButton = el as HTMLElement)} small=\"true\" icon={minus} appearance=\"warning\" index={this.index}>\n Delete\n </pn-button>\n ) : null}\n </div>\n </div>\n\n <div class=\"connected-dropdown__row input-row\">\n <pn-select\n ref={el => (this.pnFirstDropdown = el as HTMLElement)}\n class=\"pn-row-select-dropdown dropDown1-dropdown\"\n placeholder={this.firstDropdownPlaceholder}\n label={this.firstDropdownLabel}\n empty-option=\"true\"\n >\n {this.firstDropdownArr?.map((item, i) => (\n <pn-option index={i} label={item.label} value={item.value} selected={item.selected} onClick={debounce(this.handleFirstDropdownChange.bind(this), 500)}></pn-option>\n ))}\n </pn-select>\n\n <pn-select\n ref={el => (this.pnSecondDropdown = el as HTMLElement)}\n class=\"pn-row-select-dropdown dropDown2-dropdown\"\n placeholder={this.secondDropdownPlaceholder}\n label={this.secondDropdownLabel}\n empty-option=\"true\"\n >\n {this.secondDropdownArr?.map((item, i) => (\n <pn-option index={i} label={item.label} value={item.value} selected={item.selected} onClick={debounce(this.handleSecondDropdownChange.bind(this), 500)}></pn-option>\n ))}\n </pn-select>\n\n <pn-marketweb-input\n ref={el => (this.pnInputField = el as HTMLElement)}\n type=\"number\"\n placeholder=\"0\"\n label={this.inputFildLabel}\n value={this.inputFieldValue}\n min=\"1\"\n ></pn-marketweb-input>\n\n {this.allowMultipleDates ? (\n <pn-button ref={el => (this.pnShowDateRangeFiledButton = el as HTMLElement)} class=\"connected-dropdown__toggle-date-button\" small=\"true\" appearance=\"light\">\n {this.dateButtonText}\n </pn-button>\n ) : (\n <div class=\"connected-dropdown__date-container\">\n <div class=\"connected-dropdown__label-container\">\n <label>{this.dateButtonText}</label>\n </div>\n <pn-date-picker\n ref={el => (this.pnSingleDatePicker = el as HTMLElement)}\n range=\"false\"\n disable-weekends={true}\n min-date={this.firstValidDateString}\n language={this.languageCode}\n placeholder={this.datePlaceholder}\n class=\"connected-dropdown__date-picker\"\n start={this.dateValue?.length ? this.dateValue : null}\n ></pn-date-picker>\n </div>\n )}\n </div>\n\n {this.allowMultipleDates ? (\n <div ref={el => (this.pnDateRangeContainer = el as HTMLElement)} class=\"connected-dropdown__date-container\" style={{ display: 'none' }}>\n {this.multiDateHelperText ? (\n <div class=\"connected-dropdown__row\">\n <p>{this.multiDateHelperText}</p>\n </div>\n ) : null}\n\n <div class=\"connected-dropdown__multi-date-row\">\n <div class=\"connected-dropdown__date-container\">\n <div class=\"connected-dropdown__label-container\">\n <label>{this.startDateLabel}</label>\n </div>\n\n <pn-date-picker\n ref={el => (this.pnStartDate = el as HTMLElement)}\n range=\"false\"\n disable-weekends={true}\n class=\"connected-dropdown__date-picker\"\n min-date={this.firstValidDateString}\n max-date={this.lastValidDateString}\n language={this.languageCode}\n placeholder={this.datePlaceholder}\n start={this.starDateValue?.length ? this.starDateValue : null}\n ></pn-date-picker>\n </div>\n\n <div class=\"connected-dropdown__date-container\">\n <div class=\"connected-dropdown__label-container\">\n <label>{this.endDateLabel}</label>\n </div>\n <pn-date-picker\n ref={el => (this.pnEndDate = el as HTMLElement)}\n range=\"false\"\n disable-weekends={true}\n class=\"connected-dropdown__date-picker\"\n min-date={this.firstValidDateString}\n max-date={this.lastValidDateString}\n language={this.languageCode}\n placeholder={this.datePlaceholder}\n start={this.endDateValue?.length ? this.endDateValue : null}\n ></pn-date-picker>\n </div>\n </div>\n <div ref={el => (this.pnDaysRow = el as HTMLElement)} class=\"connected-dropdown__multi-date-row\">\n {this.daysArr?.map((day: SelectItem) => (\n <div class=\"connected-dropdown__checkbox\">\n <pn-filter-checkbox checkboxid={'day-' + day.value} name={'__' + day.label} value={day.value} checked={day.selected}></pn-filter-checkbox>\n <label htmlFor={'day-' + day.value}>{day.label}</label>\n </div>\n ))}\n </div>\n\n <div class=\"connected-dropdown__row\">\n <pn-button ref={el => (this.pnGenerateDatesButton = el as HTMLElement)} small=\"true\">\n {this.generateDatesButtonText}\n </pn-button>\n </div>\n\n <div ref={el => (this.pnGeneratedDatesSlot = el as HTMLElement)} class=\"connected-dropdown__date-slot\">\n {this.generatedDatesArr?.map((date: string, i) => (\n <div class=\"connected-dropdown__row generated-date-row\">\n <p>{date}</p>\n <pn-button index={i} small=\"true\" icon={minus} appearance=\"warning\" id={'delete-date-' + i} onClick={this.deleteGeneratedDateRow.bind(this, i)}>\n {date}\n </pn-button>\n </div>\n ))}\n\n {!this.generatedDatesArr?.length ? <p>{this.noDatesText}</p> : null}\n </div>\n\n <div class=\"connected-dropdown__row\">\n <pn-button ref={el => (this.pnSaveGeneratedDatesButton = el as HTMLElement)} class=\"connected-dropdown__button-right\" small=\"true\">\n {this.saveDateButtonText}\n </pn-button>\n </div>\n </div>\n ) : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@postnord/pn-marketweb-components",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.2",
|
|
4
4
|
"description": "PostNord Market Websites Components",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -61,12 +61,13 @@
|
|
|
61
61
|
"jest-cli": "29.7.0",
|
|
62
62
|
"npm-run-all": "4.1.5",
|
|
63
63
|
"pn-design-assets": "1.8.1",
|
|
64
|
-
"puppeteer": "22.11.
|
|
64
|
+
"puppeteer": "^22.11.2",
|
|
65
65
|
"sass": "^1.77.5",
|
|
66
66
|
"sass-loader": "14.2.1",
|
|
67
67
|
"storybook": "^8.1.8",
|
|
68
68
|
"style-loader": "2.0.0",
|
|
69
69
|
"uuid": "^9.0.0",
|
|
70
|
+
"vite": "5.3.1",
|
|
70
71
|
"vite-tsconfig-paths": "^4.3.2"
|
|
71
72
|
},
|
|
72
73
|
"license": "MIT",
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,h as o,d as n,g as d}from"./p-06555615.js";import{d as s}from"./p-aed52bc1.js";import{a as i}from"./p-76c2c01f.js";const c="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}pn-dropdown-choice-adds-row{gap:1rem}pn-dropdown-choice-adds-row .dropdown-choice-form-row{display:flex;gap:1rem}pn-dropdown-choice-adds-row .pn-row-select-dropdown{width:50%;margin-bottom:1rem}@media only screen and (max-width: 640px){pn-dropdown-choice-adds-row .pn-row-select-dropdown{width:100%}}pn-dropdown-choice-adds-row .pn-dropdown-choice-table{width:100%;border-spacing:0rem}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead th{text-align:left;padding:1rem 0.5rem}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead th label{color:#5e554a;font-size:1.4rem;font-weight:400}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--name{width:40%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--dropdown{width:40%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--input{width:10%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table thead .table-header--delete{width:10%}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tbody td{padding:0.5rem}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tbody tr:nth-child(even){background-color:#effbff}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tbody .tr-delete{text-align:center}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tfoot td small{color:#a70707;vertical-align:middle}pn-dropdown-choice-adds-row .pn-dropdown-choice-table tfoot td pn-icon{margin-right:0.25em;vertical-align:middle}";const a=c;const r=class{constructor(o){t(this,o);this.rowvalues=e(this,"rowvalues",7);this.pnRowSelectDropdown=null;this.tableHead=null;this.tableBody=null;this.formRowEvent=t=>{var e;const o=s(this.updateHiddenFieldValue.bind(this),500);if(t.target.matches("input")){["change","keyup"].forEach((e=>{t.target.addEventListener(e,o)}))}else{const n=(e=t.target.closest(".generated-table-row"))===null||e===void 0?void 0:e.querySelector("pn-select");if(n){n.addEventListener("selectOption",o)}}};this.dropdownData=null;this.addRowDropdownName="";this.addRowDropdownPlaceholder="";this.addRowDropdownLabel="";this.rowNameLabel="";this.rowHasDropdown=true;this.rowDropdownLabel="";this.rowDropdownPlaceholder="";this.rowInputLabel="";this.rowDeleteButtonText="";this.totalInputLimit=0;this.inputLimitWarning=null;this.nextRowIndex=null;this.rowSelectDropdownArr=null;this.columnCount=null;this.showWarning=false;this.formValue=null}dropdownDataWatcher(){if(typeof this.dropdownData==="string"){this._dropdownData=JSON.parse(this.dropdownData)}else{this._dropdownData=this.dropdownData}}componentWillLoad(){this.dropdownDataWatcher()}componentDidLoad(){this.setInitialValues();this.addEventHandlers()}addEventHandlers(){this.pnRowSelectDropdown.addEventListener("selectOption",s(this.addRowElement.bind(this),500))}setInitialValues(){this.nextRowIndex=0;this.columnCount=this.rowHasDropdown?4:3;this.setRowSelectDropdownArr()}setRowSelectDropdownArr(){this.rowSelectDropdownArr=[];this._dropdownData.forEach((t=>{this.rowSelectDropdownArr.push(t.label)}))}updateHiddenFieldValue(){const t=[...this.tableBody.querySelectorAll("tr")];const e=this.rowHasDropdown?3:2;const o=[];if(t.length){t.forEach((t=>{var n,d,s;const i={row:[]};const c=t.querySelector(".tr-name");const a=t.querySelector(".tr-dropdown");const r=t.querySelector(".tr-input");const l={name:this.rowNameLabel,value:c===null||c===void 0?void 0:c.innerHTML};i.row.push(l);const h=a.querySelector(".current-selection");if(h){const t=(n=h.textContent)!==null&&n!==void 0?n:"";if(t.length){const e={name:this.rowDropdownLabel,value:t};i.row.push(e)}}if(!h&&e===3){const t={name:this.rowDropdownLabel,value:""};i.row.push(t)}const p=parseInt((s=(d=r.querySelector("input"))===null||d===void 0?void 0:d.value)!==null&&s!==void 0?s:"0");if(p>0){const t={name:this.rowInputLabel,value:p.toString()};i.row.push(t)}if(i.row.length===e){o.push(i)}}))}if(o.length&&o.length===t.length){const t=JSON.stringify(o);this.formValue=`PN-JSON|${t}`}else{this.formValue=""}this.rowvalues.emit(this.formValue);this.checkInputTotal()}addRowElement(){const t=this.pnRowSelectDropdown.querySelector("[aria-selected=true]");const e=t===null||t===void 0?void 0:t.textContent;const o=this.tableBody;const n=document.createElement("tr");n.setAttribute("index",`${this.nextRowIndex}`);n.setAttribute("class","generated-table-row");n.onclick=t=>this.formRowEvent(t);const d=document.createElement("td");d.setAttribute("class","tr-name");d.innerHTML=e;d.dataset.name=e;n.appendChild(d);if(this.rowHasDropdown){const t=this.createDropdownColumn(e);n.appendChild(t)}const s=this.createInputColumn(e);n.appendChild(s);const i=this.createDeleteButtonColumn();n.appendChild(i);o.appendChild(n);this.updateRowSelectDropdown();this.nextRowIndex++}getCurrentRow(t){return this.hostElement.querySelectorAll(`.tr-name[data-name='${t}'`)}createDropdownColumn(t){const e=document.createElement("td");e.setAttribute("class","tr-dropdown");const o=this._dropdownData.find((e=>e.label===t));const n=[];const d=this.getCurrentRow(t);d.forEach((t=>{var e,o;n.push((o=(e=t.parentElement)===null||e===void 0?void 0:e.querySelector(".tr-dropdown [aria-selected=true]"))===null||o===void 0?void 0:o.textContent)}));if(Array.isArray(o.values)&&o.values.length){const d=document.createElement("pn-select");d.setAttribute("name",`${t}-dropdown`);d.setAttribute("placeholder",this.rowDropdownPlaceholder);const s=o.values.filter((t=>!(n===null||n===void 0?void 0:n.includes(t.value))));s.forEach((t=>{const e=document.createElement("pn-option");e.setAttribute("label",t.label);e.setAttribute("value",t.label);d.appendChild(e)}));e.appendChild(d)}return e}createInputColumn(t){const e=document.createElement("td");e.setAttribute("class","tr-input");const o=document.createElement("pn-marketweb-input");o.setAttribute("type","number");o.setAttribute("name",`${t}-input`);o.setAttribute("placeholder","0");e.appendChild(o);return e}createDeleteButtonColumn(){const t=document.createElement("td");t.setAttribute("class","tr-delete");const e=document.createElement("pn-button");e.onclick=t=>this.deleteRow(t);e.setAttribute("appearance","warning");e.setAttribute("small","true");e.appendChild(document.createTextNode(this.rowDeleteButtonText));t.appendChild(e);return t}updateRowSelectDropdown(){const t=[].map.call(this.tableBody.querySelectorAll(".tr-name"),(t=>{var e,o,n;const d=(e=t===null||t===void 0?void 0:t.parentElement)===null||e===void 0?void 0:e.querySelector(".tr-dropdown");const s=(o=d===null||d===void 0?void 0:d.querySelector(".pn-select-content span"))===null||o===void 0?void 0:o.textContent;const i={rowName:t===null||t===void 0?void 0:t.innerHTML,selectedValue:(n=d===null||d===void 0?void 0:d.querySelector("[aria-selected=true]"))===null||n===void 0?void 0:n.textContent,placeholder:s};return i}));if(t.length){this.rowSelectDropdownArr=[];this._dropdownData.forEach((e=>{const o=t.filter((t=>t.rowName===e.label));const n=e.values.length>0&&o.length>=e.values.length||e.values.length===0&&o.length===1;if(!n){this.rowSelectDropdownArr.push(e.label)}}))}else{this.setRowSelectDropdownArr()}const e=this.pnRowSelectDropdown.querySelectorAll("pn-option");e.forEach((t=>{t.removeAttribute("selected")}));const o=this.pnRowSelectDropdown.querySelector(".pn-select-content span");o.innerHTML=this.addRowDropdownPlaceholder;this.updateHiddenFieldValue()}deleteRow(t){t.preventDefault();this.nextRowIndex--;const e=t.currentTarget;const o=e.closest("tr");o.remove();const n=[...this.tableBody.querySelectorAll("tr")];n.map(((t,e)=>{t.setAttribute("index",`${e}`)}));this.updateRowSelectDropdown()}checkInputTotal(){const t=this.tableBody.querySelectorAll("tr");if(this.totalInputLimit===0||t.length<1){this.showWarning=false;return}let e=0;t.forEach((t=>{var o;const n=t.querySelector("pn-marketweb-input");if(n.value){e+=(o=parseInt(n.value))!==null&&o!==void 0?o:0}}));this.showWarning=e>this.totalInputLimit?true:false}render(){var t;return o(n,{key:"e42637fdfbc059fe081da8fb8af2a2469f357d15"},o("div",{key:"da4240a50ed0be9b937bbcb998ca26569c1ffd8c",class:"dropdown-choice-form-row"},o("pn-select",{key:"7b57bbef46778d4ce63b937e80b2df10501e36c5",ref:t=>this.pnRowSelectDropdown=t,name:this.addRowDropdownName,placeholder:this.addRowDropdownPlaceholder,label:this.addRowDropdownLabel,class:"pn-row-select-dropdown","empty-option":"true"},(t=this.rowSelectDropdownArr)===null||t===void 0?void 0:t.map((t=>o("pn-option",{label:t,value:t}))))),o("div",{key:"ae290b0a39886fead6a6cf6cff9e7ff0329b0cf2",class:"dropdown-choice-form-row"},o("table",{key:"1fac0a253d5ea42876bda4a32dd43db1223bd650",class:"pn-dropdown-choice-table"},o("thead",{key:"dc119ee9a215b433e480d3ace1a04fc4c093fe5a",ref:t=>this.tableHead=t},this.nextRowIndex===0?null:o("tr",null,o("th",{class:"table-header--name"},o("label",null,this.rowNameLabel)),this.rowHasDropdown?o("th",{class:"table-header--dropdown"},o("label",null,this.rowDropdownLabel)):null,o("th",{class:"table-header--input"},o("label",null,this.rowInputLabel)),o("th",{class:"table-header--delete"}))),o("tbody",{key:"334d8505ff7214e80cf26ae638134b8efedf1c6e",ref:t=>this.tableBody=t,class:"pn-dropdown-choice-table-slot"},o("slot",{key:"40463ee8d5959bb3c2fbf10d7256883699eaf5ca"})),o("tfoot",{key:"8bc7637282d2e5656096233a7b431ae6d9961972"},this.showWarning?o("tr",null,o("td",{colSpan:this.columnCount},o("pn-icon",{icon:i,small:true,color:"warning"}),o("small",{class:"dropdown-choice-error-message"},this.inputLimitWarning))):null))))}get hostElement(){return d(this)}static get watchers(){return{dropdownData:["dropdownDataWatcher"]}}};r.style=a;export{r as pn_dropdown_choice_adds_row};
|
|
2
|
+
//# sourceMappingURL=p-07253be3.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["pnDropdownChoiceAddsRowCss","PnDropdownChoiceAddsRowStyle0","pnDropdownChoiceAddsRow","this","pnRowSelectDropdown","tableHead","tableBody","formRowEvent","e","debouncedAddValue","debounce","updateHiddenFieldValue","bind","target","matches","forEach","eventName","addEventListener","rowDropdown","_a","closest","querySelector","dropdownDataWatcher","dropdownData","_dropdownData","JSON","parse","componentWillLoad","componentDidLoad","setInitialValues","addEventHandlers","addRowElement","nextRowIndex","columnCount","rowHasDropdown","setRowSelectDropdownArr","rowSelectDropdownArr","element","push","label","allRows","querySelectorAll","columnValueCount","formValues","length","elm","row","nameElm","dropdownElm","inputElm","nameValue","name","rowNameLabel","value","innerHTML","dropdown","dropdownSelection","textContent","dropdownValue","rowDropdownLabel","inputValue","parseInt","_c","_b","inputColumnValue","rowInputLabel","toString","valueJsonString","stringify","formValue","rowvalues","emit","checkInputTotal","selected","selectedValue","slotElm","newRow","document","createElement","setAttribute","onclick","rowNameColumn","dataset","appendChild","rowDropdownColumn","createDropdownColumn","rowInputColumn","createInputColumn","deleteButton","createDeleteButtonColumn","updateRowSelectDropdown","getCurrentRow","hostElement","dropdownColumn","selectedItem","find","arr","selectedOptionValues","currentRow","parentElement","Array","isArray","values","rowDropdownPlaceholder","filtereredValues","filter","item","includes","childItem","childOption","inputColumn","buttonColumn","buttonElm","deleteRow","createTextNode","rowDeleteButtonText","rows","map","call","el","dropdownPlaceholder","rowName","placeholder","filteredRows","mainOptionReachedMaxPossibleRows","selectOptions","removeAttribute","addRowDropdownPlaceholder","preventDefault","targetElm","currentTarget","targetRow","remove","index","totalInputLimit","showWarning","totalInput","inputField","render","h","Host","key","class","ref","addRowDropdownName","addRowDropdownLabel","colSpan","icon","alert_exclamation_circle","small","color","inputLimitWarning"],"sources":["src/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.scss?tag=pn-dropdown-choice-adds-row","src/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.tsx"],"sourcesContent":["@import '../../../globals/main.scss';\n\npn-dropdown-choice-adds-row {\n gap: 1rem;\n\n .dropdown-choice-form-row {\n display: flex;\n gap: 1rem;\n }\n\n .pn-row-select-dropdown {\n width: 50%;\n margin-bottom: 1rem;\n }\n\n @media only screen and (max-width: 640px) {\n .pn-row-select-dropdown {\n width: 100%;\n }\n }\n\n .pn-dropdown-choice-table {\n width: 100%;\n border-spacing: 0rem;\n\n thead {\n th {\n text-align: left;\n padding: 1rem 0.5rem;\n\n label {\n color: $gray700;\n font-size: 1.4rem;\n font-weight: 400;\n }\n }\n\n .table-header {\n &--name {\n width: 40%;\n }\n\n &--dropdown {\n width: 40%;\n }\n\n &--input {\n width: 10%;\n }\n\n &--delete {\n width: 10%;\n }\n }\n }\n\n tbody {\n td {\n padding: 0.5rem;\n }\n\n tr:nth-child(even) {\n background-color: #effbff;\n }\n\n .tr-delete {\n text-align: center;\n }\n }\n\n tfoot {\n td {\n small {\n color: $warning;\n vertical-align: middle;\n }\n\n pn-icon {\n margin-right: 0.25em;\n vertical-align: middle;\n }\n }\n }\n }\n}\n","import { Component, Prop, h, Element, State, Host, Watch, Event, EventEmitter } from '@stencil/core';\nimport { FormValue, RowValue, Root } from './types';\nimport debounce from 'debounce';\nimport { alert_exclamation_circle } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-dropdown-choice-adds-row',\n styleUrl: 'pn-dropdown-choice-adds-row.scss',\n})\nexport class pnDropdownChoiceAddsRow {\n @Element() hostElement: Element;\n pnRowSelectDropdown: HTMLElement = null;\n tableHead: HTMLElement = null;\n tableBody: HTMLElement = null;\n private _dropdownData: Root[];\n\n @Prop() dropdownData: string | Root[] = null;\n @Prop() addRowDropdownName: string = '';\n @Prop() addRowDropdownPlaceholder: string = '';\n @Prop() addRowDropdownLabel: string = '';\n @Prop() rowNameLabel: string = '';\n @Prop() rowHasDropdown: boolean = true;\n @Prop() rowDropdownLabel: string = '';\n @Prop() rowDropdownPlaceholder: string = '';\n @Prop() rowInputLabel: string = '';\n @Prop() rowDeleteButtonText: string = '';\n @Prop() totalInputLimit: number = 0;\n @Prop() inputLimitWarning: string = null;\n\n @State() nextRowIndex: number = null;\n @State() rowSelectDropdownArr: string[] = null;\n @State() columnCount: number = null;\n @State() showWarning: boolean = false;\n @State() formValue: string = null;\n\n @Event() rowvalues: EventEmitter<string>;\n\n @Watch('dropdownData')\n dropdownDataWatcher() {\n if (typeof this.dropdownData === 'string') {\n this._dropdownData = JSON.parse(this.dropdownData);\n } else {\n this._dropdownData = this.dropdownData;\n }\n }\n\n componentWillLoad() {\n this.dropdownDataWatcher();\n }\n\n componentDidLoad() {\n this.setInitialValues();\n this.addEventHandlers();\n }\n\n addEventHandlers() {\n this.pnRowSelectDropdown.addEventListener('selectOption', debounce(this.addRowElement.bind(this), 500));\n }\n\n setInitialValues() {\n this.nextRowIndex = 0;\n this.columnCount = this.rowHasDropdown ? 4 : 3;\n this.setRowSelectDropdownArr();\n }\n\n setRowSelectDropdownArr() {\n this.rowSelectDropdownArr = [];\n this._dropdownData.forEach(element => {\n this.rowSelectDropdownArr.push(element.label);\n });\n }\n\n formRowEvent = e => {\n const debouncedAddValue = debounce(this.updateHiddenFieldValue.bind(this), 500);\n\n if (e.target.matches('input')) {\n ['change', 'keyup'].forEach(eventName => {\n e.target.addEventListener(eventName, debouncedAddValue);\n });\n } else {\n const rowDropdown = e.target.closest('.generated-table-row')?.querySelector('pn-select') as HTMLElement;\n if (rowDropdown) {\n rowDropdown.addEventListener('selectOption', debouncedAddValue);\n }\n }\n };\n\n updateHiddenFieldValue() {\n const allRows = [...this.tableBody.querySelectorAll('tr')];\n const columnValueCount = this.rowHasDropdown ? 3 : 2;\n const formValues: FormValue[] = [];\n\n if (allRows.length) {\n allRows.forEach(elm => {\n const row: FormValue = { row: [] };\n const nameElm = elm.querySelector('.tr-name');\n const dropdownElm = elm.querySelector('.tr-dropdown');\n const inputElm = elm.querySelector('.tr-input');\n\n const nameValue: RowValue = { name: this.rowNameLabel, value: nameElm?.innerHTML };\n row.row.push(nameValue);\n\n const dropdown = dropdownElm.querySelector('.current-selection');\n if (dropdown) {\n const dropdownSelection = dropdown.textContent ?? '';\n\n if (dropdownSelection.length) {\n const dropdownValue: RowValue = {\n name: this.rowDropdownLabel,\n value: dropdownSelection,\n };\n row.row.push(dropdownValue);\n }\n }\n if (!dropdown && columnValueCount === 3) {\n const dropdownValue: RowValue = {\n name: this.rowDropdownLabel,\n value: '',\n };\n row.row.push(dropdownValue);\n }\n\n const inputValue = parseInt(inputElm.querySelector('input')?.value ?? '0');\n if (inputValue > 0) {\n const inputColumnValue: RowValue = { name: this.rowInputLabel, value: inputValue.toString() };\n row.row.push(inputColumnValue);\n }\n\n if (row.row.length === columnValueCount) {\n formValues.push(row);\n }\n });\n }\n\n if (formValues.length && formValues.length === allRows.length) {\n const valueJsonString = JSON.stringify(formValues);\n this.formValue = `PN-JSON|${valueJsonString}`;\n } else {\n this.formValue = '';\n }\n\n this.rowvalues.emit(this.formValue);\n this.checkInputTotal();\n }\n\n addRowElement() {\n const selected = this.pnRowSelectDropdown.querySelector('[aria-selected=true]');\n const selectedValue = selected?.textContent;\n const slotElm = this.tableBody;\n const newRow = document.createElement('tr');\n newRow.setAttribute('index', `${this.nextRowIndex}`);\n newRow.setAttribute('class', 'generated-table-row');\n newRow.onclick = e => this.formRowEvent(e);\n const rowNameColumn = document.createElement('td');\n rowNameColumn.setAttribute('class', 'tr-name');\n rowNameColumn.innerHTML = selectedValue;\n rowNameColumn.dataset.name = selectedValue;\n newRow.appendChild(rowNameColumn);\n\n if (this.rowHasDropdown) {\n const rowDropdownColumn = this.createDropdownColumn(selectedValue);\n newRow.appendChild(rowDropdownColumn);\n }\n\n const rowInputColumn = this.createInputColumn(selectedValue);\n newRow.appendChild(rowInputColumn);\n const deleteButton = this.createDeleteButtonColumn();\n newRow.appendChild(deleteButton);\n\n slotElm.appendChild(newRow);\n this.updateRowSelectDropdown();\n this.nextRowIndex++;\n }\n\n getCurrentRow(selectedValue: string) {\n return this.hostElement.querySelectorAll(`.tr-name[data-name='${selectedValue}'`);\n }\n\n createDropdownColumn(selectedValue: string) {\n const dropdownColumn = document.createElement('td');\n dropdownColumn.setAttribute('class', 'tr-dropdown');\n const selectedItem = this._dropdownData.find(arr => arr.label === selectedValue);\n const selectedOptionValues = [];\n const currentRow = this.getCurrentRow(selectedValue);\n\n currentRow.forEach(row => {\n selectedOptionValues.push(row.parentElement?.querySelector('.tr-dropdown [aria-selected=true]')?.textContent);\n });\n\n if (Array.isArray(selectedItem.values) && selectedItem.values.length) {\n const dropdown = document.createElement('pn-select');\n dropdown.setAttribute('name', `${selectedValue}-dropdown`);\n dropdown.setAttribute('placeholder', this.rowDropdownPlaceholder);\n\n const filtereredValues = selectedItem.values.filter(item => !selectedOptionValues?.includes(item.value));\n\n filtereredValues.forEach(childItem => {\n const childOption = document.createElement('pn-option');\n childOption.setAttribute(\"label\", childItem.label);\n childOption.setAttribute(\"value\", childItem.label)\n dropdown.appendChild(childOption);\n });\n\n dropdownColumn.appendChild(dropdown);\n }\n\n return dropdownColumn;\n }\n\n createInputColumn(selectedValue: string) {\n const inputColumn = document.createElement('td');\n inputColumn.setAttribute('class', 'tr-input');\n const inputElm = document.createElement('pn-marketweb-input');\n inputElm.setAttribute('type', 'number');\n inputElm.setAttribute('name', `${selectedValue}-input`);\n inputElm.setAttribute('placeholder', '0');\n inputColumn.appendChild(inputElm);\n return inputColumn;\n }\n\n createDeleteButtonColumn() {\n const buttonColumn = document.createElement('td');\n buttonColumn.setAttribute('class', 'tr-delete');\n const buttonElm = document.createElement('pn-button');\n buttonElm.onclick = e => this.deleteRow(e);\n buttonElm.setAttribute('appearance', 'warning');\n buttonElm.setAttribute('small', 'true');\n buttonElm.appendChild(document.createTextNode(this.rowDeleteButtonText));\n buttonColumn.appendChild(buttonElm);\n return buttonColumn;\n }\n\n updateRowSelectDropdown() {\n type Row = { rowName: string; selectedValue: string; placeholder: string };\n\n const rows: Row[] = [].map.call(this.tableBody.querySelectorAll('.tr-name'), el => {\n const dropdownColumn = el?.parentElement?.querySelector('.tr-dropdown');\n const dropdownPlaceholder = dropdownColumn?.querySelector('.pn-select-content span')?.textContent;\n const row: Row = {\n rowName: el?.innerHTML,\n selectedValue: dropdownColumn?.querySelector('[aria-selected=true]')?.textContent,\n placeholder: dropdownPlaceholder,\n };\n return row;\n });\n\n if (rows.length) {\n this.rowSelectDropdownArr = [];\n\n this._dropdownData.forEach(element => {\n const filteredRows = rows.filter(row => row.rowName === element.label);\n const mainOptionReachedMaxPossibleRows =\n (element.values.length > 0 && filteredRows.length >= element.values.length) || (element.values.length === 0 && filteredRows.length === 1);\n if (!mainOptionReachedMaxPossibleRows) {\n this.rowSelectDropdownArr.push(element.label);\n }\n });\n } else {\n this.setRowSelectDropdownArr();\n }\n\n const selectOptions = this.pnRowSelectDropdown.querySelectorAll('pn-option');\n selectOptions.forEach(elm => {\n elm.removeAttribute('selected');\n });\n\n const placeholder = this.pnRowSelectDropdown.querySelector('.pn-select-content span');\n placeholder.innerHTML = this.addRowDropdownPlaceholder;\n\n this.updateHiddenFieldValue();\n }\n\n deleteRow(e: Event) {\n e.preventDefault();\n this.nextRowIndex--;\n const targetElm = e.currentTarget as HTMLButtonElement;\n const targetRow = targetElm.closest('tr');\n targetRow.remove();\n const allRows = [...this.tableBody.querySelectorAll('tr')];\n\n allRows.map((elm, index) => {\n elm.setAttribute('index', `${index}`);\n });\n\n this.updateRowSelectDropdown();\n }\n\n checkInputTotal() {\n const allRows = this.tableBody.querySelectorAll('tr');\n\n if (this.totalInputLimit === 0 || allRows.length < 1) {\n this.showWarning = false;\n return;\n }\n\n let totalInput = 0;\n\n allRows.forEach(element => {\n const inputField = element.querySelector('pn-marketweb-input');\n if (inputField.value) {\n totalInput += parseInt(inputField.value) ?? 0;\n }\n });\n this.showWarning = totalInput > this.totalInputLimit ? true : false;\n }\n\n render() {\n return (\n <Host>\n <div class=\"dropdown-choice-form-row\">\n <pn-select\n ref={el => (this.pnRowSelectDropdown = el as HTMLElement)}\n name={this.addRowDropdownName}\n placeholder={this.addRowDropdownPlaceholder}\n label={this.addRowDropdownLabel}\n class=\"pn-row-select-dropdown\"\n >\n {this.rowSelectDropdownArr?.map((value: string) => <pn-option label={value} value={value}></pn-option>)}\n </pn-select>\n </div>\n <div class=\"dropdown-choice-form-row\">\n <table class=\"pn-dropdown-choice-table\">\n <thead ref={el => (this.tableHead = el as HTMLElement)}>\n {this.nextRowIndex === 0 ? null : (\n <tr>\n <th class=\"table-header--name\">\n <label>{this.rowNameLabel}</label>\n </th>\n {this.rowHasDropdown ? (\n <th class=\"table-header--dropdown\">\n <label>{this.rowDropdownLabel}</label>\n </th>\n ) : null}\n <th class=\"table-header--input\">\n <label>{this.rowInputLabel}</label>\n </th>\n <th class=\"table-header--delete\"></th>\n </tr>\n )}\n </thead>\n <tbody ref={el => (this.tableBody = el as HTMLElement)} class=\"pn-dropdown-choice-table-slot\">\n <slot></slot>\n </tbody>\n <tfoot>\n {this.showWarning ? (\n <tr>\n <td colSpan={this.columnCount}>\n <pn-icon icon={alert_exclamation_circle} small color=\"warning\"></pn-icon>\n <small class=\"dropdown-choice-error-message\">{this.inputLimitWarning}</small>\n </td>\n </tr>\n ) : null}\n </tfoot>\n </table>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["pnDropdownChoiceAddsRowCss","PnDropdownChoiceAddsRowStyle0","pnDropdownChoiceAddsRow","this","pnRowSelectDropdown","tableHead","tableBody","formRowEvent","e","debouncedAddValue","debounce","updateHiddenFieldValue","bind","target","matches","forEach","eventName","addEventListener","rowDropdown","_a","closest","querySelector","dropdownDataWatcher","dropdownData","_dropdownData","JSON","parse","componentWillLoad","componentDidLoad","setInitialValues","addEventHandlers","addRowElement","nextRowIndex","columnCount","rowHasDropdown","setRowSelectDropdownArr","rowSelectDropdownArr","element","push","label","allRows","querySelectorAll","columnValueCount","formValues","length","elm","row","nameElm","dropdownElm","inputElm","nameValue","name","rowNameLabel","value","innerHTML","dropdown","dropdownSelection","textContent","dropdownValue","rowDropdownLabel","inputValue","parseInt","_c","_b","inputColumnValue","rowInputLabel","toString","valueJsonString","stringify","formValue","rowvalues","emit","checkInputTotal","selected","selectedValue","slotElm","newRow","document","createElement","setAttribute","onclick","rowNameColumn","dataset","appendChild","rowDropdownColumn","createDropdownColumn","rowInputColumn","createInputColumn","deleteButton","createDeleteButtonColumn","updateRowSelectDropdown","getCurrentRow","hostElement","dropdownColumn","selectedItem","find","arr","selectedOptionValues","currentRow","parentElement","Array","isArray","values","rowDropdownPlaceholder","filtereredValues","filter","item","includes","childItem","childOption","inputColumn","buttonColumn","buttonElm","deleteRow","createTextNode","rowDeleteButtonText","rows","map","call","el","dropdownPlaceholder","rowName","placeholder","filteredRows","mainOptionReachedMaxPossibleRows","selectOptions","removeAttribute","addRowDropdownPlaceholder","preventDefault","targetElm","currentTarget","targetRow","remove","index","totalInputLimit","showWarning","totalInput","inputField","render","h","Host","key","class","ref","addRowDropdownName","addRowDropdownLabel","colSpan","icon","alert_exclamation_circle","small","color","inputLimitWarning"],"sources":["src/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.scss?tag=pn-dropdown-choice-adds-row","src/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.tsx"],"sourcesContent":["@import '../../../globals/main.scss';\n\npn-dropdown-choice-adds-row {\n gap: 1rem;\n\n .dropdown-choice-form-row {\n display: flex;\n gap: 1rem;\n }\n\n .pn-row-select-dropdown {\n width: 50%;\n margin-bottom: 1rem;\n }\n\n @media only screen and (max-width: 640px) {\n .pn-row-select-dropdown {\n width: 100%;\n }\n }\n\n .pn-dropdown-choice-table {\n width: 100%;\n border-spacing: 0rem;\n\n thead {\n th {\n text-align: left;\n padding: 1rem 0.5rem;\n\n label {\n color: $gray700;\n font-size: 1.4rem;\n font-weight: 400;\n }\n }\n\n .table-header {\n &--name {\n width: 40%;\n }\n\n &--dropdown {\n width: 40%;\n }\n\n &--input {\n width: 10%;\n }\n\n &--delete {\n width: 10%;\n }\n }\n }\n\n tbody {\n td {\n padding: 0.5rem;\n }\n\n tr:nth-child(even) {\n background-color: #effbff;\n }\n\n .tr-delete {\n text-align: center;\n }\n }\n\n tfoot {\n td {\n small {\n color: $warning;\n vertical-align: middle;\n }\n\n pn-icon {\n margin-right: 0.25em;\n vertical-align: middle;\n }\n }\n }\n }\n}\n","import { Component, Prop, h, Element, State, Host, Watch, Event, EventEmitter } from '@stencil/core';\nimport { FormValue, RowValue, Root } from './types';\nimport debounce from 'debounce';\nimport { alert_exclamation_circle } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-dropdown-choice-adds-row',\n styleUrl: 'pn-dropdown-choice-adds-row.scss',\n})\nexport class pnDropdownChoiceAddsRow {\n @Element() hostElement: Element;\n pnRowSelectDropdown: HTMLElement = null;\n tableHead: HTMLElement = null;\n tableBody: HTMLElement = null;\n private _dropdownData: Root[];\n\n @Prop() dropdownData: string | Root[] = null;\n @Prop() addRowDropdownName: string = '';\n @Prop() addRowDropdownPlaceholder: string = '';\n @Prop() addRowDropdownLabel: string = '';\n @Prop() rowNameLabel: string = '';\n @Prop() rowHasDropdown: boolean = true;\n @Prop() rowDropdownLabel: string = '';\n @Prop() rowDropdownPlaceholder: string = '';\n @Prop() rowInputLabel: string = '';\n @Prop() rowDeleteButtonText: string = '';\n @Prop() totalInputLimit: number = 0;\n @Prop() inputLimitWarning: string = null;\n\n @State() nextRowIndex: number = null;\n @State() rowSelectDropdownArr: string[] = null;\n @State() columnCount: number = null;\n @State() showWarning: boolean = false;\n @State() formValue: string = null;\n\n @Event() rowvalues: EventEmitter<string>;\n\n @Watch('dropdownData')\n dropdownDataWatcher() {\n if (typeof this.dropdownData === 'string') {\n this._dropdownData = JSON.parse(this.dropdownData);\n } else {\n this._dropdownData = this.dropdownData;\n }\n }\n\n componentWillLoad() {\n this.dropdownDataWatcher();\n }\n\n componentDidLoad() {\n this.setInitialValues();\n this.addEventHandlers();\n }\n\n addEventHandlers() {\n this.pnRowSelectDropdown.addEventListener('selectOption', debounce(this.addRowElement.bind(this), 500));\n }\n\n setInitialValues() {\n this.nextRowIndex = 0;\n this.columnCount = this.rowHasDropdown ? 4 : 3;\n this.setRowSelectDropdownArr();\n }\n\n setRowSelectDropdownArr() {\n this.rowSelectDropdownArr = [];\n this._dropdownData.forEach(element => {\n this.rowSelectDropdownArr.push(element.label);\n });\n }\n\n formRowEvent = e => {\n const debouncedAddValue = debounce(this.updateHiddenFieldValue.bind(this), 500);\n\n if (e.target.matches('input')) {\n ['change', 'keyup'].forEach(eventName => {\n e.target.addEventListener(eventName, debouncedAddValue);\n });\n } else {\n const rowDropdown = e.target.closest('.generated-table-row')?.querySelector('pn-select') as HTMLElement;\n if (rowDropdown) {\n rowDropdown.addEventListener('selectOption', debouncedAddValue);\n }\n }\n };\n\n updateHiddenFieldValue() {\n const allRows = [...this.tableBody.querySelectorAll('tr')];\n const columnValueCount = this.rowHasDropdown ? 3 : 2;\n const formValues: FormValue[] = [];\n\n if (allRows.length) {\n allRows.forEach(elm => {\n const row: FormValue = { row: [] };\n const nameElm = elm.querySelector('.tr-name');\n const dropdownElm = elm.querySelector('.tr-dropdown');\n const inputElm = elm.querySelector('.tr-input');\n\n const nameValue: RowValue = { name: this.rowNameLabel, value: nameElm?.innerHTML };\n row.row.push(nameValue);\n\n const dropdown = dropdownElm.querySelector('.current-selection');\n if (dropdown) {\n const dropdownSelection = dropdown.textContent ?? '';\n\n if (dropdownSelection.length) {\n const dropdownValue: RowValue = {\n name: this.rowDropdownLabel,\n value: dropdownSelection,\n };\n row.row.push(dropdownValue);\n }\n }\n if (!dropdown && columnValueCount === 3) {\n const dropdownValue: RowValue = {\n name: this.rowDropdownLabel,\n value: '',\n };\n row.row.push(dropdownValue);\n }\n\n const inputValue = parseInt(inputElm.querySelector('input')?.value ?? '0');\n if (inputValue > 0) {\n const inputColumnValue: RowValue = { name: this.rowInputLabel, value: inputValue.toString() };\n row.row.push(inputColumnValue);\n }\n\n if (row.row.length === columnValueCount) {\n formValues.push(row);\n }\n });\n }\n\n if (formValues.length && formValues.length === allRows.length) {\n const valueJsonString = JSON.stringify(formValues);\n this.formValue = `PN-JSON|${valueJsonString}`;\n } else {\n this.formValue = '';\n }\n\n this.rowvalues.emit(this.formValue);\n this.checkInputTotal();\n }\n\n addRowElement() {\n const selected = this.pnRowSelectDropdown.querySelector('[aria-selected=true]');\n const selectedValue = selected?.textContent;\n const slotElm = this.tableBody;\n const newRow = document.createElement('tr');\n newRow.setAttribute('index', `${this.nextRowIndex}`);\n newRow.setAttribute('class', 'generated-table-row');\n newRow.onclick = e => this.formRowEvent(e);\n const rowNameColumn = document.createElement('td');\n rowNameColumn.setAttribute('class', 'tr-name');\n rowNameColumn.innerHTML = selectedValue;\n rowNameColumn.dataset.name = selectedValue;\n newRow.appendChild(rowNameColumn);\n\n if (this.rowHasDropdown) {\n const rowDropdownColumn = this.createDropdownColumn(selectedValue);\n newRow.appendChild(rowDropdownColumn);\n }\n\n const rowInputColumn = this.createInputColumn(selectedValue);\n newRow.appendChild(rowInputColumn);\n const deleteButton = this.createDeleteButtonColumn();\n newRow.appendChild(deleteButton);\n\n slotElm.appendChild(newRow);\n this.updateRowSelectDropdown();\n this.nextRowIndex++;\n }\n\n getCurrentRow(selectedValue: string) {\n return this.hostElement.querySelectorAll(`.tr-name[data-name='${selectedValue}'`);\n }\n\n createDropdownColumn(selectedValue: string) {\n const dropdownColumn = document.createElement('td');\n dropdownColumn.setAttribute('class', 'tr-dropdown');\n const selectedItem = this._dropdownData.find(arr => arr.label === selectedValue);\n const selectedOptionValues = [];\n const currentRow = this.getCurrentRow(selectedValue);\n\n currentRow.forEach(row => {\n selectedOptionValues.push(row.parentElement?.querySelector('.tr-dropdown [aria-selected=true]')?.textContent);\n });\n\n if (Array.isArray(selectedItem.values) && selectedItem.values.length) {\n const dropdown = document.createElement('pn-select');\n dropdown.setAttribute('name', `${selectedValue}-dropdown`);\n dropdown.setAttribute('placeholder', this.rowDropdownPlaceholder);\n\n const filtereredValues = selectedItem.values.filter(item => !selectedOptionValues?.includes(item.value));\n\n filtereredValues.forEach(childItem => {\n const childOption = document.createElement('pn-option');\n childOption.setAttribute(\"label\", childItem.label);\n childOption.setAttribute(\"value\", childItem.label)\n dropdown.appendChild(childOption);\n });\n\n dropdownColumn.appendChild(dropdown);\n }\n\n return dropdownColumn;\n }\n\n createInputColumn(selectedValue: string) {\n const inputColumn = document.createElement('td');\n inputColumn.setAttribute('class', 'tr-input');\n const inputElm = document.createElement('pn-marketweb-input');\n inputElm.setAttribute('type', 'number');\n inputElm.setAttribute('name', `${selectedValue}-input`);\n inputElm.setAttribute('placeholder', '0');\n inputColumn.appendChild(inputElm);\n return inputColumn;\n }\n\n createDeleteButtonColumn() {\n const buttonColumn = document.createElement('td');\n buttonColumn.setAttribute('class', 'tr-delete');\n const buttonElm = document.createElement('pn-button');\n buttonElm.onclick = e => this.deleteRow(e);\n buttonElm.setAttribute('appearance', 'warning');\n buttonElm.setAttribute('small', 'true');\n buttonElm.appendChild(document.createTextNode(this.rowDeleteButtonText));\n buttonColumn.appendChild(buttonElm);\n return buttonColumn;\n }\n\n updateRowSelectDropdown() {\n type Row = { rowName: string; selectedValue: string; placeholder: string };\n\n const rows: Row[] = [].map.call(this.tableBody.querySelectorAll('.tr-name'), el => {\n const dropdownColumn = el?.parentElement?.querySelector('.tr-dropdown');\n const dropdownPlaceholder = dropdownColumn?.querySelector('.pn-select-content span')?.textContent;\n const row: Row = {\n rowName: el?.innerHTML,\n selectedValue: dropdownColumn?.querySelector('[aria-selected=true]')?.textContent,\n placeholder: dropdownPlaceholder,\n };\n return row;\n });\n\n if (rows.length) {\n this.rowSelectDropdownArr = [];\n\n this._dropdownData.forEach(element => {\n const filteredRows = rows.filter(row => row.rowName === element.label);\n const mainOptionReachedMaxPossibleRows =\n (element.values.length > 0 && filteredRows.length >= element.values.length) || (element.values.length === 0 && filteredRows.length === 1);\n if (!mainOptionReachedMaxPossibleRows) {\n this.rowSelectDropdownArr.push(element.label);\n }\n });\n } else {\n this.setRowSelectDropdownArr();\n }\n\n const selectOptions = this.pnRowSelectDropdown.querySelectorAll('pn-option');\n selectOptions.forEach(elm => {\n elm.removeAttribute('selected');\n });\n\n const placeholder = this.pnRowSelectDropdown.querySelector('.pn-select-content span');\n placeholder.innerHTML = this.addRowDropdownPlaceholder;\n\n this.updateHiddenFieldValue();\n }\n\n deleteRow(e: Event) {\n e.preventDefault();\n this.nextRowIndex--;\n const targetElm = e.currentTarget as HTMLButtonElement;\n const targetRow = targetElm.closest('tr');\n targetRow.remove();\n const allRows = [...this.tableBody.querySelectorAll('tr')];\n\n allRows.map((elm, index) => {\n elm.setAttribute('index', `${index}`);\n });\n\n this.updateRowSelectDropdown();\n }\n\n checkInputTotal() {\n const allRows = this.tableBody.querySelectorAll('tr');\n\n if (this.totalInputLimit === 0 || allRows.length < 1) {\n this.showWarning = false;\n return;\n }\n\n let totalInput = 0;\n\n allRows.forEach(element => {\n const inputField = element.querySelector('pn-marketweb-input');\n if (inputField.value) {\n totalInput += parseInt(inputField.value) ?? 0;\n }\n });\n this.showWarning = totalInput > this.totalInputLimit ? true : false;\n }\n\n render() {\n return (\n <Host>\n <div class=\"dropdown-choice-form-row\">\n <pn-select\n ref={el => (this.pnRowSelectDropdown = el as HTMLElement)}\n name={this.addRowDropdownName}\n placeholder={this.addRowDropdownPlaceholder}\n label={this.addRowDropdownLabel}\n class=\"pn-row-select-dropdown\"\n empty-option=\"true\"\n >\n {this.rowSelectDropdownArr?.map((value: string) => <pn-option label={value} value={value}></pn-option>)}\n </pn-select>\n </div>\n <div class=\"dropdown-choice-form-row\">\n <table class=\"pn-dropdown-choice-table\">\n <thead ref={el => (this.tableHead = el as HTMLElement)}>\n {this.nextRowIndex === 0 ? null : (\n <tr>\n <th class=\"table-header--name\">\n <label>{this.rowNameLabel}</label>\n </th>\n {this.rowHasDropdown ? (\n <th class=\"table-header--dropdown\">\n <label>{this.rowDropdownLabel}</label>\n </th>\n ) : null}\n <th class=\"table-header--input\">\n <label>{this.rowInputLabel}</label>\n </th>\n <th class=\"table-header--delete\"></th>\n </tr>\n )}\n </thead>\n <tbody ref={el => (this.tableBody = el as HTMLElement)} class=\"pn-dropdown-choice-table-slot\">\n <slot></slot>\n </tbody>\n <tfoot>\n {this.showWarning ? (\n <tr>\n <td colSpan={this.columnCount}>\n <pn-icon icon={alert_exclamation_circle} small color=\"warning\"></pn-icon>\n <small class=\"dropdown-choice-error-message\">{this.inputLimitWarning}</small>\n </td>\n </tr>\n ) : null}\n </tfoot>\n </table>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as e,h as n,d as i,g as s}from"./p-06555615.js";import{d as o}from"./p-aed52bc1.js";import{m as d}from"./p-b2f2fbb6.js";import{v as l}from"./p-4ed69de7.js";const c="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}pn-multi-row-connected-dropdown-row{gap:1rem}pn-multi-row-connected-dropdown-row .connected-dropdown-parent-element{margin-bottom:0.5rem}pn-multi-row-connected-dropdown-row pn-select{width:35%}pn-multi-row-connected-dropdown-row pn-marketweb-input{width:10%}pn-multi-row-connected-dropdown-row pn-marketweb-input input{height:4.3rem}pn-multi-row-connected-dropdown-row .connected-dropdown{padding:1rem;border-left:0.2rem solid #005d92}pn-multi-row-connected-dropdown-row .connected-dropdown:hover{background-color:#f9f8f8}pn-multi-row-connected-dropdown-row .connected-dropdown__toggle-date-button{width:20%;margin-bottom:0.5rem}pn-multi-row-connected-dropdown-row .connected-dropdown__row{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1rem;justify-content:space-between}pn-multi-row-connected-dropdown-row .connected-dropdown__row__no-margin{margin:0}pn-multi-row-connected-dropdown-row .connected-dropdown__multi-date-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}pn-multi-row-connected-dropdown-row .connected-dropdown__button-container{display:flex;align-items:flex-end;gap:1rem}pn-multi-row-connected-dropdown-row .connected-dropdown__button{background-color:#ffffff;border:solid;border-width:0.1rem;border-radius:0.8rem;border-color:#005d92;padding:0.4rem 0.8rem;color:#005d92;font-size:1.4rem;text-align:center;text-decoration:none;cursor:pointer}pn-multi-row-connected-dropdown-row .connected-dropdown__button:hover,pn-multi-row-connected-dropdown-row .connected-dropdown__button.active{background-color:#0d234b;border-color:#0d234b;color:#ffffff}pn-multi-row-connected-dropdown-row .connected-dropdown__buttom-container-right{display:flex}pn-multi-row-connected-dropdown-row .connected-dropdown__button-right{margin-left:auto}pn-multi-row-connected-dropdown-row .connected-dropdown__label-container{margin-bottom:0.4rem;color:#5e554a;font-size:0.875em;justify-content:space-between;align-items:flex-end}pn-multi-row-connected-dropdown-row .connected-dropdown__checkbox{display:flex;gap:0.5rem}pn-multi-row-connected-dropdown-row .connected-dropdown__date-slot{border:0.1rem solid #005d92;margin-bottom:1rem;padding:1rem}pn-multi-row-connected-dropdown-row .generated-date-row{border-bottom:0.1rem solid #005d92}";const h=c;const r=class{constructor(n){t(this,n);this.rowValueChange=e(this,"rowValueChange",7);this.deleteRowEvent=e(this,"deleteRowEvent",7);this.pnConnectedDropdown=null;this.pnConnectedDropdownSlotElement=null;this.pnAddFieldButton=null;this.pnFirstDropdown=null;this.pnSecondDropdown=null;this.pnInputField=null;this.pnSingleDatePicker=null;this.pnStartDate=null;this.pnEndDate=null;this.pnShowDateRangeFiledButton=null;this.pnDateRangeContainer=null;this.pnGenerateDatesButton=null;this.pnDaysRow=null;this.pnGeneratedDatesSlot=null;this.pnSaveGeneratedDatesButton=null;this.pnDeleteRowButton=null;this.dropdownData=null;this.languageCode=null;this.label=null;this.firstDropdownLabel=null;this.secondDropdownLabel=null;this.dropdownPlaceholder=null;this.addRowText=null;this.inputFildLabel=null;this.inputFildPlaceholder=null;this.dateButtonText=null;this.datePlaceholder=null;this.dateDaysFromToday=1;this.allowMultipleDates=null;this.startDateLabel=null;this.endDateLabel=null;this.multiDateHelperText=null;this.generateDatesButtonText=null;this.saveDateButtonText=null;this.noDatesText=null;this.index=null;this.predefinedValue=null;this.yearsToAddToEndDate=null;this.buttonsArray=null;this.firstDropdownArr=null;this.secondDropdownArr=[];this.firstDropdownClass=null;this.secondDropdownClass=null;this.firstValidDateString="";this.lastValidDateString="";this.firstDropdownPlaceholder="-";this.secondDropdownPlaceholder="-";this.starDateValue="";this.endDateValue="";this.generatedDatesArr=[];this.selectedButtonValue="";this.inputFieldValue="";this.dateValue="";this.daysArr=null}componentWillLoad(){this.getPredefinedValues();this.setDropDownData();this.setFirstValidDate()}componentDidLoad(){this.setInitialValues();this.addEventHandlers();this.emittRowValues()}setDropDownData(){if(typeof this.dropdownData==="string"){this._dropdownData=JSON.parse(this.dropdownData)}else{this._dropdownData=this.dropdownData}}getPredefinedValues(){this._predefinedValue=JSON.parse(this.predefinedValue)}applyPredefinedValue(){this.getPredefinedValues();this.setInitialValues()}setInitialValues(){this.setButtonsValue();this.setFirstDropdownValues();this.setSecondDropdownValues();this.setInputField();this.setDateValue();this.setDateRangeDefaults();this.firstDropdownClass=this.firstDropdownLabel.replace(" ","_")+"-dropdown";this.secondDropdownClass=this.secondDropdownLabel.replace(" ","_")+"-dropdown"}setButtonsValue(){var t;this.buttonsArray=[];if((t=this._predefinedValue.buttons)===null||t===void 0?void 0:t.length){this.buttonsArray=this._predefinedValue.buttons;this.buttonsArray.forEach((t=>{if(t.selected){this.selectedButtonValue=t.value}}))}else{this._dropdownData.forEach((t=>{const e={selected:false,value:t.label,label:t.label};this.buttonsArray.push(e)}))}}setFirstDropdownValues(){var t;this.firstDropdownArr=[];if((t=this._predefinedValue.firstDropdown)===null||t===void 0?void 0:t.length){this.firstDropdownArr=[...this._predefinedValue.firstDropdown]}}setSecondDropdownValues(){var t;this.secondDropdownArr=[];if((t=this._predefinedValue.secondDropdown)===null||t===void 0?void 0:t.length){this.secondDropdownArr=[...this._predefinedValue.secondDropdown]}}setInputField(){var t;this.inputFieldValue=((t=this._predefinedValue.input)===null||t===void 0?void 0:t.length)?this._predefinedValue.input:""}setDateValue(){var t,e,n;if(this.allowMultipleDates){this.pnDateRangeContainer.style.display=((t=this._predefinedValue.dates)===null||t===void 0?void 0:t.length)?"":"none";this.generatedDatesArr=((e=this._predefinedValue.dates)===null||e===void 0?void 0:e.length)?this._predefinedValue.dates.split(","):[];this.saveGeneratedDates()}else{this.dateValue=((n=this._predefinedValue.dates)===null||n===void 0?void 0:n.length)?this._predefinedValue.dates:""}}setDateRangeDefaults(){var t,e;this.daysArr=this._predefinedValue.dateRange.days;this.starDateValue=((t=this._predefinedValue.dateRange.startDate)===null||t===void 0?void 0:t.length)?this._predefinedValue.dateRange.startDate:"";this.endDateValue=((e=this._predefinedValue.dateRange.endDate)===null||e===void 0?void 0:e.length)?this._predefinedValue.dateRange.endDate:""}setFirstValidDate(){var t;const e=this.yearsToAddToEndDate?this.yearsToAddToEndDate:2;const n=new Date;n.setDate((t=n.getDate()+this.dateDaysFromToday)!==null&&t!==void 0?t:0);const i=n.getFullYear();const s=(n.getMonth()+1).toString().padStart(2,"0");const o=n.getDate().toString().padStart(2,"0");const d=i+e;this.firstValidDateString=`${i.toString()}-${s}-${o}`;this.lastValidDateString=`${d.toString()}-${s}-${o}`}addEventHandlers(){const t=o(this.emittRowValues.bind(this),500);this.pnInputField.addEventListener("keyup",this.handleInput.bind(this));this.pnInputField.addEventListener("change",this.handleInput.bind(this));this.pnInputField.addEventListener("input",this.handleInput.bind(this));this.pnInputField.addEventListener("keyup",t);this.pnInputField.addEventListener("change",t);this.pnInputField.addEventListener("input",t);if(this.allowMultipleDates){this.pnShowDateRangeFiledButton.addEventListener("click",this.showDateRangeRow.bind(this));this.pnStartDate.addEventListener("dateselection",this.HandleRangeDatePickers.bind(this));this.pnEndDate.addEventListener("dateselection",this.HandleRangeDatePickers.bind(this));this.pnGenerateDatesButton.addEventListener("click",this.generateDates.bind(this));this.pnSaveGeneratedDatesButton.addEventListener("click",this.saveGeneratedDates.bind(this));this.pnSaveGeneratedDatesButton.addEventListener("click",t)}else{this.pnSingleDatePicker.addEventListener("dateselection",this.setSingleDateValue.bind(this));this.pnSingleDatePicker.addEventListener("dateselection",t)}if(this.index>0){this.pnDeleteRowButton.addEventListener("click",this.deleteRow.bind(this))}}generateUniqueId(){return l()}updateSelectItemArr(t,e){t.forEach((t=>{if(t.value===e){t.selected=!t.selected}else{t.selected=false}}));return t}handleOptionButtonClick(t){var e;t.preventDefault();const n=t.target.innerHTML;this.buttonsArray=[...this.updateSelectItemArr(this.buttonsArray,n)];this.selectedButtonValue=this.buttonsArray.filter((t=>t.selected===true)).length>0?n:"";if((e=this.selectedButtonValue)===null||e===void 0?void 0:e.length){this.firstDropdownArr=[];const t=this._dropdownData.find((t=>t.label===n));t.values.forEach((t=>{this.firstDropdownArr.push({selected:false,value:t.label,label:t.label})}));this.firstDropdownArr=[...this.firstDropdownArr];this.firstDropdownPlaceholder=this.dropdownPlaceholder;const e=this.pnFirstDropdown.querySelector(".pn-select-content span");e.innerHTML=this.dropdownPlaceholder;this.secondDropdownArr=[];this.secondDropdownPlaceholder="-";const i=this.pnSecondDropdown.querySelector(".pn-select-content span");i.innerHTML=this.secondDropdownPlaceholder}else{this.firstDropdownArr=[];this.firstDropdownPlaceholder="-";const t=this.pnFirstDropdown.querySelector(".pn-select-content span");t.innerHTML=this.firstDropdownPlaceholder;this.secondDropdownArr=[];this.secondDropdownPlaceholder="-";const e=this.pnSecondDropdown.querySelector(".pn-select-content span");e.innerHTML=this.secondDropdownPlaceholder}this.emittRowValues()}handleFirstDropdownChange(){const t=this.pnFirstDropdown.querySelector("[aria-selected=true]");const e=t===null||t===void 0?void 0:t.textContent;this.firstDropdownArr=[...this.updateSelectItemArr(this.firstDropdownArr,e)];const n=this.pnFirstDropdown.querySelector(".pn-select-content span");n.innerHTML=e;this.secondDropdownArr=[];const i=this.buttonsArray.findIndex((t=>t.selected===true));const s=this._dropdownData.find((t=>t.label===this.buttonsArray[i].value));const o=s.values.find((t=>t.label===e));o.values.forEach((t=>{this.secondDropdownArr.push({selected:false,value:t.label,label:t.label})}));this.secondDropdownPlaceholder=this.dropdownPlaceholder;const d=this.pnSecondDropdown.querySelector(".pn-select-content span");d.innerHTML=this.secondDropdownPlaceholder;this.emittRowValues()}handleSecondDropdownChange(){const t=this.pnSecondDropdown.querySelector("[aria-selected=true]");const e=t===null||t===void 0?void 0:t.textContent;this.secondDropdownArr=[...this.updateSelectItemArr(this.secondDropdownArr,e)];const n=this.pnSecondDropdown.querySelector(".pn-select-content span");n.innerHTML=e;this.emittRowValues()}handleInput(t){const e=t.target;if(e.value!=="0"){this.inputFieldValue=e.value}}showDateRangeRow(){if(this.pnDateRangeContainer.style.display==="none"){this.pnDateRangeContainer.style.display=""}else{this.pnDateRangeContainer.style.display="none"}}HandleRangeDatePickers(t){const e=t.target;if(e===this.pnStartDate){this.starDateValue=t.detail}if(e===this.pnEndDate){this.endDateValue=t.detail}}generateDates(t){var e;t.preventDefault();const n=this.pnDaysRow.querySelectorAll("pn-filter-checkbox");const i=[];this.generatedDatesArr=[];n.forEach((t=>{const e=t.querySelector("input");if(e.value){i.push(e.value)}}));if(i.length&&this.starDateValue&&this.endDateValue){this.daysArr.forEach((t=>{if(i.some((e=>e===t.value))){t.selected=true}else{t.selected=false}}));const t=new Date(Date.parse(this.starDateValue));const n=new Date(Date.parse(this.endDateValue));for(var s=t;s<=n;s.setDate(s.getDate()+1)){const t=this.daysArr.findIndex((t=>parseInt(t.value)===s.getDay()));if((e=this.daysArr[t])===null||e===void 0?void 0:e.selected){const t=s.getFullYear();const e=(s.getMonth()+1).toString().padStart(2,"0");const n=s.getDate().toString().padStart(2,"0");this.generatedDatesArr.push(`${t}-${e}-${n}`)}}}}deleteGeneratedDateRow(t){this.generatedDatesArr.splice(t,1);this.generatedDatesArr=[...this.generatedDatesArr]}saveGeneratedDates(){var t;if((t=this.generatedDatesArr)===null||t===void 0?void 0:t.length){this.dateValue=String(this.generatedDatesArr);const t=this.generatedDatesArr.length;const e=this.pnShowDateRangeFiledButton.querySelector(".pn-button-content");e.innerHTML=t>0?`${this.dateButtonText} (${t})`:this.dateButtonText;this.showDateRangeRow()}}setSingleDateValue(t){const e=t.target;if(e===this.pnSingleDatePicker){this.dateValue=t.detail}}emittRowValues(){this.rowValueChange.emit({id:this._predefinedValue.id,buttons:this.buttonsArray,firstDropdown:this.firstDropdownArr,secondDropdown:this.secondDropdownArr,input:this.inputFieldValue,dates:this.dateValue,dateRange:{days:this.daysArr,startDate:this.starDateValue,endDate:this.endDateValue}})}deleteRow(){this.deleteRowEvent.emit(this._predefinedValue.id)}setActive(t){return t?"connected-dropdown__button active":"connected-dropdown__button"}render(){var t,e,s,l,c,h,r,a,p;return n(i,{key:"e61da8a6a63b23c96c75b2abd8f6f1769e9cb0fc"},n("div",{key:"c40b78871c668a07ba728a294c26473cf6da0cd4",ref:t=>this.pnConnectedDropdownSlotElement=t,class:"connected-dropdown-slot-element"},n("div",{key:"333bd5546b3d5e3e8724891260c046ba1266d8f5",class:"connected-dropdown-parent-element connected-dropdown"},n("div",{key:"96c9ce1e849ecce0478f96addaedb26c8c8883f9",class:"connected-dropdown__row__no-margin"},n("label",{key:"67eb3a989e0bd666c78ee4fd2cc2453f612ac4e7"},this.label)),n("div",{key:"1cc0519d8288b257e942c996c72b3208fa4f7959",class:"connected-dropdown__row button-row"},n("div",{key:"99357ac670e533ca84e2bbb39ea5974f1bc25ba3",class:"connected-dropdown__button-container option-buttons"},(t=this.buttonsArray)===null||t===void 0?void 0:t.map((t=>n("button",{class:`${this.setActive(t.selected)}`,id:this.generateUniqueId(),onClick:this.handleOptionButtonClick.bind(this)},t.value)))),n("div",{key:"924eb2f5390ce0525d309fe581afde692b3a85e9",class:"connected-dropdown__button-container delete-button"},this.index>0?n("pn-button",{ref:t=>this.pnDeleteRowButton=t,small:"true",icon:d,appearance:"warning",index:this.index},"Delete"):null)),n("div",{key:"180bd6730284acd53a3303828e80ec5f23dff1a0",class:"connected-dropdown__row input-row"},n("pn-select",{key:"020741b2cdb7bef4caff25c61573abf8ab4cef28",ref:t=>this.pnFirstDropdown=t,class:"pn-row-select-dropdown dropDown1-dropdown",placeholder:this.firstDropdownPlaceholder,label:this.firstDropdownLabel},(e=this.firstDropdownArr)===null||e===void 0?void 0:e.map(((t,e)=>n("pn-option",{index:e,label:t.label,value:t.value,selected:t.selected,onClick:o(this.handleFirstDropdownChange.bind(this),500)})))),n("pn-select",{key:"fcd1e80c7ca48d51cf04d7bad7e15d18c65fce4b",ref:t=>this.pnSecondDropdown=t,class:"pn-row-select-dropdown dropDown2-dropdown",placeholder:this.secondDropdownPlaceholder,label:this.secondDropdownLabel},(s=this.secondDropdownArr)===null||s===void 0?void 0:s.map(((t,e)=>n("pn-option",{index:e,label:t.label,value:t.value,selected:t.selected,onClick:o(this.handleSecondDropdownChange.bind(this),500)})))),n("pn-marketweb-input",{key:"05dcfd953d8a91f4f7e300aaf8e46233bb4d5af6",ref:t=>this.pnInputField=t,type:"number",placeholder:"0",label:this.inputFildLabel,value:this.inputFieldValue,min:"1"}),this.allowMultipleDates?n("pn-button",{ref:t=>this.pnShowDateRangeFiledButton=t,class:"connected-dropdown__toggle-date-button",small:"true",appearance:"light"},this.dateButtonText):n("div",{class:"connected-dropdown__date-container"},n("div",{class:"connected-dropdown__label-container"},n("label",null,this.dateButtonText)),n("pn-date-picker",{ref:t=>this.pnSingleDatePicker=t,range:"false","disable-weekends":true,"min-date":this.firstValidDateString,language:this.languageCode,placeholder:this.datePlaceholder,class:"connected-dropdown__date-picker",start:((l=this.dateValue)===null||l===void 0?void 0:l.length)?this.dateValue:null}))),this.allowMultipleDates?n("div",{ref:t=>this.pnDateRangeContainer=t,class:"connected-dropdown__date-container",style:{display:"none"}},this.multiDateHelperText?n("div",{class:"connected-dropdown__row"},n("p",null,this.multiDateHelperText)):null,n("div",{class:"connected-dropdown__multi-date-row"},n("div",{class:"connected-dropdown__date-container"},n("div",{class:"connected-dropdown__label-container"},n("label",null,this.startDateLabel)),n("pn-date-picker",{ref:t=>this.pnStartDate=t,range:"false","disable-weekends":true,class:"connected-dropdown__date-picker","min-date":this.firstValidDateString,"max-date":this.lastValidDateString,language:this.languageCode,placeholder:this.datePlaceholder,start:((c=this.starDateValue)===null||c===void 0?void 0:c.length)?this.starDateValue:null})),n("div",{class:"connected-dropdown__date-container"},n("div",{class:"connected-dropdown__label-container"},n("label",null,this.endDateLabel)),n("pn-date-picker",{ref:t=>this.pnEndDate=t,range:"false","disable-weekends":true,class:"connected-dropdown__date-picker","min-date":this.firstValidDateString,"max-date":this.lastValidDateString,language:this.languageCode,placeholder:this.datePlaceholder,start:((h=this.endDateValue)===null||h===void 0?void 0:h.length)?this.endDateValue:null}))),n("div",{ref:t=>this.pnDaysRow=t,class:"connected-dropdown__multi-date-row"},(r=this.daysArr)===null||r===void 0?void 0:r.map((t=>n("div",{class:"connected-dropdown__checkbox"},n("pn-filter-checkbox",{checkboxid:"day-"+t.value,name:"__"+t.label,value:t.value,checked:t.selected}),n("label",{htmlFor:"day-"+t.value},t.label))))),n("div",{class:"connected-dropdown__row"},n("pn-button",{ref:t=>this.pnGenerateDatesButton=t,small:"true"},this.generateDatesButtonText)),n("div",{ref:t=>this.pnGeneratedDatesSlot=t,class:"connected-dropdown__date-slot"},(a=this.generatedDatesArr)===null||a===void 0?void 0:a.map(((t,e)=>n("div",{class:"connected-dropdown__row generated-date-row"},n("p",null,t),n("pn-button",{index:e,small:"true",icon:d,appearance:"warning",id:"delete-date-"+e,onClick:this.deleteGeneratedDateRow.bind(this,e)},t)))),!((p=this.generatedDatesArr)===null||p===void 0?void 0:p.length)?n("p",null,this.noDatesText):null),n("div",{class:"connected-dropdown__row"},n("pn-button",{ref:t=>this.pnSaveGeneratedDatesButton=t,class:"connected-dropdown__button-right",small:"true"},this.saveDateButtonText))):null)))}get hostElement(){return s(this)}static get watchers(){return{predefinedValue:["applyPredefinedValue"]}}};r.style=h;export{r as pn_multi_row_connected_dropdown_row};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as e,h as n,d as i,g as o}from"./p-06555615.js";import{d as s}from"./p-aed52bc1.js";import{m as d}from"./p-b2f2fbb6.js";import{v as l}from"./p-4ed69de7.js";const c="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}pn-multi-row-connected-dropdown-row{gap:1rem}pn-multi-row-connected-dropdown-row .connected-dropdown-parent-element{margin-bottom:0.5rem}pn-multi-row-connected-dropdown-row pn-select{width:35%}pn-multi-row-connected-dropdown-row pn-marketweb-input{width:10%}pn-multi-row-connected-dropdown-row pn-marketweb-input input{height:4.3rem}pn-multi-row-connected-dropdown-row .connected-dropdown{padding:1rem;border-left:0.2rem solid #005d92}pn-multi-row-connected-dropdown-row .connected-dropdown:hover{background-color:#f9f8f8}pn-multi-row-connected-dropdown-row .connected-dropdown__toggle-date-button{width:20%;margin-bottom:0.5rem}pn-multi-row-connected-dropdown-row .connected-dropdown__row{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1rem;justify-content:space-between}pn-multi-row-connected-dropdown-row .connected-dropdown__row__no-margin{margin:0}pn-multi-row-connected-dropdown-row .connected-dropdown__multi-date-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}pn-multi-row-connected-dropdown-row .connected-dropdown__button-container{display:flex;align-items:flex-end;gap:1rem}pn-multi-row-connected-dropdown-row .connected-dropdown__button{background-color:#ffffff;border:solid;border-width:0.1rem;border-radius:0.8rem;border-color:#005d92;padding:0.4rem 0.8rem;color:#005d92;font-size:1.4rem;text-align:center;text-decoration:none;cursor:pointer}pn-multi-row-connected-dropdown-row .connected-dropdown__button:hover,pn-multi-row-connected-dropdown-row .connected-dropdown__button.active{background-color:#0d234b;border-color:#0d234b;color:#ffffff}pn-multi-row-connected-dropdown-row .connected-dropdown__buttom-container-right{display:flex}pn-multi-row-connected-dropdown-row .connected-dropdown__button-right{margin-left:auto}pn-multi-row-connected-dropdown-row .connected-dropdown__label-container{margin-bottom:0.4rem;color:#5e554a;font-size:0.875em;justify-content:space-between;align-items:flex-end}pn-multi-row-connected-dropdown-row .connected-dropdown__checkbox{display:flex;gap:0.5rem}pn-multi-row-connected-dropdown-row .connected-dropdown__date-slot{border:0.1rem solid #005d92;margin-bottom:1rem;padding:1rem}pn-multi-row-connected-dropdown-row .generated-date-row{border-bottom:0.1rem solid #005d92}";const h=c;const r=class{constructor(n){t(this,n);this.rowValueChange=e(this,"rowValueChange",7);this.deleteRowEvent=e(this,"deleteRowEvent",7);this.pnConnectedDropdown=null;this.pnConnectedDropdownSlotElement=null;this.pnAddFieldButton=null;this.pnFirstDropdown=null;this.pnSecondDropdown=null;this.pnInputField=null;this.pnSingleDatePicker=null;this.pnStartDate=null;this.pnEndDate=null;this.pnShowDateRangeFiledButton=null;this.pnDateRangeContainer=null;this.pnGenerateDatesButton=null;this.pnDaysRow=null;this.pnGeneratedDatesSlot=null;this.pnSaveGeneratedDatesButton=null;this.pnDeleteRowButton=null;this.dropdownData=null;this.languageCode=null;this.label=null;this.firstDropdownLabel=null;this.secondDropdownLabel=null;this.dropdownPlaceholder=null;this.addRowText=null;this.inputFildLabel=null;this.inputFildPlaceholder=null;this.dateButtonText=null;this.datePlaceholder=null;this.dateDaysFromToday=1;this.allowMultipleDates=null;this.startDateLabel=null;this.endDateLabel=null;this.multiDateHelperText=null;this.generateDatesButtonText=null;this.saveDateButtonText=null;this.noDatesText=null;this.index=null;this.predefinedValue=null;this.yearsToAddToEndDate=null;this.buttonsArray=null;this.firstDropdownArr=null;this.secondDropdownArr=[];this.firstDropdownClass=null;this.secondDropdownClass=null;this.firstValidDateString="";this.lastValidDateString="";this.firstDropdownPlaceholder="-";this.secondDropdownPlaceholder="-";this.starDateValue="";this.endDateValue="";this.generatedDatesArr=[];this.selectedButtonValue="";this.inputFieldValue="";this.dateValue="";this.daysArr=null}componentWillLoad(){this.getPredefinedValues();this.setDropDownData();this.setFirstValidDate()}componentDidLoad(){this.setInitialValues();this.addEventHandlers();this.emittRowValues()}setDropDownData(){if(typeof this.dropdownData==="string"){this._dropdownData=JSON.parse(this.dropdownData)}else{this._dropdownData=this.dropdownData}}getPredefinedValues(){this._predefinedValue=JSON.parse(this.predefinedValue)}applyPredefinedValue(){this.getPredefinedValues();this.setInitialValues()}setInitialValues(){this.setButtonsValue();this.setFirstDropdownValues();this.setSecondDropdownValues();this.setInputField();this.setDateValue();this.setDateRangeDefaults();this.firstDropdownClass=this.firstDropdownLabel.replace(" ","_")+"-dropdown";this.secondDropdownClass=this.secondDropdownLabel.replace(" ","_")+"-dropdown"}setButtonsValue(){var t;this.buttonsArray=[];if((t=this._predefinedValue.buttons)===null||t===void 0?void 0:t.length){this.buttonsArray=this._predefinedValue.buttons;this.buttonsArray.forEach((t=>{if(t.selected){this.selectedButtonValue=t.value}}))}else{this._dropdownData.forEach((t=>{const e={selected:false,value:t.label,label:t.label};this.buttonsArray.push(e)}))}}setFirstDropdownValues(){var t;this.firstDropdownArr=[];if((t=this._predefinedValue.firstDropdown)===null||t===void 0?void 0:t.length){this.firstDropdownArr=[...this._predefinedValue.firstDropdown]}}setSecondDropdownValues(){var t;this.secondDropdownArr=[];if((t=this._predefinedValue.secondDropdown)===null||t===void 0?void 0:t.length){this.secondDropdownArr=[...this._predefinedValue.secondDropdown]}}setInputField(){var t;this.inputFieldValue=((t=this._predefinedValue.input)===null||t===void 0?void 0:t.length)?this._predefinedValue.input:""}setDateValue(){var t,e,n;if(this.allowMultipleDates){this.pnDateRangeContainer.style.display=((t=this._predefinedValue.dates)===null||t===void 0?void 0:t.length)?"":"none";this.generatedDatesArr=((e=this._predefinedValue.dates)===null||e===void 0?void 0:e.length)?this._predefinedValue.dates.split(","):[];this.saveGeneratedDates()}else{this.dateValue=((n=this._predefinedValue.dates)===null||n===void 0?void 0:n.length)?this._predefinedValue.dates:""}}setDateRangeDefaults(){var t,e;this.daysArr=this._predefinedValue.dateRange.days;this.starDateValue=((t=this._predefinedValue.dateRange.startDate)===null||t===void 0?void 0:t.length)?this._predefinedValue.dateRange.startDate:"";this.endDateValue=((e=this._predefinedValue.dateRange.endDate)===null||e===void 0?void 0:e.length)?this._predefinedValue.dateRange.endDate:""}setFirstValidDate(){var t;const e=this.yearsToAddToEndDate?this.yearsToAddToEndDate:2;const n=new Date;n.setDate((t=n.getDate()+this.dateDaysFromToday)!==null&&t!==void 0?t:0);const i=n.getFullYear();const o=(n.getMonth()+1).toString().padStart(2,"0");const s=n.getDate().toString().padStart(2,"0");const d=i+e;this.firstValidDateString=`${i.toString()}-${o}-${s}`;this.lastValidDateString=`${d.toString()}-${o}-${s}`}addEventHandlers(){const t=s(this.emittRowValues.bind(this),500);this.pnInputField.addEventListener("keyup",this.handleInput.bind(this));this.pnInputField.addEventListener("change",this.handleInput.bind(this));this.pnInputField.addEventListener("input",this.handleInput.bind(this));this.pnInputField.addEventListener("keyup",t);this.pnInputField.addEventListener("change",t);this.pnInputField.addEventListener("input",t);if(this.allowMultipleDates){this.pnShowDateRangeFiledButton.addEventListener("click",this.showDateRangeRow.bind(this));this.pnStartDate.addEventListener("dateselection",this.HandleRangeDatePickers.bind(this));this.pnEndDate.addEventListener("dateselection",this.HandleRangeDatePickers.bind(this));this.pnGenerateDatesButton.addEventListener("click",this.generateDates.bind(this));this.pnSaveGeneratedDatesButton.addEventListener("click",this.saveGeneratedDates.bind(this));this.pnSaveGeneratedDatesButton.addEventListener("click",t)}else{this.pnSingleDatePicker.addEventListener("dateselection",this.setSingleDateValue.bind(this));this.pnSingleDatePicker.addEventListener("dateselection",t)}if(this.index>0){this.pnDeleteRowButton.addEventListener("click",this.deleteRow.bind(this))}}generateUniqueId(){return l()}updateSelectItemArr(t,e){t.forEach((t=>{if(t.value===e){t.selected=!t.selected}else{t.selected=false}}));return t}handleOptionButtonClick(t){var e;t.preventDefault();const n=t.target.innerHTML;this.buttonsArray=[...this.updateSelectItemArr(this.buttonsArray,n)];this.selectedButtonValue=this.buttonsArray.filter((t=>t.selected===true)).length>0?n:"";if((e=this.selectedButtonValue)===null||e===void 0?void 0:e.length){this.firstDropdownArr=[];const t=this._dropdownData.find((t=>t.label===n));t.values.forEach((t=>{this.firstDropdownArr.push({selected:false,value:t.label,label:t.label})}));this.firstDropdownArr=[...this.firstDropdownArr];this.firstDropdownPlaceholder=this.dropdownPlaceholder;const e=this.pnFirstDropdown.querySelector(".pn-select-content span");e.innerHTML=this.dropdownPlaceholder;this.secondDropdownArr=[];this.secondDropdownPlaceholder="-";const i=this.pnSecondDropdown.querySelector(".pn-select-content span");i.innerHTML=this.secondDropdownPlaceholder}else{this.firstDropdownArr=[];this.firstDropdownPlaceholder="-";const t=this.pnFirstDropdown.querySelector(".pn-select-content span");t.innerHTML=this.firstDropdownPlaceholder;this.secondDropdownArr=[];this.secondDropdownPlaceholder="-";const e=this.pnSecondDropdown.querySelector(".pn-select-content span");e.innerHTML=this.secondDropdownPlaceholder}this.emittRowValues()}handleFirstDropdownChange(){const t=this.pnFirstDropdown.querySelector("[aria-selected=true]");const e=t===null||t===void 0?void 0:t.textContent;this.firstDropdownArr=[...this.updateSelectItemArr(this.firstDropdownArr,e)];const n=this.pnFirstDropdown.querySelector(".pn-select-content span");n.innerHTML=e;this.secondDropdownArr=[];const i=this.buttonsArray.findIndex((t=>t.selected===true));const o=this._dropdownData.find((t=>t.label===this.buttonsArray[i].value));const s=o.values.find((t=>t.label===e));s.values.forEach((t=>{this.secondDropdownArr.push({selected:false,value:t.label,label:t.label})}));this.secondDropdownPlaceholder=this.dropdownPlaceholder;const d=this.pnSecondDropdown.querySelector(".pn-select-content span");d.innerHTML=this.secondDropdownPlaceholder;this.emittRowValues()}handleSecondDropdownChange(){const t=this.pnSecondDropdown.querySelector("[aria-selected=true]");const e=t===null||t===void 0?void 0:t.textContent;this.secondDropdownArr=[...this.updateSelectItemArr(this.secondDropdownArr,e)];const n=this.pnSecondDropdown.querySelector(".pn-select-content span");n.innerHTML=e;this.emittRowValues()}handleInput(t){const e=t.target;if(e.value!=="0"){this.inputFieldValue=e.value}}showDateRangeRow(){if(this.pnDateRangeContainer.style.display==="none"){this.pnDateRangeContainer.style.display=""}else{this.pnDateRangeContainer.style.display="none"}}HandleRangeDatePickers(t){const e=t.target;if(e===this.pnStartDate){this.starDateValue=t.detail}if(e===this.pnEndDate){this.endDateValue=t.detail}}generateDates(t){var e;t.preventDefault();const n=this.pnDaysRow.querySelectorAll("pn-filter-checkbox");const i=[];this.generatedDatesArr=[];n.forEach((t=>{const e=t.querySelector("input");if(e.value){i.push(e.value)}}));if(i.length&&this.starDateValue&&this.endDateValue){this.daysArr.forEach((t=>{if(i.some((e=>e===t.value))){t.selected=true}else{t.selected=false}}));const t=new Date(Date.parse(this.starDateValue));const n=new Date(Date.parse(this.endDateValue));for(var o=t;o<=n;o.setDate(o.getDate()+1)){const t=this.daysArr.findIndex((t=>parseInt(t.value)===o.getDay()));if((e=this.daysArr[t])===null||e===void 0?void 0:e.selected){const t=o.getFullYear();const e=(o.getMonth()+1).toString().padStart(2,"0");const n=o.getDate().toString().padStart(2,"0");this.generatedDatesArr.push(`${t}-${e}-${n}`)}}}}deleteGeneratedDateRow(t){this.generatedDatesArr.splice(t,1);this.generatedDatesArr=[...this.generatedDatesArr]}saveGeneratedDates(){var t;if((t=this.generatedDatesArr)===null||t===void 0?void 0:t.length){this.dateValue=String(this.generatedDatesArr);const t=this.generatedDatesArr.length;const e=this.pnShowDateRangeFiledButton.querySelector(".pn-button-content");e.innerHTML=t>0?`${this.dateButtonText} (${t})`:this.dateButtonText;this.showDateRangeRow()}}setSingleDateValue(t){const e=t.target;if(e===this.pnSingleDatePicker){this.dateValue=t.detail}}emittRowValues(){this.rowValueChange.emit({id:this._predefinedValue.id,buttons:this.buttonsArray,firstDropdown:this.firstDropdownArr,secondDropdown:this.secondDropdownArr,input:this.inputFieldValue,dates:this.dateValue,dateRange:{days:this.daysArr,startDate:this.starDateValue,endDate:this.endDateValue}})}deleteRow(){this.deleteRowEvent.emit(this._predefinedValue.id)}setActive(t){return t?"connected-dropdown__button active":"connected-dropdown__button"}render(){var t,e,o,l,c,h,r,a,p;return n(i,{key:"e61da8a6a63b23c96c75b2abd8f6f1769e9cb0fc"},n("div",{key:"c40b78871c668a07ba728a294c26473cf6da0cd4",ref:t=>this.pnConnectedDropdownSlotElement=t,class:"connected-dropdown-slot-element"},n("div",{key:"333bd5546b3d5e3e8724891260c046ba1266d8f5",class:"connected-dropdown-parent-element connected-dropdown"},n("div",{key:"96c9ce1e849ecce0478f96addaedb26c8c8883f9",class:"connected-dropdown__row__no-margin"},n("label",{key:"67eb3a989e0bd666c78ee4fd2cc2453f612ac4e7"},this.label)),n("div",{key:"1cc0519d8288b257e942c996c72b3208fa4f7959",class:"connected-dropdown__row button-row"},n("div",{key:"99357ac670e533ca84e2bbb39ea5974f1bc25ba3",class:"connected-dropdown__button-container option-buttons"},(t=this.buttonsArray)===null||t===void 0?void 0:t.map((t=>n("button",{class:`${this.setActive(t.selected)}`,id:this.generateUniqueId(),onClick:this.handleOptionButtonClick.bind(this)},t.value)))),n("div",{key:"924eb2f5390ce0525d309fe581afde692b3a85e9",class:"connected-dropdown__button-container delete-button"},this.index>0?n("pn-button",{ref:t=>this.pnDeleteRowButton=t,small:"true",icon:d,appearance:"warning",index:this.index},"Delete"):null)),n("div",{key:"180bd6730284acd53a3303828e80ec5f23dff1a0",class:"connected-dropdown__row input-row"},n("pn-select",{key:"3d1718ca46ffae7a6cc3b2091155bb78d041d759",ref:t=>this.pnFirstDropdown=t,class:"pn-row-select-dropdown dropDown1-dropdown",placeholder:this.firstDropdownPlaceholder,label:this.firstDropdownLabel,"empty-option":"true"},(e=this.firstDropdownArr)===null||e===void 0?void 0:e.map(((t,e)=>n("pn-option",{index:e,label:t.label,value:t.value,selected:t.selected,onClick:s(this.handleFirstDropdownChange.bind(this),500)})))),n("pn-select",{key:"509e9af551f3f5b3569627f653c53c575e0b20ce",ref:t=>this.pnSecondDropdown=t,class:"pn-row-select-dropdown dropDown2-dropdown",placeholder:this.secondDropdownPlaceholder,label:this.secondDropdownLabel,"empty-option":"true"},(o=this.secondDropdownArr)===null||o===void 0?void 0:o.map(((t,e)=>n("pn-option",{index:e,label:t.label,value:t.value,selected:t.selected,onClick:s(this.handleSecondDropdownChange.bind(this),500)})))),n("pn-marketweb-input",{key:"81277ec1c15b7c9fd3906e9818df048c636af423",ref:t=>this.pnInputField=t,type:"number",placeholder:"0",label:this.inputFildLabel,value:this.inputFieldValue,min:"1"}),this.allowMultipleDates?n("pn-button",{ref:t=>this.pnShowDateRangeFiledButton=t,class:"connected-dropdown__toggle-date-button",small:"true",appearance:"light"},this.dateButtonText):n("div",{class:"connected-dropdown__date-container"},n("div",{class:"connected-dropdown__label-container"},n("label",null,this.dateButtonText)),n("pn-date-picker",{ref:t=>this.pnSingleDatePicker=t,range:"false","disable-weekends":true,"min-date":this.firstValidDateString,language:this.languageCode,placeholder:this.datePlaceholder,class:"connected-dropdown__date-picker",start:((l=this.dateValue)===null||l===void 0?void 0:l.length)?this.dateValue:null}))),this.allowMultipleDates?n("div",{ref:t=>this.pnDateRangeContainer=t,class:"connected-dropdown__date-container",style:{display:"none"}},this.multiDateHelperText?n("div",{class:"connected-dropdown__row"},n("p",null,this.multiDateHelperText)):null,n("div",{class:"connected-dropdown__multi-date-row"},n("div",{class:"connected-dropdown__date-container"},n("div",{class:"connected-dropdown__label-container"},n("label",null,this.startDateLabel)),n("pn-date-picker",{ref:t=>this.pnStartDate=t,range:"false","disable-weekends":true,class:"connected-dropdown__date-picker","min-date":this.firstValidDateString,"max-date":this.lastValidDateString,language:this.languageCode,placeholder:this.datePlaceholder,start:((c=this.starDateValue)===null||c===void 0?void 0:c.length)?this.starDateValue:null})),n("div",{class:"connected-dropdown__date-container"},n("div",{class:"connected-dropdown__label-container"},n("label",null,this.endDateLabel)),n("pn-date-picker",{ref:t=>this.pnEndDate=t,range:"false","disable-weekends":true,class:"connected-dropdown__date-picker","min-date":this.firstValidDateString,"max-date":this.lastValidDateString,language:this.languageCode,placeholder:this.datePlaceholder,start:((h=this.endDateValue)===null||h===void 0?void 0:h.length)?this.endDateValue:null}))),n("div",{ref:t=>this.pnDaysRow=t,class:"connected-dropdown__multi-date-row"},(r=this.daysArr)===null||r===void 0?void 0:r.map((t=>n("div",{class:"connected-dropdown__checkbox"},n("pn-filter-checkbox",{checkboxid:"day-"+t.value,name:"__"+t.label,value:t.value,checked:t.selected}),n("label",{htmlFor:"day-"+t.value},t.label))))),n("div",{class:"connected-dropdown__row"},n("pn-button",{ref:t=>this.pnGenerateDatesButton=t,small:"true"},this.generateDatesButtonText)),n("div",{ref:t=>this.pnGeneratedDatesSlot=t,class:"connected-dropdown__date-slot"},(a=this.generatedDatesArr)===null||a===void 0?void 0:a.map(((t,e)=>n("div",{class:"connected-dropdown__row generated-date-row"},n("p",null,t),n("pn-button",{index:e,small:"true",icon:d,appearance:"warning",id:"delete-date-"+e,onClick:this.deleteGeneratedDateRow.bind(this,e)},t)))),!((p=this.generatedDatesArr)===null||p===void 0?void 0:p.length)?n("p",null,this.noDatesText):null),n("div",{class:"connected-dropdown__row"},n("pn-button",{ref:t=>this.pnSaveGeneratedDatesButton=t,class:"connected-dropdown__button-right",small:"true"},this.saveDateButtonText))):null)))}get hostElement(){return o(this)}static get watchers(){return{predefinedValue:["applyPredefinedValue"]}}};r.style=h;export{r as pn_multi_row_connected_dropdown_row};
|
|
2
|
+
//# sourceMappingURL=p-e9088d97.entry.js.map
|