@anglr/select 15.0.0 → 16.0.0-beta.20260226142137
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/changelog.md +153 -0
- package/es2022/extensions/src/extensions/getValue.js +16 -1
- package/es2022/extensions/src/extensions/getValue.js.map +1 -1
- package/es2022/extensions/src/extensions/onFocus.js +14 -1
- package/es2022/extensions/src/extensions/onFocus.js.map +1 -1
- package/es2022/extensions/src/extensions/patchOptions.js +15 -11
- package/es2022/extensions/src/extensions/patchOptions.js.map +1 -1
- package/es2022/extensions/src/extensions/reinitializeOptions.js +19 -14
- package/es2022/extensions/src/extensions/reinitializeOptions.js.map +1 -1
- package/es2022/extensions/src/extensions/setReadonly.js +21 -1
- package/es2022/extensions/src/extensions/setReadonly.js.map +1 -1
- package/es2022/extensions/src/extensions/setValue.js +17 -1
- package/es2022/extensions/src/extensions/setValue.js.map +1 -1
- package/es2022/extensions/src/extensions/valueChange.js +17 -1
- package/es2022/extensions/src/extensions/valueChange.js.map +1 -1
- package/es2022/extensions/src/index.js +1 -7
- package/es2022/extensions/src/index.js.map +1 -1
- package/es2022/material/src/components/basicDialogPopup/basicDialogPopup.component.js +100 -72
- package/es2022/material/src/components/basicDialogPopup/basicDialogPopup.component.js.map +1 -1
- package/es2022/material/src/components/basicDialogPopup/basicDialogPopup.interface.js +26 -1
- package/es2022/material/src/components/basicDialogPopup/basicDialogPopup.interface.js.map +1 -1
- package/es2022/material/src/components/basicDialogPopup/index.js +2 -1
- package/es2022/material/src/components/basicDialogPopup/index.js.map +1 -1
- package/es2022/material/src/components/basicDialogPopup/types.js +2 -1
- package/es2022/material/src/components/basicDialogPopup/types.js.map +1 -1
- package/es2022/material/src/directives/dialogPopup/dialogPopup.directive.js +73 -74
- package/es2022/material/src/directives/dialogPopup/dialogPopup.directive.js.map +1 -1
- package/es2022/material/src/index.js +1 -7
- package/es2022/material/src/index.js.map +1 -1
- package/es2022/material/src/modules/dialogPopup.module.js +33 -40
- package/es2022/material/src/modules/dialogPopup.module.js.map +1 -1
- package/es2022/material/src/modules/virtualEditPopup.module.js +27 -30
- package/es2022/material/src/modules/virtualEditPopup.module.js.map +1 -1
- package/es2022/material/src/plugins/popup/dialog/dialogPopup.component.js +172 -140
- package/es2022/material/src/plugins/popup/dialog/dialogPopup.component.js.map +1 -1
- package/es2022/material/src/plugins/popup/dialog/dialogPopup.interface.js +65 -1
- package/es2022/material/src/plugins/popup/dialog/dialogPopup.interface.js.map +1 -1
- package/es2022/material/src/plugins/popup/index.js +1 -2
- package/es2022/material/src/plugins/popup/index.js.map +1 -1
- package/es2022/material/src/plugins/popup/virtualEdit/virtualEditPopup.component.js +120 -88
- package/es2022/material/src/plugins/popup/virtualEdit/virtualEditPopup.component.js.map +1 -1
- package/es2022/material/src/plugins/popup/virtualEdit/virtualEditPopup.interface.js +20 -1
- package/es2022/material/src/plugins/popup/virtualEdit/virtualEditPopup.interface.js.map +1 -1
- package/es2022/src/components/index.js +4 -0
- package/es2022/src/components/index.js.map +1 -0
- package/es2022/src/components/option/option.component.js +22 -19
- package/es2022/src/components/option/option.component.js.map +1 -1
- package/es2022/src/components/optionGroup/optgroup.component.js +29 -0
- package/es2022/src/components/optionGroup/optgroup.component.js.map +1 -0
- package/es2022/src/components/select/select.component.js +356 -450
- package/es2022/src/components/select/select.component.js.map +1 -1
- package/es2022/src/decorators/index.js +2 -0
- package/es2022/src/decorators/index.js.map +1 -0
- package/es2022/src/decorators/mergeOptionsAsSignal/mergeOptionsAsSignal.decorator.js +12 -0
- package/es2022/src/decorators/mergeOptionsAsSignal/mergeOptionsAsSignal.decorator.js.map +1 -0
- package/es2022/src/directives/index.js +5 -0
- package/es2022/src/directives/index.js.map +1 -0
- package/es2022/src/directives/normalStateTemplate/normalStateTemplate.directive.js +30 -0
- package/es2022/src/directives/normalStateTemplate/normalStateTemplate.directive.js.map +1 -0
- package/es2022/src/directives/optionTemplate/optionTemplate.directive.js +30 -0
- package/es2022/src/directives/optionTemplate/optionTemplate.directive.js.map +1 -0
- package/es2022/src/directives/selectAbsolute/selectAbsolute.directive.js +25 -0
- package/es2022/src/directives/selectAbsolute/selectAbsolute.directive.js.map +1 -0
- package/es2022/src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.js +210 -0
- package/es2022/src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.js.map +1 -0
- package/es2022/src/directives/selectEdit/selectEdit.directive.js +51 -0
- package/es2022/src/directives/selectEdit/selectEdit.directive.js.map +1 -0
- package/es2022/src/directives/selectPlaceholder/selectPlaceholder.directive.js +48 -0
- package/es2022/src/directives/selectPlaceholder/selectPlaceholder.directive.js.map +1 -0
- package/es2022/src/directives/withDirectAccess/withDirectAccess.directive.js +17 -0
- package/es2022/src/directives/withDirectAccess/withDirectAccess.directive.js.map +1 -0
- package/es2022/src/index.js +8 -41
- package/es2022/src/index.js.map +1 -1
- package/es2022/src/interfaces/index.js +20 -0
- package/es2022/src/interfaces/index.js.map +1 -0
- package/es2022/src/interfaces/initState/initState.interface.js +2 -0
- package/es2022/src/interfaces/initState/initState.interface.js.map +1 -0
- package/es2022/src/interfaces/normalStateContext/normalStateContext.interface.js +2 -0
- package/es2022/src/interfaces/normalStateContext/normalStateContext.interface.js.map +1 -0
- package/es2022/src/interfaces/optionsGatherer/optionsGatherer.interface.js +2 -0
- package/es2022/src/interfaces/optionsGatherer/optionsGatherer.interface.js.map +1 -0
- package/es2022/src/interfaces/pluginDescription/pluginDescription.interface.js +2 -0
- package/es2022/src/interfaces/pluginDescription/pluginDescription.interface.js.map +1 -0
- package/es2022/src/interfaces/pluginOptions/pluginOptions.interface.js +2 -0
- package/es2022/src/interfaces/pluginOptions/pluginOptions.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/index.js +10 -0
- package/es2022/src/interfaces/plugins/index.js.map +1 -0
- package/es2022/src/interfaces/plugins/interactions/interactions.interface.js +2 -0
- package/es2022/src/interfaces/plugins/interactions/interactions.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/keyboardHandler/keyboardHandler.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/liveSearch/liveSearch.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/normalState/normalState.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/optionsHandler/optionsHandler.interface.js +2 -0
- package/es2022/src/interfaces/plugins/optionsHandler/optionsHandler.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/popup/popup.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/positioner/positioner.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/readonlyState/readonlyState.interface.js.map +1 -0
- package/es2022/src/interfaces/plugins/valueHandler/valueHandler.interface.js.map +1 -0
- package/es2022/src/interfaces/popupContext/popupContext.interface.js +2 -0
- package/es2022/src/interfaces/popupContext/popupContext.interface.js.map +1 -0
- package/es2022/src/interfaces/selectApi/selectApi.interface.js +2 -0
- package/es2022/src/interfaces/selectApi/selectApi.interface.js.map +1 -0
- package/es2022/src/interfaces/selectBusOptions/selectBusOptions.interface.js +2 -0
- package/es2022/src/interfaces/selectBusOptions/selectBusOptions.interface.js.map +1 -0
- package/es2022/src/interfaces/selectCssClasses/selectCssClasses.interface.js +2 -0
- package/es2022/src/interfaces/selectCssClasses/selectCssClasses.interface.js.map +1 -0
- package/es2022/src/interfaces/selectEvent/selectEvent.interface.js +2 -0
- package/es2022/src/interfaces/selectEvent/selectEvent.interface.js.map +1 -0
- package/es2022/src/interfaces/selectEvents/selectEvents.interface.js +2 -0
- package/es2022/src/interfaces/selectEvents/selectEvents.interface.js.map +1 -0
- package/es2022/src/interfaces/selectOption/selectOption.interface.js +2 -0
- package/es2022/src/interfaces/selectOption/selectOption.interface.js.map +1 -0
- package/es2022/src/interfaces/selectOptionGroup/selectOptionGroup.interface.js +2 -0
- package/es2022/src/interfaces/selectOptionGroup/selectOptionGroup.interface.js.map +1 -0
- package/es2022/src/interfaces/selectOptions/selectOptions.interface.js +2 -0
- package/es2022/src/interfaces/selectOptions/selectOptions.interface.js.map +1 -0
- package/es2022/src/interfaces/selectPlugin/selectPlugin.interface.js +2 -0
- package/es2022/src/interfaces/selectPlugin/selectPlugin.interface.js.map +1 -0
- package/es2022/src/interfaces/selectPluginTypes/selectPluginTypes.interface.js +2 -0
- package/es2022/src/interfaces/selectPluginTypes/selectPluginTypes.interface.js.map +1 -0
- package/es2022/src/interfaces/templateGatherer/templateGatherer.interface.js.map +1 -0
- package/es2022/src/interfaces/visualPluginOptions/visualPluginOptions.interface.js +2 -0
- package/es2022/src/interfaces/visualPluginOptions/visualPluginOptions.interface.js.map +1 -0
- package/es2022/src/misc/classes/index.js +3 -0
- package/es2022/src/misc/classes/index.js.map +1 -0
- package/es2022/src/misc/{pluginBus/pluginBus.js → classes/selectBus/selectBus.js} +17 -8
- package/es2022/src/misc/classes/selectBus/selectBus.js.map +1 -0
- package/es2022/src/misc/classes/selectPluginInstances/selectPluginInstances.js +163 -0
- package/es2022/src/misc/classes/selectPluginInstances/selectPluginInstances.js.map +1 -0
- package/es2022/src/misc/enums.js +43 -0
- package/es2022/src/misc/enums.js.map +1 -0
- package/es2022/src/misc/extensions/getValue.js +16 -11
- package/es2022/src/misc/extensions/getValue.js.map +1 -1
- package/es2022/src/misc/extensions/index.js +6 -5
- package/es2022/src/misc/extensions/index.js.map +1 -1
- package/es2022/src/misc/extensions/onFocus.js +14 -9
- package/es2022/src/misc/extensions/onFocus.js.map +1 -1
- package/es2022/src/misc/extensions/setReadonly.js +22 -17
- package/es2022/src/misc/extensions/setReadonly.js.map +1 -1
- package/es2022/src/misc/extensions/setValue.js +17 -12
- package/es2022/src/misc/extensions/setValue.js.map +1 -1
- package/es2022/src/misc/extensions/valueChange.js +17 -11
- package/es2022/src/misc/extensions/valueChange.js.map +1 -1
- package/es2022/src/misc/ngSelectOptions.interface.js.map +1 -1
- package/es2022/src/misc/optionsGatherer/codeOptionsGatherer.js +119 -82
- package/es2022/src/misc/optionsGatherer/codeOptionsGatherer.js.map +1 -1
- package/es2022/src/misc/optionsGatherer/dynamicOptionsGatherer.interface.js +31 -1
- package/es2022/src/misc/optionsGatherer/dynamicOptionsGatherer.interface.js.map +1 -1
- package/es2022/src/misc/optionsGatherer/dynamicOptionsGatherer.js +178 -117
- package/es2022/src/misc/optionsGatherer/dynamicOptionsGatherer.js.map +1 -1
- package/es2022/src/misc/optionsGatherer/excludingOptionsGatherer.js +155 -109
- package/es2022/src/misc/optionsGatherer/excludingOptionsGatherer.js.map +1 -1
- package/es2022/src/misc/optionsGatherer/optionsGatherer.interface.js +55 -1
- package/es2022/src/misc/optionsGatherer/optionsGatherer.interface.js.map +1 -1
- package/es2022/src/misc/optionsGatherer/types.js +4 -3
- package/es2022/src/misc/optionsGatherer/types.js.map +1 -1
- package/es2022/src/misc/providers.js +102 -0
- package/es2022/src/misc/providers.js.map +1 -0
- package/es2022/src/misc/tokens.js +78 -0
- package/es2022/src/misc/tokens.js.map +1 -0
- package/es2022/src/misc/types.js +1 -33
- package/es2022/src/misc/types.js.map +1 -1
- package/es2022/src/modules/index.js +2 -0
- package/es2022/src/modules/index.js.map +1 -0
- package/es2022/src/modules/ngSelect.module.js +31 -75
- package/es2022/src/modules/ngSelect.module.js.map +1 -1
- package/es2022/src/modules/ngSelectEdit.module.js +39 -50
- package/es2022/src/modules/ngSelectEdit.module.js.map +1 -1
- package/es2022/src/pipes/getPlugin/getPlugin.pipe.js +17 -0
- package/es2022/src/pipes/getPlugin/getPlugin.pipe.js.map +1 -0
- package/es2022/src/pipes/index.js +4 -0
- package/es2022/src/pipes/index.js.map +1 -0
- package/es2022/src/pipes/{ngSelectHasValue.pipe.js → selectHasValue/selectHasValue.pipe.js} +7 -7
- package/es2022/src/pipes/selectHasValue/selectHasValue.pipe.js.map +1 -0
- package/es2022/src/pipes/selectValue/selectValue.pipe.js +31 -0
- package/es2022/src/pipes/selectValue/selectValue.pipe.js.map +1 -0
- package/es2022/src/plugins/index.js +10 -0
- package/es2022/src/plugins/index.js.map +1 -0
- package/es2022/src/plugins/interactions/index.js +2 -0
- package/es2022/src/plugins/interactions/index.js.map +1 -0
- package/es2022/src/plugins/interactions/noInteractions/noInteractions.component.js +36 -0
- package/es2022/src/plugins/interactions/noInteractions/noInteractions.component.js.map +1 -0
- package/es2022/src/plugins/keyboardHandler/index.js +1 -3
- package/es2022/src/plugins/keyboardHandler/index.js.map +1 -1
- package/es2022/src/plugins/keyboardHandler/simpleKeyboardHandler/simpleKeyboardHandler.component.js +36 -0
- package/es2022/src/plugins/keyboardHandler/simpleKeyboardHandler/simpleKeyboardHandler.component.js.map +1 -0
- package/es2022/src/plugins/liveSearch/filterLiveSearch/filterLiveSearch.component.js +36 -0
- package/es2022/src/plugins/liveSearch/filterLiveSearch/filterLiveSearch.component.js.map +1 -0
- package/es2022/src/plugins/liveSearch/index.js +2 -4
- package/es2022/src/plugins/liveSearch/index.js.map +1 -1
- package/es2022/src/plugins/liveSearch/noLiveSearch/noLiveSearch.component.js +36 -0
- package/es2022/src/plugins/liveSearch/noLiveSearch/noLiveSearch.component.js.map +1 -0
- package/es2022/src/plugins/normalState/index.js +1 -3
- package/es2022/src/plugins/normalState/index.js.map +1 -1
- package/es2022/src/plugins/normalState/simpleNormalState/simpleNormalState.component.js +36 -0
- package/es2022/src/plugins/normalState/simpleNormalState/simpleNormalState.component.js.map +1 -0
- package/es2022/src/plugins/optionsHandler/index.js +2 -0
- package/es2022/src/plugins/optionsHandler/index.js.map +1 -0
- package/es2022/src/plugins/optionsHandler/noOptionsHandler/noOptionsHandler.component.js +50 -0
- package/es2022/src/plugins/optionsHandler/noOptionsHandler/noOptionsHandler.component.js.map +1 -0
- package/es2022/src/plugins/popup/index.js +1 -3
- package/es2022/src/plugins/popup/index.js.map +1 -1
- package/es2022/src/plugins/popup/simplePopup/simplePopup.component.js +36 -0
- package/es2022/src/plugins/popup/simplePopup/simplePopup.component.js.map +1 -0
- package/es2022/src/plugins/positioner/basicPositioner/basicPositioner.component.js +36 -0
- package/es2022/src/plugins/positioner/basicPositioner/basicPositioner.component.js.map +1 -0
- package/es2022/src/plugins/positioner/index.js +1 -3
- package/es2022/src/plugins/positioner/index.js.map +1 -1
- package/es2022/src/plugins/readonlyState/index.js +1 -1
- package/es2022/src/plugins/readonlyState/index.js.map +1 -1
- package/es2022/src/plugins/valueHandler/index.js +1 -4
- package/es2022/src/plugins/valueHandler/index.js.map +1 -1
- package/es2022/src/plugins/valueHandler/staticValueHandler/staticValueHandler.component.js +81 -0
- package/es2022/src/plugins/valueHandler/staticValueHandler/staticValueHandler.component.js.map +1 -0
- package/extensions/src/extensions/getValue.d.ts +0 -1
- package/extensions/src/extensions/getValue.d.ts.map +1 -1
- package/extensions/src/extensions/onFocus.d.ts +0 -1
- package/extensions/src/extensions/onFocus.d.ts.map +1 -1
- package/extensions/src/extensions/patchOptions.d.ts +0 -6
- package/extensions/src/extensions/patchOptions.d.ts.map +1 -1
- package/extensions/src/extensions/reinitializeOptions.d.ts +0 -6
- package/extensions/src/extensions/reinitializeOptions.d.ts.map +1 -1
- package/extensions/src/extensions/setReadonly.d.ts +0 -1
- package/extensions/src/extensions/setReadonly.d.ts.map +1 -1
- package/extensions/src/extensions/setValue.d.ts +0 -1
- package/extensions/src/extensions/setValue.d.ts.map +1 -1
- package/extensions/src/extensions/valueChange.d.ts +0 -1
- package/extensions/src/extensions/valueChange.d.ts.map +1 -1
- package/extensions/src/index.d.ts +1 -7
- package/extensions/src/index.d.ts.map +1 -1
- package/material/src/components/basicDialogPopup/basicDialogPopup.component.d.ts +0 -46
- package/material/src/components/basicDialogPopup/basicDialogPopup.component.d.ts.map +1 -1
- package/material/src/components/basicDialogPopup/basicDialogPopup.interface.d.ts +0 -23
- package/material/src/components/basicDialogPopup/basicDialogPopup.interface.d.ts.map +1 -1
- package/material/src/components/basicDialogPopup/index.d.ts +0 -1
- package/material/src/components/basicDialogPopup/index.d.ts.map +1 -1
- package/material/src/components/basicDialogPopup/types.d.ts +0 -1
- package/material/src/components/basicDialogPopup/types.d.ts.map +1 -1
- package/material/src/directives/dialogPopup/dialogPopup.directive.d.ts +0 -26
- package/material/src/directives/dialogPopup/dialogPopup.directive.d.ts.map +1 -1
- package/material/src/index.d.ts +1 -7
- package/material/src/index.d.ts.map +1 -1
- package/material/src/modules/dialogPopup.module.d.ts +0 -14
- package/material/src/modules/dialogPopup.module.d.ts.map +1 -1
- package/material/src/modules/virtualEditPopup.module.d.ts +0 -12
- package/material/src/modules/virtualEditPopup.module.d.ts.map +1 -1
- package/material/src/plugins/popup/dialog/dialogPopup.component.d.ts +0 -82
- package/material/src/plugins/popup/dialog/dialogPopup.component.d.ts.map +1 -1
- package/material/src/plugins/popup/dialog/dialogPopup.interface.d.ts +0 -59
- package/material/src/plugins/popup/dialog/dialogPopup.interface.d.ts.map +1 -1
- package/material/src/plugins/popup/index.d.ts +1 -2
- package/material/src/plugins/popup/index.d.ts.map +1 -1
- package/material/src/plugins/popup/virtualEdit/virtualEditPopup.component.d.ts +0 -29
- package/material/src/plugins/popup/virtualEdit/virtualEditPopup.component.d.ts.map +1 -1
- package/material/src/plugins/popup/virtualEdit/virtualEditPopup.interface.d.ts +0 -16
- package/material/src/plugins/popup/virtualEdit/virtualEditPopup.interface.d.ts.map +1 -1
- package/package.json +27 -19
- package/src/components/index.d.ts +4 -0
- package/src/components/index.d.ts.map +1 -0
- package/src/components/option/option.component.d.ts +15 -14
- package/src/components/option/option.component.d.ts.map +1 -1
- package/src/components/optionGroup/optgroup.component.d.ts +25 -0
- package/src/components/optionGroup/optgroup.component.d.ts.map +1 -0
- package/src/components/select/select.component.css +5 -0
- package/src/components/select/select.component.d.ts +94 -179
- package/src/components/select/select.component.d.ts.map +1 -1
- package/src/components/select/select.component.html +10 -16
- package/src/decorators/index.d.ts +2 -0
- package/src/{components/select → decorators}/index.d.ts.map +1 -1
- package/src/decorators/mergeOptionsAsSignal/mergeOptionsAsSignal.decorator.d.ts +5 -0
- package/src/decorators/mergeOptionsAsSignal/mergeOptionsAsSignal.decorator.d.ts.map +1 -0
- package/src/directives/index.d.ts +5 -0
- package/src/directives/index.d.ts.map +1 -0
- package/src/directives/normalStateTemplate/normalStateTemplate.directive.d.ts +19 -0
- package/src/directives/normalStateTemplate/normalStateTemplate.directive.d.ts.map +1 -0
- package/src/directives/optionTemplate/optionTemplate.directive.d.ts +19 -0
- package/src/directives/optionTemplate/optionTemplate.directive.d.ts.map +1 -0
- package/src/directives/selectAbsolute/selectAbsolute.directive.d.ts +12 -0
- package/src/directives/selectAbsolute/selectAbsolute.directive.d.ts.map +1 -0
- package/src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.d.ts +1 -0
- package/src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.d.ts.map +1 -0
- package/src/directives/selectEdit/selectEdit.directive.d.ts +1 -0
- package/src/directives/selectEdit/selectEdit.directive.d.ts.map +1 -0
- package/src/directives/selectPlaceholder/selectPlaceholder.directive.d.ts +1 -0
- package/src/directives/selectPlaceholder/selectPlaceholder.directive.d.ts.map +1 -0
- package/src/directives/withDirectAccess/withDirectAccess.directive.d.ts +9 -0
- package/src/directives/withDirectAccess/withDirectAccess.directive.d.ts.map +1 -0
- package/src/index.d.ts +8 -41
- package/src/index.d.ts.map +1 -1
- package/src/interfaces/index.d.ts +20 -0
- package/src/interfaces/index.d.ts.map +1 -0
- package/src/interfaces/initState/initState.interface.d.ts +10 -0
- package/src/interfaces/initState/initState.interface.d.ts.map +1 -0
- package/src/interfaces/normalStateContext/normalStateContext.interface.d.ts +11 -0
- package/src/interfaces/normalStateContext/normalStateContext.interface.d.ts.map +1 -0
- package/src/interfaces/optionsGatherer/optionsGatherer.interface.d.ts +12 -0
- package/src/interfaces/optionsGatherer/optionsGatherer.interface.d.ts.map +1 -0
- package/src/interfaces/pluginDescription/pluginDescription.interface.d.ts +21 -0
- package/src/interfaces/pluginDescription/pluginDescription.interface.d.ts.map +1 -0
- package/src/interfaces/pluginOptions/pluginOptions.interface.d.ts +6 -0
- package/src/interfaces/pluginOptions/pluginOptions.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/index.d.ts +10 -0
- package/src/interfaces/plugins/index.d.ts.map +1 -0
- package/src/interfaces/plugins/interactions/interactions.interface.d.ts +13 -0
- package/src/interfaces/plugins/interactions/interactions.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/keyboardHandler/keyboardHandler.interface.d.ts +13 -0
- package/src/interfaces/plugins/keyboardHandler/keyboardHandler.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/liveSearch/liveSearch.interface.d.ts +13 -0
- package/src/interfaces/plugins/liveSearch/liveSearch.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/normalState/normalState.interface.d.ts +31 -0
- package/src/interfaces/plugins/normalState/normalState.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/optionsHandler/optionsHandler.interface.d.ts +19 -0
- package/src/interfaces/plugins/optionsHandler/optionsHandler.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/popup/popup.interface.d.ts +13 -0
- package/src/interfaces/plugins/popup/popup.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/positioner/positioner.interface.d.ts +13 -0
- package/src/interfaces/plugins/positioner/positioner.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/readonlyState/readonlyState.interface.d.ts +12 -0
- package/src/interfaces/plugins/readonlyState/readonlyState.interface.d.ts.map +1 -0
- package/src/interfaces/plugins/valueHandler/valueHandler.interface.d.ts +23 -0
- package/src/interfaces/plugins/valueHandler/valueHandler.interface.d.ts.map +1 -0
- package/src/interfaces/popupContext/popupContext.interface.d.ts +16 -0
- package/src/interfaces/popupContext/popupContext.interface.d.ts.map +1 -0
- package/src/interfaces/selectApi/selectApi.interface.d.ts +50 -0
- package/src/interfaces/selectApi/selectApi.interface.d.ts.map +1 -0
- package/src/interfaces/selectBusOptions/selectBusOptions.interface.d.ts +29 -0
- package/src/interfaces/selectBusOptions/selectBusOptions.interface.d.ts.map +1 -0
- package/src/interfaces/selectCssClasses/selectCssClasses.interface.d.ts +6 -0
- package/src/interfaces/selectCssClasses/selectCssClasses.interface.d.ts.map +1 -0
- package/src/interfaces/selectEvent/selectEvent.interface.d.ts +20 -0
- package/src/interfaces/selectEvent/selectEvent.interface.d.ts.map +1 -0
- package/src/interfaces/selectEvents/selectEvents.interface.d.ts +37 -0
- package/src/interfaces/selectEvents/selectEvents.interface.d.ts.map +1 -0
- package/src/interfaces/selectOption/selectOption.interface.d.ts +33 -0
- package/src/interfaces/selectOption/selectOption.interface.d.ts.map +1 -0
- package/src/interfaces/selectOptionGroup/selectOptionGroup.interface.d.ts +21 -0
- package/src/interfaces/selectOptionGroup/selectOptionGroup.interface.d.ts.map +1 -0
- package/src/interfaces/selectOptions/selectOptions.interface.d.ts +27 -0
- package/src/interfaces/selectOptions/selectOptions.interface.d.ts.map +1 -0
- package/src/interfaces/selectPlugin/selectPlugin.interface.d.ts +33 -0
- package/src/interfaces/selectPlugin/selectPlugin.interface.d.ts.map +1 -0
- package/src/interfaces/selectPluginTypes/selectPluginTypes.interface.d.ts +44 -0
- package/src/interfaces/selectPluginTypes/selectPluginTypes.interface.d.ts.map +1 -0
- package/src/interfaces/templateGatherer/templateGatherer.interface.d.ts +17 -0
- package/src/interfaces/templateGatherer/templateGatherer.interface.d.ts.map +1 -0
- package/src/interfaces/visualPluginOptions/visualPluginOptions.interface.d.ts +11 -0
- package/src/interfaces/visualPluginOptions/visualPluginOptions.interface.d.ts.map +1 -0
- package/src/misc/classes/index.d.ts +3 -0
- package/src/misc/classes/index.d.ts.map +1 -0
- package/src/misc/classes/selectBus/selectBus.d.ts +54 -0
- package/src/misc/classes/selectBus/selectBus.d.ts.map +1 -0
- package/src/misc/classes/selectPluginInstances/selectPluginInstances.d.ts +90 -0
- package/src/misc/classes/selectPluginInstances/selectPluginInstances.d.ts.map +1 -0
- package/src/misc/enums.d.ts +42 -0
- package/src/misc/enums.d.ts.map +1 -0
- package/src/misc/extensions/getValue.d.ts +0 -6
- package/src/misc/extensions/getValue.d.ts.map +1 -1
- package/src/misc/extensions/index.d.ts +0 -5
- package/src/misc/extensions/index.d.ts.map +1 -1
- package/src/misc/extensions/onFocus.d.ts +0 -7
- package/src/misc/extensions/onFocus.d.ts.map +1 -1
- package/src/misc/extensions/setReadonly.d.ts +0 -7
- package/src/misc/extensions/setReadonly.d.ts.map +1 -1
- package/src/misc/extensions/setValue.d.ts +0 -7
- package/src/misc/extensions/setValue.d.ts.map +1 -1
- package/src/misc/extensions/valueChange.d.ts +0 -7
- package/src/misc/extensions/valueChange.d.ts.map +1 -1
- package/src/misc/ngSelectOptions.interface.d.ts +0 -71
- package/src/misc/ngSelectOptions.interface.d.ts.map +1 -1
- package/src/misc/optionsGatherer/codeOptionsGatherer.d.ts +0 -69
- package/src/misc/optionsGatherer/codeOptionsGatherer.d.ts.map +1 -1
- package/src/misc/optionsGatherer/dynamicOptionsGatherer.d.ts +0 -85
- package/src/misc/optionsGatherer/dynamicOptionsGatherer.d.ts.map +1 -1
- package/src/misc/optionsGatherer/dynamicOptionsGatherer.interface.d.ts +0 -28
- package/src/misc/optionsGatherer/dynamicOptionsGatherer.interface.d.ts.map +1 -1
- package/src/misc/optionsGatherer/excludingOptionsGatherer.d.ts +0 -72
- package/src/misc/optionsGatherer/excludingOptionsGatherer.d.ts.map +1 -1
- package/src/misc/optionsGatherer/optionsGatherer.interface.d.ts +0 -52
- package/src/misc/optionsGatherer/optionsGatherer.interface.d.ts.map +1 -1
- package/src/misc/optionsGatherer/types.d.ts +0 -3
- package/src/misc/optionsGatherer/types.d.ts.map +1 -1
- package/src/misc/providers.d.ts +54 -0
- package/src/misc/providers.d.ts.map +1 -0
- package/src/misc/tokens.d.ts +81 -0
- package/src/misc/tokens.d.ts.map +1 -0
- package/src/misc/types.d.ts +11 -31
- package/src/misc/types.d.ts.map +1 -1
- package/src/modules/index.d.ts +2 -0
- package/src/modules/index.d.ts.map +1 -0
- package/src/modules/ngSelect.module.d.ts +7 -20
- package/src/modules/ngSelect.module.d.ts.map +1 -1
- package/src/modules/ngSelectEdit.module.d.ts +0 -16
- package/src/modules/ngSelectEdit.module.d.ts.map +1 -1
- package/src/pipes/getPlugin/getPlugin.pipe.d.ts +25 -0
- package/src/pipes/getPlugin/getPlugin.pipe.d.ts.map +1 -0
- package/src/pipes/index.d.ts +4 -0
- package/src/pipes/index.d.ts.map +1 -0
- package/src/pipes/selectHasValue/selectHasValue.pipe.d.ts +16 -0
- package/src/pipes/selectHasValue/selectHasValue.pipe.d.ts.map +1 -0
- package/src/pipes/selectValue/selectValue.pipe.d.ts +19 -0
- package/src/pipes/selectValue/selectValue.pipe.d.ts.map +1 -0
- package/src/plugins/index.d.ts +9 -0
- package/src/plugins/index.d.ts.map +1 -0
- package/src/plugins/interactions/index.d.ts +2 -0
- package/src/plugins/interactions/index.d.ts.map +1 -0
- package/src/plugins/interactions/noInteractions/noInteractions.component.d.ts +28 -0
- package/src/plugins/interactions/noInteractions/noInteractions.component.d.ts.map +1 -0
- package/src/plugins/keyboardHandler/index.d.ts +1 -3
- package/src/plugins/keyboardHandler/index.d.ts.map +1 -1
- package/src/plugins/keyboardHandler/simpleKeyboardHandler/simpleKeyboardHandler.component.d.ts +28 -0
- package/src/plugins/keyboardHandler/simpleKeyboardHandler/simpleKeyboardHandler.component.d.ts.map +1 -0
- package/src/plugins/liveSearch/filterLiveSearch/filterLiveSearch.component.d.ts +28 -0
- package/src/plugins/liveSearch/filterLiveSearch/filterLiveSearch.component.d.ts.map +1 -0
- package/src/plugins/liveSearch/index.d.ts +2 -4
- package/src/plugins/liveSearch/index.d.ts.map +1 -1
- package/src/plugins/liveSearch/noLiveSearch/noLiveSearch.component.d.ts +28 -0
- package/src/plugins/liveSearch/noLiveSearch/noLiveSearch.component.d.ts.map +1 -0
- package/src/plugins/normalState/index.d.ts +1 -3
- package/src/plugins/normalState/index.d.ts.map +1 -1
- package/src/plugins/normalState/simpleNormalState/simpleNormalState.component.d.ts +28 -0
- package/src/plugins/normalState/simpleNormalState/simpleNormalState.component.d.ts.map +1 -0
- package/src/plugins/optionsHandler/index.d.ts +2 -0
- package/src/plugins/optionsHandler/index.d.ts.map +1 -0
- package/src/plugins/optionsHandler/noOptionsHandler/noOptionsHandler.component.d.ts +41 -0
- package/src/plugins/optionsHandler/noOptionsHandler/noOptionsHandler.component.d.ts.map +1 -0
- package/src/plugins/popup/index.d.ts +1 -3
- package/src/plugins/popup/index.d.ts.map +1 -1
- package/src/plugins/popup/simplePopup/simplePopup.component.d.ts +28 -0
- package/src/plugins/popup/simplePopup/simplePopup.component.d.ts.map +1 -0
- package/src/plugins/positioner/basicPositioner/basicPositioner.component.d.ts +28 -0
- package/src/plugins/positioner/basicPositioner/basicPositioner.component.d.ts.map +1 -0
- package/src/plugins/positioner/index.d.ts +1 -3
- package/src/plugins/positioner/index.d.ts.map +1 -1
- package/src/plugins/readonlyState/index.d.ts +0 -1
- package/src/plugins/readonlyState/index.d.ts.map +1 -1
- package/src/plugins/valueHandler/index.d.ts +1 -4
- package/src/plugins/valueHandler/index.d.ts.map +1 -1
- package/src/plugins/valueHandler/staticValueHandler/staticValueHandler.component.d.ts +46 -0
- package/src/plugins/valueHandler/staticValueHandler/staticValueHandler.component.d.ts.map +1 -0
- package/styles/components/_grid.scss +9 -0
- package/styles/core/_functions.scss +10 -0
- package/styles/core/_misc.scss +146 -0
- package/styles/core/_mixins.scss +44 -0
- package/styles/core/_theme.scss +16 -0
- package/styles/index.scss +2 -0
- package/styles/themes/dark.scss +19 -0
- package/styles/themes/light.scss +19 -0
- package/version.bak +1 -1
- package/es2022/material/src/directives/types.js +0 -2
- package/es2022/material/src/directives/types.js.map +0 -1
- package/es2022/material/src/plugins/popup/components.js +0 -3
- package/es2022/material/src/plugins/popup/components.js.map +0 -1
- package/es2022/src/components/option/index.js +0 -3
- package/es2022/src/components/option/index.js.map +0 -1
- package/es2022/src/components/option/optgroup.component.js +0 -54
- package/es2022/src/components/option/optgroup.component.js.map +0 -1
- package/es2022/src/components/option/optgroup.interface.js +0 -2
- package/es2022/src/components/option/optgroup.interface.js.map +0 -1
- package/es2022/src/components/option/option.interface.js +0 -2
- package/es2022/src/components/option/option.interface.js.map +0 -1
- package/es2022/src/components/select/index.js +0 -2
- package/es2022/src/components/select/index.js.map +0 -1
- package/es2022/src/components/select/select.interface.js +0 -2
- package/es2022/src/components/select/select.interface.js.map +0 -1
- package/es2022/src/components/select/types.js +0 -6
- package/es2022/src/components/select/types.js.map +0 -1
- package/es2022/src/directives/ngSelectAbsolute/ngSelectAbsolute.directive.js +0 -25
- package/es2022/src/directives/ngSelectAbsolute/ngSelectAbsolute.directive.js.map +0 -1
- package/es2022/src/directives/ngSelectEdit/ngSelectEdit.directive.js +0 -66
- package/es2022/src/directives/ngSelectEdit/ngSelectEdit.directive.js.map +0 -1
- package/es2022/src/directives/ngSelectPlaceholder/ngSelectPlaceholder.directive.js +0 -42
- package/es2022/src/directives/ngSelectPlaceholder/ngSelectPlaceholder.directive.js.map +0 -1
- package/es2022/src/index.ssr.js +0 -10
- package/es2022/src/index.ssr.js.map +0 -1
- package/es2022/src/misc/index.js +0 -6
- package/es2022/src/misc/index.js.map +0 -1
- package/es2022/src/misc/ngSelectControlValueAccessor.directive.js +0 -162
- package/es2022/src/misc/ngSelectControlValueAccessor.directive.js.map +0 -1
- package/es2022/src/misc/plugin.interface.js +0 -2
- package/es2022/src/misc/plugin.interface.js.map +0 -1
- package/es2022/src/misc/pluginBus/pluginBus.interface.js +0 -2
- package/es2022/src/misc/pluginBus/pluginBus.interface.js.map +0 -1
- package/es2022/src/misc/pluginBus/pluginBus.js.map +0 -1
- package/es2022/src/misc/templateGatherer.interface.js.map +0 -1
- package/es2022/src/modules/ngSelectDynamic.module.js +0 -20
- package/es2022/src/modules/ngSelectDynamic.module.js.map +0 -1
- package/es2022/src/pipes/ngSelectHasValue.pipe.js.map +0 -1
- package/es2022/src/pipes/ngSelectValue.pipe.js +0 -31
- package/es2022/src/pipes/ngSelectValue.pipe.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/basic/basicKeyboardHandler.component.js +0 -146
- package/es2022/src/plugins/keyboardHandler/basic/basicKeyboardHandler.component.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/basic/basicKeyboardHandler.interface.js +0 -2
- package/es2022/src/plugins/keyboardHandler/basic/basicKeyboardHandler.interface.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/components.js +0 -3
- package/es2022/src/plugins/keyboardHandler/components.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/edit/editKeyboardHandler.component.js +0 -197
- package/es2022/src/plugins/keyboardHandler/edit/editKeyboardHandler.component.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/edit/editKeyboardHandler.interface.js +0 -2
- package/es2022/src/plugins/keyboardHandler/edit/editKeyboardHandler.interface.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/keyboardHandler.interface.js.map +0 -1
- package/es2022/src/plugins/keyboardHandler/types.js +0 -10
- package/es2022/src/plugins/keyboardHandler/types.js.map +0 -1
- package/es2022/src/plugins/liveSearch/basic/basicLiveSearch.component.js +0 -164
- package/es2022/src/plugins/liveSearch/basic/basicLiveSearch.component.js.map +0 -1
- package/es2022/src/plugins/liveSearch/basic/basicLiveSearch.interface.js +0 -2
- package/es2022/src/plugins/liveSearch/basic/basicLiveSearch.interface.js.map +0 -1
- package/es2022/src/plugins/liveSearch/components.js +0 -4
- package/es2022/src/plugins/liveSearch/components.js.map +0 -1
- package/es2022/src/plugins/liveSearch/edit/editLiveSearch.component.js +0 -313
- package/es2022/src/plugins/liveSearch/edit/editLiveSearch.component.js.map +0 -1
- package/es2022/src/plugins/liveSearch/edit/editLiveSearch.interface.js +0 -2
- package/es2022/src/plugins/liveSearch/edit/editLiveSearch.interface.js.map +0 -1
- package/es2022/src/plugins/liveSearch/liveSearch.interface.js.map +0 -1
- package/es2022/src/plugins/liveSearch/no/noLiveSearch.component.js +0 -65
- package/es2022/src/plugins/liveSearch/no/noLiveSearch.component.js.map +0 -1
- package/es2022/src/plugins/liveSearch/no/noLiveSearch.interface.js +0 -2
- package/es2022/src/plugins/liveSearch/no/noLiveSearch.interface.js.map +0 -1
- package/es2022/src/plugins/liveSearch/types.js +0 -10
- package/es2022/src/plugins/liveSearch/types.js.map +0 -1
- package/es2022/src/plugins/normalState/basic/basicNormalState.component.js +0 -58
- package/es2022/src/plugins/normalState/basic/basicNormalState.component.js.map +0 -1
- package/es2022/src/plugins/normalState/basic/basicNormalState.interface.js +0 -2
- package/es2022/src/plugins/normalState/basic/basicNormalState.interface.js.map +0 -1
- package/es2022/src/plugins/normalState/components.js +0 -4
- package/es2022/src/plugins/normalState/components.js.map +0 -1
- package/es2022/src/plugins/normalState/edit/editNormalState.component.js +0 -88
- package/es2022/src/plugins/normalState/edit/editNormalState.component.js.map +0 -1
- package/es2022/src/plugins/normalState/edit/editNormalState.interface.js +0 -2
- package/es2022/src/plugins/normalState/edit/editNormalState.interface.js.map +0 -1
- package/es2022/src/plugins/normalState/normalState.interface.js.map +0 -1
- package/es2022/src/plugins/normalState/normalStateAbstract.component.js +0 -89
- package/es2022/src/plugins/normalState/normalStateAbstract.component.js.map +0 -1
- package/es2022/src/plugins/normalState/types.js +0 -10
- package/es2022/src/plugins/normalState/types.js.map +0 -1
- package/es2022/src/plugins/popup/basic/basicPopup.component.js +0 -62
- package/es2022/src/plugins/popup/basic/basicPopup.component.js.map +0 -1
- package/es2022/src/plugins/popup/basic/basicPopup.interface.js +0 -2
- package/es2022/src/plugins/popup/basic/basicPopup.interface.js.map +0 -1
- package/es2022/src/plugins/popup/component.js +0 -4
- package/es2022/src/plugins/popup/component.js.map +0 -1
- package/es2022/src/plugins/popup/edit/editPopup.component.js +0 -85
- package/es2022/src/plugins/popup/edit/editPopup.component.js.map +0 -1
- package/es2022/src/plugins/popup/edit/editPopup.interface.js +0 -2
- package/es2022/src/plugins/popup/edit/editPopup.interface.js.map +0 -1
- package/es2022/src/plugins/popup/popup.interface.js.map +0 -1
- package/es2022/src/plugins/popup/popupAbstract.component.js +0 -200
- package/es2022/src/plugins/popup/popupAbstract.component.js.map +0 -1
- package/es2022/src/plugins/popup/types.js +0 -10
- package/es2022/src/plugins/popup/types.js.map +0 -1
- package/es2022/src/plugins/positioner/components.js +0 -3
- package/es2022/src/plugins/positioner/components.js.map +0 -1
- package/es2022/src/plugins/positioner/default/defaultPositioner.component.js +0 -160
- package/es2022/src/plugins/positioner/default/defaultPositioner.component.js.map +0 -1
- package/es2022/src/plugins/positioner/default/defaultPositioner.interface.js +0 -2
- package/es2022/src/plugins/positioner/default/defaultPositioner.interface.js.map +0 -1
- package/es2022/src/plugins/positioner/no/noPositioner.component.js +0 -78
- package/es2022/src/plugins/positioner/no/noPositioner.component.js.map +0 -1
- package/es2022/src/plugins/positioner/no/noPositioner.interface.js +0 -2
- package/es2022/src/plugins/positioner/no/noPositioner.interface.js.map +0 -1
- package/es2022/src/plugins/positioner/positioner.interface.js.map +0 -1
- package/es2022/src/plugins/positioner/types.js +0 -10
- package/es2022/src/plugins/positioner/types.js.map +0 -1
- package/es2022/src/plugins/readonlyState/readonlyState.interface.js.map +0 -1
- package/es2022/src/plugins/readonlyState/types.js +0 -10
- package/es2022/src/plugins/readonlyState/types.js.map +0 -1
- package/es2022/src/plugins/valueHandler/basic/basicValueHandler.component.js +0 -159
- package/es2022/src/plugins/valueHandler/basic/basicValueHandler.component.js.map +0 -1
- package/es2022/src/plugins/valueHandler/basic/basicValueHandler.interface.js +0 -2
- package/es2022/src/plugins/valueHandler/basic/basicValueHandler.interface.js.map +0 -1
- package/es2022/src/plugins/valueHandler/components.js +0 -3
- package/es2022/src/plugins/valueHandler/components.js.map +0 -1
- package/es2022/src/plugins/valueHandler/dynamic/dynamicValueHandler.component.js +0 -179
- package/es2022/src/plugins/valueHandler/dynamic/dynamicValueHandler.component.js.map +0 -1
- package/es2022/src/plugins/valueHandler/dynamic/dynamicValueHandler.interface.js +0 -2
- package/es2022/src/plugins/valueHandler/dynamic/dynamicValueHandler.interface.js.map +0 -1
- package/es2022/src/plugins/valueHandler/types.js +0 -10
- package/es2022/src/plugins/valueHandler/types.js.map +0 -1
- package/es2022/src/plugins/valueHandler/valueHandler.interface.js.map +0 -1
- package/es2022/src/plugins/valueHandler/valueHandlerBase.js +0 -145
- package/es2022/src/plugins/valueHandler/valueHandlerBase.js.map +0 -1
- package/material/src/directives/types.d.ts +0 -2
- package/material/src/directives/types.d.ts.map +0 -1
- package/material/src/plugins/popup/components.d.ts +0 -3
- package/material/src/plugins/popup/components.d.ts.map +0 -1
- package/src/components/option/index.d.ts +0 -3
- package/src/components/option/index.d.ts.map +0 -1
- package/src/components/option/optgroup.component.d.ts +0 -37
- package/src/components/option/optgroup.component.d.ts.map +0 -1
- package/src/components/option/optgroup.interface.d.ts +0 -20
- package/src/components/option/optgroup.interface.d.ts.map +0 -1
- package/src/components/option/option.interface.d.ts +0 -31
- package/src/components/option/option.interface.d.ts.map +0 -1
- package/src/components/select/index.d.ts +0 -2
- package/src/components/select/select.interface.d.ts +0 -68
- package/src/components/select/select.interface.d.ts.map +0 -1
- package/src/components/select/types.d.ts +0 -7
- package/src/components/select/types.d.ts.map +0 -1
- package/src/directives/ngSelectAbsolute/ngSelectAbsolute.directive.d.ts +0 -11
- package/src/directives/ngSelectAbsolute/ngSelectAbsolute.directive.d.ts.map +0 -1
- package/src/directives/ngSelectEdit/ngSelectEdit.directive.d.ts +0 -11
- package/src/directives/ngSelectEdit/ngSelectEdit.directive.d.ts.map +0 -1
- package/src/directives/ngSelectPlaceholder/ngSelectPlaceholder.directive.d.ts +0 -21
- package/src/directives/ngSelectPlaceholder/ngSelectPlaceholder.directive.d.ts.map +0 -1
- package/src/index.ssr.d.ts +0 -1
- package/src/index.ssr.d.ts.map +0 -1
- package/src/misc/index.d.ts +0 -6
- package/src/misc/index.d.ts.map +0 -1
- package/src/misc/ngSelectControlValueAccessor.directive.d.ts +0 -63
- package/src/misc/ngSelectControlValueAccessor.directive.d.ts.map +0 -1
- package/src/misc/plugin.interface.d.ts +0 -108
- package/src/misc/plugin.interface.d.ts.map +0 -1
- package/src/misc/pluginBus/pluginBus.d.ts +0 -49
- package/src/misc/pluginBus/pluginBus.d.ts.map +0 -1
- package/src/misc/pluginBus/pluginBus.interface.d.ts +0 -36
- package/src/misc/pluginBus/pluginBus.interface.d.ts.map +0 -1
- package/src/misc/templateGatherer.interface.d.ts +0 -17
- package/src/misc/templateGatherer.interface.d.ts.map +0 -1
- package/src/modules/ngSelectDynamic.module.d.ts +0 -11
- package/src/modules/ngSelectDynamic.module.d.ts.map +0 -1
- package/src/pipes/ngSelectHasValue.pipe.d.ts +0 -16
- package/src/pipes/ngSelectHasValue.pipe.d.ts.map +0 -1
- package/src/pipes/ngSelectValue.pipe.d.ts +0 -19
- package/src/pipes/ngSelectValue.pipe.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/basic/basicKeyboardHandler.component.d.ts +0 -58
- package/src/plugins/keyboardHandler/basic/basicKeyboardHandler.component.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/basic/basicKeyboardHandler.interface.d.ts +0 -12
- package/src/plugins/keyboardHandler/basic/basicKeyboardHandler.interface.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/components.d.ts +0 -3
- package/src/plugins/keyboardHandler/components.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/edit/editKeyboardHandler.component.d.ts +0 -68
- package/src/plugins/keyboardHandler/edit/editKeyboardHandler.component.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/edit/editKeyboardHandler.interface.d.ts +0 -12
- package/src/plugins/keyboardHandler/edit/editKeyboardHandler.interface.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/keyboardHandler.interface.d.ts +0 -12
- package/src/plugins/keyboardHandler/keyboardHandler.interface.d.ts.map +0 -1
- package/src/plugins/keyboardHandler/types.d.ts +0 -11
- package/src/plugins/keyboardHandler/types.d.ts.map +0 -1
- package/src/plugins/liveSearch/basic/basicLiveSearch.component.css +0 -11
- package/src/plugins/liveSearch/basic/basicLiveSearch.component.d.ts +0 -98
- package/src/plugins/liveSearch/basic/basicLiveSearch.component.d.ts.map +0 -1
- package/src/plugins/liveSearch/basic/basicLiveSearch.component.html +0 -5
- package/src/plugins/liveSearch/basic/basicLiveSearch.interface.d.ts +0 -29
- package/src/plugins/liveSearch/basic/basicLiveSearch.interface.d.ts.map +0 -1
- package/src/plugins/liveSearch/components.d.ts +0 -4
- package/src/plugins/liveSearch/components.d.ts.map +0 -1
- package/src/plugins/liveSearch/edit/editLiveSearch.component.css +0 -13
- package/src/plugins/liveSearch/edit/editLiveSearch.component.d.ts +0 -141
- package/src/plugins/liveSearch/edit/editLiveSearch.component.d.ts.map +0 -1
- package/src/plugins/liveSearch/edit/editLiveSearch.component.html +0 -13
- package/src/plugins/liveSearch/edit/editLiveSearch.interface.d.ts +0 -37
- package/src/plugins/liveSearch/edit/editLiveSearch.interface.d.ts.map +0 -1
- package/src/plugins/liveSearch/liveSearch.interface.d.ts +0 -38
- package/src/plugins/liveSearch/liveSearch.interface.d.ts.map +0 -1
- package/src/plugins/liveSearch/no/noLiveSearch.component.d.ts +0 -54
- package/src/plugins/liveSearch/no/noLiveSearch.component.d.ts.map +0 -1
- package/src/plugins/liveSearch/no/noLiveSearch.interface.d.ts +0 -12
- package/src/plugins/liveSearch/no/noLiveSearch.interface.d.ts.map +0 -1
- package/src/plugins/liveSearch/types.d.ts +0 -11
- package/src/plugins/liveSearch/types.d.ts.map +0 -1
- package/src/plugins/normalState/basic/basicNormalState.component.css +0 -38
- package/src/plugins/normalState/basic/basicNormalState.component.d.ts +0 -17
- package/src/plugins/normalState/basic/basicNormalState.component.d.ts.map +0 -1
- package/src/plugins/normalState/basic/basicNormalState.component.html +0 -6
- package/src/plugins/normalState/basic/basicNormalState.interface.d.ts +0 -29
- package/src/plugins/normalState/basic/basicNormalState.interface.d.ts.map +0 -1
- package/src/plugins/normalState/components.d.ts +0 -4
- package/src/plugins/normalState/components.d.ts.map +0 -1
- package/src/plugins/normalState/edit/editNormalState.component.css +0 -77
- package/src/plugins/normalState/edit/editNormalState.component.d.ts +0 -26
- package/src/plugins/normalState/edit/editNormalState.component.d.ts.map +0 -1
- package/src/plugins/normalState/edit/editNormalState.component.html +0 -19
- package/src/plugins/normalState/edit/editNormalState.interface.d.ts +0 -53
- package/src/plugins/normalState/edit/editNormalState.interface.d.ts.map +0 -1
- package/src/plugins/normalState/normalState.interface.d.ts +0 -49
- package/src/plugins/normalState/normalState.interface.d.ts.map +0 -1
- package/src/plugins/normalState/normalStateAbstract.component.d.ts +0 -65
- package/src/plugins/normalState/normalStateAbstract.component.d.ts.map +0 -1
- package/src/plugins/normalState/types.d.ts +0 -11
- package/src/plugins/normalState/types.d.ts.map +0 -1
- package/src/plugins/popup/basic/basicPopup.component.css +0 -61
- package/src/plugins/popup/basic/basicPopup.component.d.ts +0 -17
- package/src/plugins/popup/basic/basicPopup.component.d.ts.map +0 -1
- package/src/plugins/popup/basic/basicPopup.component.html +0 -21
- package/src/plugins/popup/basic/basicPopup.interface.d.ts +0 -33
- package/src/plugins/popup/basic/basicPopup.interface.d.ts.map +0 -1
- package/src/plugins/popup/component.d.ts +0 -4
- package/src/plugins/popup/component.d.ts.map +0 -1
- package/src/plugins/popup/edit/editPopup.component.css +0 -61
- package/src/plugins/popup/edit/editPopup.component.d.ts +0 -32
- package/src/plugins/popup/edit/editPopup.component.d.ts.map +0 -1
- package/src/plugins/popup/edit/editPopup.component.html +0 -19
- package/src/plugins/popup/edit/editPopup.interface.d.ts +0 -33
- package/src/plugins/popup/edit/editPopup.interface.d.ts.map +0 -1
- package/src/plugins/popup/popup.interface.d.ts +0 -52
- package/src/plugins/popup/popup.interface.d.ts.map +0 -1
- package/src/plugins/popup/popupAbstract.component.d.ts +0 -130
- package/src/plugins/popup/popupAbstract.component.d.ts.map +0 -1
- package/src/plugins/popup/types.d.ts +0 -11
- package/src/plugins/popup/types.d.ts.map +0 -1
- package/src/plugins/positioner/components.d.ts +0 -3
- package/src/plugins/positioner/components.d.ts.map +0 -1
- package/src/plugins/positioner/default/defaultPositioner.component.d.ts +0 -89
- package/src/plugins/positioner/default/defaultPositioner.component.d.ts.map +0 -1
- package/src/plugins/positioner/default/defaultPositioner.interface.d.ts +0 -12
- package/src/plugins/positioner/default/defaultPositioner.interface.d.ts.map +0 -1
- package/src/plugins/positioner/no/noPositioner.component.d.ts +0 -50
- package/src/plugins/positioner/no/noPositioner.component.d.ts.map +0 -1
- package/src/plugins/positioner/no/noPositioner.interface.d.ts +0 -12
- package/src/plugins/positioner/no/noPositioner.interface.d.ts.map +0 -1
- package/src/plugins/positioner/positioner.interface.d.ts +0 -22
- package/src/plugins/positioner/positioner.interface.d.ts.map +0 -1
- package/src/plugins/positioner/types.d.ts +0 -11
- package/src/plugins/positioner/types.d.ts.map +0 -1
- package/src/plugins/readonlyState/readonlyState.interface.d.ts +0 -12
- package/src/plugins/readonlyState/readonlyState.interface.d.ts.map +0 -1
- package/src/plugins/readonlyState/types.d.ts +0 -11
- package/src/plugins/readonlyState/types.d.ts.map +0 -1
- package/src/plugins/valueHandler/basic/basicValueHandler.component.d.ts +0 -51
- package/src/plugins/valueHandler/basic/basicValueHandler.component.d.ts.map +0 -1
- package/src/plugins/valueHandler/basic/basicValueHandler.interface.d.ts +0 -12
- package/src/plugins/valueHandler/basic/basicValueHandler.interface.d.ts.map +0 -1
- package/src/plugins/valueHandler/components.d.ts +0 -3
- package/src/plugins/valueHandler/components.d.ts.map +0 -1
- package/src/plugins/valueHandler/dynamic/dynamicValueHandler.component.d.ts +0 -52
- package/src/plugins/valueHandler/dynamic/dynamicValueHandler.component.d.ts.map +0 -1
- package/src/plugins/valueHandler/dynamic/dynamicValueHandler.interface.d.ts +0 -21
- package/src/plugins/valueHandler/dynamic/dynamicValueHandler.interface.d.ts.map +0 -1
- package/src/plugins/valueHandler/types.d.ts +0 -11
- package/src/plugins/valueHandler/types.d.ts.map +0 -1
- package/src/plugins/valueHandler/valueHandler.interface.d.ts +0 -31
- package/src/plugins/valueHandler/valueHandler.interface.d.ts.map +0 -1
- package/src/plugins/valueHandler/valueHandlerBase.d.ts +0 -115
- package/src/plugins/valueHandler/valueHandlerBase.d.ts.map +0 -1
- /package/es2022/src/{plugins → interfaces/plugins}/keyboardHandler/keyboardHandler.interface.js +0 -0
- /package/es2022/src/{plugins → interfaces/plugins}/liveSearch/liveSearch.interface.js +0 -0
- /package/es2022/src/{plugins → interfaces/plugins}/normalState/normalState.interface.js +0 -0
- /package/es2022/src/{plugins → interfaces/plugins}/popup/popup.interface.js +0 -0
- /package/es2022/src/{plugins → interfaces/plugins}/positioner/positioner.interface.js +0 -0
- /package/es2022/src/{plugins → interfaces/plugins}/readonlyState/readonlyState.interface.js +0 -0
- /package/es2022/src/{plugins → interfaces/plugins}/valueHandler/valueHandler.interface.js +0 -0
- /package/es2022/src/{misc → interfaces/templateGatherer}/templateGatherer.interface.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.component.js","sourceRoot":"","sources":["../../../../src/components/select/select.component.ts","../../../../src/components/select/select.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAyB,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAA4B,SAAS,EAAa,WAAW,EAAE,YAAY,EAAE,wBAAwB,EAAE,cAAc,EAAE,QAAQ,EAA+C,MAAM,eAAe,CAAC;AAC7Z,OAAO,EAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAC,eAAe,EAA2B,MAAM,MAAM,CAAC;AAG/D,OAAO,EAAC,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAErL,OAAO,EAAC,0BAA0B,EAAC,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAC,6BAA6B,EAAC,MAAM,0CAA0C,CAAC;AACvF,OAAO,EAAC,gBAAgB,EAAC,MAAM,qCAAqC,CAAC;AAErE,OAAO,EAAC,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAC,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAAC,KAAK,EAAC,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAC,mBAAmB,EAAC,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAC,UAAU,EAAC,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAC,0BAA0B,EAAC,MAAM,qCAAqC,CAAC;AAE/E,OAAO,EAAC,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAEjE,OAAO,EAAC,aAAa,EAAC,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAC,0BAA0B,EAAC,MAAM,uCAAuC,CAAC;AAEjF,OAAO,EAAC,WAAW,EAAC,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAC,qBAAqB,EAAC,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAC,eAAe,EAAC,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,SAAS,EAAC,MAAM,gCAAgC,CAAC;;;;;AAGzD,yCAAyC;AACzC,qEAAqE;AAErE;;;GAGG;AACH,MAAM,cAAc,GACpB;IACI,cAAc,EAAE,IAAI;IACpB,QAAQ,EAAE,KAAK;IACf,qBAAqB,EAAE,KAAK;IAC5B,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,KAAK;IACf,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QAE9B,OAAO,MAAM,KAAK,MAAM,CAAC;IAC7B,CAAC;IACD,gBAAgB,EAAE,CAAC,KAAa,EAAE,aAA4B,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;QAE5E,OAAO,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,UAAU,EAAE,KAAK,CAAC,EAAE;QAEhB,IAAG,QAAQ,CAAC,KAAK,CAAC,EAClB,CAAC;YACG,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/B,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,UAAU,EACV,EACC;IACD,OAAO,EACP;QACI,WAAW,EACX;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,yBAAyB,CAAC;SACpD;QACD,UAAU,EACV;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC;SAChD;QACD,KAAK,EACL;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC;SAC9C;QACD,UAAU,EACV;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC;SACrD;QACD,eAAe,EACf;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC;SACxD;QACD,aAAa,EACb;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,yBAAyB,CAAC;SACpD;QACD,YAAY,EACZ;YACI,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC;SACrD;KACJ;CACJ,CAAC;AAEF;;GAEG;AA4BH,MAAM,OAAO,iBAAiB;IAsD1B,gFAAgF;IAEhF;;OAEG;IACH,IACW,aAAa;QAEpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IACD,IAAW,aAAa,CAAC,OAAgC;QAErD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;IACxD,CAAC;IAcD,oGAAoG;IAEpG;;OAEG;IACH,IAAW,WAAW;QAElB,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;IACnD,CAAC;IAsBD,2GAA2G;IAE3G;;OAEG;IACH,IAAW,OAAO;QAEd,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAW,aAAa;QAEpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QAEvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAW,sBAAsB;QAE7B,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACxC,CAAC;IAwCD,kEAAkE;IAClE,YAAsB,eAAkC,EAClC,QAAiC,EACjC,yBAAmD,EACnD,OAAuB,EACvB,SAAmB,EACnB,UAA6B,EACO,gBAAyC,EAChD,OAAiC,EACjC,eAAmC,EAC/B,mBAA2C,EACtD,SAAuB,EAClB,cAAiC,EAC7B,iBAAuC,EACxC,gBAAqC,EACvC,cAAiC,EAChD,QAAiB,EACjB,QAAiB,EACjB,QAAiB;QAjB9B,oBAAe,GAAf,eAAe,CAAmB;QAClC,aAAQ,GAAR,QAAQ,CAAyB;QACjC,8BAAyB,GAAzB,yBAAyB,CAA0B;QACnD,YAAO,GAAP,OAAO,CAAgB;QACvB,cAAS,GAAT,SAAS,CAAU;QACnB,eAAU,GAAV,UAAU,CAAmB;QACO,qBAAgB,GAAhB,gBAAgB,CAAyB;QAtLnG;;WAEG;QACO,wBAAmB,GAA6B,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QAE9F;;WAEG;QACO,mBAAc,GAAuB,IAAI,YAAY,EAAQ,CAAC;QAExE;;WAEG;QACO,4BAAuB,GAAuB,IAAI,YAAY,EAAQ,CAAC;QAEjF;;WAEG;QACO,sBAAiB,GAA6B,EAAE,CAAC;QAiE3D;;WAEG;QACI,kBAAa,GAAY,KAAK,CAAC;QA6GlC,8DAA8D;QAC9D,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,IAAI,GAA4B,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QAEhE,IAAG,CAAC,IAAI,CAAC,OAAO,EAChB,CAAC;YACG,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,CAAC;QAED,IAAG,mBAAmB,EACtB,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAChC,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,eAAe,GAAG,EAAE,CAAC;YACtC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAC5D,CAAC;QAED,IAAG,eAAe,EAClB,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAC5B,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;YAClC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,GAAG,eAAe,CAAC;QACpD,CAAC;QAED,IAAG,SAAS,EACZ,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EACtB,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5B,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;QACxC,CAAC;QAED,IAAG,cAAc,EACjB,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAC3B,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;YACjC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,GAAG,cAAc,CAAC;QAClD,CAAC;QAED,IAAG,iBAAiB,EACpB,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAC9B,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,EAAE,CAAC;YACpC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,GAAG,iBAAiB,CAAC;QACxD,CAAC;QAED,IAAG,gBAAgB,EACnB,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAC7B,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;YACnC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,GAAG,gBAAgB,CAAC;QACtD,CAAC;QAED,IAAG,cAAc,EACjB,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAC3B,CAAC;gBACG,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;YACjC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,GAAG,cAAc,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,EAEJ;YACI,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,IAAI;SACzB,EACD,cAAc,EAEd;YACI,QAAQ,EAAE,eAAe;YACzB,QAAQ,EAAE,eAAe;SAC5B,EACD,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;IACxD,CAAC;IAED,kGAAkG;IAElG;;OAEG;IACI,WAAW,CAAC,OAAsB;QAErC,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,WAAoB,EAAE,EAAE;YAE5D,gBAAgB;YAChB,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;YAEpC,IAAG,CAAC,WAAW,EACf,CAAC;gBACG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,UAAU,EAAE,CAAC;YACtB,CAAC;QACL,CAAC,CAAC;QAEF,IAAG,MAAM,CAA4B,UAAU,CAAC,IAAI,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EACvF,CAAC;YACG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAA4B,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACtG,CAAC;QAED,IAAG,MAAM,CAA4B,UAAU,CAAC,IAAI,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EACvF,CAAC;YACG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAA4B,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACtG,CAAC;IACL,CAAC;IAED,+FAA+F;IAE/F;;OAEG;IACI,QAAQ;QAEX,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,sGAAsG;IAEtG;;OAEG;IACI,eAAe;QAElB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC;QAEtC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE;YAExC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC;YACtC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EACrC,CAAC;YACG,IAAI,CAAC,UAAU,EAAE,CAAC;QACtB,CAAC;IACL,CAAC;IAED,kGAAkG;IAElG;;OAEG;IACI,WAAW;QAEd,IAAI,CAAC,8BAA8B,EAAE,WAAW,EAAE,CAAC;QACnD,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC;QAE3C,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,CAAC;QAEtD,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAED,wGAAwG;IAExG;;OAEG;IACI,kBAAkB;QAErB,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAe,CAAC;QAEpE,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,IAAI,UAAU,EACrD,CAAC;YACG,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC;YAClD,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC;YAE3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAG,CAAC,IAAI,CAAC,WAAW,EACpB,CAAC;YACG,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAE9B,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,GAAG,EAAE;gBAEpF,IAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAChC,CAAC;oBACG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC;oBACtC,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;oBAEpC,OAAO;gBACX,CAAC;gBAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC/I,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;YACxC,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;OAEG;IACI,eAAe;IAEtB,CAAC;IAED,wFAAwF;IAExF;;;;OAIG;IACI,uBAAuB,CAAC,WAAwB;QAEnD,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED;;;;OAIG;IACI,2BAA2B,CAAC,eAAgC;QAE/D,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAClF,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CAAC,KAAY;QAEjC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,sBAAsB,CAAC,UAAsB;QAEhD,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACI,yBAAyB,CAAC,aAA4B;QAEzD,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAChF,CAAC;IAED;;;;OAIG;IACI,wBAAwB,CAAC,YAAkC;QAE9D,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACI,sBAAsB,CAAC,UAAsB;QAEhD,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;IAED,oEAAoE;IAEpE;;OAEG;IACI,UAAU;QAEb,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAe,CAAC;QAC1E,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAEhE,IAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAC9B,CAAC;YACG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;QAErC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC;QAExD,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,UAAU,EAAE,CAAC;QACrD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,CAAC;QACpD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,UAAU,EAAE,CAAC;QAE/C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,WAAW;QAEd,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3E,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;QAC/D,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC;QAEjD,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,UAAqC,EAAE,EAAE;YAEnF,IAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,EAC1C,CAAC;gBACG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;gBAE/G,IAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACnC,CAAC;oBACG,IAAG,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,EAC5H,CAAC;wBACG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC;oBAC/F,CAAC;oBAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;gBACnD,CAAC;YACL,CAAC;QACL,CAAC,CAAC;QAEF,IAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAC9B,CAAC;YACG,iBAAiB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAC/C,iBAAiB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;YACvD,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClC,iBAAiB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC5C,iBAAiB,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;YACnD,iBAAiB,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;YACjD,iBAAiB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;IAED;;OAEG;IACI,iBAAiB;QAEpB,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACI,SAAS,CAAoC,QAAgB;QAEhE,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAe,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAgB,SAAgC,EAAE,OAA+B;QAE5F,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,GAAG,OAAiC;QAE/C,IAAG,CAAC,OAAO,EACX,CAAC;YACG,OAAO;QACX,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAU,IAAuC;QAEpE,IAAG,CAAC,IAAI,EACR,CAAC;YACG,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,uEAAuE;IAEvE;;;OAGG;IACO,kBAAkB,CAAC,SAAsB;QAE/C,+DAA+D;QAC/D,IAAG,IAAI,CAAC,kBAAkB,IAAI,SAAS,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,qBAAqB,EACrG,CAAC;YACG,OAAO;QACX,CAAC;QAED,2CAA2C;QAC3C,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAE7B,IAAG,CAAC,SAAS,EACb,CAAC;YACG,OAAO;QACX,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1D,qDAAqD;QACrD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,yBAAyB;aAC/C,uBAAuB,CAAC,SAAS,CAAC;aAClC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEpD,8EAA8E;QAC9E,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEtD,oCAAoC;QACpC,MAAM,OAAO,GAAI,IAAI,CAAC,cAAc,CAAC,QAAiC;aACjE,SAAS,CAAC,CAAC,CAAgB,CAAC;QAEjC,oCAAoC;QACpC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAEtE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACO,qBAAqB;QAE3B,IAAG,IAAI,CAAC,cAAc,EACtB,CAAC;YACG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACtC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACO,kBAAkB,CAAC,MAAsB,EAAE,SAAiB,EAAE,UAAqC;QAEzG,IAAG,CAAC,MAAM,EACV,CAAC;YACG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;YAExC,OAAO;QACX,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;QAE1C,IAAG,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,EAC5H,CAAC;YACG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC;QACrE,CAAC;QAED,MAAM,CAAC,WAAW,EAAE,CAAC;QAErB,IAAG,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,gBAAgB,EACrI,CAAC;YACG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACrE,CAAC;IACL,CAAC;8GAnsBQ,iBAAiB,oMA+LN,0BAA0B,aAC1B,iBAAiB,6BACjB,iBAAiB,6BACjB,qBAAqB,6BACrB,UAAU,6BACV,eAAe,6BACf,mBAAmB,6BACnB,kBAAkB,6BAClB,gBAAgB,6BACb,UAAU,8BACV,UAAU,8BACV,UAAU;kGA1MxB,iBAAiB,iJApB1B;YAEI;gBACI,OAAO,EAAE,0BAA0B;gBACnC,UAAU,EAAE,GAAG,EAAE,GAAE,OAAO,EAAE,CAAC,CAAA,CAAC;aACjC;YAED;gBACI,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,SAAS;aACtB;SACJ,0QAsLgB,eAAe,oDAQf,iBAAiB,kDCzTtC,igDAiBM;;2FDmHO,iBAAiB;kBA3B7B,SAAS;+BAEI,WAAW,cAET,KAAK,mBACA,uBAAuB,CAAC,MAAM,aAE/C;wBAEI;4BACI,OAAO,EAAE,0BAA0B;4BACnC,UAAU,EAAE,GAAG,EAAE,GAAE,OAAO,EAAE,CAAC,CAAA,CAAC;yBACjC;wBAED;4BACI,OAAO,EAAE,SAAS;4BAClB,QAAQ,EAAE,SAAS;yBACtB;qBACJ;;0BAwMY,MAAM;2BAAC,0BAA0B;;0BACjC,MAAM;2BAAC,iBAAiB;;0BAAG,QAAQ;;0BACnC,MAAM;2BAAC,iBAAiB;;0BAAG,QAAQ;;0BACnC,MAAM;2BAAC,qBAAqB;;0BAAG,QAAQ;;0BACvC,MAAM;2BAAC,UAAU;;0BAAG,QAAQ;;0BAC5B,MAAM;2BAAC,eAAe;;0BAAG,QAAQ;;0BACjC,MAAM;2BAAC,mBAAmB;;0BAAG,QAAQ;;0BACrC,MAAM;2BAAC,kBAAkB;;0BAAG,QAAQ;;0BACpC,MAAM;2BAAC,gBAAgB;;0BAAG,QAAQ;;0BAClC,SAAS;2BAAC,UAAU;;0BACpB,SAAS;2BAAC,UAAU;;0BACpB,SAAS;2BAAC,UAAU;;sBA/IhC,KAAK;;sBAcL,KAAK;;sBAML,KAAK;;sBAuBL,YAAY;uBAAC,qBAAqB;;sBAOlC,YAAY;uBAAC,gBAAgB;;sBAgE7B,eAAe;uBAAC,eAAe;;sBAQ/B,eAAe;uBAAC,iBAAiB","sourcesContent":["import {Component, ChangeDetectionStrategy, FactoryProvider, Input, Inject, ChangeDetectorRef, Optional, Type, AfterViewInit, OnInit, ContentChildren, QueryList, EventEmitter, forwardRef, resolveForwardRef, ElementRef, OnChanges, SimpleChanges, Attribute, OnDestroy, TemplateRef, ContentChild, ComponentFactoryResolver, ApplicationRef, Injector, EmbeddedViewRef, ComponentRef, ClassProvider} from '@angular/core';\nimport {nameof, isBoolean, isPresent, isString, renderToBody} from '@jscrpt/common';\nimport {extend} from '@jscrpt/common/extend';\nimport {BehaviorSubject, Observable, Subscription} from 'rxjs';\n\nimport {NgSelectOptions, NgSelectPlugin, PluginDescription, NormalizeFunc, NgSelectPluginTypes} from '../../misc';\nimport {NG_SELECT_OPTIONS, KEYBOARD_HANDLER_TYPE, NORMAL_STATE_TYPE, POPUP_TYPE, POSITIONER_TYPE, READONLY_STATE_TYPE, VALUE_HANDLER_TYPE, LIVE_SEARCH_TYPE} from '../../misc/types';\nimport {NgSelect, NgSelectPluginInstances, NgSelectAction, NgSelectFunction} from './select.interface';\nimport {NG_SELECT_PLUGIN_INSTANCES} from './types';\nimport {KeyboardHandler} from '../../plugins/keyboardHandler';\nimport {BasicKeyboardHandlerComponent} from '../../plugins/keyboardHandler/components';\nimport {KEYBOARD_HANDLER} from '../../plugins/keyboardHandler/types';\nimport {NormalState, NormalStateContext} from '../../plugins/normalState';\nimport {NORMAL_STATE} from '../../plugins/normalState/types';\nimport {BasicNormalStateComponent} from '../../plugins/normalState/components';\nimport {Popup, PopupContext} from '../../plugins/popup';\nimport {POPUP} from '../../plugins/popup/types';\nimport {BasicPopupComponent} from '../../plugins/popup/component';\nimport {Positioner} from '../../plugins/positioner';\nimport {POSITIONER} from '../../plugins/positioner/types';\nimport {DefaultPositionerComponent} from '../../plugins/positioner/components';\nimport {ReadonlyState} from '../../plugins/readonlyState';\nimport {READONLY_STATE} from '../../plugins/readonlyState/types';\nimport {ValueHandler} from '../../plugins/valueHandler';\nimport {VALUE_HANDLER} from '../../plugins/valueHandler/types';\nimport {BasicValueHandlerComponent} from '../../plugins/valueHandler/components';\nimport {LiveSearch} from '../../plugins/liveSearch';\nimport {LIVE_SEARCH} from '../../plugins/liveSearch/types';\nimport {NoLiveSearchComponent} from '../../plugins/liveSearch/components';\nimport {NgSelectOption, NgSelectOptGroup} from '../option';\nimport {OptionComponent} from '../option/option.component';\nimport {OptGroupComponent} from '../option/optgroup.component';\nimport {PluginBus} from '../../misc/pluginBus/pluginBus';\nimport {PluginBusEvents} from '../../misc/pluginBus/pluginBus.interface';\n\n//TODO - dynamic change of absolute popup\n//TODO - dynamic change of options gatherer destroy called properly ?\n\n/**\n * Default 'NgSelectOptions'\n * @internal\n */\nconst defaultOptions: NgSelectOptions =\n{\n autoInitialize: true,\n absolute: false,\n forceValueCheckOnInit: false,\n multiple: false,\n readonly: false,\n valueComparer: (source, target) =>\n {\n return source === target;\n },\n liveSearchFilter: (query: string, normalizer: NormalizeFunc = value => value) =>\n {\n return itm => normalizer(itm.text).indexOf(normalizer(query)) >= 0;\n },\n normalizer: value =>\n {\n if(isString(value))\n {\n return value.toLowerCase();\n }\n\n return value;\n },\n cssClasses:\n {\n },\n plugins:\n {\n normalState: <PluginDescription<BasicNormalStateComponent>>\n {\n type: forwardRef(() => BasicNormalStateComponent)\n },\n liveSearch: <PluginDescription<NoLiveSearchComponent>>\n {\n type: forwardRef(() => NoLiveSearchComponent)\n },\n popup: <PluginDescription<BasicPopupComponent>>\n {\n type: forwardRef(() => BasicPopupComponent)\n },\n positioner: <PluginDescription<DefaultPositionerComponent>>\n {\n type: forwardRef(() => DefaultPositionerComponent)\n },\n keyboardHandler: <PluginDescription<BasicKeyboardHandlerComponent>>\n {\n type: forwardRef(() => BasicKeyboardHandlerComponent)\n },\n readonlyState: <PluginDescription<ReadonlyState>>\n {\n type: forwardRef(() => BasicNormalStateComponent)\n },\n valueHandler: <PluginDescription<BasicValueHandlerComponent>>\n {\n type: forwardRef(() => BasicValueHandlerComponent)\n }\n }\n};\n\n/**\n * Component that represents NgSelect itself, allows selection of value from options\n */\n@Component(\n{\n selector: 'ng-select',\n templateUrl: 'select.component.html',\n standalone: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers:\n [\n <FactoryProvider>\n {\n provide: NG_SELECT_PLUGIN_INSTANCES,\n useFactory: () => {return {};}\n },\n <ClassProvider>\n {\n provide: PluginBus,\n useClass: PluginBus\n }\n ],\n styles: [\n `:host\n {\n display: block;\n position: relative;\n }`\n ]\n})\nexport class NgSelectComponent<TValue = any> implements NgSelect<TValue>, OnChanges, OnInit, AfterViewInit, OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * NgSelect options\n */\n protected _selectOptions: NgSelectOptions<TValue>;\n\n /**\n * Subject used for indication that NgSelect was initialized\n */\n protected _initializedSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n\n /**\n * Occurs when array of provided options has changed\n */\n protected _optionsChange: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Occurs when array of visible, displayed options has changed\n */\n protected _availableOptionsChange: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Array of available options to be displayed\n */\n protected _availableOptions: NgSelectOption<TValue>[] = [];\n\n /**\n * Live search plugin currently used in NgSelect\n */\n protected _liveSearch: LiveSearch;\n\n /**\n * Subscription for changes of live search value\n */\n protected _searchValueChangeSubscription: Subscription;\n\n /**\n * Instance of component ref for absolute popup\n */\n protected _absolutePopup: ComponentRef<Popup>;\n\n /**\n * Instance of type that is used as absolute popup\n */\n protected _absolutePopupType: Type<Popup>;\n\n /**\n * Instance of html element that is used\n */\n protected _absolutePopupElement: HTMLElement;\n\n //######################### public properties - inputs #########################\n\n /**\n * Gets or sets NgSelect options\n */\n @Input()\n public get selectOptions(): NgSelectOptions<TValue>\n {\n return this._selectOptions;\n }\n public set selectOptions(options: NgSelectOptions<TValue>)\n {\n this._selectOptions = extend(true, this._selectOptions, options);\n this._pluginBus.selectOptions = this._selectOptions;\n }\n\n /**\n * Indication whether should be NgSelect disabled or not\n */\n @Input()\n public disabled: boolean;\n\n /**\n * Indication whether should be NgSelect readonly or not\n */\n @Input()\n public readonly: boolean;\n\n //######################### public properties - implementation of NgSelect #########################\n\n /**\n * Occurs every time when NgSelect is initialized or reinitialized, if value is false NgSelect was not initialized yet\n */\n public get initialized(): Observable<boolean>\n {\n return this._initializedSubject.asObservable();\n }\n\n /**\n * Gets current state of initialization\n */\n public isInitialized: boolean = false;\n\n //######################### public properties - implementation of TemplateGatherer #########################\n\n /**\n * Template used within normal state\n */\n @ContentChild('normalStateTemplate')\n public normalStateTemplate: TemplateRef<NormalStateContext>;\n\n /**\n * Template that is used within Popup as option\n * @internal\n */\n @ContentChild('optionTemplate')\n public optionTemplate?: TemplateRef<PopupContext>;\n\n //######################### public properties - implementation of OptionsGatherer #########################\n\n /**\n * Array of provided options for select\n */\n public get options(): NgSelectOption<TValue>[]\n {\n return this.optionsChildren.toArray();\n }\n\n /**\n * Occurs when array of provided options has changed\n */\n public get optionsChange(): EventEmitter<void>\n {\n return this._optionsChange;\n }\n\n /**\n * Array of visible, displayed options for select\n */\n public get availableOptions(): NgSelectOption<TValue>[]\n {\n return this._availableOptions;\n }\n\n /**\n * Occurs when array of visible, displayed options has changed\n */\n public get availableOptionsChange(): EventEmitter<void>\n {\n return this._availableOptionsChange;\n }\n\n /**\n * NgSelect plugin instances available for gatherer\n */\n public ngSelectPlugins: NgSelectPluginInstances;\n\n /**\n * Plugin bus used for inter plugin shared events\n */\n public pluginBus: PluginBus<TValue>;\n\n /**\n * Select element that implements default gatherers\n */\n public select: NgSelect<TValue>;\n\n //######################### public properties - template bindings #########################\n\n /**\n * Element used for live search\n */\n public liveSearchElement: HTMLElement[][];\n\n //######################### public properties - children #########################\n\n /**\n * Options children found inside ng-select\n */\n @ContentChildren(OptionComponent)\n public optionsChildren: QueryList<NgSelectOption>;\n\n //######################### public properties - children #########################\n\n /**\n * Options groups children found inside ng-select\n */\n @ContentChildren(OptGroupComponent)\n public optGroupsChildren: QueryList<NgSelectOptGroup>;\n\n //######################### constructors #########################\n constructor(protected _changeDetector: ChangeDetectorRef,\n protected _element: ElementRef<HTMLElement>,\n protected _componentFactoryResolver: ComponentFactoryResolver,\n protected _appRef: ApplicationRef,\n protected _injector: Injector,\n protected _pluginBus: PluginBus<TValue>,\n @Inject(NG_SELECT_PLUGIN_INSTANCES) protected _pluginInstances: NgSelectPluginInstances,\n @Inject(NG_SELECT_OPTIONS) @Optional() options?: NgSelectOptions<TValue>,\n @Inject(NORMAL_STATE_TYPE) @Optional() normalStateType?: Type<NormalState>,\n @Inject(KEYBOARD_HANDLER_TYPE) @Optional() keyboardHandlerType?: Type<KeyboardHandler>,\n @Inject(POPUP_TYPE) @Optional() popupType?: Type<Popup>,\n @Inject(POSITIONER_TYPE) @Optional() positionerType?: Type<Positioner>,\n @Inject(READONLY_STATE_TYPE) @Optional() readonlyStateType?: Type<ReadonlyState>,\n @Inject(VALUE_HANDLER_TYPE) @Optional() valueHandlerType?: Type<ValueHandler>,\n @Inject(LIVE_SEARCH_TYPE) @Optional() liveSearchType?: Type<LiveSearch>,\n @Attribute('readonly') readonly?: string,\n @Attribute('disabled') disabled?: string,\n @Attribute('multiple') multiple?: string)\n {\n //at least on of following is present (value is not important)\n const readonlyDefault = isPresent(readonly) || isPresent(disabled);\n const multipleDefault = isPresent(multiple);\n const opts: NgSelectOptions<TValue> = extend(true, {}, options);\n\n if(!opts.plugins)\n {\n opts.plugins = {};\n }\n\n if(keyboardHandlerType)\n {\n if(!opts.plugins.keyboardHandler)\n {\n opts.plugins.keyboardHandler = {};\n }\n\n opts.plugins.keyboardHandler.type = keyboardHandlerType;\n }\n\n if(normalStateType)\n {\n if(!opts.plugins.normalState)\n {\n opts.plugins.normalState = {};\n }\n\n opts.plugins.normalState.type = normalStateType;\n }\n\n if(popupType)\n {\n if(!opts.plugins.popup)\n {\n opts.plugins.popup = {};\n }\n\n opts.plugins.popup.type = popupType;\n }\n\n if(positionerType)\n {\n if(!opts.plugins.positioner)\n {\n opts.plugins.positioner = {};\n }\n\n opts.plugins.positioner.type = positionerType;\n }\n\n if(readonlyStateType)\n {\n if(!opts.plugins.readonlyState)\n {\n opts.plugins.readonlyState = {};\n }\n\n opts.plugins.readonlyState.type = readonlyStateType;\n }\n\n if(valueHandlerType)\n {\n if(!opts.plugins.valueHandler)\n {\n opts.plugins.valueHandler = {};\n }\n\n opts.plugins.valueHandler.type = valueHandlerType;\n }\n\n if(liveSearchType)\n {\n if(!opts.plugins.liveSearch)\n {\n opts.plugins.liveSearch = {};\n }\n\n opts.plugins.liveSearch.type = liveSearchType;\n }\n\n this._selectOptions = extend(true,\n <NgSelectOptions<TValue>>\n {\n optionsGatherer: this,\n templateGatherer: this,\n },\n defaultOptions,\n <NgSelectOptions<TValue>>\n {\n readonly: readonlyDefault,\n multiple: multipleDefault\n },\n opts);\n\n this._pluginBus.selectElement = this._element;\n this._pluginBus.selectOptions = this._selectOptions;\n }\n\n //######################### public methods - implementation of OnChanges #########################\n\n /**\n * Called when input value changes\n */\n public ngOnChanges(changes: SimpleChanges): void\n {\n const updateReadonly = (state: boolean, firstChange: boolean) =>\n {\n //update options\n this.selectOptions.readonly = state;\n\n if(!firstChange)\n {\n this.initOptions();\n this.initialize();\n }\n };\n\n if(nameof<NgSelectComponent<TValue>>('disabled') in changes && isBoolean(this.disabled))\n {\n updateReadonly(this.disabled, changes[nameof<NgSelectComponent<TValue>>('disabled')].firstChange);\n }\n\n if(nameof<NgSelectComponent<TValue>>('readonly') in changes && isBoolean(this.readonly))\n {\n updateReadonly(this.readonly, changes[nameof<NgSelectComponent<TValue>>('readonly')].firstChange);\n }\n }\n\n //######################### public methods - implementation of OnInit #########################\n\n /**\n * Initialize component\n */\n public ngOnInit()\n {\n this.initOptions();\n }\n\n //######################### public methods - implementation of AfterViewInit #########################\n\n /**\n * Called when view was initialized\n */\n public ngAfterViewInit()\n {\n this._availableOptions = this.options;\n\n this.optionsChildren.changes.subscribe(() =>\n {\n this._availableOptions = this.options;\n this._optionsChange.emit();\n this._availableOptionsChange.emit();\n });\n\n if(this._selectOptions.autoInitialize)\n {\n this.initialize();\n }\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n\n /**\n * Called when component is destroyed\n */\n public ngOnDestroy()\n {\n this._searchValueChangeSubscription?.unsubscribe();\n this._searchValueChangeSubscription = null;\n\n this.selectOptions.optionsGatherer?.destroyGatherer();\n\n this._destroyAbsolutePopup();\n }\n\n //######################### public methods - implementation of OptionsGatherer #########################\n\n /**\n * Initialize gatherer during initialization phase\n */\n public initializeGatherer(): void\n {\n const liveSearch = this._pluginInstances[LIVE_SEARCH] as LiveSearch;\n\n if(this._liveSearch && this._liveSearch != liveSearch)\n {\n this._searchValueChangeSubscription.unsubscribe();\n this._searchValueChangeSubscription = null;\n\n this._liveSearch = null;\n }\n\n if(!this._liveSearch)\n {\n this._liveSearch = liveSearch;\n\n this._searchValueChangeSubscription = this._liveSearch.searchValueChange.subscribe(() =>\n {\n if(!this._liveSearch.searchValue)\n {\n this._availableOptions = this.options;\n this._availableOptionsChange.emit();\n\n return;\n }\n\n this._availableOptions = this.options.filter(this.selectOptions.liveSearchFilter(this._liveSearch.searchValue, this.selectOptions.normalizer));\n this._availableOptionsChange.emit();\n });\n }\n }\n\n /**\n * Called when gatherer needs to be destroyed\n */\n public destroyGatherer(): void\n {\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Sets normal state component\n * @param normalState - Created normal state that is rendered\n * @internal\n */\n public setNormalStateComponent(normalState: NormalState)\n {\n this._registerNewPlugin(normalState, NORMAL_STATE, 'normalState');\n }\n\n /**\n * Sets keyboard handler component\n * @param keyboardHandler - Created keyboard handler that is rendered\n * @internal\n */\n public setKeyboardHandlerComponent(keyboardHandler: KeyboardHandler)\n {\n this._registerNewPlugin(keyboardHandler, KEYBOARD_HANDLER, 'keyboardHandler');\n }\n\n /**\n * Sets popup component\n * @param popup - Created popup that is rendered\n * @internal\n */\n public setPopupComponent(popup: Popup)\n {\n this._registerNewPlugin(popup, POPUP, 'popup');\n }\n\n /**\n * Sets positioner component\n * @param positioner - Created positioner that is rendered\n * @internal\n */\n public setPositionerComponent(positioner: Positioner)\n {\n this._registerNewPlugin(positioner, POSITIONER, 'positioner');\n }\n\n /**\n * Sets readonly state component\n * @param readonlyState - Created readonly state that is rendered\n * @internal\n */\n public setReadonlyStateComponent(readonlyState: ReadonlyState)\n {\n this._registerNewPlugin(readonlyState, READONLY_STATE, 'readonlyState');\n this._pluginInstances[NORMAL_STATE] = this._pluginInstances[READONLY_STATE];\n }\n\n /**\n * Sets value handler component\n * @param valueHandler - Created value handler that is rendered\n * @internal\n */\n public setValueHandlerComponent(valueHandler: ValueHandler<TValue>)\n {\n this._registerNewPlugin(valueHandler, VALUE_HANDLER, 'valueHandler');\n }\n\n /**\n * Sets live search component\n * @param liveSearch - Created live search that is rendered\n * @internal\n */\n public setLiveSearchComponent(liveSearch: LiveSearch)\n {\n this._registerNewPlugin(liveSearch, LIVE_SEARCH, 'liveSearch');\n }\n\n //######################### public methods #########################\n\n /**\n * Initialize component, automatically called once if not blocked by options\n */\n public initialize()\n {\n const liveSearchPlugin = this._pluginInstances[LIVE_SEARCH] as LiveSearch;\n this.liveSearchElement = [[liveSearchPlugin.liveSearchElement]];\n\n if(this.selectOptions.absolute)\n {\n this._appendPopupToBody(this._selectOptions.plugins.popup.type);\n }\n\n this._changeDetector.detectChanges();\n\n this.selectOptions.optionsGatherer.initializeGatherer();\n\n this._pluginInstances[LIVE_SEARCH].initialize();\n this._pluginInstances[KEYBOARD_HANDLER].initialize();\n this._pluginInstances[VALUE_HANDLER].initialize();\n this._pluginInstances[NORMAL_STATE]?.initialize();\n this._pluginInstances[READONLY_STATE]?.initialize();\n this._pluginInstances[POPUP].initialize();\n this._pluginInstances[POSITIONER].initialize();\n\n this.isInitialized = true;\n this._initializedSubject.next(true);\n }\n\n /**\n * Initialize options, automaticaly called during init phase, but can be used to reinitialize NgSelectOptions\n */\n public initOptions()\n {\n this.selectOptions.optionsGatherer.ngSelectPlugins = this._pluginInstances;\n this.selectOptions.optionsGatherer.pluginBus = this._pluginBus;\n this.selectOptions.optionsGatherer.select = this;\n\n const initOptionsPlugin = (pluginKey: string, pluginName: keyof NgSelectPluginTypes) =>\n {\n if(this._selectOptions.plugins[pluginName])\n {\n this._selectOptions.plugins[pluginName].type = resolveForwardRef(this._selectOptions.plugins[pluginName].type);\n\n if(this._pluginInstances[pluginKey])\n {\n if(this._selectOptions.plugins && this._selectOptions.plugins[pluginName] && this._selectOptions.plugins[pluginName].options)\n {\n this._pluginInstances[pluginKey].options = this._selectOptions.plugins[pluginName].options;\n }\n\n this._pluginInstances[pluginKey].initOptions();\n }\n }\n };\n\n if(this._selectOptions.plugins)\n {\n initOptionsPlugin(NORMAL_STATE, 'normalState');\n initOptionsPlugin(KEYBOARD_HANDLER, 'keyboardHandler');\n initOptionsPlugin(POPUP, 'popup');\n initOptionsPlugin(POSITIONER, 'positioner');\n initOptionsPlugin(READONLY_STATE, 'readonlyState');\n initOptionsPlugin(VALUE_HANDLER, 'valueHandler');\n initOptionsPlugin(LIVE_SEARCH, 'liveSearch');\n }\n }\n\n /**\n * Explicitly runs invalidation of content (change detection)\n */\n public invalidateVisuals(): void\n {\n this._changeDetector.detectChanges();\n }\n\n /**\n * Gets instance of plugin by its id\n * @param pluginId - Id of plugin, use constants\n */\n public getPlugin<PluginType extends NgSelectPlugin>(pluginId: string): PluginType\n {\n return this._pluginInstances[pluginId] as PluginType;\n }\n\n /**\n * Subscribes for event\n * @param eventName - Name of event that should be listened to\n * @param handler - Function used for handling event\n */\n public listenTo<TParam = void>(eventName: keyof PluginBusEvents, handler: (data: TParam) => void): Subscription\n {\n return this._pluginBus[eventName].subscribe(handler);\n }\n\n /**\n * Executes actions on NgSelect\n * @param actions - Array of actions that are executed over NgSelect\n */\n public execute(...actions: NgSelectAction<TValue>[])\n {\n if(!actions)\n {\n return;\n }\n\n actions.forEach(action => action(this));\n }\n\n /**\n * Executes function on NgSelect and returns result\n * @param func - Function that is executed and its result is returned\n */\n public executeAndReturn<TResult>(func: NgSelectFunction<TResult, TValue>): TResult\n {\n if(!func)\n {\n return null;\n }\n\n return func(this);\n }\n\n //######################### protected methods #########################\n\n /**\n * Appends popup component directly to body, allows absolute positioning over page body\n * @param component - Popup component type to be appended\n */\n protected _appendPopupToBody(component: Type<Popup>)\n {\n //do not reinitialize if already exists and nothing has changed\n if(this._absolutePopupType == component && this.liveSearchElement[0][0] == this._absolutePopupElement)\n {\n return;\n }\n\n // 0. Destroyes absolute popup if it exists\n this._destroyAbsolutePopup();\n\n if(!component)\n {\n return;\n }\n\n this._absolutePopupType = component;\n this._absolutePopupElement = this.liveSearchElement[0][0];\n\n // 1. Create a component reference from the component\n this._absolutePopup = this._componentFactoryResolver\n .resolveComponentFactory(component)\n .create(this._injector, this.liveSearchElement);\n\n // 2. Attach component to the appRef so that it's inside the ng component tree\n this._appRef.attachView(this._absolutePopup.hostView);\n\n // 3. Get DOM element from component\n const domElem = (this._absolutePopup.hostView as EmbeddedViewRef<any>)\n .rootNodes[0] as HTMLElement;\n\n // 4. Append DOM element to the body\n renderToBody(document, domElem, this._selectOptions.containerElement);\n\n this.setPopupComponent(this._absolutePopup.instance);\n }\n\n /**\n * Destroyes absolute popup if it exists\n */\n protected _destroyAbsolutePopup()\n {\n if(this._absolutePopup)\n {\n this._appRef.detachView(this._absolutePopup.hostView);\n this._absolutePopup.destroy();\n this._absolutePopup = null;\n this._absolutePopupType = null;\n this._absolutePopupElement = null;\n }\n }\n\n /**\n * Registers newly created plugin\n * @param plugin - Plugin to be registered\n * @param pluginKey - Key of plugin used for pluginInstances\n * @param pluginName - Name property for plugin from options\n */\n protected _registerNewPlugin(plugin: NgSelectPlugin, pluginKey: string, pluginName: keyof NgSelectPluginTypes)\n {\n if(!plugin)\n {\n this._pluginInstances[pluginKey] = null;\n\n return;\n }\n\n this._pluginInstances[pluginKey] = plugin;\n\n if(this._selectOptions.plugins && this._selectOptions.plugins[pluginName] && this._selectOptions.plugins[pluginName].options)\n {\n plugin.options = this._selectOptions.plugins[pluginName].options;\n }\n\n plugin.initOptions();\n\n if(this._selectOptions.plugins && this._selectOptions.plugins[pluginName] && this._selectOptions.plugins[pluginName].instanceCallback)\n {\n this._selectOptions.plugins[pluginName].instanceCallback(plugin);\n }\n }\n}","<ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.liveSearch?.type\" (ngComponentOutletExCreated)=\"setLiveSearchComponent($event)\"></ng-template>\r\n<ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.positioner?.type\" (ngComponentOutletExCreated)=\"setPositionerComponent($event)\"></ng-template>\r\n<ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.keyboardHandler?.type\" (ngComponentOutletExCreated)=\"setKeyboardHandlerComponent($event)\"></ng-template>\r\n<ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.valueHandler?.type\" (ngComponentOutletExCreated)=\"setValueHandlerComponent($event)\"></ng-template>\r\n\r\n<div>\r\n <ng-template [ngIf]=\"!selectOptions?.readonly\">\r\n <ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.normalState?.type\" (ngComponentOutletExCreated)=\"setNormalStateComponent($event)\" [ngComponentOutletExContent]=\"liveSearchElement\"></ng-template>\r\n </ng-template>\r\n\r\n <ng-template [ngIf]=\"selectOptions?.readonly\">\r\n <ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.readonlyState?.type\" (ngComponentOutletExCreated)=\"setReadonlyStateComponent($event)\"></ng-template>\r\n </ng-template>\r\n\r\n <ng-template [ngIf]=\"!selectOptions?.absolute\">\r\n <ng-template [ngComponentOutletEx]=\"selectOptions?.plugins?.popup?.type\" (ngComponentOutletExCreated)=\"setPopupComponent($event)\" [ngComponentOutletExContent]=\"liveSearchElement\"></ng-template>\r\n </ng-template>\r\n</div>"]}
|
|
1
|
+
{"version":3,"file":"select.component.js","sourceRoot":"","sources":["../../../../src/components/select/select.component.ts","../../../../src/components/select/select.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Input, viewChild, ViewContainerRef, Signal, WritableSignal, signal, Inject, Optional, Type, resolveForwardRef, FactoryProvider, effect, forwardRef, Attribute, ElementRef, computed, input, booleanAttribute, InputSignalWithTransform, ComponentRef, DOCUMENT, TemplateRef, contentChild, contentChildren, untracked} from '@angular/core';\nimport {getHostElement} from '@anglr/common';\nimport {isPresent, RecursivePartial, renderToBody} from '@jscrpt/common';\nimport {deepCopyWithArrayOverride} from '@jscrpt/common/lodash';\n\nimport {InitState, Interactions, KeyboardHandler, LiveSearch, NormalState, NormalStateContext, OptionsGatherer, OptionsHandler, PluginDescription, Popup, PopupContext, Positioner, ReadonlyState, SelectApi, SelectCssClasses, SelectEvents, SelectOption, SelectOptions, SelectPlugin, TemplateGatherer, ValueHandler} from '../../interfaces';\nimport {INTERACTIONS_TYPE, KEYBOARD_HANDLER_TYPE, LIVE_SEARCH_TYPE, NORMAL_STATE_TYPE, OPTIONS_HANDLER_TYPE, POPUP_TYPE, POSITIONER_TYPE, READONLY_STATE_TYPE, SELECT_OPTIONS, VALUE_HANDLER_TYPE} from '../../misc/tokens';\nimport {SelectPluginType} from '../../misc/enums';\nimport {SelectBus, SelectPluginInstances} from '../../misc/classes';\nimport {BasicPositionerComponent, StaticValueHandler, NoInteractionsComponent, NoLiveSearchComponent, NoOptionsHandler, SimpleKeyboardHandlerComponent, SimpleNormalStateComponent, SimplePopupComponent} from '../../plugins';\nimport {CopyOptionsAsSignal} from '../../decorators';\nimport {SelectAction, SelectFunction} from '../../misc/types';\nimport {NormalStateTemplate, OptionTemplate} from '../../directives';\n\n//TODO: optimize options change detection, currently it is based on reference change, but it could be optimized by checking only changed properties, or by using signals for options properties\n\n/**\n * Default 'SelectOptions'\n */\nconst defaultOptions: Omit<SelectOptions, 'optionsGatherer'|'templateGatherer'> =\n{\n absolute: false,\n multiple: false,\n readonly: false,\n containerElement: null,\n valueExtractor: (option: SelectOption) => option.value,\n // valueComparer: (source, target) =>\n // {\n // return source === target;\n // },\n // liveSearchFilter: (query: string, normalizer: NormalizeFunc = value => value) =>\n // {\n // return itm => normalizer(itm.text).indexOf(normalizer(query)) >= 0;\n // },\n // normalizer: value =>\n // {\n // if(isString(value))\n // {\n // return value.toLowerCase();\n // }\n\n // return value;\n // },\n cssClasses:\n {\n },\n plugins:\n {\n interactions: <PluginDescription<Interactions>>\n {\n type: forwardRef(() => NoInteractionsComponent),\n },\n keyboardHandler: <PluginDescription<KeyboardHandler>>\n {\n type: forwardRef(() => SimpleKeyboardHandlerComponent),\n },\n liveSearch: <PluginDescription<LiveSearch>>\n {\n type: forwardRef(() => NoLiveSearchComponent),\n },\n normalState: <PluginDescription<NormalState>>\n {\n type: forwardRef(() => SimpleNormalStateComponent),\n },\n optionsHandler: <PluginDescription<OptionsHandler>>\n {\n type: forwardRef(() => NoOptionsHandler),\n },\n popup: <PluginDescription<Popup>>\n {\n type: forwardRef(() => SimplePopupComponent),\n },\n positioner: <PluginDescription<Positioner>>\n {\n type: forwardRef(() => BasicPositionerComponent),\n },\n readonlyState: <PluginDescription<ReadonlyState>>\n {\n type: forwardRef(() => SimpleNormalStateComponent),\n },\n valueHandler: <PluginDescription<ValueHandler>>\n {\n type: forwardRef(() => StaticValueHandler),\n },\n },\n};\n\n/**\n * Component that represents Select itself, allows selection of value from options\n */\n@Component(\n{\n selector: 'ng-select',\n templateUrl: 'select.component.html',\n styleUrl: 'select.component.css',\n providers:\n [\n <FactoryProvider>\n {\n provide: SelectPluginInstances,\n useFactory: () => new SelectPluginInstances(),\n },\n SelectBus,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Select<TValue = unknown, TCssClasses = SelectCssClasses> implements SelectApi<TValue, TCssClasses>, OptionsGatherer<TValue>, TemplateGatherer\n{\n //######################### protected fields #########################\n\n /**\n * Instance of popup component used for positioning over page body when absolute option is true\n */\n protected popupComponentRef: ComponentRef<Popup>|undefined|null;\n\n /**\n * Object storing current used plugin type\n */\n protected pluginTypes: Record<SelectPluginType, Type<SelectPlugin>|undefined|null> =\n {\n Interactions: null,\n KeyboardHandler: null,\n LiveSearch: null,\n NormalState: null,\n OptionsHandler: null,\n Popup: null,\n Positioner: null,\n ReadonlyState: null,\n ValueHandler: null,\n };\n\n /**\n * Signal that holds init state of live search plugin\n */\n protected liveSearchInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of interactions plugin\n */\n protected interactionsInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of options handler plugin\n */\n protected optionsHandlerInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of positioner plugin\n */\n protected positionerInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of keyboard plugin\n */\n protected keyboardInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of value handler plugin\n */\n protected valueHandlerInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of readonly state plugin\n */\n protected readonlyStateInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of normal state plugin\n */\n protected normalStateInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Signal that holds init state of popup plugin\n */\n protected popupInit: WritableSignal<boolean> = signal(false);\n\n /**\n * Initialization state of all plugin init options\n */\n protected optionsInit: Signal<InitState> = computed(() => ({initialized: this.normalStateInit() &&\n this.keyboardInit() &&\n this.popupInit() &&\n this.positionerInit() &&\n this.readonlyStateInit() &&\n this.valueHandlerInit() &&\n this.liveSearchInit() &&\n this.interactionsInit() &&\n this.optionsHandlerInit()}));\n\n /**\n * Information whether is select initialized or not, changes when Select is initialized or reinitialized, if value is false Select was not initialized yet\n */\n protected initializedSignal: WritableSignal<boolean> = signal(false);\n\n //######################### protected properties - children #########################\n\n /**\n * Container used for rendering live search plugin\n */\n protected liveSearchContainer: Signal<ViewContainerRef> = viewChild.required('liveSearch', {read: ViewContainerRef});\n\n /**\n * Container used for rendering interactions plugin\n */\n protected interactionsContainer: Signal<ViewContainerRef> = viewChild.required('interactions', {read: ViewContainerRef});\n\n /**\n * Container used for rendering options handler plugin\n */\n protected optionsHandlerContainer: Signal<ViewContainerRef> = viewChild.required('optionsHandler', {read: ViewContainerRef});\n\n /**\n * Container used for rendering positioner plugin\n */\n protected positionerContainer: Signal<ViewContainerRef> = viewChild.required('positioner', {read: ViewContainerRef});\n\n /**\n * Container used for rendering keyboard handler plugin\n */\n protected keyboardHandlerContainer: Signal<ViewContainerRef> = viewChild.required('keyboardHandler', {read: ViewContainerRef});\n\n /**\n * Container used for rendering value handler plugin\n */\n protected valueHandlerContainer: Signal<ViewContainerRef> = viewChild.required('valueHandler', {read: ViewContainerRef});\n\n /**\n * Container used for rendering readonly state plugin\n */\n protected readonlyStateContainer: Signal<ViewContainerRef> = viewChild.required('readonlyState', {read: ViewContainerRef});\n\n /**\n * Container used for rendering normal state plugin\n */\n protected normalStateContainer: Signal<ViewContainerRef> = viewChild.required('normalState', {read: ViewContainerRef});\n\n /**\n * Container used for rendering popup plugin\n */\n protected popupContainer: Signal<ViewContainerRef> = viewChild.required('popup', {read: ViewContainerRef});\n\n // //######################### public properties - inputs #########################\n\n /**\n * @inheritdoc\n */\n @CopyOptionsAsSignal()\n @Input()\n public selectOptions: SelectOptions<TValue, TCssClasses>;\n\n /**\n * Indication whether should be Select disabled or not\n */\n public disabled: InputSignalWithTransform<boolean, string | boolean> = input<boolean, boolean|string>(false, {transform: booleanAttribute});\n\n /**\n * Indication whether should be Select readonly or not\n */\n public readonly: InputSignalWithTransform<boolean, string | boolean> = input<boolean, boolean|string>(false, {transform: booleanAttribute});\n\n //######################### public properties - implementation of SelectApi #########################\n\n /**\n * @inheritdoc\n */\n public get initialized(): Signal<boolean>\n {\n return this.initializedSignal.asReadonly();\n }\n\n /**\n * @inheritdoc\n */\n public get events(): SelectEvents\n {\n return this.bus;\n }\n\n //######################### public properties - implementation of TemplateGatherer #########################\n\n /**\n * @inheritdoc\n */\n public readonly normalStateTemplate: Signal<TemplateRef<NormalStateContext>|undefined|null> = contentChild(NormalStateTemplate, {read: TemplateRef});\n\n /**\n * @inheritdoc\n */\n public readonly optionTemplate: Signal<TemplateRef<PopupContext>|undefined|null> = contentChild(OptionTemplate, {read: TemplateRef});\n\n //######################### public properties - implementation of OptionsGatherer #########################\n\n /**\n * Array of all available options for select\n */\n public readonly availableOptions: Signal<readonly SelectOption<TValue>[]|undefined|null> = contentChildren<SelectOption<TValue>>(Option);\n\n //######################### constructors #########################\n constructor(protected pluginInstances: SelectPluginInstances,\n protected bus: SelectBus<TValue>,\n element: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) document: HTMLDocument,\n @Attribute('multiple') multiple?: string|null,\n @Inject(NORMAL_STATE_TYPE) @Optional() normalStateType?: Type<NormalState>|null,\n @Inject(KEYBOARD_HANDLER_TYPE) @Optional() keyboardHandlerType?: Type<KeyboardHandler>|null,\n @Inject(POPUP_TYPE) @Optional() popupType?: Type<Popup>|null,\n @Inject(POSITIONER_TYPE) @Optional() positionerType?: Type<Positioner>|null,\n @Inject(READONLY_STATE_TYPE) @Optional() readonlyStateType?: Type<ReadonlyState>|null,\n @Inject(VALUE_HANDLER_TYPE) @Optional() valueHandlerType?: Type<ValueHandler>|null,\n @Inject(LIVE_SEARCH_TYPE) @Optional() liveSearchType?: Type<LiveSearch>|null,\n @Inject(INTERACTIONS_TYPE) @Optional() interactionsType?: Type<Interactions>|null,\n @Inject(OPTIONS_HANDLER_TYPE) @Optional() optionsHandlerType?: Type<OptionsHandler>|null,\n @Inject(SELECT_OPTIONS) @Optional() options?: RecursivePartial<SelectOptions<TValue, TCssClasses>>|null,)\n {\n //is present (value is not important)\n const multipleDefault = isPresent(multiple);\n const opts: RecursivePartial<SelectOptions<TValue, TCssClasses>> = deepCopyWithArrayOverride({}, options);\n\n opts.plugins ??= {};\n\n if(keyboardHandlerType)\n {\n opts.plugins.keyboardHandler ??= {};\n opts.plugins.keyboardHandler.type = keyboardHandlerType;\n }\n\n if(normalStateType)\n {\n opts.plugins.normalState ??= {};\n opts.plugins.normalState.type = normalStateType;\n }\n\n if(popupType)\n {\n opts.plugins.popup ??= {};\n opts.plugins.popup.type = popupType;\n }\n\n if(positionerType)\n {\n opts.plugins.positioner ??= {};\n opts.plugins.positioner.type = positionerType;\n }\n\n if(readonlyStateType)\n {\n opts.plugins.readonlyState ??= {};\n opts.plugins.readonlyState.type = readonlyStateType;\n }\n\n if(valueHandlerType)\n {\n opts.plugins.valueHandler ??= {};\n opts.plugins.valueHandler.type = valueHandlerType;\n }\n\n if(liveSearchType)\n {\n opts.plugins.liveSearch ??= {};\n opts.plugins.liveSearch.type = liveSearchType;\n }\n\n if(interactionsType)\n {\n opts.plugins.interactions ??= {};\n opts.plugins.interactions.type = interactionsType;\n }\n\n if(optionsHandlerType)\n {\n opts.plugins.optionsHandler ??= {};\n opts.plugins.optionsHandler.type = optionsHandlerType;\n }\n\n this.selectOptions = deepCopyWithArrayOverride(\n <RecursivePartial<SelectOptions<TValue, TCssClasses>>>\n {\n optionsGatherer: this,\n templateGatherer: this,\n },\n defaultOptions as SelectOptions<TValue, TCssClasses>,\n <RecursivePartial<SelectOptions<TValue>>>\n {\n multiple: multipleDefault,\n },\n opts);\n\n bus.selectElement.set(element);\n bus.selectOptions = computed(() => this.selectOptions);\n\n //dynamic update of readonly state in options\n effect(() =>\n {\n this.selectOptions =\n <RecursivePartial<SelectOptions<TValue>>>\n {\n readonly: this.readonly() || this.disabled(),\n } as SelectOptions<TValue, TCssClasses>;\n });\n\n //create and initialize options for static plugins\n effect(async () =>\n {\n const selectOptions = this.selectOptions;\n const liveSearchContainer = this.liveSearchContainer();\n const interactionsContainer = this.interactionsContainer();\n const optionsHandlerContainer = this.optionsHandlerContainer();\n const positionerContainer = this.positionerContainer();\n const keyboardHandlerContainer = this.keyboardHandlerContainer();\n const valueHandlerContainer = this.valueHandlerContainer();\n\n await this.createPlugin(selectOptions.plugins?.liveSearch, SelectPluginType.LiveSearch, liveSearchContainer, this.liveSearchInit);\n await this.createPlugin(selectOptions.plugins?.interactions, SelectPluginType.Interactions, interactionsContainer, this.interactionsInit);\n await this.createPlugin(selectOptions.plugins?.optionsHandler, SelectPluginType.OptionsHandler, optionsHandlerContainer, this.optionsHandlerInit);\n await this.createPlugin(selectOptions.plugins?.positioner, SelectPluginType.Positioner, positionerContainer, this.positionerInit);\n await this.createPlugin(selectOptions.plugins?.keyboardHandler, SelectPluginType.KeyboardHandler, keyboardHandlerContainer, this.keyboardInit);\n await this.createPlugin(selectOptions.plugins?.valueHandler, SelectPluginType.ValueHandler, valueHandlerContainer, this.valueHandlerInit);\n });\n\n //create and initialize options for state plugins (normal and readonly)\n effect(() =>\n {\n const readonlyStateContainer = this.readonlyStateContainer();\n const normalStateContainer = this.normalStateContainer();\n const selectOptions = this.selectOptions;\n\n if(selectOptions.readonly)\n {\n this.destroyPlugin(SelectPluginType.NormalState, normalStateContainer, this.normalStateInit);\n this.normalStateInit.set(true);\n this.createPlugin(this.selectOptions.plugins?.readonlyState, SelectPluginType.ReadonlyState, readonlyStateContainer, this.readonlyStateInit);\n }\n else\n {\n this.destroyPlugin(SelectPluginType.ReadonlyState, readonlyStateContainer, this.readonlyStateInit);\n this.readonlyStateInit.set(true);\n this.createPlugin(this.selectOptions.plugins?.normalState, SelectPluginType.NormalState, normalStateContainer, this.normalStateInit);\n }\n });\n\n //create and initialize options for popup plugin, allows absolute positioning\n effect(() =>\n {\n const selectOptions = this.selectOptions;\n const popupContainer = this.popupContainer();\n\n this.destroyPlugin(SelectPluginType.Popup, popupContainer, this.popupInit);\n this.createPlugin(this.selectOptions.plugins?.popup, SelectPluginType.Popup, this.popupContainer(), this.popupInit);\n\n if(selectOptions.absolute && this.popupComponentRef)\n {\n const element = getHostElement(this.popupComponentRef);\n\n if(!element)\n {\n throw new Error('Could not get element of popup component');\n }\n\n renderToBody(document, element, selectOptions.containerElement);\n }\n });\n\n //initialize plugins when all options are initialized\n effect(() =>\n {\n if(this.optionsInit().initialized)\n {\n untracked(() =>\n {\n this.pluginInstances.OptionsHandler.initialize();\n this.pluginInstances.LiveSearch.initialize();\n this.pluginInstances.KeyboardHandler.initialize();\n this.pluginInstances.ValueHandler.initialize();\n this.pluginInstances.normalState()?.initialize();\n this.pluginInstances.readonlyState()?.initialize();\n this.pluginInstances.Popup.initialize();\n this.pluginInstances.Positioner.initialize();\n this.pluginInstances.Interactions.initialize();\n });\n\n this.initializedSignal.set(true);\n }\n });\n }\n\n //######################### public methods #########################\n\n /**\n * @inheritdoc\n */\n public getPlugin<PluginInstance extends SelectPlugin>(pluginType: SelectPluginType): PluginInstance\n {\n return this.pluginInstances[pluginType] as PluginInstance;\n }\n\n /**\n * @inheritdoc\n */\n public execute(...actions: SelectAction<TValue, TCssClasses>[])\n {\n if(!actions)\n {\n return;\n }\n\n actions.forEach(action => action(this));\n }\n\n /**\n * @inheritdoc\n */\n public executeAndReturn<TResult>(func: SelectFunction<TResult, TValue, TCssClasses>): TResult\n {\n if(!func)\n {\n throw new Error('Function is required');\n }\n\n return func(this);\n }\n\n // //######################### protected methods #########################\n\n /**\n * Creates plugin\n * @param pluginDescription - Information about plugin that should be created\n * @param pluginType - Key of plugin used for pluginInstances\n * @param pluginViewContainer - Container where should be plugin created\n * @param initOptions - Signal that hold information about init options state for this plugin\n */\n protected async createPlugin<TPlugin extends SelectPlugin>(pluginDescription: PluginDescription<TPlugin>|undefined|null,\n pluginType: SelectPluginType,\n pluginViewContainer: ViewContainerRef,\n initOptions: WritableSignal<boolean>,): Promise<void>\n {\n if(!pluginDescription?.type)\n {\n this.destroyPlugin(pluginType, pluginViewContainer, initOptions);\n\n return;\n }\n\n const type = resolveForwardRef(pluginDescription.type);\n let newInstance = false;\n\n //new type provided\n if(type != this.pluginTypes[pluginType])\n {\n initOptions.set(false);\n this.pluginTypes[pluginType] = type;\n pluginViewContainer.clear();\n\n const component = pluginViewContainer.createComponent(type);\n component.changeDetectorRef.detectChanges();\n this.pluginInstances[pluginType] = component.instance;\n newInstance = true;\n\n if(pluginType == SelectPluginType.Popup)\n {\n this.popupComponentRef = component;\n }\n }\n\n //only call when new instance of plugin was created\n if(newInstance)\n {\n pluginDescription.instanceCallback?.(this.pluginInstances[pluginType] as TPlugin);\n }\n\n //options are available, set them\n if(pluginDescription.options)\n {\n initOptions.set(false);\n this.pluginInstances[pluginType].options = pluginDescription.options;\n }\n\n await this.initOption(pluginType, initOptions);\n }\n\n /**\n * Init options for single plugin\n * @param pluginType - Type of plugin to be initialized\n * @param initOptions - Init options signal for this plugin\n */\n protected async initOption(pluginType: SelectPluginType,\n initOptions: WritableSignal<boolean>,): Promise<void>\n {\n await this.pluginInstances[pluginType].initOptions();\n initOptions.set(true);\n }\n\n /**\n * Destroys plugin\n * @param pluginType - Plugin type to be destroyed\n * @param plugiViewContainer - Container which will be emptied\n * @param initOptions - Signal that hold information about init options state for this plugin\n */\n protected destroyPlugin(pluginType: SelectPluginType,\n pluginViewContainer: ViewContainerRef,\n initOptions: WritableSignal<boolean>,): void\n {\n if(pluginType == SelectPluginType.Popup)\n {\n this.popupComponentRef = null;\n }\n\n pluginViewContainer.clear();\n initOptions.set(false);\n this.pluginTypes[pluginType] = null;\n }\n}\n","<ng-container #liveSearch />\r\n<ng-container #interactions />\r\n<ng-container #optionsHandler />\r\n<ng-container #positioner />\r\n<ng-container #keyboardHandler />\r\n<ng-container #valueHandler />\r\n\r\n<div>\r\n <ng-container #readonlyState />\r\n <ng-container #normalState />\r\n <ng-container #popup />\r\n</div>\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,uDAAuD,CAAC","sourcesContent":["export * from './mergeOptionsAsSignal/mergeOptionsAsSignal.decorator';\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AsSignal } from '@anglr/common';
|
|
2
|
+
import { deepCopyWithArrayOverride } from '@jscrpt/common/lodash';
|
|
3
|
+
function optionsTransform(currentOptions, options) {
|
|
4
|
+
return deepCopyWithArrayOverride({}, currentOptions, options);
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Creates backing field for this property as WritableSignal, reads and write to it, and merges options
|
|
8
|
+
*/
|
|
9
|
+
export function CopyOptionsAsSignal() {
|
|
10
|
+
return AsSignal(optionsTransform);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=mergeOptionsAsSignal.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeOptionsAsSignal.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/mergeOptionsAsSignal/mergeOptionsAsSignal.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,yBAAyB,EAAC,MAAM,uBAAuB,CAAC;AAEhE,SAAS,gBAAgB,CAAC,cAAuB,EAAE,OAAgB;IAE/D,OAAO,yBAAyB,CAAC,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB;IAE/B,OAAO,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AACtC,CAAC","sourcesContent":["import {AsSignal} from '@anglr/common';\nimport {deepCopyWithArrayOverride} from '@jscrpt/common/lodash';\n\nfunction optionsTransform(currentOptions: unknown, options: unknown): unknown\n{\n return deepCopyWithArrayOverride({}, currentOptions, options);\n}\n\n/**\n * Creates backing field for this property as WritableSignal, reads and write to it, and merges options\n */\nexport function CopyOptionsAsSignal(): PropertyDecorator\n{\n return AsSignal(optionsTransform);\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './normalStateTemplate/normalStateTemplate.directive';
|
|
2
|
+
export * from './optionTemplate/optionTemplate.directive';
|
|
3
|
+
export * from './selectAbsolute/selectAbsolute.directive';
|
|
4
|
+
export * from './withDirectAccess/withDirectAccess.directive';
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/directives/index.ts"],"names":[],"mappings":"AAAA,cAAc,qDAAqD,CAAC;AACpE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+CAA+C,CAAC","sourcesContent":["export * from './normalStateTemplate/normalStateTemplate.directive';\nexport * from './optionTemplate/optionTemplate.directive';\nexport * from './selectAbsolute/selectAbsolute.directive';\nexport * from './withDirectAccess/withDirectAccess.directive';\n"]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Directive, inject, TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Directive used for obtaining template for normal state
|
|
5
|
+
*/
|
|
6
|
+
export class NormalStateTemplate {
|
|
7
|
+
constructor() {
|
|
8
|
+
//######################### public properties #########################
|
|
9
|
+
/**
|
|
10
|
+
* Instance of template for normal state
|
|
11
|
+
*/
|
|
12
|
+
this.template = inject(TemplateRef);
|
|
13
|
+
}
|
|
14
|
+
//######################### ng language server #########################
|
|
15
|
+
/**
|
|
16
|
+
* Allows typechecking for template
|
|
17
|
+
*/
|
|
18
|
+
static ngTemplateContextGuard(_dir, _ctx) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NormalStateTemplate, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
22
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NormalStateTemplate, isStandalone: true, selector: "[normalStateTemplate]", ngImport: i0 }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NormalStateTemplate, decorators: [{
|
|
25
|
+
type: Directive,
|
|
26
|
+
args: [{
|
|
27
|
+
selector: '[normalStateTemplate]',
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=normalStateTemplate.directive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalStateTemplate.directive.js","sourceRoot":"","sources":["../../../../src/directives/normalStateTemplate/normalStateTemplate.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;;AAI7D;;GAEG;AAKH,MAAM,OAAO,mBAAmB;IAJhC;QAMI,uEAAuE;QAEvE;;WAEG;QACI,aAAQ,GAAoC,MAAM,CAAC,WAAW,CAAC,CAAC;KAW1E;IATG,wEAAwE;IAExE;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,IAAyB,EAAE,IAAa;QAElE,OAAO,IAAI,CAAC;IAChB,CAAC;8GAjBQ,mBAAmB;kGAAnB,mBAAmB;;2FAAnB,mBAAmB;kBAJ/B,SAAS;mBACV;oBACI,QAAQ,EAAE,uBAAuB;iBACpC","sourcesContent":["import {Directive, inject, TemplateRef} from '@angular/core';\n\nimport {NormalStateContext} from '../../interfaces';\n\n/**\n * Directive used for obtaining template for normal state\n */\n@Directive(\n{\n selector: '[normalStateTemplate]',\n})\nexport class NormalStateTemplate\n{\n //######################### public properties #########################\n\n /**\n * Instance of template for normal state\n */\n public template: TemplateRef<NormalStateContext> = inject(TemplateRef);\n\n //######################### ng language server #########################\n\n /**\n * Allows typechecking for template\n */\n static ngTemplateContextGuard(_dir: NormalStateTemplate, _ctx: unknown): _ctx is NormalStateContext\n {\n return true;\n }\n}\n"]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Directive, inject, TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Directive used for obtaining template for option in popup
|
|
5
|
+
*/
|
|
6
|
+
export class OptionTemplate {
|
|
7
|
+
constructor() {
|
|
8
|
+
//######################### public properties #########################
|
|
9
|
+
/**
|
|
10
|
+
* Instance of template for options in popup
|
|
11
|
+
*/
|
|
12
|
+
this.template = inject(TemplateRef);
|
|
13
|
+
}
|
|
14
|
+
//######################### ng language server #########################
|
|
15
|
+
/**
|
|
16
|
+
* Allows typechecking for template
|
|
17
|
+
*/
|
|
18
|
+
static ngTemplateContextGuard(_dir, _ctx) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OptionTemplate, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
22
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: OptionTemplate, isStandalone: true, selector: "[optionTemplate]", ngImport: i0 }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: OptionTemplate, decorators: [{
|
|
25
|
+
type: Directive,
|
|
26
|
+
args: [{
|
|
27
|
+
selector: '[optionTemplate]',
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=optionTemplate.directive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optionTemplate.directive.js","sourceRoot":"","sources":["../../../../src/directives/optionTemplate/optionTemplate.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;;AAI7D;;GAEG;AAKH,MAAM,OAAO,cAAc;IAJ3B;QAMI,uEAAuE;QAEvE;;WAEG;QACI,aAAQ,GAA8B,MAAM,CAAC,WAAW,CAAC,CAAC;KAWpE;IATG,wEAAwE;IAExE;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,IAAoB,EAAE,IAAa;QAE7D,OAAO,IAAI,CAAC;IAChB,CAAC;8GAjBQ,cAAc;kGAAd,cAAc;;2FAAd,cAAc;kBAJ1B,SAAS;mBACV;oBACI,QAAQ,EAAE,kBAAkB;iBAC/B","sourcesContent":["import {Directive, inject, TemplateRef} from '@angular/core';\n\nimport {PopupContext} from '../../interfaces';\n\n/**\n * Directive used for obtaining template for option in popup\n */\n@Directive(\n{\n selector: '[optionTemplate]',\n})\nexport class OptionTemplate\n{\n //######################### public properties #########################\n\n /**\n * Instance of template for options in popup\n */\n public template: TemplateRef<PopupContext> = inject(TemplateRef);\n\n //######################### ng language server #########################\n\n /**\n * Allows typechecking for template\n */\n static ngTemplateContextGuard(_dir: OptionTemplate, _ctx: unknown): _ctx is PopupContext\n {\n return true;\n }\n}\n"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { Select } from '../../components';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../components";
|
|
5
|
+
/**
|
|
6
|
+
* Directive used for setting absolute option for ng-select
|
|
7
|
+
*/
|
|
8
|
+
export class SelectAbsoluteDirective {
|
|
9
|
+
//######################### constructor #########################
|
|
10
|
+
constructor(select) {
|
|
11
|
+
select.selectOptions =
|
|
12
|
+
{
|
|
13
|
+
absolute: true,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: SelectAbsoluteDirective, deps: [{ token: i1.Select }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: SelectAbsoluteDirective, isStandalone: true, selector: "ng-select[absolute]", ngImport: i0 }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: SelectAbsoluteDirective, decorators: [{
|
|
20
|
+
type: Directive,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: 'ng-select[absolute]',
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.Select }] });
|
|
25
|
+
//# sourceMappingURL=selectAbsolute.directive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selectAbsolute.directive.js","sourceRoot":"","sources":["../../../../src/directives/selectAbsolute/selectAbsolute.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAC;;;AAGxC;;GAEG;AAKH,MAAM,OAAO,uBAAuB;IAEhC,iEAAiE;IACjE,YAAY,MAAmC;QAE3C,MAAM,CAAC,aAAa;YAEpB;gBACI,QAAQ,EAAE,IAAI;aACqB,CAAC;IAC5C,CAAC;8GAVQ,uBAAuB;kGAAvB,uBAAuB;;2FAAvB,uBAAuB;kBAJnC,SAAS;mBACV;oBACI,QAAQ,EAAE,qBAAqB;iBAClC","sourcesContent":["import {Directive} from '@angular/core';\nimport {RecursivePartial} from '@jscrpt/common';\n\nimport {Select} from '../../components';\nimport {SelectCssClasses, SelectOptions} from '../../interfaces';\n\n/**\n * Directive used for setting absolute option for ng-select\n */\n@Directive(\n{\n selector: 'ng-select[absolute]',\n})\nexport class SelectAbsoluteDirective<TValue = unknown, TCssClasses = SelectCssClasses>\n{\n //######################### constructor #########################\n constructor(select: Select<TValue, TCssClasses>)\n {\n select.selectOptions =\n <RecursivePartial<SelectOptions<TValue, TCssClasses>>>\n {\n absolute: true,\n } as SelectOptions<TValue, TCssClasses>;\n }\n}\n"]}
|
package/es2022/src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.js
ADDED
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import {forwardRef, ExistingProvider, Directive, OnDestroy} from '@angular/core';
|
|
3
|
+
// import {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';
|
|
4
|
+
// import {Subscription} from 'rxjs';
|
|
5
|
+
// /**
|
|
6
|
+
// * Provider for control value accessor
|
|
7
|
+
// * @internal
|
|
8
|
+
// */
|
|
9
|
+
// const NG_SELECT_VALUE_ACCESSOR: ExistingProvider =
|
|
10
|
+
// {
|
|
11
|
+
// provide: NG_VALUE_ACCESSOR,
|
|
12
|
+
// useExisting: forwardRef(() => NgSelectControlValueAccessor),
|
|
13
|
+
// multi: true,
|
|
14
|
+
// };
|
|
15
|
+
// /**
|
|
16
|
+
// * Control value accessor for NgSelectComponent
|
|
17
|
+
// */
|
|
18
|
+
// @Directive(
|
|
19
|
+
// {
|
|
20
|
+
// selector: 'ng-select[formControlName],ng-select[formControl],ng-select[ngModel]',
|
|
21
|
+
// providers: [NG_SELECT_VALUE_ACCESSOR],
|
|
22
|
+
// })
|
|
23
|
+
// export class NgSelectControlValueAccessor<TValue = unknown> implements ControlValueAccessor, OnDestroy
|
|
24
|
+
// {
|
|
25
|
+
// //######################### private fields #########################
|
|
26
|
+
// /**
|
|
27
|
+
// * Subscription for initialized status of NgSelect, used for writeValue
|
|
28
|
+
// */
|
|
29
|
+
// private _initializedSubscription: Subscription;
|
|
30
|
+
// /**
|
|
31
|
+
// * Subscription for initialized status of NgSelect, used for registerOnChange
|
|
32
|
+
// */
|
|
33
|
+
// private _changeInitializedSubscription: Subscription;
|
|
34
|
+
// /**
|
|
35
|
+
// * Subscription for initialized status of NgSelect, used for registerOnTouched
|
|
36
|
+
// */
|
|
37
|
+
// private _touchInitializedSubscription: Subscription;
|
|
38
|
+
// /**
|
|
39
|
+
// * Subscription for initialized status of NgSelect, used for setDisabledState
|
|
40
|
+
// */
|
|
41
|
+
// private _disabledInitializedSubscription: Subscription;
|
|
42
|
+
// /**
|
|
43
|
+
// * Subscription that looks for changes of select
|
|
44
|
+
// */
|
|
45
|
+
// private _changeSubscription: Subscription = null;
|
|
46
|
+
// /**
|
|
47
|
+
// * Subscription that looks for changes of select
|
|
48
|
+
// */
|
|
49
|
+
// private _focusSubscription: Subscription = null;
|
|
50
|
+
// /**
|
|
51
|
+
// * Last set value to this control
|
|
52
|
+
// */
|
|
53
|
+
// private _value: TValue|TValue[];
|
|
54
|
+
// //######################### constructor #########################
|
|
55
|
+
// constructor(private _select: NgSelectComponent<TValue>)
|
|
56
|
+
// {
|
|
57
|
+
// }
|
|
58
|
+
// //######################### public methods - implementation of ControlValueAccessor #########################
|
|
59
|
+
// /**
|
|
60
|
+
// * Sets value to select
|
|
61
|
+
// */
|
|
62
|
+
// public writeValue(value: TValue|Array<TValue>): void
|
|
63
|
+
// {
|
|
64
|
+
// this._value = value;
|
|
65
|
+
// if(this._select.isInitialized)
|
|
66
|
+
// {
|
|
67
|
+
// this._select.execute(ɵSetValue(value));
|
|
68
|
+
// return;
|
|
69
|
+
// }
|
|
70
|
+
// if(this._initializedSubscription)
|
|
71
|
+
// {
|
|
72
|
+
// this._initializedSubscription.unsubscribe();
|
|
73
|
+
// this._initializedSubscription = null;
|
|
74
|
+
// }
|
|
75
|
+
// this._initializedSubscription = this._select.initialized.subscribe(initialized =>
|
|
76
|
+
// {
|
|
77
|
+
// if(initialized)
|
|
78
|
+
// {
|
|
79
|
+
// this._initializedSubscription.unsubscribe();
|
|
80
|
+
// this._initializedSubscription = null;
|
|
81
|
+
// this._select.execute(ɵSetValue(value));
|
|
82
|
+
// }
|
|
83
|
+
// });
|
|
84
|
+
// }
|
|
85
|
+
// /**
|
|
86
|
+
// * Registers callback that is called when value of select changes
|
|
87
|
+
// */
|
|
88
|
+
// public registerOnChange(fn: (data: TValue|Array<TValue>) => void): void
|
|
89
|
+
// {
|
|
90
|
+
// const fnWrapper = (value: TValue|Array<TValue>) =>
|
|
91
|
+
// {
|
|
92
|
+
// //multivalue is new array in case of change
|
|
93
|
+
// if(Array.isArray(value) && Array.isArray(this._value))
|
|
94
|
+
// {
|
|
95
|
+
// if(value !== this._value)
|
|
96
|
+
// {
|
|
97
|
+
// this._value = value;
|
|
98
|
+
// fn(value);
|
|
99
|
+
// }
|
|
100
|
+
// }
|
|
101
|
+
// else if(!Array.isArray(value) && !Array.isArray(this._value))
|
|
102
|
+
// {
|
|
103
|
+
// if(!this._select.selectOptions?.valueComparer(this._value, value))
|
|
104
|
+
// {
|
|
105
|
+
// this._value = value;
|
|
106
|
+
// fn(value);
|
|
107
|
+
// }
|
|
108
|
+
// }
|
|
109
|
+
// };
|
|
110
|
+
// this._changeInitializedSubscription = this._select.initialized.subscribe(initialized =>
|
|
111
|
+
// {
|
|
112
|
+
// if(initialized)
|
|
113
|
+
// {
|
|
114
|
+
// if(this._changeSubscription)
|
|
115
|
+
// {
|
|
116
|
+
// this._changeSubscription.unsubscribe();
|
|
117
|
+
// this._changeSubscription = null;
|
|
118
|
+
// }
|
|
119
|
+
// this._changeSubscription = this._select.executeAndReturn(ɵValueChange(fnWrapper));
|
|
120
|
+
// if(this._select.selectOptions.forceValueCheckOnInit)
|
|
121
|
+
// {
|
|
122
|
+
// const value = this._select.executeAndReturn(ɵGetValue());
|
|
123
|
+
// fnWrapper(value);
|
|
124
|
+
// }
|
|
125
|
+
// }
|
|
126
|
+
// });
|
|
127
|
+
// }
|
|
128
|
+
// /**
|
|
129
|
+
// * Registers callback that is called when select is closed
|
|
130
|
+
// */
|
|
131
|
+
// public registerOnTouched(fn: () => void): void
|
|
132
|
+
// {
|
|
133
|
+
// this._touchInitializedSubscription = this._select.initialized.subscribe(initialized =>
|
|
134
|
+
// {
|
|
135
|
+
// if(initialized)
|
|
136
|
+
// {
|
|
137
|
+
// if(this._focusSubscription)
|
|
138
|
+
// {
|
|
139
|
+
// this._focusSubscription.unsubscribe();
|
|
140
|
+
// this._focusSubscription = null;
|
|
141
|
+
// }
|
|
142
|
+
// this._focusSubscription = this._select.executeAndReturn(ɵOnFocus(fn));
|
|
143
|
+
// }
|
|
144
|
+
// });
|
|
145
|
+
// }
|
|
146
|
+
// /**
|
|
147
|
+
// * Sets NgSelect as disabled/readonly
|
|
148
|
+
// * @param isDisabled - Indication whether is control disabled or not
|
|
149
|
+
// */
|
|
150
|
+
// public setDisabledState(isDisabled: boolean): void
|
|
151
|
+
// {
|
|
152
|
+
// if(this._select.isInitialized)
|
|
153
|
+
// {
|
|
154
|
+
// this._select.execute(ɵSetReadonly(isDisabled));
|
|
155
|
+
// return;
|
|
156
|
+
// }
|
|
157
|
+
// if(this._disabledInitializedSubscription)
|
|
158
|
+
// {
|
|
159
|
+
// this._disabledInitializedSubscription.unsubscribe();
|
|
160
|
+
// this._disabledInitializedSubscription = null;
|
|
161
|
+
// }
|
|
162
|
+
// this._disabledInitializedSubscription = this._select.initialized.subscribe(initialized =>
|
|
163
|
+
// {
|
|
164
|
+
// if(initialized)
|
|
165
|
+
// {
|
|
166
|
+
// this._disabledInitializedSubscription.unsubscribe();
|
|
167
|
+
// this._disabledInitializedSubscription = null;
|
|
168
|
+
// this._select.execute(ɵSetReadonly(isDisabled));
|
|
169
|
+
// }
|
|
170
|
+
// });
|
|
171
|
+
// }
|
|
172
|
+
// //######################### public methods - implementation of OnDestroy #########################
|
|
173
|
+
// /**
|
|
174
|
+
// * Called when component is destroyed
|
|
175
|
+
// */
|
|
176
|
+
// public ngOnDestroy()
|
|
177
|
+
// {
|
|
178
|
+
// if(this._changeSubscription)
|
|
179
|
+
// {
|
|
180
|
+
// this._changeSubscription.unsubscribe();
|
|
181
|
+
// this._changeSubscription = null;
|
|
182
|
+
// }
|
|
183
|
+
// if(this._initializedSubscription)
|
|
184
|
+
// {
|
|
185
|
+
// this._initializedSubscription.unsubscribe();
|
|
186
|
+
// this._initializedSubscription = null;
|
|
187
|
+
// }
|
|
188
|
+
// if(this._changeInitializedSubscription)
|
|
189
|
+
// {
|
|
190
|
+
// this._changeInitializedSubscription.unsubscribe();
|
|
191
|
+
// this._changeInitializedSubscription = null;
|
|
192
|
+
// }
|
|
193
|
+
// if(this._touchInitializedSubscription)
|
|
194
|
+
// {
|
|
195
|
+
// this._touchInitializedSubscription.unsubscribe();
|
|
196
|
+
// this._touchInitializedSubscription = null;
|
|
197
|
+
// }
|
|
198
|
+
// if(this._focusSubscription)
|
|
199
|
+
// {
|
|
200
|
+
// this._focusSubscription.unsubscribe();
|
|
201
|
+
// this._focusSubscription = null;
|
|
202
|
+
// }
|
|
203
|
+
// if(this._disabledInitializedSubscription)
|
|
204
|
+
// {
|
|
205
|
+
// this._disabledInitializedSubscription.unsubscribe();
|
|
206
|
+
// this._disabledInitializedSubscription = null;
|
|
207
|
+
// }
|
|
208
|
+
// }
|
|
209
|
+
// }
|
|
210
|
+
//# sourceMappingURL=selectControlValueAccessor.directive.js.map
|
package/es2022/src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selectControlValueAccessor.directive.js","sourceRoot":"","sources":["../../../../src/directives/selectControlValueAccessor/selectControlValueAccessor.directive.ts"],"names":[],"mappings":"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","sourcesContent":["// import {forwardRef, ExistingProvider, Directive, OnDestroy} from '@angular/core';\n// import {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\n// import {Subscription} from 'rxjs';\n\n// /**\n// * Provider for control value accessor\n// * @internal\n// */\n// const NG_SELECT_VALUE_ACCESSOR: ExistingProvider =\n// {\n// provide: NG_VALUE_ACCESSOR,\n// useExisting: forwardRef(() => NgSelectControlValueAccessor),\n// multi: true,\n// };\n\n// /**\n// * Control value accessor for NgSelectComponent\n// */\n// @Directive(\n// {\n// selector: 'ng-select[formControlName],ng-select[formControl],ng-select[ngModel]',\n// providers: [NG_SELECT_VALUE_ACCESSOR],\n// })\n// export class NgSelectControlValueAccessor<TValue = unknown> implements ControlValueAccessor, OnDestroy\n// {\n// //######################### private fields #########################\n\n// /**\n// * Subscription for initialized status of NgSelect, used for writeValue\n// */\n// private _initializedSubscription: Subscription;\n\n// /**\n// * Subscription for initialized status of NgSelect, used for registerOnChange\n// */\n// private _changeInitializedSubscription: Subscription;\n\n// /**\n// * Subscription for initialized status of NgSelect, used for registerOnTouched\n// */\n// private _touchInitializedSubscription: Subscription;\n\n// /**\n// * Subscription for initialized status of NgSelect, used for setDisabledState\n// */\n// private _disabledInitializedSubscription: Subscription;\n\n// /**\n// * Subscription that looks for changes of select\n// */\n// private _changeSubscription: Subscription = null;\n\n// /**\n// * Subscription that looks for changes of select\n// */\n// private _focusSubscription: Subscription = null;\n\n// /**\n// * Last set value to this control\n// */\n// private _value: TValue|TValue[];\n\n// //######################### constructor #########################\n// constructor(private _select: NgSelectComponent<TValue>)\n// {\n// }\n\n// //######################### public methods - implementation of ControlValueAccessor #########################\n\n// /**\n// * Sets value to select\n// */\n// public writeValue(value: TValue|Array<TValue>): void\n// {\n// this._value = value;\n\n// if(this._select.isInitialized)\n// {\n// this._select.execute(ɵSetValue(value));\n\n// return;\n// }\n\n// if(this._initializedSubscription)\n// {\n// this._initializedSubscription.unsubscribe();\n// this._initializedSubscription = null;\n// }\n\n// this._initializedSubscription = this._select.initialized.subscribe(initialized =>\n// {\n// if(initialized)\n// {\n// this._initializedSubscription.unsubscribe();\n// this._initializedSubscription = null;\n\n// this._select.execute(ɵSetValue(value));\n// }\n// });\n// }\n\n// /**\n// * Registers callback that is called when value of select changes\n// */\n// public registerOnChange(fn: (data: TValue|Array<TValue>) => void): void\n// {\n// const fnWrapper = (value: TValue|Array<TValue>) =>\n// {\n// //multivalue is new array in case of change\n// if(Array.isArray(value) && Array.isArray(this._value))\n// {\n// if(value !== this._value)\n// {\n// this._value = value;\n// fn(value);\n// }\n// }\n// else if(!Array.isArray(value) && !Array.isArray(this._value))\n// {\n// if(!this._select.selectOptions?.valueComparer(this._value, value))\n// {\n// this._value = value;\n// fn(value);\n// }\n// }\n// };\n\n// this._changeInitializedSubscription = this._select.initialized.subscribe(initialized =>\n// {\n// if(initialized)\n// {\n// if(this._changeSubscription)\n// {\n// this._changeSubscription.unsubscribe();\n// this._changeSubscription = null;\n// }\n\n// this._changeSubscription = this._select.executeAndReturn(ɵValueChange(fnWrapper));\n\n// if(this._select.selectOptions.forceValueCheckOnInit)\n// {\n// const value = this._select.executeAndReturn(ɵGetValue());\n\n// fnWrapper(value);\n// }\n// }\n// });\n// }\n\n// /**\n// * Registers callback that is called when select is closed\n// */\n// public registerOnTouched(fn: () => void): void\n// {\n// this._touchInitializedSubscription = this._select.initialized.subscribe(initialized =>\n// {\n// if(initialized)\n// {\n// if(this._focusSubscription)\n// {\n// this._focusSubscription.unsubscribe();\n// this._focusSubscription = null;\n// }\n\n// this._focusSubscription = this._select.executeAndReturn(ɵOnFocus(fn));\n// }\n// });\n// }\n\n// /**\n// * Sets NgSelect as disabled/readonly\n// * @param isDisabled - Indication whether is control disabled or not\n// */\n// public setDisabledState(isDisabled: boolean): void\n// {\n// if(this._select.isInitialized)\n// {\n// this._select.execute(ɵSetReadonly(isDisabled));\n\n// return;\n// }\n\n// if(this._disabledInitializedSubscription)\n// {\n// this._disabledInitializedSubscription.unsubscribe();\n// this._disabledInitializedSubscription = null;\n// }\n\n// this._disabledInitializedSubscription = this._select.initialized.subscribe(initialized =>\n// {\n// if(initialized)\n// {\n// this._disabledInitializedSubscription.unsubscribe();\n// this._disabledInitializedSubscription = null;\n\n// this._select.execute(ɵSetReadonly(isDisabled));\n// }\n// });\n// }\n\n// //######################### public methods - implementation of OnDestroy #########################\n\n// /**\n// * Called when component is destroyed\n// */\n// public ngOnDestroy()\n// {\n// if(this._changeSubscription)\n// {\n// this._changeSubscription.unsubscribe();\n// this._changeSubscription = null;\n// }\n\n// if(this._initializedSubscription)\n// {\n// this._initializedSubscription.unsubscribe();\n// this._initializedSubscription = null;\n// }\n\n// if(this._changeInitializedSubscription)\n// {\n// this._changeInitializedSubscription.unsubscribe();\n// this._changeInitializedSubscription = null;\n// }\n\n// if(this._touchInitializedSubscription)\n// {\n// this._touchInitializedSubscription.unsubscribe();\n// this._touchInitializedSubscription = null;\n// }\n\n// if(this._focusSubscription)\n// {\n// this._focusSubscription.unsubscribe();\n// this._focusSubscription = null;\n// }\n\n// if(this._disabledInitializedSubscription)\n// {\n// this._disabledInitializedSubscription.unsubscribe();\n// this._disabledInitializedSubscription = null;\n// }\n// }\n// }\n"]}
|