mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-19 04:57:52 +00:00
1 line
64 KiB
JSON
1 line
64 KiB
JSON
{"ast":null,"code":"import _asyncToGenerator from \"C:/Users/eudes.inacio/GabineteDigital/gabinete-digital-fo/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { r as registerInstance, e as createEvent, h, H as Host, i as getElement } from './index-7a8b7a1c.js';\nimport { b as getIonMode } from './ionic-global-63a97a32.js';\nimport { j as findItemLabel, d as getAriaLabel, e as renderHiddenInput } from './helpers-1457892a.js';\nimport { c as popoverController, b as actionSheetController, a as alertController, s as safeCall } from './overlays-a62f858b.js';\nimport { h as hostContext, g as getClassMap } from './theme-ff3fc52f.js';\nimport './hardware-back-button-4a6b37fb.js';\nconst watchForOptions = (containerEl, tagName, onChange) => {\n /* tslint:disable-next-line */\n if (typeof MutationObserver === 'undefined') {\n return;\n }\n const mutation = new MutationObserver(mutationList => {\n onChange(getSelectedOption(mutationList, tagName));\n });\n mutation.observe(containerEl, {\n childList: true,\n subtree: true\n });\n return mutation;\n};\nconst getSelectedOption = (mutationList, tagName) => {\n let newOption;\n mutationList.forEach(mut => {\n // tslint:disable-next-line: prefer-for-of\n for (let i = 0; i < mut.addedNodes.length; i++) {\n newOption = findCheckedOption(mut.addedNodes[i], tagName) || newOption;\n }\n });\n return newOption;\n};\nconst findCheckedOption = (el, tagName) => {\n if (el.nodeType !== 1) {\n return undefined;\n }\n const options = el.tagName === tagName.toUpperCase() ? [el] : Array.from(el.querySelectorAll(tagName));\n return options.find(o => o.value === el.value);\n};\nconst selectIosCss = \":host{--placeholder-color:currentColor;--placeholder-opacity:0.33;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);overflow:hidden;z-index:2}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static;max-width:45%}:host(.select-disabled){opacity:0.4;pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{position:relative;opacity:0.33}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon-inner{left:5px;top:50%;margin-top:-2px;position:absolute;width:0;height:0;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent;color:currentColor;pointer-events:none}[dir=rtl] .select-icon-inner,:host-context([dir=rtl]) .select-icon-inner{left:unset;right:unset;right:5px}:host{--padding-top:10px;--padding-end:10px;--padding-bottom:10px;--padding-start:20px}.select-icon{width:12px;height:18px}\";\nconst selectMdCss = \":host{--placeholder-color:currentColor;--placeholder-opacity:0.33;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);overflow:hidden;z-index:2}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static;max-width:45%}:host(.select-disabled){opacity:0.4;pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{position:relative;opacity:0.33}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon-inner{left:5px;top:50%;margin-top:-2px;position:absolute;width:0;height:0;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent;color:currentColor;pointer-events:none}[dir=rtl] .select-icon-inner,:host-context([dir=rtl]) .select-icon-inner{left:unset;right:unset;right:5px}:host{--padding-top:10px;--padding-end:0;--padding-bottom:10px;--padding-start:16px}.select-icon{width:19px;height:19px}:host-context(.item-label-floating) .select-icon{-webkit-transform:translate3d(0, -9px, 0);transform:translate3d(0, -9px, 0)}\";\nconst Select = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.ionChange = createEvent(this, \"ionChange\", 7);\n this.ionCancel = createEvent(this, \"ionCancel\", 7);\n this.ionFocus = createEvent(this, \"ionFocus\", 7);\n this.ionBlur = createEvent(this, \"ionBlur\", 7);\n this.ionStyle = createEvent(this, \"ionStyle\", 7);\n this.inputId = `ion-sel-${selectIds++}`;\n this.didInit = false;\n this.isExpanded = false;\n /**\n * If `true`, the user cannot interact with the select.\n */\n this.disabled = false;\n /**\n * The text to display on the cancel button.\n */\n this.cancelText = 'Cancel';\n /**\n * The text to display on the ok button.\n */\n this.okText = 'OK';\n /**\n * The name of the control, which is submitted with the form data.\n */\n this.name = this.inputId;\n /**\n * If `true`, the select can accept multiple values.\n */\n this.multiple = false;\n /**\n * The interface the select should use: `action-sheet`, `popover` or `alert`.\n */\n this.interface = 'alert';\n /**\n * Any additional options that the `alert`, `action-sheet` or `popover` interface\n * can take. See the [ion-alert docs](../alert), the\n * [ion-action-sheet docs](../action-sheet) and the\n * [ion-popover docs](../popover) for the\n * create options for each interface.\n *\n * Note: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface.\n */\n this.interfaceOptions = {};\n this.onClick = ev => {\n this.setFocus();\n this.open(ev);\n };\n this.onFocus = () => {\n this.ionFocus.emit();\n };\n this.onBlur = () => {\n this.ionBlur.emit();\n };\n }\n disabledChanged() {\n this.emitStyle();\n }\n valueChanged() {\n this.emitStyle();\n if (this.didInit) {\n this.ionChange.emit({\n value: this.value\n });\n }\n }\n connectedCallback() {\n var _this = this;\n return _asyncToGenerator(function* () {\n _this.updateOverlayOptions();\n _this.emitStyle();\n _this.mutationO = watchForOptions(_this.el, 'ion-select-option', /*#__PURE__*/_asyncToGenerator(function* () {\n _this.updateOverlayOptions();\n }));\n })();\n }\n disconnectedCallback() {\n if (this.mutationO) {\n this.mutationO.disconnect();\n this.mutationO = undefined;\n }\n }\n componentDidLoad() {\n this.didInit = true;\n }\n /**\n * Open the select overlay. The overlay is either an alert, action sheet, or popover,\n * depending on the `interface` property on the `ion-select`.\n *\n * @param event The user interface event that called the open.\n */\n open(event) {\n var _this2 = this;\n return _asyncToGenerator(function* () {\n if (_this2.disabled || _this2.isExpanded) {\n return undefined;\n }\n const overlay = _this2.overlay = yield _this2.createOverlay(event);\n _this2.isExpanded = true;\n overlay.onDidDismiss().then(() => {\n _this2.overlay = undefined;\n _this2.isExpanded = false;\n _this2.setFocus();\n });\n yield overlay.present();\n return overlay;\n })();\n }\n createOverlay(ev) {\n let selectInterface = this.interface;\n if ((selectInterface === 'action-sheet' || selectInterface === 'popover') && this.multiple) {\n console.warn(`Select interface cannot be \"${selectInterface}\" with a multi-value select. Using the \"alert\" interface instead.`);\n selectInterface = 'alert';\n }\n if (selectInterface === 'popover' && !ev) {\n console.warn('Select interface cannot be a \"popover\" without passing an event. Using the \"alert\" interface instead.');\n selectInterface = 'alert';\n }\n if (selectInterface === 'popover') {\n return this.openPopover(ev);\n }\n if (selectInterface === 'action-sheet') {\n return this.openActionSheet();\n }\n return this.openAlert();\n }\n updateOverlayOptions() {\n const overlay = this.overlay;\n if (!overlay) {\n return;\n }\n const childOpts = this.childOpts;\n const value = this.value;\n switch (this.interface) {\n case 'action-sheet':\n overlay.buttons = this.createActionSheetButtons(childOpts, value);\n break;\n case 'popover':\n const popover = overlay.querySelector('ion-select-popover');\n if (popover) {\n popover.options = this.createPopoverOptions(childOpts, value);\n }\n break;\n case 'alert':\n const inputType = this.multiple ? 'checkbox' : 'radio';\n overlay.inputs = this.createAlertInputs(childOpts, inputType, value);\n break;\n }\n }\n createActionSheetButtons(data, selectValue) {\n const actionSheetButtons = data.map(option => {\n const value = getOptionValue(option);\n // Remove hydrated before copying over classes\n const copyClasses = Array.from(option.classList).filter(cls => cls !== 'hydrated').join(' ');\n const optClass = `${OPTION_CLASS} ${copyClasses}`;\n return {\n role: isOptionSelected(value, selectValue, this.compareWith) ? 'selected' : '',\n text: option.textContent,\n cssClass: optClass,\n handler: () => {\n this.value = value;\n }\n };\n });\n // Add \"cancel\" button\n actionSheetButtons.push({\n text: this.cancelText,\n role: 'cancel',\n handler: () => {\n this.ionCancel.emit();\n }\n });\n return actionSheetButtons;\n }\n createAlertInputs(data, inputType, selectValue) {\n const alertInputs = data.map(option => {\n const value = getOptionValue(option);\n // Remove hydrated before copying over classes\n const copyClasses = Array.from(option.classList).filter(cls => cls !== 'hydrated').join(' ');\n const optClass = `${OPTION_CLASS} ${copyClasses}`;\n return {\n type: inputType,\n cssClass: optClass,\n label: option.textContent || '',\n value,\n checked: isOptionSelected(value, selectValue, this.compareWith),\n disabled: option.disabled\n };\n });\n return alertInputs;\n }\n createPopoverOptions(data, selectValue) {\n const popoverOptions = data.map(option => {\n const value = getOptionValue(option);\n // Remove hydrated before copying over classes\n const copyClasses = Array.from(option.classList).filter(cls => cls !== 'hydrated').join(' ');\n const optClass = `${OPTION_CLASS} ${copyClasses}`;\n return {\n text: option.textContent || '',\n cssClass: optClass,\n value,\n checked: isOptionSelected(value, selectValue, this.compareWith),\n disabled: option.disabled,\n handler: () => {\n this.value = value;\n this.close();\n }\n };\n });\n return popoverOptions;\n }\n openPopover(ev) {\n var _this3 = this;\n return _asyncToGenerator(function* () {\n const interfaceOptions = _this3.interfaceOptions;\n const mode = getIonMode(_this3);\n const value = _this3.value;\n const popoverOpts = Object.assign(Object.assign({\n mode\n }, interfaceOptions), {\n component: 'ion-select-popover',\n cssClass: ['select-popover', interfaceOptions.cssClass],\n event: ev,\n componentProps: {\n header: interfaceOptions.header,\n subHeader: interfaceOptions.subHeader,\n message: interfaceOptions.message,\n value,\n options: _this3.createPopoverOptions(_this3.childOpts, value)\n }\n });\n return popoverController.create(popoverOpts);\n })();\n }\n openActionSheet() {\n var _this4 = this;\n return _asyncToGenerator(function* () {\n const mode = getIonMode(_this4);\n const interfaceOptions = _this4.interfaceOptions;\n const actionSheetOpts = Object.assign(Object.assign({\n mode\n }, interfaceOptions), {\n buttons: _this4.createActionSheetButtons(_this4.childOpts, _this4.value),\n cssClass: ['select-action-sheet', interfaceOptions.cssClass]\n });\n return actionSheetController.create(actionSheetOpts);\n })();\n }\n openAlert() {\n var _this5 = this;\n return _asyncToGenerator(function* () {\n const label = _this5.getLabel();\n const labelText = label ? label.textContent : null;\n const interfaceOptions = _this5.interfaceOptions;\n const inputType = _this5.multiple ? 'checkbox' : 'radio';\n const mode = getIonMode(_this5);\n const alertOpts = Object.assign(Object.assign({\n mode\n }, interfaceOptions), {\n header: interfaceOptions.header ? interfaceOptions.header : labelText,\n inputs: _this5.createAlertInputs(_this5.childOpts, inputType, _this5.value),\n buttons: [{\n text: _this5.cancelText,\n role: 'cancel',\n handler: () => {\n _this5.ionCancel.emit();\n }\n }, {\n text: _this5.okText,\n handler: selectedValues => {\n _this5.value = selectedValues;\n }\n }],\n cssClass: ['select-alert', interfaceOptions.cssClass, _this5.multiple ? 'multiple-select-alert' : 'single-select-alert']\n });\n return alertController.create(alertOpts);\n })();\n }\n /**\n * Close the select interface.\n */\n close() {\n // TODO check !this.overlay || !this.isFocus()\n if (!this.overlay) {\n return Promise.resolve(false);\n }\n return this.overlay.dismiss();\n }\n getLabel() {\n return findItemLabel(this.el);\n }\n hasValue() {\n return this.getText() !== '';\n }\n get childOpts() {\n return Array.from(this.el.querySelectorAll('ion-select-option'));\n }\n getText() {\n const selectedText = this.selectedText;\n if (selectedText != null && selectedText !== '') {\n return selectedText;\n }\n return generateText(this.childOpts, this.value, this.compareWith);\n }\n setFocus() {\n if (this.focusEl) {\n this.focusEl.focus();\n }\n }\n emitStyle() {\n this.ionStyle.emit({\n 'interactive': true,\n 'select': true,\n 'has-placeholder': this.placeholder != null,\n 'has-value': this.hasValue(),\n 'interactive-disabled': this.disabled,\n 'select-disabled': this.disabled\n });\n }\n render() {\n const {\n disabled,\n el,\n inputId,\n isExpanded,\n name,\n placeholder,\n value\n } = this;\n const mode = getIonMode(this);\n const {\n labelText,\n labelId\n } = getAriaLabel(el, inputId);\n renderHiddenInput(true, el, name, parseValue(value), disabled);\n const displayValue = this.getText();\n let addPlaceholderClass = false;\n let selectText = displayValue;\n if (selectText === '' && placeholder != null) {\n selectText = placeholder;\n addPlaceholderClass = true;\n }\n const selectTextClasses = {\n 'select-text': true,\n 'select-placeholder': addPlaceholderClass\n };\n const textPart = addPlaceholderClass ? 'placeholder' : 'text';\n // If there is a label then we need to concatenate it with the\n // current value (or placeholder) and a comma so it separates\n // nicely when the screen reader announces it, otherwise just\n // announce the value / placeholder\n const displayLabel = labelText !== undefined ? selectText !== '' ? `${selectText}, ${labelText}` : labelText : selectText;\n return h(Host, {\n onClick: this.onClick,\n role: \"button\",\n \"aria-haspopup\": \"listbox\",\n \"aria-disabled\": disabled ? 'true' : null,\n \"aria-label\": displayLabel,\n class: {\n [mode]: true,\n 'in-item': hostContext('ion-item', el),\n 'select-disabled': disabled,\n 'select-expanded': isExpanded\n }\n }, h(\"div\", {\n \"aria-hidden\": \"true\",\n class: selectTextClasses,\n part: textPart\n }, selectText), h(\"div\", {\n class: \"select-icon\",\n role: \"presentation\",\n part: \"icon\"\n }, h(\"div\", {\n class: \"select-icon-inner\"\n })), h(\"label\", {\n id: labelId\n }, displayLabel), h(\"button\", {\n type: \"button\",\n disabled: disabled,\n id: inputId,\n \"aria-labelledby\": labelId,\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": `${isExpanded}`,\n onFocus: this.onFocus,\n onBlur: this.onBlur,\n ref: focusEl => this.focusEl = focusEl\n }));\n }\n get el() {\n return getElement(this);\n }\n static get watchers() {\n return {\n \"disabled\": [\"disabledChanged\"],\n \"placeholder\": [\"disabledChanged\"],\n \"value\": [\"valueChanged\"]\n };\n }\n};\nconst isOptionSelected = (currentValue, compareValue, compareWith) => {\n if (currentValue === undefined) {\n return false;\n }\n if (Array.isArray(currentValue)) {\n return currentValue.some(val => compareOptions(val, compareValue, compareWith));\n } else {\n return compareOptions(currentValue, compareValue, compareWith);\n }\n};\nconst getOptionValue = el => {\n const value = el.value;\n return value === undefined ? el.textContent || '' : value;\n};\nconst parseValue = value => {\n if (value == null) {\n return undefined;\n }\n if (Array.isArray(value)) {\n return value.join(',');\n }\n return value.toString();\n};\nconst compareOptions = (currentValue, compareValue, compareWith) => {\n if (typeof compareWith === 'function') {\n return compareWith(currentValue, compareValue);\n } else if (typeof compareWith === 'string') {\n return currentValue[compareWith] === compareValue[compareWith];\n } else {\n return Array.isArray(compareValue) ? compareValue.includes(currentValue) : currentValue === compareValue;\n }\n};\nconst generateText = (opts, value, compareWith) => {\n if (value === undefined) {\n return '';\n }\n if (Array.isArray(value)) {\n return value.map(v => textForValue(opts, v, compareWith)).filter(opt => opt !== null).join(', ');\n } else {\n return textForValue(opts, value, compareWith) || '';\n }\n};\nconst textForValue = (opts, value, compareWith) => {\n const selectOpt = opts.find(opt => {\n return compareOptions(getOptionValue(opt), value, compareWith);\n });\n return selectOpt ? selectOpt.textContent : null;\n};\nlet selectIds = 0;\nconst OPTION_CLASS = 'select-interface-option';\nSelect.style = {\n ios: selectIosCss,\n md: selectMdCss\n};\nconst selectOptionCss = \":host{display:none}\";\nconst SelectOption = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.inputId = `ion-selopt-${selectOptionIds++}`;\n /**\n * If `true`, the user cannot interact with the select option. This property does not apply when `interface=\"action-sheet\"` as `ion-action-sheet` does not allow for disabled buttons.\n */\n this.disabled = false;\n }\n render() {\n return h(Host, {\n role: \"option\",\n id: this.inputId,\n class: getIonMode(this)\n });\n }\n get el() {\n return getElement(this);\n }\n};\nlet selectOptionIds = 0;\nSelectOption.style = selectOptionCss;\nconst selectPopoverCss = \".sc-ion-select-popover-h ion-list.sc-ion-select-popover{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-select-popover-h ion-list-header.sc-ion-select-popover,.sc-ion-select-popover-h ion-label.sc-ion-select-popover{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}\";\nconst SelectPopover = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n /** Array of options for the popover */\n this.options = [];\n }\n onSelect(ev) {\n const option = this.options.find(o => o.value === ev.target.value);\n if (option) {\n safeCall(option.handler);\n }\n }\n render() {\n const checkedOption = this.options.find(o => o.checked);\n const checkedValue = checkedOption ? checkedOption.value : undefined;\n return h(Host, {\n class: getIonMode(this)\n }, h(\"ion-list\", null, this.header !== undefined && h(\"ion-list-header\", null, this.header), (this.subHeader !== undefined || this.message !== undefined) && h(\"ion-item\", null, h(\"ion-label\", {\n class: \"ion-text-wrap\"\n }, this.subHeader !== undefined && h(\"h3\", null, this.subHeader), this.message !== undefined && h(\"p\", null, this.message))), h(\"ion-radio-group\", {\n value: checkedValue\n }, this.options.map(option => h(\"ion-item\", {\n class: getClassMap(option.cssClass)\n }, h(\"ion-label\", null, option.text), h(\"ion-radio\", {\n value: option.value,\n disabled: option.disabled\n }))))));\n }\n};\nSelectPopover.style = selectPopoverCss;\nexport { Select as ion_select, SelectOption as ion_select_option, SelectPopover as ion_select_popover };","map":{"version":3,"names":["r","registerInstance","e","createEvent","h","H","Host","i","getElement","b","getIonMode","j","findItemLabel","d","getAriaLabel","renderHiddenInput","c","popoverController","actionSheetController","a","alertController","s","safeCall","hostContext","g","getClassMap","watchForOptions","containerEl","tagName","onChange","MutationObserver","mutation","mutationList","getSelectedOption","observe","childList","subtree","newOption","forEach","mut","addedNodes","length","findCheckedOption","el","nodeType","undefined","options","toUpperCase","Array","from","querySelectorAll","find","o","value","selectIosCss","selectMdCss","Select","constructor","hostRef","ionChange","ionCancel","ionFocus","ionBlur","ionStyle","inputId","selectIds","didInit","isExpanded","disabled","cancelText","okText","name","multiple","interface","interfaceOptions","onClick","ev","setFocus","open","onFocus","emit","onBlur","disabledChanged","emitStyle","valueChanged","connectedCallback","_this","_asyncToGenerator","updateOverlayOptions","mutationO","disconnectedCallback","disconnect","componentDidLoad","event","_this2","overlay","createOverlay","onDidDismiss","then","present","selectInterface","console","warn","openPopover","openActionSheet","openAlert","childOpts","buttons","createActionSheetButtons","popover","querySelector","createPopoverOptions","inputType","inputs","createAlertInputs","data","selectValue","actionSheetButtons","map","option","getOptionValue","copyClasses","classList","filter","cls","join","optClass","OPTION_CLASS","role","isOptionSelected","compareWith","text","textContent","cssClass","handler","push","alertInputs","type","label","checked","popoverOptions","close","_this3","mode","popoverOpts","Object","assign","component","componentProps","header","subHeader","message","create","_this4","actionSheetOpts","_this5","getLabel","labelText","alertOpts","selectedValues","Promise","resolve","dismiss","hasValue","getText","selectedText","generateText","focusEl","focus","placeholder","render","labelId","parseValue","displayValue","addPlaceholderClass","selectText","selectTextClasses","textPart","displayLabel","class","part","id","ref","watchers","currentValue","compareValue","isArray","some","val","compareOptions","toString","includes","opts","v","textForValue","opt","selectOpt","style","ios","md","selectOptionCss","SelectOption","selectOptionIds","selectPopoverCss","SelectPopover","onSelect","target","checkedOption","checkedValue","ion_select","ion_select_option","ion_select_popover"],"sources":["C:/Users/eudes.inacio/GabineteDigital/gabinete-digital-fo/node_modules/@ionic/core/dist/esm/ion-select_3.entry.js"],"sourcesContent":["import { r as registerInstance, e as createEvent, h, H as Host, i as getElement } from './index-7a8b7a1c.js';\nimport { b as getIonMode } from './ionic-global-63a97a32.js';\nimport { j as findItemLabel, d as getAriaLabel, e as renderHiddenInput } from './helpers-1457892a.js';\nimport { c as popoverController, b as actionSheetController, a as alertController, s as safeCall } from './overlays-a62f858b.js';\nimport { h as hostContext, g as getClassMap } from './theme-ff3fc52f.js';\nimport './hardware-back-button-4a6b37fb.js';\n\nconst watchForOptions = (containerEl, tagName, onChange) => {\n /* tslint:disable-next-line */\n if (typeof MutationObserver === 'undefined') {\n return;\n }\n const mutation = new MutationObserver(mutationList => {\n onChange(getSelectedOption(mutationList, tagName));\n });\n mutation.observe(containerEl, {\n childList: true,\n subtree: true\n });\n return mutation;\n};\nconst getSelectedOption = (mutationList, tagName) => {\n let newOption;\n mutationList.forEach(mut => {\n // tslint:disable-next-line: prefer-for-of\n for (let i = 0; i < mut.addedNodes.length; i++) {\n newOption = findCheckedOption(mut.addedNodes[i], tagName) || newOption;\n }\n });\n return newOption;\n};\nconst findCheckedOption = (el, tagName) => {\n if (el.nodeType !== 1) {\n return undefined;\n }\n const options = (el.tagName === tagName.toUpperCase())\n ? [el]\n : Array.from(el.querySelectorAll(tagName));\n return options.find((o) => o.value === el.value);\n};\n\nconst selectIosCss = \":host{--placeholder-color:currentColor;--placeholder-opacity:0.33;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);overflow:hidden;z-index:2}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static;max-width:45%}:host(.select-disabled){opacity:0.4;pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{position:relative;opacity:0.33}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon-inner{left:5px;top:50%;margin-top:-2px;position:absolute;width:0;height:0;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent;color:currentColor;pointer-events:none}[dir=rtl] .select-icon-inner,:host-context([dir=rtl]) .select-icon-inner{left:unset;right:unset;right:5px}:host{--padding-top:10px;--padding-end:10px;--padding-bottom:10px;--padding-start:20px}.select-icon{width:12px;height:18px}\";\n\nconst selectMdCss = \":host{--placeholder-color:currentColor;--placeholder-opacity:0.33;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);overflow:hidden;z-index:2}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static;max-width:45%}:host(.select-disabled){opacity:0.4;pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{position:relative;opacity:0.33}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon-inner{left:5px;top:50%;margin-top:-2px;position:absolute;width:0;height:0;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent;color:currentColor;pointer-events:none}[dir=rtl] .select-icon-inner,:host-context([dir=rtl]) .select-icon-inner{left:unset;right:unset;right:5px}:host{--padding-top:10px;--padding-end:0;--padding-bottom:10px;--padding-start:16px}.select-icon{width:19px;height:19px}:host-context(.item-label-floating) .select-icon{-webkit-transform:translate3d(0, -9px, 0);transform:translate3d(0, -9px, 0)}\";\n\nconst Select = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.ionChange = createEvent(this, \"ionChange\", 7);\n this.ionCancel = createEvent(this, \"ionCancel\", 7);\n this.ionFocus = createEvent(this, \"ionFocus\", 7);\n this.ionBlur = createEvent(this, \"ionBlur\", 7);\n this.ionStyle = createEvent(this, \"ionStyle\", 7);\n this.inputId = `ion-sel-${selectIds++}`;\n this.didInit = false;\n this.isExpanded = false;\n /**\n * If `true`, the user cannot interact with the select.\n */\n this.disabled = false;\n /**\n * The text to display on the cancel button.\n */\n this.cancelText = 'Cancel';\n /**\n * The text to display on the ok button.\n */\n this.okText = 'OK';\n /**\n * The name of the control, which is submitted with the form data.\n */\n this.name = this.inputId;\n /**\n * If `true`, the select can accept multiple values.\n */\n this.multiple = false;\n /**\n * The interface the select should use: `action-sheet`, `popover` or `alert`.\n */\n this.interface = 'alert';\n /**\n * Any additional options that the `alert`, `action-sheet` or `popover` interface\n * can take. See the [ion-alert docs](../alert), the\n * [ion-action-sheet docs](../action-sheet) and the\n * [ion-popover docs](../popover) for the\n * create options for each interface.\n *\n * Note: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface.\n */\n this.interfaceOptions = {};\n this.onClick = (ev) => {\n this.setFocus();\n this.open(ev);\n };\n this.onFocus = () => {\n this.ionFocus.emit();\n };\n this.onBlur = () => {\n this.ionBlur.emit();\n };\n }\n disabledChanged() {\n this.emitStyle();\n }\n valueChanged() {\n this.emitStyle();\n if (this.didInit) {\n this.ionChange.emit({\n value: this.value,\n });\n }\n }\n async connectedCallback() {\n this.updateOverlayOptions();\n this.emitStyle();\n this.mutationO = watchForOptions(this.el, 'ion-select-option', async () => {\n this.updateOverlayOptions();\n });\n }\n disconnectedCallback() {\n if (this.mutationO) {\n this.mutationO.disconnect();\n this.mutationO = undefined;\n }\n }\n componentDidLoad() {\n this.didInit = true;\n }\n /**\n * Open the select overlay. The overlay is either an alert, action sheet, or popover,\n * depending on the `interface` property on the `ion-select`.\n *\n * @param event The user interface event that called the open.\n */\n async open(event) {\n if (this.disabled || this.isExpanded) {\n return undefined;\n }\n const overlay = this.overlay = await this.createOverlay(event);\n this.isExpanded = true;\n overlay.onDidDismiss().then(() => {\n this.overlay = undefined;\n this.isExpanded = false;\n this.setFocus();\n });\n await overlay.present();\n return overlay;\n }\n createOverlay(ev) {\n let selectInterface = this.interface;\n if ((selectInterface === 'action-sheet' || selectInterface === 'popover') && this.multiple) {\n console.warn(`Select interface cannot be \"${selectInterface}\" with a multi-value select. Using the \"alert\" interface instead.`);\n selectInterface = 'alert';\n }\n if (selectInterface === 'popover' && !ev) {\n console.warn('Select interface cannot be a \"popover\" without passing an event. Using the \"alert\" interface instead.');\n selectInterface = 'alert';\n }\n if (selectInterface === 'popover') {\n return this.openPopover(ev);\n }\n if (selectInterface === 'action-sheet') {\n return this.openActionSheet();\n }\n return this.openAlert();\n }\n updateOverlayOptions() {\n const overlay = this.overlay;\n if (!overlay) {\n return;\n }\n const childOpts = this.childOpts;\n const value = this.value;\n switch (this.interface) {\n case 'action-sheet':\n overlay.buttons = this.createActionSheetButtons(childOpts, value);\n break;\n case 'popover':\n const popover = overlay.querySelector('ion-select-popover');\n if (popover) {\n popover.options = this.createPopoverOptions(childOpts, value);\n }\n break;\n case 'alert':\n const inputType = (this.multiple ? 'checkbox' : 'radio');\n overlay.inputs = this.createAlertInputs(childOpts, inputType, value);\n break;\n }\n }\n createActionSheetButtons(data, selectValue) {\n const actionSheetButtons = data.map(option => {\n const value = getOptionValue(option);\n // Remove hydrated before copying over classes\n const copyClasses = Array.from(option.classList).filter(cls => cls !== 'hydrated').join(' ');\n const optClass = `${OPTION_CLASS} ${copyClasses}`;\n return {\n role: (isOptionSelected(value, selectValue, this.compareWith) ? 'selected' : ''),\n text: option.textContent,\n cssClass: optClass,\n handler: () => {\n this.value = value;\n }\n };\n });\n // Add \"cancel\" button\n actionSheetButtons.push({\n text: this.cancelText,\n role: 'cancel',\n handler: () => {\n this.ionCancel.emit();\n }\n });\n return actionSheetButtons;\n }\n createAlertInputs(data, inputType, selectValue) {\n const alertInputs = data.map(option => {\n const value = getOptionValue(option);\n // Remove hydrated before copying over classes\n const copyClasses = Array.from(option.classList).filter(cls => cls !== 'hydrated').join(' ');\n const optClass = `${OPTION_CLASS} ${copyClasses}`;\n return {\n type: inputType,\n cssClass: optClass,\n label: option.textContent || '',\n value,\n checked: isOptionSelected(value, selectValue, this.compareWith),\n disabled: option.disabled\n };\n });\n return alertInputs;\n }\n createPopoverOptions(data, selectValue) {\n const popoverOptions = data.map(option => {\n const value = getOptionValue(option);\n // Remove hydrated before copying over classes\n const copyClasses = Array.from(option.classList).filter(cls => cls !== 'hydrated').join(' ');\n const optClass = `${OPTION_CLASS} ${copyClasses}`;\n return {\n text: option.textContent || '',\n cssClass: optClass,\n value,\n checked: isOptionSelected(value, selectValue, this.compareWith),\n disabled: option.disabled,\n handler: () => {\n this.value = value;\n this.close();\n }\n };\n });\n return popoverOptions;\n }\n async openPopover(ev) {\n const interfaceOptions = this.interfaceOptions;\n const mode = getIonMode(this);\n const value = this.value;\n const popoverOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { component: 'ion-select-popover', cssClass: ['select-popover', interfaceOptions.cssClass], event: ev, componentProps: {\n header: interfaceOptions.header,\n subHeader: interfaceOptions.subHeader,\n message: interfaceOptions.message,\n value,\n options: this.createPopoverOptions(this.childOpts, value)\n } });\n return popoverController.create(popoverOpts);\n }\n async openActionSheet() {\n const mode = getIonMode(this);\n const interfaceOptions = this.interfaceOptions;\n const actionSheetOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { buttons: this.createActionSheetButtons(this.childOpts, this.value), cssClass: ['select-action-sheet', interfaceOptions.cssClass] });\n return actionSheetController.create(actionSheetOpts);\n }\n async openAlert() {\n const label = this.getLabel();\n const labelText = (label) ? label.textContent : null;\n const interfaceOptions = this.interfaceOptions;\n const inputType = (this.multiple ? 'checkbox' : 'radio');\n const mode = getIonMode(this);\n const alertOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { header: interfaceOptions.header ? interfaceOptions.header : labelText, inputs: this.createAlertInputs(this.childOpts, inputType, this.value), buttons: [\n {\n text: this.cancelText,\n role: 'cancel',\n handler: () => {\n this.ionCancel.emit();\n }\n },\n {\n text: this.okText,\n handler: (selectedValues) => {\n this.value = selectedValues;\n }\n }\n ], cssClass: ['select-alert', interfaceOptions.cssClass,\n (this.multiple ? 'multiple-select-alert' : 'single-select-alert')] });\n return alertController.create(alertOpts);\n }\n /**\n * Close the select interface.\n */\n close() {\n // TODO check !this.overlay || !this.isFocus()\n if (!this.overlay) {\n return Promise.resolve(false);\n }\n return this.overlay.dismiss();\n }\n getLabel() {\n return findItemLabel(this.el);\n }\n hasValue() {\n return this.getText() !== '';\n }\n get childOpts() {\n return Array.from(this.el.querySelectorAll('ion-select-option'));\n }\n getText() {\n const selectedText = this.selectedText;\n if (selectedText != null && selectedText !== '') {\n return selectedText;\n }\n return generateText(this.childOpts, this.value, this.compareWith);\n }\n setFocus() {\n if (this.focusEl) {\n this.focusEl.focus();\n }\n }\n emitStyle() {\n this.ionStyle.emit({\n 'interactive': true,\n 'select': true,\n 'has-placeholder': this.placeholder != null,\n 'has-value': this.hasValue(),\n 'interactive-disabled': this.disabled,\n 'select-disabled': this.disabled\n });\n }\n render() {\n const { disabled, el, inputId, isExpanded, name, placeholder, value } = this;\n const mode = getIonMode(this);\n const { labelText, labelId } = getAriaLabel(el, inputId);\n renderHiddenInput(true, el, name, parseValue(value), disabled);\n const displayValue = this.getText();\n let addPlaceholderClass = false;\n let selectText = displayValue;\n if (selectText === '' && placeholder != null) {\n selectText = placeholder;\n addPlaceholderClass = true;\n }\n const selectTextClasses = {\n 'select-text': true,\n 'select-placeholder': addPlaceholderClass\n };\n const textPart = addPlaceholderClass ? 'placeholder' : 'text';\n // If there is a label then we need to concatenate it with the\n // current value (or placeholder) and a comma so it separates\n // nicely when the screen reader announces it, otherwise just\n // announce the value / placeholder\n const displayLabel = labelText !== undefined\n ? (selectText !== '' ? `${selectText}, ${labelText}` : labelText)\n : selectText;\n return (h(Host, { onClick: this.onClick, role: \"button\", \"aria-haspopup\": \"listbox\", \"aria-disabled\": disabled ? 'true' : null, \"aria-label\": displayLabel, class: {\n [mode]: true,\n 'in-item': hostContext('ion-item', el),\n 'select-disabled': disabled,\n 'select-expanded': isExpanded\n } }, h(\"div\", { \"aria-hidden\": \"true\", class: selectTextClasses, part: textPart }, selectText), h(\"div\", { class: \"select-icon\", role: \"presentation\", part: \"icon\" }, h(\"div\", { class: \"select-icon-inner\" })), h(\"label\", { id: labelId }, displayLabel), h(\"button\", { type: \"button\", disabled: disabled, id: inputId, \"aria-labelledby\": labelId, \"aria-haspopup\": \"listbox\", \"aria-expanded\": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl => this.focusEl = focusEl) })));\n }\n get el() { return getElement(this); }\n static get watchers() { return {\n \"disabled\": [\"disabledChanged\"],\n \"placeholder\": [\"disabledChanged\"],\n \"value\": [\"valueChanged\"]\n }; }\n};\nconst isOptionSelected = (currentValue, compareValue, compareWith) => {\n if (currentValue === undefined) {\n return false;\n }\n if (Array.isArray(currentValue)) {\n return currentValue.some(val => compareOptions(val, compareValue, compareWith));\n }\n else {\n return compareOptions(currentValue, compareValue, compareWith);\n }\n};\nconst getOptionValue = (el) => {\n const value = el.value;\n return (value === undefined)\n ? el.textContent || ''\n : value;\n};\nconst parseValue = (value) => {\n if (value == null) {\n return undefined;\n }\n if (Array.isArray(value)) {\n return value.join(',');\n }\n return value.toString();\n};\nconst compareOptions = (currentValue, compareValue, compareWith) => {\n if (typeof compareWith === 'function') {\n return compareWith(currentValue, compareValue);\n }\n else if (typeof compareWith === 'string') {\n return currentValue[compareWith] === compareValue[compareWith];\n }\n else {\n return Array.isArray(compareValue) ? compareValue.includes(currentValue) : currentValue === compareValue;\n }\n};\nconst generateText = (opts, value, compareWith) => {\n if (value === undefined) {\n return '';\n }\n if (Array.isArray(value)) {\n return value\n .map(v => textForValue(opts, v, compareWith))\n .filter(opt => opt !== null)\n .join(', ');\n }\n else {\n return textForValue(opts, value, compareWith) || '';\n }\n};\nconst textForValue = (opts, value, compareWith) => {\n const selectOpt = opts.find(opt => {\n return compareOptions(getOptionValue(opt), value, compareWith);\n });\n return selectOpt\n ? selectOpt.textContent\n : null;\n};\nlet selectIds = 0;\nconst OPTION_CLASS = 'select-interface-option';\nSelect.style = {\n ios: selectIosCss,\n md: selectMdCss\n};\n\nconst selectOptionCss = \":host{display:none}\";\n\nconst SelectOption = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.inputId = `ion-selopt-${selectOptionIds++}`;\n /**\n * If `true`, the user cannot interact with the select option. This property does not apply when `interface=\"action-sheet\"` as `ion-action-sheet` does not allow for disabled buttons.\n */\n this.disabled = false;\n }\n render() {\n return (h(Host, { role: \"option\", id: this.inputId, class: getIonMode(this) }));\n }\n get el() { return getElement(this); }\n};\nlet selectOptionIds = 0;\nSelectOption.style = selectOptionCss;\n\nconst selectPopoverCss = \".sc-ion-select-popover-h ion-list.sc-ion-select-popover{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-select-popover-h ion-list-header.sc-ion-select-popover,.sc-ion-select-popover-h ion-label.sc-ion-select-popover{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}\";\n\nconst SelectPopover = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n /** Array of options for the popover */\n this.options = [];\n }\n onSelect(ev) {\n const option = this.options.find(o => o.value === ev.target.value);\n if (option) {\n safeCall(option.handler);\n }\n }\n render() {\n const checkedOption = this.options.find(o => o.checked);\n const checkedValue = checkedOption ? checkedOption.value : undefined;\n return (h(Host, { class: getIonMode(this) }, h(\"ion-list\", null, this.header !== undefined && h(\"ion-list-header\", null, this.header), (this.subHeader !== undefined || this.message !== undefined) &&\n h(\"ion-item\", null, h(\"ion-label\", { class: \"ion-text-wrap\" }, this.subHeader !== undefined && h(\"h3\", null, this.subHeader), this.message !== undefined && h(\"p\", null, this.message))), h(\"ion-radio-group\", { value: checkedValue }, this.options.map(option => h(\"ion-item\", { class: getClassMap(option.cssClass) }, h(\"ion-label\", null, option.text), h(\"ion-radio\", { value: option.value, disabled: option.disabled })))))));\n }\n};\nSelectPopover.style = selectPopoverCss;\n\nexport { Select as ion_select, SelectOption as ion_select_option, SelectPopover as ion_select_popover };\n"],"mappings":"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"},"metadata":{},"sourceType":"module"} |