@skyux/lookup 5.2.2 → 5.5.0
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/README.md +6 -4
- package/documentation.json +409 -23
- package/esm2015/index.js +32 -0
- package/esm2015/index.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-adapter.service.js +62 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-adapter.service.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-default-search-function.js +39 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-default-search-function.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-input.directive.js +220 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-input.directive.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.js +19 -0
- package/esm2015/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/autocomplete.component.js +732 -0
- package/esm2015/lib/modules/autocomplete/autocomplete.component.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/autocomplete.module.js +65 -0
- package/esm2015/lib/modules/autocomplete/autocomplete.module.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-default-search-function-options.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-default-search-function-options.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-input-text-change.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-input-text-change.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-message-type.js +15 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-message-type.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-message.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-message.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-args.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-args.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-function.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-function.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-async-result.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-filter.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-filter.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-response.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function-response.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-search-function.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-selection-change.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-selection-change.js.map +1 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-show-more-args.js +2 -0
- package/esm2015/lib/modules/autocomplete/types/autocomplete-show-more-args.js.map +1 -0
- package/esm2015/{modules → lib/modules}/country-field/country-field.component.js +5 -2
- package/esm2015/lib/modules/country-field/country-field.component.js.map +1 -0
- package/esm2015/lib/modules/country-field/country-field.module.js +49 -0
- package/esm2015/lib/modules/country-field/country-field.module.js.map +1 -0
- package/esm2015/lib/modules/country-field/types/country.js +2 -0
- package/esm2015/lib/modules/country-field/types/country.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup-adapter.service.js +21 -0
- package/esm2015/lib/modules/lookup/lookup-adapter.service.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup-autocomplete-adapter.js +72 -0
- package/esm2015/lib/modules/lookup/lookup-autocomplete-adapter.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup-item-selected.pipe.js +16 -0
- package/esm2015/lib/modules/lookup/lookup-item-selected.pipe.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup-show-more-async-modal.component.js +186 -0
- package/esm2015/lib/modules/lookup/lookup-show-more-async-modal.component.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup-show-more-modal.component.js +258 -0
- package/esm2015/lib/modules/lookup/lookup-show-more-modal.component.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup.component.js +608 -0
- package/esm2015/lib/modules/lookup/lookup.component.js.map +1 -0
- package/esm2015/lib/modules/lookup/lookup.module.js +94 -0
- package/esm2015/lib/modules/lookup/lookup.module.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-add-click-callback-args.js +2 -0
- package/esm2015/lib/modules/lookup/types/lookup-add-click-callback-args.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-add-click-event-args.js +2 -0
- package/esm2015/lib/modules/lookup/types/lookup-add-click-event-args.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-select-mode-type.js +2 -0
- package/esm2015/lib/modules/lookup/types/lookup-select-mode-type.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-select-mode.js +16 -0
- package/esm2015/lib/modules/lookup/types/lookup-select-mode.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-config.js +2 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-config.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker-context.js +7 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker-context.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker.js +2 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-custom-picker.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.js +7 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-config.js +2 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-config.js.map +1 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-context.js +7 -0
- package/esm2015/lib/modules/lookup/types/lookup-show-more-native-picker-context.js.map +1 -0
- package/esm2015/lib/modules/search/search-adapter.service.js +45 -0
- package/esm2015/lib/modules/search/search-adapter.service.js.map +1 -0
- package/esm2015/lib/modules/search/search.component.js +260 -0
- package/esm2015/lib/modules/search/search.component.js.map +1 -0
- package/esm2015/lib/modules/search/search.module.js +46 -0
- package/esm2015/lib/modules/search/search.module.js.map +1 -0
- package/esm2015/lib/modules/shared/sky-lookup-resources.module.js +72 -0
- package/esm2015/lib/modules/shared/sky-lookup-resources.module.js.map +1 -0
- package/esm2015/lib/modules/shared/sky-lookup-string-utils.js +8 -0
- package/esm2015/lib/modules/shared/sky-lookup-string-utils.js.map +1 -0
- package/esm2015/lib/polyfills.js +30 -0
- package/esm2015/lib/polyfills.js.map +1 -0
- package/esm2015/skyux-lookup.js +2 -2
- package/esm2015/skyux-lookup.js.map +1 -0
- package/esm2015/testing/country-field/country-field-fixture.js +1 -1
- package/esm2015/testing/country-field/country-field-fixture.js.map +1 -0
- package/esm2015/testing/country-field/country-field-testing.module.js +1 -1
- package/esm2015/testing/country-field/country-field-testing.module.js.map +1 -0
- package/esm2015/testing/public-api.js +1 -1
- package/esm2015/testing/public-api.js.map +1 -0
- package/esm2015/testing/search/search-fixture.js +1 -1
- package/esm2015/testing/search/search-fixture.js.map +1 -0
- package/esm2015/testing/search/search-testing.module.js +1 -1
- package/esm2015/testing/search/search-testing.module.js.map +1 -0
- package/esm2015/testing/skyux-lookup-testing.js +1 -1
- package/esm2015/testing/skyux-lookup-testing.js.map +1 -0
- package/fesm2015/skyux-lookup-testing.js.map +1 -1
- package/fesm2015/skyux-lookup.js +2 -2
- package/fesm2015/skyux-lookup.js.map +1 -1
- package/index.d.ts +27 -0
- package/{modules → lib/modules}/autocomplete/autocomplete-adapter.service.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/autocomplete-default-search-function.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/autocomplete-input.directive.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/autocomplete-search-async-disabled.pipe.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/autocomplete.component.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/autocomplete.module.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-default-search-function-options.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-input-text-change.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-message-type.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-message.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-args.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-function.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-result-display-type.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-async-result.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function-filter.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function-response.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-search-function.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-selection-change.d.ts +0 -0
- package/{modules → lib/modules}/autocomplete/types/autocomplete-show-more-args.d.ts +0 -0
- package/{modules → lib/modules}/country-field/country-field.component.d.ts +0 -0
- package/{modules → lib/modules}/country-field/country-field.module.d.ts +0 -0
- package/{modules → lib/modules}/country-field/types/country.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup-adapter.service.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup-autocomplete-adapter.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup-item-selected.pipe.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup-show-more-async-modal.component.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup-show-more-modal.component.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup.component.d.ts +0 -0
- package/{modules → lib/modules}/lookup/lookup.module.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-add-click-callback-args.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-add-click-event-args.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-select-mode-type.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-select-mode.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-show-more-config.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-show-more-custom-picker-context.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-show-more-custom-picker.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-async-context.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-config.d.ts +0 -0
- package/{modules → lib/modules}/lookup/types/lookup-show-more-native-picker-context.d.ts +0 -0
- package/{modules → lib/modules}/search/search-adapter.service.d.ts +0 -0
- package/{modules → lib/modules}/search/search.component.d.ts +0 -0
- package/{modules → lib/modules}/search/search.module.d.ts +0 -0
- package/{modules → lib/modules}/shared/sky-lookup-resources.module.d.ts +0 -0
- package/{modules → lib/modules}/shared/sky-lookup-string-utils.d.ts +0 -0
- package/{polyfills.d.ts → lib/polyfills.d.ts} +0 -0
- package/package.json +23 -9
- package/skyux-lookup.d.ts +1 -1
- package/LICENSE +0 -21
- package/esm2015/modules/autocomplete/autocomplete-adapter.service.js +0 -61
- package/esm2015/modules/autocomplete/autocomplete-default-search-function.js +0 -39
- package/esm2015/modules/autocomplete/autocomplete-input.directive.js +0 -220
- package/esm2015/modules/autocomplete/autocomplete-search-async-disabled.pipe.js +0 -19
- package/esm2015/modules/autocomplete/autocomplete.component.js +0 -731
- package/esm2015/modules/autocomplete/autocomplete.module.js +0 -65
- package/esm2015/modules/autocomplete/types/autocomplete-default-search-function-options.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-input-text-change.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-message-type.js +0 -15
- package/esm2015/modules/autocomplete/types/autocomplete-message.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-async-args.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-async-function.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-async-result-display-type.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-async-result.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-function-filter.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-function-response.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-search-function.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-selection-change.js +0 -2
- package/esm2015/modules/autocomplete/types/autocomplete-show-more-args.js +0 -2
- package/esm2015/modules/country-field/country-field.module.js +0 -49
- package/esm2015/modules/country-field/types/country.js +0 -2
- package/esm2015/modules/lookup/lookup-adapter.service.js +0 -21
- package/esm2015/modules/lookup/lookup-autocomplete-adapter.js +0 -72
- package/esm2015/modules/lookup/lookup-item-selected.pipe.js +0 -16
- package/esm2015/modules/lookup/lookup-show-more-async-modal.component.js +0 -184
- package/esm2015/modules/lookup/lookup-show-more-modal.component.js +0 -256
- package/esm2015/modules/lookup/lookup.component.js +0 -602
- package/esm2015/modules/lookup/lookup.module.js +0 -94
- package/esm2015/modules/lookup/types/lookup-add-click-callback-args.js +0 -2
- package/esm2015/modules/lookup/types/lookup-add-click-event-args.js +0 -2
- package/esm2015/modules/lookup/types/lookup-select-mode-type.js +0 -2
- package/esm2015/modules/lookup/types/lookup-select-mode.js +0 -16
- package/esm2015/modules/lookup/types/lookup-show-more-config.js +0 -2
- package/esm2015/modules/lookup/types/lookup-show-more-custom-picker-context.js +0 -7
- package/esm2015/modules/lookup/types/lookup-show-more-custom-picker.js +0 -2
- package/esm2015/modules/lookup/types/lookup-show-more-native-picker-async-context.js +0 -7
- package/esm2015/modules/lookup/types/lookup-show-more-native-picker-config.js +0 -2
- package/esm2015/modules/lookup/types/lookup-show-more-native-picker-context.js +0 -7
- package/esm2015/modules/search/search-adapter.service.js +0 -45
- package/esm2015/modules/search/search.component.js +0 -260
- package/esm2015/modules/search/search.module.js +0 -46
- package/esm2015/modules/shared/sky-lookup-resources.module.js +0 -72
- package/esm2015/modules/shared/sky-lookup-string-utils.js +0 -8
- package/esm2015/polyfills.js +0 -30
- package/esm2015/public-api.js +0 -32
- package/public-api.d.ts +0 -27
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/lookup/lookup.component.ts","../../../../../../../../libs/components/lookup/src/lib/modules/lookup/lookup.component.html"],"names":[],"mappings":"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","sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\n\nimport { fromEvent as observableFromEvent, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyAppWindowRef } from '@skyux/core';\nimport { SkyInputBoxHostService } from '@skyux/forms';\nimport { SkyLibResourcesService } from '@skyux/i18n';\nimport {\n SkyToken,\n SkyTokensMessage,\n SkyTokensMessageType,\n} from '@skyux/indicators';\nimport { SkyModalInstance, SkyModalService } from '@skyux/modals';\nimport { SkyThemeService } from '@skyux/theme';\n\nimport { SkyAutocompleteMessage } from '../autocomplete/types/autocomplete-message';\nimport { SkyAutocompleteMessageType } from '../autocomplete/types/autocomplete-message-type';\nimport { SkyAutocompleteSelectionChange } from '../autocomplete/types/autocomplete-selection-change';\nimport { SkyAutocompleteShowMoreArgs } from '../autocomplete/types/autocomplete-show-more-args';\nimport { SkyAutocompleteInputDirective } from '../autocomplete/autocomplete-input.directive';\nimport { SkyLookupAutocompleteAdapter } from './lookup-autocomplete-adapter';\nimport { SkyLookupAdapterService } from './lookup-adapter.service';\nimport { SkyLookupShowMoreModalComponent } from './lookup-show-more-modal.component';\nimport { SkyLookupAddCallbackArgs } from './types/lookup-add-click-callback-args';\nimport { SkyLookupAddClickEventArgs } from './types/lookup-add-click-event-args';\nimport { SkyLookupSelectModeType } from './types/lookup-select-mode-type';\nimport { SkyLookupShowMoreConfig } from './types/lookup-show-more-config';\nimport { SkyLookupShowMoreNativePickerContext } from './types/lookup-show-more-native-picker-context';\nimport { SkyLookupShowMoreAsyncModalComponent } from './lookup-show-more-async-modal.component';\nimport { SkyLookupShowMoreNativePickerAsyncContext } from './types/lookup-show-more-native-picker-async-context';\nimport { SkyAutocompleteSearchAsyncArgs } from '../autocomplete/types/autocomplete-search-async-args';\n\n@Component({\n selector: 'sky-lookup',\n templateUrl: './lookup.component.html',\n styleUrls: ['./lookup.component.scss'],\n providers: [SkyLookupAdapterService],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyLookupComponent\n extends SkyLookupAutocompleteAdapter\n implements OnInit, AfterViewInit, OnDestroy, ControlValueAccessor\n{\n /**\n * Specifies an ARIA label for the typeahead search input\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * If the input includes a visible label, use `ariaLabelledBy` instead.\n */\n @Input()\n public ariaLabel: string;\n\n /**\n * Specifies the HTML element ID (without the leading `#`) of the element that labels\n * the typeahead search input. This sets the input's `aria-labelledby` attribute\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * If the input does not include a visible label, use `ariaLabel` instead.\n */\n @Input()\n public ariaLabelledBy: string;\n\n /**\n * Specifies the value for the `autocomplete` attribute on the form input.\n * @default \"off\"\n */\n @Input()\n public autocompleteAttribute: string;\n\n /**\n * Specifies a data source for the lookup component to search when users\n * enter text. You can specify static data such as an array of objects, or\n * you can pull data from a database.\n * @default []\n */\n @Input()\n public set data(value: any[]) {\n this._data = value;\n\n if (this.openNativePicker && this.searchAsync.observers.length === 0) {\n this.openNativePicker.componentInstance.updateItemData(value);\n }\n }\n\n public get data(): any[] {\n return this._data;\n }\n\n /**\n * Indicates whether to disable the lookup field.\n */\n @Input()\n public disabled = false;\n\n /**\n * Indicates whether to enable users to open a picker where they can view all options.\n */\n @Input()\n public enableShowMore: boolean = false;\n\n /**\n * Specifies placeholder text to display in the lookup field.\n */\n @Input()\n public placeholderText: string;\n\n /**\n * Specifies an object property that represents the object's unique identifier.\n * Specifying this property enables token animations and more efficient rendering.\n */\n @Input()\n public idProperty: string;\n\n /**\n * Indicates whether to display a button that lets users add options to the list.\n */\n @Input()\n public showAddButton: boolean = false;\n\n /**\n * Specifies configuration options for the picker that displays all options.\n */\n @Input()\n public showMoreConfig: SkyLookupShowMoreConfig;\n\n /**\n * Specifies whether users can select one option or multiple options.\n * @default \"mulitple\"\n */\n @Input()\n public set selectMode(value: SkyLookupSelectModeType) {\n let multipleToSingle: boolean =\n value === 'single' && this.selectMode === 'multiple';\n\n this._selectMode = value;\n this.updateForSelectMode();\n\n if (multipleToSingle) {\n if (this.value && this.value.length > 1) {\n // The `setTimeout` is needed to avoid a `ExpressionChangedAfterItHasBeenCheckedError` error in template forms.\n setTimeout(() => {\n this.writeValue([this.value[0]]);\n this.changeDetector.detectChanges();\n });\n }\n }\n }\n\n public get selectMode(): SkyLookupSelectModeType {\n return this._selectMode || 'multiple';\n }\n\n /**\n * @internal\n */\n @Input()\n public wrapperClass?: string;\n\n /**\n * Fires when users select the button to add options to the list.\n */\n @Output()\n public addClick: EventEmitter<SkyLookupAddClickEventArgs> = new EventEmitter();\n\n public get tokens(): SkyToken[] {\n return this._tokens;\n }\n\n public set tokens(value: SkyToken[]) {\n // Collapse the tokens into a single token if the user has selected many options.\n if (this.enableShowMore && this.value.length > 5) {\n this.resourcesService\n .getString('skyux_lookup_tokens_summary', this.value.length.toString())\n .pipe(take(1))\n .subscribe((label) => {\n this._tokens = [\n {\n value: { [this.descriptorProperty]: label },\n },\n ];\n this.changeDetector.markForCheck();\n });\n } else {\n this._tokens = value;\n this.changeDetector.markForCheck();\n }\n }\n\n public get value(): any[] {\n return this._value ? this._value : [];\n }\n\n public set value(newValue: any[]) {\n this._value = newValue;\n\n if (!this.openNativePicker) {\n this.tokens = this.parseTokens(newValue);\n }\n\n this.onChange(this._value);\n this.onTouched();\n }\n\n public autocompleteController = new Subject<SkyAutocompleteMessage>();\n public isInputFocused = false;\n public tokensController = new Subject<SkyTokensMessage>();\n\n @ViewChild(SkyAutocompleteInputDirective, {\n read: SkyAutocompleteInputDirective,\n static: false,\n })\n private set autocompleteInputDirective(value: SkyAutocompleteInputDirective) {\n this._autocompleteInputDirective = value;\n this.updateForSelectMode();\n }\n\n private get autocompleteInputDirective(): SkyAutocompleteInputDirective {\n return this._autocompleteInputDirective;\n }\n\n @ViewChild('showMoreButtonTemplateRef', {\n read: TemplateRef,\n static: true,\n })\n private showMoreButtonTemplateRef: TemplateRef<any>;\n\n @ViewChild('inputTemplateRef', {\n read: TemplateRef,\n static: true,\n })\n private inputTemplateRef: TemplateRef<any>;\n\n @ViewChild('lookupWrapper', {\n read: ElementRef,\n })\n private lookupWrapperRef: ElementRef;\n\n @ViewChild('searchIconTemplateRef', {\n read: TemplateRef,\n static: true,\n })\n private searchIconTemplateRef: TemplateRef<any>;\n\n private ngUnsubscribe = new Subject();\n private idle = new Subject();\n private markForTokenFocusOnKeyUp = false;\n private openNativePicker: SkyModalInstance;\n\n private _autocompleteInputDirective: SkyAutocompleteInputDirective;\n private _data: any[];\n private _selectMode: SkyLookupSelectModeType;\n private _tokens: SkyToken[];\n private _value: any[];\n\n constructor(\n private changeDetector: ChangeDetectorRef,\n private elementRef: ElementRef,\n private windowRef: SkyAppWindowRef,\n @Self() @Optional() ngControl: NgControl,\n private adapter: SkyLookupAdapterService,\n private modalService: SkyModalService,\n private resourcesService: SkyLibResourcesService,\n @Optional() public inputBoxHostSvc?: SkyInputBoxHostService,\n @Optional() public themeSvc?: SkyThemeService\n ) {\n super();\n ngControl.valueAccessor = this;\n }\n\n public ngOnInit(): void {\n if (this.inputBoxHostSvc) {\n this.inputBoxHostSvc.populate({\n inputTemplate: this.inputTemplateRef,\n buttonsTemplate: this.enableShowMore\n ? this.showMoreButtonTemplateRef\n : undefined,\n iconsInsetTemplate: this.enableShowMore\n ? undefined\n : this.searchIconTemplateRef,\n });\n }\n\n /* istanbul ignore else */\n if (this.themeSvc) {\n // This is required for the autocomplete directive to be set after elements\n // are rearranged when switching themes.\n this.themeSvc.settingsChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n }\n\n public ngAfterViewInit(): void {\n if (!this.disabled) {\n this.addEventListeners();\n }\n }\n\n public ngOnDestroy(): void {\n this.removeEventListeners();\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.tokensController.complete();\n }\n\n public addButtonClicked(): void {\n this.addClick.emit({\n itemAdded: (args: SkyLookupAddCallbackArgs) =>\n this.onAddButtonComplete(args),\n });\n }\n\n public onAutocompleteSelectionChange(\n change: SkyAutocompleteSelectionChange\n ): void {\n /* istanbul ignore else */\n if (change.selectedItem) {\n this.addToSelected(change.selectedItem);\n } else if (this.selectMode === 'single') {\n this.writeValue([]);\n }\n }\n\n public onAutocompleteBlur(): void {\n this.onTouched();\n }\n\n public onTokensChange(change: SkyToken[]): void {\n if (!change) {\n return;\n }\n\n if (this.tokens !== change) {\n if (change.length === 0) {\n this.focusInput();\n }\n\n // NOTE: We do this here instead of just using the `value` setter because we need to use the\n // set of tokens returned here for the purposes of setting focus (see `onTokensKeyUp`).\n this._value = change.map((token) => {\n return token.value;\n });\n this.tokens = change;\n\n this.sendAutocompleteMessage(\n SkyAutocompleteMessageType.RepositionDropdown\n );\n this.onChange(this._value);\n this.onTouched();\n }\n }\n\n public onTokensFocusIndexOverRange(): void {\n this.windowRef.nativeWindow.setTimeout(() => {\n this.focusInput();\n });\n }\n\n public onTokensKeyUp(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (this.selectMode !== 'single') {\n /* tslint:disable-next-line:switch-default */\n switch (event.key) {\n case 'Backspace':\n this.sendTokensMessage(SkyTokensMessageType.RemoveActiveToken);\n this.sendTokensMessage(SkyTokensMessageType.FocusPreviousToken);\n event.preventDefault();\n break;\n\n case 'Del':\n case 'Delete':\n this.sendTokensMessage(SkyTokensMessageType.RemoveActiveToken);\n this.windowRef.nativeWindow.setTimeout(() => {\n this.sendTokensMessage(SkyTokensMessageType.FocusActiveToken);\n });\n event.preventDefault();\n break;\n }\n }\n }\n\n public writeValue(value: any[]): void {\n this.value = value ? value : [];\n this.updateForSelectMode();\n }\n\n // Angular automatically constructs these methods.\n /* istanbul ignore next */\n public onChange = (value: any[]) => {};\n /* istanbul ignore next */\n public onTouched = () => {};\n\n public registerOnChange(fn: (value: any) => void) {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n // Allows Angular to disable the input.\n public setDisabledState(disabled: boolean): void {\n this.removeEventListeners();\n\n if (!disabled) {\n this.addEventListeners();\n }\n\n this.disabled = disabled;\n this.changeDetector.markForCheck();\n }\n\n public clearSearchText(): void {\n this.autocompleteInputDirective.value = undefined;\n this.autocompleteInputDirective.inputTextValue = undefined;\n }\n\n // Handles when to focus on the tokens.\n // Check for empty search text on keydown, before the escape key is fully pressed.\n // (Otherwise, a single character being escaped would register as empty on keyup.)\n // If empty on keydown, set a flag so that the appropriate action can be taken on keyup.\n public inputKeydown(event: KeyboardEvent, value: string): void {\n /* Sanity check as this should only be called when in multiple select mode */\n /* istanbul ignore else */\n if (this.selectMode !== 'single') {\n switch (event.key) {\n case 'Enter':\n event.preventDefault();\n break;\n case 'ArrowLeft':\n case 'Backspace':\n case 'Left':\n if (value) {\n this.markForTokenFocusOnKeyUp = false;\n } else {\n this.markForTokenFocusOnKeyUp = true;\n }\n break;\n default:\n }\n }\n }\n\n public inputKeyup(event: KeyboardEvent): void {\n /* Sanity check as this should only be called when in multiple select mode */\n /* istanbul ignore else */\n if (this.selectMode !== 'single') {\n switch (event.key) {\n case 'Esc':\n case 'Escape':\n this.clearSearchText();\n event.preventDefault();\n break;\n case 'ArrowLeft':\n case 'Backspace':\n case 'Left':\n /* istanbul ignore else */\n if (this.markForTokenFocusOnKeyUp) {\n this.sendTokensMessage(SkyTokensMessageType.FocusLastToken);\n event.preventDefault();\n }\n break;\n default:\n }\n\n event.stopPropagation();\n }\n }\n\n public onSearchButtonClick(): void {\n /*istanbul ignore next*/\n if (this.disabled) {\n return;\n }\n this.sendAutocompleteMessage(SkyAutocompleteMessageType.CloseDropdown);\n let isValueInTextBox = false;\n if (this.selectMode === 'single') {\n isValueInTextBox =\n this.autocompleteInputDirective.inputTextValue ===\n this.autocompleteInputDirective.value[this.descriptorProperty];\n }\n\n this.openPicker(\n isValueInTextBox ? '' : this.autocompleteInputDirective.inputTextValue\n );\n this.autocompleteInputDirective.restoreInputTextValueToPreviousState();\n }\n\n public onShowMoreClick(event: SkyAutocompleteShowMoreArgs): void {\n /* Sanity check */\n /* istanbul ignore else*/\n if (event) {\n this.openPicker(event.inputValue);\n }\n }\n\n private createNativePickerInstance(initialSearch: string): SkyModalInstance {\n let initialValue = this.value;\n const modalConfig = this.showMoreConfig?.nativePickerConfig || {};\n\n if (!modalConfig.itemTemplate) {\n modalConfig.itemTemplate = this.searchResultTemplate;\n }\n\n let contextProviderType:\n | typeof SkyLookupShowMoreNativePickerContext\n | typeof SkyLookupShowMoreNativePickerAsyncContext;\n\n let contextProviderValue:\n | SkyLookupShowMoreNativePickerContext\n | SkyLookupShowMoreNativePickerAsyncContext;\n\n let modalComponentType:\n | typeof SkyLookupShowMoreModalComponent\n | typeof SkyLookupShowMoreAsyncModalComponent;\n\n if (this.searchAsync.observers.length > 0) {\n contextProviderType = SkyLookupShowMoreNativePickerAsyncContext;\n modalComponentType = SkyLookupShowMoreAsyncModalComponent;\n\n contextProviderValue = new SkyLookupShowMoreNativePickerAsyncContext();\n contextProviderValue.idProperty = this.idProperty;\n contextProviderValue.searchAsync = (args) => {\n this.searchAsync.emit(args);\n return args.result;\n };\n } else {\n contextProviderType = SkyLookupShowMoreNativePickerContext;\n modalComponentType = SkyLookupShowMoreModalComponent;\n\n contextProviderValue = new SkyLookupShowMoreNativePickerContext();\n contextProviderValue.items = this.data;\n contextProviderValue.search = this.search;\n }\n\n contextProviderValue.descriptorProperty = this.descriptorProperty;\n contextProviderValue.initialSearch = initialSearch;\n contextProviderValue.initialValue = initialValue;\n contextProviderValue.selectMode = this.selectMode;\n contextProviderValue.showAddButton = this.showAddButton;\n contextProviderValue.userConfig = modalConfig;\n\n return this.modalService.open(modalComponentType, {\n providers: [\n {\n provide: contextProviderType,\n useValue: contextProviderValue,\n },\n ],\n wrapperClass: this.wrapperClass,\n });\n }\n\n public openPicker(initialSearch: string): void {\n if (this.showMoreConfig?.customPicker) {\n this.showMoreConfig.customPicker.open({\n items: this.data,\n initialSearch: initialSearch,\n initialValue: this.value,\n });\n } else {\n let initialValue = this.value;\n\n this.openNativePicker = this.createNativePickerInstance(initialSearch);\n\n this.openNativePicker.componentInstance.addClick.subscribe(() => {\n this.addButtonClicked();\n });\n\n this.openNativePicker.closed.subscribe((closeArgs) => {\n this.openNativePicker = undefined;\n if (closeArgs.reason === 'save') {\n let selectedItems: any[] = [];\n\n if (this.searchAsync.observers.length > 0) {\n selectedItems = closeArgs.data.map((item) => item.itemData);\n } else {\n this.data.forEach((item: any, dataIndex: number) => {\n if (\n closeArgs.data.some((savedItem: any) => {\n return savedItem.index === dataIndex;\n })\n ) {\n selectedItems.push(item);\n }\n });\n }\n\n this.writeValue(selectedItems);\n } else {\n this.writeValue(initialValue);\n }\n\n this.focusInput();\n this.changeDetector.markForCheck();\n });\n }\n }\n\n public onSearchAsync(args: SkyAutocompleteSearchAsyncArgs): void {\n this.searchAsync.emit(args);\n }\n\n private addToSelected(item: any): void {\n let selectedItems: any[];\n\n if (this.selectMode === 'single') {\n selectedItems = [item];\n } else {\n selectedItems = this.value;\n\n // If items have a unique identifier, don't allow the same item to be added twice.\n if (\n !this.idProperty ||\n !this.value.some(\n (existingItem) =>\n existingItem[this.idProperty] === item[this.idProperty]\n )\n ) {\n selectedItems.push(item);\n }\n\n this.clearSearchText();\n }\n\n this.writeValue(selectedItems);\n }\n\n private addEventListeners(): void {\n this.idle = new Subject();\n this.focusInputOnHostClick();\n }\n\n private removeEventListeners(): void {\n this.idle.next();\n this.idle.complete();\n }\n\n private focusInputOnHostClick(): void {\n let hostElement = !this.inputBoxHostSvc\n ? this.elementRef.nativeElement\n : this.lookupWrapperRef.nativeElement;\n const documentObj = this.windowRef.nativeWindow.document;\n\n // Handles focusing the input when the host is clicked.\n // The input should NOT be focused if other elements (tokens, etc.)\n // are currently focused or being tabbed through.\n\n observableFromEvent(documentObj, 'mousedown')\n .pipe(takeUntil(this.idle))\n .subscribe((event: MouseEvent) => {\n hostElement = !this.inputBoxHostSvc\n ? this.elementRef.nativeElement\n : this.lookupWrapperRef.nativeElement;\n this.isInputFocused = hostElement.contains(event.target);\n\n this.changeDetector.markForCheck();\n });\n\n observableFromEvent(documentObj, 'focusin')\n .pipe(takeUntil(this.idle))\n .subscribe((event: KeyboardEvent) => {\n hostElement = !this.inputBoxHostSvc\n ? this.elementRef.nativeElement\n : this.lookupWrapperRef.nativeElement;\n this.isInputFocused = hostElement.contains(event.target);\n\n this.changeDetector.markForCheck();\n });\n\n observableFromEvent(hostElement, 'mouseup')\n .pipe(takeUntil(this.idle))\n .subscribe(() => {\n const classList = documentObj.activeElement.classList;\n if (!classList || !classList.contains('sky-token')) {\n this.focusInput();\n }\n });\n }\n\n private focusInput(): void {\n this.adapter.focusInput(this.lookupWrapperRef);\n }\n\n private onAddButtonComplete(args: SkyLookupAddCallbackArgs) {\n if (args.data) {\n this.data = args.data;\n }\n\n if (this.data.indexOf(args.item) >= 0) {\n if (this.openNativePicker) {\n (<SkyLookupShowMoreModalComponent>(\n this.openNativePicker.componentInstance\n )).onItemSelect(true, { value: args.item, selected: false });\n } else {\n let newValue = this.value;\n if (this.selectMode === 'multiple') {\n newValue = this.value.concat(args.item);\n } else {\n newValue = [args.item];\n }\n this.writeValue(newValue);\n }\n }\n }\n\n private parseTokens(data: any[]): SkyToken[] {\n return data.map((item: any) => {\n return {\n value: item,\n };\n });\n }\n\n private sendAutocompleteMessage(type: SkyAutocompleteMessageType): void {\n this.autocompleteController.next({ type });\n }\n\n private sendTokensMessage(type: SkyTokensMessageType): void {\n this.tokensController.next({ type });\n }\n\n private updateForSelectMode(): void {\n if (this.autocompleteInputDirective) {\n if (this.selectMode === 'single') {\n this.autocompleteInputDirective.value = this.value && this.value[0];\n } else {\n this.clearSearchText();\n }\n }\n }\n}\n","<ng-container *ngIf=\"!inputBoxHostSvc\">\n <ng-container *ngTemplateOutlet=\"inputTemplateRef\"></ng-container>\n</ng-container>\n\n<ng-template #inputTemplateRef>\n <div\n class=\"sky-lookup\"\n [ngClass]=\"{\n 'sky-lookup-focused': isInputFocused,\n 'sky-lookup-disabled': disabled,\n 'sky-lookup-single': selectMode === 'single'\n }\"\n #lookupWrapper\n >\n <sky-autocomplete\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [data]=\"data\"\n [debounceTime]=\"debounceTime\"\n [descriptorProperty]=\"descriptorProperty\"\n [enableShowMore]=\"enableShowMore\"\n [messageStream]=\"autocompleteController\"\n [propertiesToSearch]=\"propertiesToSearch\"\n [search]=\"search\"\n [searchAsyncDisabled]=\"searchAsync.observers.length === 0\"\n [searchFilters]=\"searchFilters\"\n [searchResultsLimit]=\"searchResultsLimit\"\n [searchResultTemplate]=\"searchResultTemplate\"\n [searchTextMinimumCharacters]=\"searchTextMinimumCharacters\"\n [showAddButton]=\"showAddButton\"\n [wrapperClass]=\"wrapperClass\"\n (addClick)=\"addButtonClicked()\"\n (searchAsync)=\"onSearchAsync($event)\"\n (selectionChange)=\"onAutocompleteSelectionChange($event)\"\n (showMoreClick)=\"onShowMoreClick($event)\"\n >\n <div class=\"sky-lookup-search-flex-wrapper\">\n <div\n class=\"sky-lookup-search\"\n [ngClass]=\"{\n 'sky-field-status-active': isInputFocused && !disabled\n }\"\n >\n <sky-tokens\n *ngIf=\"selectMode === 'multiple'\"\n class=\"sky-lookup-tokens\"\n [disabled]=\"disabled\"\n [displayWith]=\"descriptorProperty\"\n [focusable]=\"false\"\n [messageStream]=\"tokensController\"\n [trackWith]=\"idProperty\"\n [tokens]=\"tokens\"\n (keyup)=\"onTokensKeyUp($event)\"\n (tokensChange)=\"onTokensChange($event)\"\n (tokenSelected)=\"enableShowMore ? openPicker(undefined) : undefined\"\n (focusIndexOverRange)=\"onTokensFocusIndexOverRange()\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n (keydown)=\"inputKeydown($event, $event.target.value)\"\n (keyup)=\"inputKeyup($event)\"\n ></textarea>\n </sky-tokens>\n <div\n *ngIf=\"selectMode === 'single'\"\n class=\"sky-lookup-single-control\"\n >\n <textarea\n class=\"sky-form-control sky-lookup-input\"\n rows=\"1\"\n skyAutocomplete\n wrap=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.placeholder]=\"placeholderText\"\n [autocompleteAttribute]=\"autocompleteAttribute\"\n [disabled]=\"disabled\"\n (blur)=\"onAutocompleteBlur()\"\n ></textarea>\n </div>\n </div>\n <ng-container *ngIf=\"!inputBoxHostSvc && enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"showMoreButtonTemplateRef\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!inputBoxHostSvc && !enableShowMore\">\n <ng-container\n *ngTemplateOutlet=\"searchIconTemplateRef\"\n ></ng-container>\n </ng-container>\n </div>\n </sky-autocomplete>\n </div>\n</ng-template>\n\n<ng-template #showMoreButtonTemplateRef>\n <div class=\"sky-input-group-btn\">\n <button\n class=\"sky-btn sky-btn-default\"\n [disabled]=\"disabled\"\n [ngClass]=\"{ 'sky-btn-disabled': disabled }\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_lookup_search_button_show_more' | skyLibResources\n \"\n (click)=\"onSearchButtonClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"search\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n ></sky-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #searchIconTemplateRef>\n <div\n class=\"sky-input-group-icon sky-input-box-icon-inset\"\n [ngClass]=\"{ 'sky-lookup-disabled': disabled }\"\n >\n <sky-icon\n *skyThemeIf=\"'default'\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n iconType=\"skyux\"\n icon=\"search\"\n [attr.aria-label]=\"'skyux_lookup_search_icon' | skyLibResources\"\n ></sky-icon>\n </div>\n</ng-template>\n"]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { SkyViewkeeperModule } from '@skyux/core';
|
|
5
|
+
import { SkyCheckboxModule } from '@skyux/forms';
|
|
6
|
+
import { SkyI18nModule } from '@skyux/i18n';
|
|
7
|
+
import { SkyIconModule, SkyTokensModule, SkyWaitModule, } from '@skyux/indicators';
|
|
8
|
+
import { SkyToolbarModule } from '@skyux/layout';
|
|
9
|
+
import { SkyInfiniteScrollModule, SkyRepeaterModule } from '@skyux/lists';
|
|
10
|
+
import { SkyModalModule } from '@skyux/modals';
|
|
11
|
+
import { SkyThemeModule } from '@skyux/theme';
|
|
12
|
+
import { SkyLookupComponent } from './lookup.component';
|
|
13
|
+
import { SkyLookupShowMoreModalComponent } from './lookup-show-more-modal.component';
|
|
14
|
+
import { SkyAutocompleteModule } from '../autocomplete/autocomplete.module';
|
|
15
|
+
import { SkySearchModule } from '../search/search.module';
|
|
16
|
+
import { SkyLookupResourcesModule } from '../shared/sky-lookup-resources.module';
|
|
17
|
+
import { SkyLookupShowMoreAsyncModalComponent } from './lookup-show-more-async-modal.component';
|
|
18
|
+
import { SkyLookupItemSelectedPipe } from './lookup-item-selected.pipe';
|
|
19
|
+
import * as i0 from "@angular/core";
|
|
20
|
+
export class SkyLookupModule {
|
|
21
|
+
}
|
|
22
|
+
SkyLookupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
23
|
+
SkyLookupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupModule, declarations: [SkyLookupComponent,
|
|
24
|
+
SkyLookupItemSelectedPipe,
|
|
25
|
+
SkyLookupShowMoreAsyncModalComponent,
|
|
26
|
+
SkyLookupShowMoreModalComponent], imports: [CommonModule,
|
|
27
|
+
FormsModule,
|
|
28
|
+
SkyAutocompleteModule,
|
|
29
|
+
SkyCheckboxModule,
|
|
30
|
+
SkyIconModule,
|
|
31
|
+
SkyInfiniteScrollModule,
|
|
32
|
+
SkyI18nModule,
|
|
33
|
+
SkyLookupResourcesModule,
|
|
34
|
+
SkyModalModule,
|
|
35
|
+
SkyRepeaterModule,
|
|
36
|
+
SkySearchModule,
|
|
37
|
+
SkyThemeModule,
|
|
38
|
+
SkyTokensModule,
|
|
39
|
+
SkyToolbarModule,
|
|
40
|
+
SkyViewkeeperModule,
|
|
41
|
+
SkyWaitModule], exports: [SkyLookupComponent] });
|
|
42
|
+
SkyLookupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupModule, imports: [[
|
|
43
|
+
CommonModule,
|
|
44
|
+
FormsModule,
|
|
45
|
+
SkyAutocompleteModule,
|
|
46
|
+
SkyCheckboxModule,
|
|
47
|
+
SkyIconModule,
|
|
48
|
+
SkyInfiniteScrollModule,
|
|
49
|
+
SkyI18nModule,
|
|
50
|
+
SkyLookupResourcesModule,
|
|
51
|
+
SkyModalModule,
|
|
52
|
+
SkyRepeaterModule,
|
|
53
|
+
SkySearchModule,
|
|
54
|
+
SkyThemeModule,
|
|
55
|
+
SkyTokensModule,
|
|
56
|
+
SkyToolbarModule,
|
|
57
|
+
SkyViewkeeperModule,
|
|
58
|
+
SkyWaitModule,
|
|
59
|
+
]] });
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLookupModule, decorators: [{
|
|
61
|
+
type: NgModule,
|
|
62
|
+
args: [{
|
|
63
|
+
declarations: [
|
|
64
|
+
SkyLookupComponent,
|
|
65
|
+
SkyLookupItemSelectedPipe,
|
|
66
|
+
SkyLookupShowMoreAsyncModalComponent,
|
|
67
|
+
SkyLookupShowMoreModalComponent,
|
|
68
|
+
],
|
|
69
|
+
imports: [
|
|
70
|
+
CommonModule,
|
|
71
|
+
FormsModule,
|
|
72
|
+
SkyAutocompleteModule,
|
|
73
|
+
SkyCheckboxModule,
|
|
74
|
+
SkyIconModule,
|
|
75
|
+
SkyInfiniteScrollModule,
|
|
76
|
+
SkyI18nModule,
|
|
77
|
+
SkyLookupResourcesModule,
|
|
78
|
+
SkyModalModule,
|
|
79
|
+
SkyRepeaterModule,
|
|
80
|
+
SkySearchModule,
|
|
81
|
+
SkyThemeModule,
|
|
82
|
+
SkyTokensModule,
|
|
83
|
+
SkyToolbarModule,
|
|
84
|
+
SkyViewkeeperModule,
|
|
85
|
+
SkyWaitModule,
|
|
86
|
+
],
|
|
87
|
+
entryComponents: [
|
|
88
|
+
SkyLookupShowMoreAsyncModalComponent,
|
|
89
|
+
SkyLookupShowMoreModalComponent,
|
|
90
|
+
],
|
|
91
|
+
exports: [SkyLookupComponent],
|
|
92
|
+
}]
|
|
93
|
+
}] });
|
|
94
|
+
//# sourceMappingURL=lookup.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/lookup/lookup.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,aAAa,EACb,eAAe,EACf,aAAa,GACd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,oCAAoC,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;;AAiCxE,MAAM,OAAO,eAAe;;6GAAf,eAAe;8GAAf,eAAe,iBA7BxB,kBAAkB;QAClB,yBAAyB;QACzB,oCAAoC;QACpC,+BAA+B,aAG/B,YAAY;QACZ,WAAW;QACX,qBAAqB;QACrB,iBAAiB;QACjB,aAAa;QACb,uBAAuB;QACvB,aAAa;QACb,wBAAwB;QACxB,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,cAAc;QACd,eAAe;QACf,gBAAgB;QAChB,mBAAmB;QACnB,aAAa,aAML,kBAAkB;8GAEjB,eAAe,YAxBjB;YACP,YAAY;YACZ,WAAW;YACX,qBAAqB;YACrB,iBAAiB;YACjB,aAAa;YACb,uBAAuB;YACvB,aAAa;YACb,wBAAwB;YACxB,cAAc;YACd,iBAAiB;YACjB,eAAe;YACf,cAAc;YACd,eAAe;YACf,gBAAgB;YAChB,mBAAmB;YACnB,aAAa;SACd;4FAOU,eAAe;kBA/B3B,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,kBAAkB;wBAClB,yBAAyB;wBACzB,oCAAoC;wBACpC,+BAA+B;qBAChC;oBACD,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,qBAAqB;wBACrB,iBAAiB;wBACjB,aAAa;wBACb,uBAAuB;wBACvB,aAAa;wBACb,wBAAwB;wBACxB,cAAc;wBACd,iBAAiB;wBACjB,eAAe;wBACf,cAAc;wBACd,eAAe;wBACf,gBAAgB;wBAChB,mBAAmB;wBACnB,aAAa;qBACd;oBACD,eAAe,EAAE;wBACf,oCAAoC;wBACpC,+BAA+B;qBAChC;oBACD,OAAO,EAAE,CAAC,kBAAkB,CAAC;iBAC9B","sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { SkyViewkeeperModule } from '@skyux/core';\nimport { SkyCheckboxModule } from '@skyux/forms';\nimport { SkyI18nModule } from '@skyux/i18n';\nimport {\n SkyIconModule,\n SkyTokensModule,\n SkyWaitModule,\n} from '@skyux/indicators';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkyInfiniteScrollModule, SkyRepeaterModule } from '@skyux/lists';\nimport { SkyModalModule } from '@skyux/modals';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyLookupComponent } from './lookup.component';\nimport { SkyLookupShowMoreModalComponent } from './lookup-show-more-modal.component';\nimport { SkyAutocompleteModule } from '../autocomplete/autocomplete.module';\nimport { SkySearchModule } from '../search/search.module';\nimport { SkyLookupResourcesModule } from '../shared/sky-lookup-resources.module';\nimport { SkyLookupShowMoreAsyncModalComponent } from './lookup-show-more-async-modal.component';\nimport { SkyLookupItemSelectedPipe } from './lookup-item-selected.pipe';\n\n@NgModule({\n declarations: [\n SkyLookupComponent,\n SkyLookupItemSelectedPipe,\n SkyLookupShowMoreAsyncModalComponent,\n SkyLookupShowMoreModalComponent,\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyAutocompleteModule,\n SkyCheckboxModule,\n SkyIconModule,\n SkyInfiniteScrollModule,\n SkyI18nModule,\n SkyLookupResourcesModule,\n SkyModalModule,\n SkyRepeaterModule,\n SkySearchModule,\n SkyThemeModule,\n SkyTokensModule,\n SkyToolbarModule,\n SkyViewkeeperModule,\n SkyWaitModule,\n ],\n entryComponents: [\n SkyLookupShowMoreAsyncModalComponent,\n SkyLookupShowMoreModalComponent,\n ],\n exports: [SkyLookupComponent],\n})\nexport class SkyLookupModule {}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-add-click-callback-args.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-add-click-callback-args.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Specifies the information for the callback used when adding a new item to the lookup component.\n */\nexport interface SkyLookupAddCallbackArgs {\n /**\n * The new item which has been added to the data. This item will be automatically selected.\n */\n item: any;\n\n /**\n * The new state of the data source for the lookup component to search when users\n * enter text. If not specified, the component will use the current state of the lookup\n * component's `data` input; however, if this is not yet updated the new item will not be\n * automatically selected.\n */\n data?: any[];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-add-click-event-args.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-add-click-event-args.ts"],"names":[],"mappings":"","sourcesContent":["import { SkyLookupAddCallbackArgs } from './lookup-add-click-callback-args';\n\n/**\n * Specifies a callback function for the consumer to use to notify the lookup that a new item has been added.\n */\nexport interface SkyLookupAddClickEventArgs {\n /**\n * A callback function for the consumer to use to notify the lookup that a new item has been added.\n * @param args Specifies information about the item that was added.\n */\n itemAdded: (args: SkyLookupAddCallbackArgs) => void;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-select-mode-type.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-select-mode-type.ts"],"names":[],"mappings":"","sourcesContent":["export type SkyLookupSelectModeType = 'single' | 'multiple';\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @deprecated Use `SkyLookupSelectModeType` instead.
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export var SkyLookupSelectMode;
|
|
6
|
+
(function (SkyLookupSelectMode) {
|
|
7
|
+
/**
|
|
8
|
+
* Restricts users to a single selection.
|
|
9
|
+
*/
|
|
10
|
+
SkyLookupSelectMode["single"] = "single";
|
|
11
|
+
/**
|
|
12
|
+
* Allows users to select multiple items.
|
|
13
|
+
*/
|
|
14
|
+
SkyLookupSelectMode["multiple"] = "multiple";
|
|
15
|
+
})(SkyLookupSelectMode || (SkyLookupSelectMode = {}));
|
|
16
|
+
//# sourceMappingURL=lookup-select-mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-select-mode.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-select-mode.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,mBAUX;AAVD,WAAY,mBAAmB;IAC7B;;OAEG;IACH,wCAAiB,CAAA;IAEjB;;OAEG;IACH,4CAAqB,CAAA;AACvB,CAAC,EAVW,mBAAmB,KAAnB,mBAAmB,QAU9B","sourcesContent":["/**\n * @deprecated Use `SkyLookupSelectModeType` instead.\n * @internal\n */\nexport enum SkyLookupSelectMode {\n /**\n * Restricts users to a single selection.\n */\n single = 'single',\n\n /**\n * Allows users to select multiple items.\n */\n multiple = 'multiple',\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-show-more-config.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-show-more-config.ts"],"names":[],"mappings":"","sourcesContent":["import { SkyLookupShowMoreCustomPicker } from './lookup-show-more-custom-picker';\n\nimport { SkyLookupShowMoreNativePickerConfig } from './lookup-show-more-native-picker-config';\n\n/**\n * Specifies configuration options for the picker to display when users select the button\n * to view all options. You can use a native, out-of-the-box modal picker, or you can create\n * a custom picker. If you provide configuration options for both, the lookup component uses\n * the custom configuration.\n */\nexport interface SkyLookupShowMoreConfig {\n /**\n * Specifies a configuration object to display a custom picker.\n */\n customPicker?: SkyLookupShowMoreCustomPicker;\n\n /**\n * Specifies configuration options for the native picker.\n */\n nativePickerConfig?: SkyLookupShowMoreNativePickerConfig;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-show-more-custom-picker-context.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-show-more-custom-picker-context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,oCAAoC;CAahD","sourcesContent":["/**\n * Specifies configuration options to launch a custom picker when users select\n * the button to view all options.\n */\nexport class SkyLookupShowMoreCustomPickerContext {\n /**\n * Specifies the options that users can select in the custom picker.\n */\n public items: any[];\n /**\n * Specifies search text to filter the contents of the custom picker.\n */\n public initialSearch: string;\n /**\n * Specifies the current selections in the lookup field.\n */\n public initialValue: any;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-show-more-custom-picker.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-show-more-custom-picker.ts"],"names":[],"mappings":"","sourcesContent":["import { SkyLookupShowMoreCustomPickerContext } from './lookup-show-more-custom-picker-context';\n\n/**\n * Defines a custom picker to display when users select the button to view all options.\n */\nexport interface SkyLookupShowMoreCustomPicker {\n open: (pickerContext: SkyLookupShowMoreCustomPickerContext) => void;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-show-more-native-picker-async-context.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-show-more-native-picker-async-context.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,yCAAyC;CASrD","sourcesContent":["import { SkyAutocompleteSearchAsyncFunction } from '../../autocomplete/types/autocomplete-search-async-function';\nimport { SkyLookupSelectModeType } from './lookup-select-mode-type';\nimport { SkyLookupShowMoreNativePickerConfig } from './lookup-show-more-native-picker-config';\n\n/**\n * @internal\n * Context for the show more native picker. These values are provided by the lookup component.\n */\nexport class SkyLookupShowMoreNativePickerAsyncContext {\n public descriptorProperty: string;\n public idProperty: string;\n public initialSearch: string;\n public initialValue: unknown[];\n public searchAsync: SkyAutocompleteSearchAsyncFunction;\n public selectMode: SkyLookupSelectModeType;\n public showAddButton: boolean;\n public userConfig: SkyLookupShowMoreNativePickerConfig;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-show-more-native-picker-config.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-show-more-native-picker-config.ts"],"names":[],"mappings":"","sourcesContent":["import { TemplateRef } from '@angular/core';\n\n/**\n * Specifies configuration options to display the native picker when users select\n * the button to view all options.\n */\nexport interface SkyLookupShowMoreNativePickerConfig {\n /**\n * Specifies a template to format each option in the picker. The lookup component\n * injects values into the template as `item` variables that reference all the object\n * properties of the options. If you do not specify a template, the picker uses\n * the same template as the dropdown list.\n */\n itemTemplate?: TemplateRef<any>;\n\n /**\n * Specifies a title for the picker.\n * @default \"Select an option/Select options\"\n */\n title?: string;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup-show-more-native-picker-context.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/lookup/src/lib/modules/lookup/types/lookup-show-more-native-picker-context.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,MAAM,OAAO,oCAAoC;CAShD","sourcesContent":["import { SkyAutocompleteSearchFunction } from '../../autocomplete/types/autocomplete-search-function';\n\nimport { SkyLookupSelectModeType } from './lookup-select-mode-type';\n\nimport { SkyLookupShowMoreNativePickerConfig } from './lookup-show-more-native-picker-config';\n\n/**\n * @internal\n * Context for the show more native picker. These values are provided by the lookup component.\n */\nexport class SkyLookupShowMoreNativePickerContext {\n public items: any[];\n public descriptorProperty: string;\n public initialSearch: string;\n public initialValue: any[];\n public search: SkyAutocompleteSearchFunction;\n public selectMode: SkyLookupSelectModeType;\n public showAddButton: boolean;\n public userConfig: SkyLookupShowMoreNativePickerConfig;\n}\n"]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Injectable, Renderer2 } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export class SkySearchAdapterService {
|
|
7
|
+
constructor(renderer) {
|
|
8
|
+
this.renderer = renderer;
|
|
9
|
+
}
|
|
10
|
+
selectInput(searchEl) {
|
|
11
|
+
this.getInputEl(searchEl).select();
|
|
12
|
+
}
|
|
13
|
+
focusInput(searchEl) {
|
|
14
|
+
this.getInputEl(searchEl).focus();
|
|
15
|
+
}
|
|
16
|
+
startInputAnimation(searchEl) {
|
|
17
|
+
let buttonWidth = this.getSearchOpenButtonEl(searchEl).clientWidth;
|
|
18
|
+
let offsetWidth = this.getSearchContainerEl(searchEl).offsetLeft;
|
|
19
|
+
let minWidth = buttonWidth + offsetWidth;
|
|
20
|
+
this.getInputContainerEl(searchEl).style.minWidth =
|
|
21
|
+
minWidth.toString() + 'px';
|
|
22
|
+
this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', minWidth.toString() + 'px');
|
|
23
|
+
}
|
|
24
|
+
endInputAnimation(searchEl) {
|
|
25
|
+
this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', '');
|
|
26
|
+
}
|
|
27
|
+
getInputContainerEl(searchEl) {
|
|
28
|
+
return searchEl.nativeElement.querySelector('.sky-search-input-container');
|
|
29
|
+
}
|
|
30
|
+
getSearchOpenButtonEl(searchEl) {
|
|
31
|
+
return searchEl.nativeElement.querySelector('.sky-search-btn-open');
|
|
32
|
+
}
|
|
33
|
+
getSearchContainerEl(searchEl) {
|
|
34
|
+
return searchEl.nativeElement.querySelector('.sky-search-container');
|
|
35
|
+
}
|
|
36
|
+
getInputEl(searchEl) {
|
|
37
|
+
return searchEl.nativeElement.querySelector('input');
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
SkySearchAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchAdapterService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
41
|
+
SkySearchAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchAdapterService });
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkySearchAdapterService, decorators: [{
|
|
43
|
+
type: Injectable
|
|
44
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
|
|
45
|
+
//# sourceMappingURL=search-adapter.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-adapter.service.js","sourceRoot":"","sources":["../../../../../../../../libs/components/lookup/src/lib/modules/search/search-adapter.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;;AAElE;;GAEG;AAEH,MAAM,OAAO,uBAAuB;IAClC,YAAoB,QAAmB;QAAnB,aAAQ,GAAR,QAAQ,CAAW;IAAG,CAAC;IAEpC,WAAW,CAAC,QAAoB;QACrC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;IACrC,CAAC;IAEM,UAAU,CAAC,QAAoB;QACpC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IAEM,mBAAmB,CAAC,QAAoB;QAC7C,IAAI,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC;QACnE,IAAI,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC;QACjE,IAAI,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;QAEzC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,QAAQ;YAC/C,QAAQ,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC;QAE7B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACpB,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAClC,WAAW,EACX,QAAQ,CAAC,QAAQ,EAAE,GAAG,IAAI,CAC3B,CAAC;IACJ,CAAC;IAEM,iBAAiB,CAAC,QAAoB;QAC3C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEO,mBAAmB,CAAC,QAAoB;QAC9C,OAAO,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC;IAC7E,CAAC;IAEO,qBAAqB,CAAC,QAAoB;QAChD,OAAO,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAEO,oBAAoB,CAAC,QAAoB;QAC/C,OAAO,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;IACvE,CAAC;IAEO,UAAU,CAAC,QAAoB;QACrC,OAAO,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;;qHA5CU,uBAAuB;yHAAvB,uBAAuB;4FAAvB,uBAAuB;kBADnC,UAAU","sourcesContent":["import { ElementRef, Injectable, Renderer2 } from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkySearchAdapterService {\n constructor(private renderer: Renderer2) {}\n\n public selectInput(searchEl: ElementRef) {\n this.getInputEl(searchEl).select();\n }\n\n public focusInput(searchEl: ElementRef) {\n this.getInputEl(searchEl).focus();\n }\n\n public startInputAnimation(searchEl: ElementRef) {\n let buttonWidth = this.getSearchOpenButtonEl(searchEl).clientWidth;\n let offsetWidth = this.getSearchContainerEl(searchEl).offsetLeft;\n let minWidth = buttonWidth + offsetWidth;\n\n this.getInputContainerEl(searchEl).style.minWidth =\n minWidth.toString() + 'px';\n\n this.renderer.setStyle(\n this.getInputContainerEl(searchEl),\n 'min-width',\n minWidth.toString() + 'px'\n );\n }\n\n public endInputAnimation(searchEl: ElementRef) {\n this.renderer.setStyle(this.getInputContainerEl(searchEl), 'min-width', '');\n }\n\n private getInputContainerEl(searchEl: ElementRef) {\n return searchEl.nativeElement.querySelector('.sky-search-input-container');\n }\n\n private getSearchOpenButtonEl(searchEl: ElementRef) {\n return searchEl.nativeElement.querySelector('.sky-search-btn-open');\n }\n\n private getSearchContainerEl(searchEl: ElementRef) {\n return searchEl.nativeElement.querySelector('.sky-search-container');\n }\n\n private getInputEl(searchEl: ElementRef) {\n return searchEl.nativeElement.querySelector('input');\n }\n}\n"]}
|