{ "version": 3, "sources": ["libs/inventory-ui/src/lib/item-search-select-filter/item-search-select-filter.service.ts", "libs/inventory-ui/src/lib/item-search-select-filter/display-label.pipe.ts", "libs/inventory-ui/src/lib/item-search-select-filter/item-search-single-select-filter/item-search-single-select-filter.component.ts", "libs/inventory-ui/src/lib/item-search-select-filter/item-search-single-select-filter/item-search-single-select-filter.component.html"], "sourcesContent": ["import { BehaviorSubject, combineLatest, merge, Observable, of, Subject } from 'rxjs';\nimport { Injectable } from '@angular/core';\nimport {\n AppKey,\n AppType,\n FieldMask,\n GetMultiAppRequest,\n ItemsApiService,\n ItemType,\n ListActivatableItemsRequest,\n ListActivatableItemsResponse,\n PartnerApiService,\n SortDirection,\n} from '@vendasta/marketplace-apps';\nimport { Config, SelectedDropdownItem, TemplateState } from './interface';\nimport { debounceTime, map, scan, startWith, switchMap, tap, withLatestFrom } from 'rxjs/operators';\n\nconst MARKETPLACE_APPS_FALL_BACK_MARKET_ID = 'all-markets-default-fallback';\n\n@Injectable()\nexport class ItemSearchSelectFilterService {\n _selectedItems: SelectedDropdownItem[] = [];\n _selectionUpdated$$ = new BehaviorSubject(null);\n _triggerLoadMore$$ = new BehaviorSubject(null);\n _pagingInfo$$ = new BehaviorSubject<{ cursor: string; hasMore: boolean }>({ cursor: '', hasMore: true });\n _clearItemList$$ = new Subject();\n\n get selectedItems(): SelectedDropdownItem[] {\n return this._selectedItems || [];\n }\n\n constructor(\n private readonly appPartnerService: PartnerApiService,\n private readonly itemsApiService: ItemsApiService,\n ) {}\n\n init(searchControl$: Observable, config: Config, singleSelect: boolean): Observable {\n const loadMore$ = this._triggerLoadMore$$.asObservable();\n const searchTerm$ = searchControl$.pipe(\n debounceTime(250),\n startWith(''),\n tap(() => {\n this._pagingInfo$$.next({ cursor: '', hasMore: true });\n this._clearItemList$$.next();\n }),\n );\n\n const nextActivatableItems$ = combineLatest([loadMore$, searchTerm$]).pipe(\n debounceTime(10),\n withLatestFrom(this._pagingInfo$$.asObservable()),\n switchMap(([[, searchTerm], pagingInfo]) => this.listActivatableItems(config, searchTerm, pagingInfo.cursor)),\n tap((resp) => this._pagingInfo$$.next({ cursor: resp.nextCursor, hasMore: resp.hasMore })),\n map(this.parseListItemsResponse),\n );\n\n const scanAddFn = this.buildScanFn(config, singleSelect);\n const scanClearFn = () => () => [] as SelectedDropdownItem[];\n const addItemsToList$ = nextActivatableItems$.pipe(map(scanAddFn));\n const clearItemList$ = this._clearItemList$$.asObservable().pipe(map(scanClearFn));\n\n const itemList$: Observable = merge(addItemsToList$, clearItemList$).pipe(\n scan((acc, scanInnerFn) => scanInnerFn(acc), [] as SelectedDropdownItem[]),\n );\n\n const selectedItems$ = this._selectionUpdated$$\n .asObservable()\n .pipe(switchMap(() => (singleSelect ? this.setItemName(config) : of(this.selectedItems))));\n\n return combineLatest([selectedItems$, itemList$]).pipe(\n map(([selectedItems, availableItems]) => {\n return { initialized: true, selectedItems, availableItems };\n }),\n startWith({ initialized: false, selectedItems: [], availableItems: [] }),\n );\n }\n\n updateSelection(selectedItems: SelectedDropdownItem[]): void {\n this._selectedItems = selectedItems;\n this._selectionUpdated$$.next(null);\n }\n\n buildScanFn(config: Config, singleSelect: boolean) {\n return (value: SelectedDropdownItem[]) => (acc: SelectedDropdownItem[]) => {\n if (acc.length === 0 && singleSelect) {\n acc = config.customDropdownItems ? [...config.customDropdownItems] : [];\n }\n return [...acc, ...value];\n };\n }\n\n triggerLoadMore(): void {\n this._triggerLoadMore$$.next(null);\n }\n\n setItemName(config: Config): Observable {\n const selectedItem = this.selectedItems?.[0];\n if (!selectedItem || isCustomItem(selectedItem, config)) {\n const wildcardSelectedItem = config.customDropdownItems ? [...config.customDropdownItems] : [];\n this._selectedItems = wildcardSelectedItem;\n return of(wildcardSelectedItem);\n }\n if (selectedItem?.name) {\n return of([selectedItem]);\n }\n return this.hyrdateItemName(selectedItem, config);\n }\n\n private hyrdateItemName(selectedItem: SelectedDropdownItem, config: Config) {\n const fieldMask = new FieldMask({\n paths: ['AppID', 'Name', 'Type'],\n });\n const appKey = new AppKey({ appId: selectedItem.addonId || selectedItem.appId });\n const marketIdWithFallback = config.marketId ? config.marketId : MARKETPLACE_APPS_FALL_BACK_MARKET_ID;\n // since the List API is paged, any existing selections need to be looked up to display info (eg name)\n const request = new GetMultiAppRequest({\n projectionFilter: fieldMask,\n appKeys: [appKey],\n partnerId: config.partnerId,\n marketId: marketIdWithFallback,\n includeNotEnabled: true,\n });\n return this.appPartnerService.getMultiApp(request).pipe(\n map((resp) => {\n return resp.apps.map((app) => {\n const selectedItem: SelectedDropdownItem = {\n appId: app.key.appId,\n name: app.sharedMarketingInformation.name,\n };\n if (app.appType === AppType.APP_TYPE_ADDON) {\n selectedItem.appId = app.parentRequirements?.parentDetails?.key?.appId;\n selectedItem.addonId = app.key.appId;\n }\n return selectedItem;\n });\n }),\n tap((items) => {\n this._selectedItems = items;\n }),\n );\n }\n\n parseListItemsResponse(response: ListActivatableItemsResponse): SelectedDropdownItem[] {\n return (response.activatableItemSummaries || []).map((item) => {\n const selectedItem: SelectedDropdownItem = {\n appId: item.itemId,\n name: item.sellerWhitelabelName ? item.sellerWhitelabelName : item.defaultName,\n };\n if (item.itemType === ItemType.ITEM_TYPE_ADDON) {\n selectedItem.addonId = item.itemId;\n selectedItem.appId = item.requiredItems[0].itemId;\n }\n return selectedItem;\n });\n }\n\n listActivatableItems(config: Config, searchTerm: string, cursor: string): Observable {\n const request = new ListActivatableItemsRequest({\n sellerId: config.partnerId,\n storeId: config.marketId,\n cursor: cursor,\n pageSize: 25,\n filters: { ...config.filters, searchTerm: searchTerm },\n sortOptions: { sortDirection: SortDirection.ASCENDING },\n });\n return this.itemsApiService.listActivatableItems(request);\n }\n}\n\nfunction isCustomItem(selectedItem: SelectedDropdownItem, config: Config): boolean {\n if (!config.customDropdownItems) return false;\n\n return config.customDropdownItems.some((item) => {\n const itemTypes = config.filters?.itemTypes ?? [];\n const isCustomApp = itemTypes.includes(ItemType.ITEM_TYPE_APP) && item.appId === selectedItem.appId;\n const isCustomAddon = itemTypes.includes(ItemType.ITEM_TYPE_ADDON) && item.addonId === selectedItem.addonId;\n return isCustomApp || isCustomAddon;\n });\n}\n", "import { Pipe, PipeTransform } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ItemType } from '@vendasta/marketplace-apps';\n\n@Pipe({\n name: 'displayLabelPipe',\n pure: true,\n})\nexport class DisplayLabelPipe implements PipeTransform {\n constructor(private translateService: TranslateService) {}\n\n transform(itemType?: ItemType): string {\n if (itemType === ItemType.ITEM_TYPE_APP) {\n return this.translateService.instant('ITEM_SEARCH_SELECT_FILTER.PRODUCT_LABEL');\n } else if (itemType === ItemType.ITEM_TYPE_ADDON) {\n return this.translateService.instant('ITEM_SEARCH_SELECT_FILTER.ADDON_LABEL');\n } else {\n return this.translateService.instant('ITEM_SEARCH_SELECT_FILTER.LABEL');\n }\n }\n}\n", "import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { UntypedFormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\nimport { Observable } from 'rxjs';\nimport { filter, map } from 'rxjs/operators';\nimport { SelectedDropdownItem, SingleSelectFilterConfig, SingleSelectTemplateState } from '../interface';\nimport { ItemSearchSelectFilterService } from '../item-search-select-filter.service';\n\n@Component({\n selector: 'inventory-ui-item-search-single-select-filter',\n templateUrl: './item-search-single-select-filter.component.html',\n styleUrls: ['./item-search-single-select-filter.component.scss'],\n providers: [ItemSearchSelectFilterService],\n})\nexport class ItemSearchSingleSelectFilterComponent implements OnInit {\n @Input() config: SingleSelectFilterConfig = {\n partnerId: '',\n };\n\n @Input() set selectedItem(value: SelectedDropdownItem | null) {\n if (value && (value.appId || value.addonId)) {\n this.itemSearchSelectFilterService.updateSelection([value]);\n } else {\n this.itemSearchSelectFilterService.updateSelection([]);\n }\n }\n\n @Output() selectionChange: EventEmitter = new EventEmitter();\n\n templateState$!: Observable;\n searchCtrl = new UntypedFormControl('');\n\n constructor(private readonly itemSearchSelectFilterService: ItemSearchSelectFilterService) {}\n\n ngOnInit(): void {\n const searchCtrl$ = this.searchCtrl.valueChanges.pipe(\n filter((term) => typeof term === 'string'),\n map((searchTerm) => searchTerm ?? ''),\n );\n\n this.templateState$ = this.itemSearchSelectFilterService\n .init(searchCtrl$, this.config, true)\n .pipe(map((state) => ({ ...state, selectedItem: state.selectedItems?.[0] || null })));\n }\n\n addItem(event: MatAutocompleteSelectedEvent, selectedItem: SelectedDropdownItem | null): void {\n const newlySelectedItem = event?.option?.value as SelectedDropdownItem;\n if (!newlySelectedItem) return;\n\n const isAlreadySelected =\n selectedItem &&\n selectedItem.appId === newlySelectedItem.appId &&\n selectedItem.addonId === newlySelectedItem.addonId;\n if (isAlreadySelected) return;\n\n this.searchCtrl.setValue('');\n this.itemSearchSelectFilterService.updateSelection([newlySelectedItem]);\n this.selectionChange.emit(newlySelectedItem);\n }\n\n loadMore(): void {\n this.itemSearchSelectFilterService.triggerLoadMore();\n }\n\n displayFn(item: SelectedDropdownItem | null): () => string {\n return () => {\n return item?.name ?? '';\n };\n }\n}\n", "\n \n {{ config.filters?.itemType | displayLabelPipe }}\n \n \n \n
\n \n arrow_drop_down\n \n \n
\n {{ appSummary.name }}\n
\n
\n \n \n
\n
\n
\n\n \n
\n \n
\n
\n
\n"], "mappings": "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", "names": ["MARKETPLACE_APPS_FALL_BACK_MARKET_ID", "ItemSearchSelectFilterService", "selectedItems", "_selectedItems", "constructor", "appPartnerService", "itemsApiService", "_selectionUpdated$$", "BehaviorSubject", "_triggerLoadMore$$", "_pagingInfo$$", "cursor", "hasMore", "_clearItemList$$", "Subject", "init", "searchControl$", "config", "singleSelect", "loadMore$", "asObservable", "searchTerm$", "pipe", "debounceTime", "startWith", "tap", "next", "nextActivatableItems$", "combineLatest", "withLatestFrom", "switchMap", "searchTerm", "pagingInfo", "listActivatableItems", "resp", "nextCursor", "map", "parseListItemsResponse", "scanAddFn", "buildScanFn", "scanClearFn", "addItemsToList$", "clearItemList$", "itemList$", "merge", "scan", "acc", "scanInnerFn", "selectedItems$", "setItemName", "of", "availableItems", "initialized", "updateSelection", "value", "length", "customDropdownItems", "triggerLoadMore", "selectedItem", "isCustomItem", "wildcardSelectedItem", "name", "hyrdateItemName", "fieldMask", "FieldMask", "paths", "appKey", "AppKey", "appId", "addonId", "marketIdWithFallback", "marketId", "request", "GetMultiAppRequest", "projectionFilter", "appKeys", "partnerId", "includeNotEnabled", "getMultiApp", "apps", "app", "key", "sharedMarketingInformation", "appType", "AppType", "APP_TYPE_ADDON", "parentRequirements", "parentDetails", "items", "response", "activatableItemSummaries", "item", "itemId", "sellerWhitelabelName", "defaultName", "itemType", "ItemType", "ITEM_TYPE_ADDON", "requiredItems", "ListActivatableItemsRequest", "sellerId", "storeId", "pageSize", "filters", "__spreadProps", "__spreadValues", "sortOptions", "sortDirection", "SortDirection", "ASCENDING", "\u0275\u0275inject", "PartnerApiService", "ItemsApiService", "factory", "\u0275fac", "_ItemSearchSelectFilterService", "some", "itemTypes", "isCustomApp", "includes", "ITEM_TYPE_APP", "isCustomAddon", "DisplayLabelPipe", "constructor", "translateService", "transform", "itemType", "ItemType", "ITEM_TYPE_APP", "instant", "ITEM_TYPE_ADDON", "\u0275\u0275directiveInject", "TranslateService", "pure", "_DisplayLabelPipe", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275property", "appSummary_r4", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "name", "\u0275\u0275elementContainerStart", "\u0275\u0275element", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r1", "state_r2", "\u0275\u0275nextContext", "ngIf", "ctx_r2", "\u0275\u0275resetView", "addItem", "selectedItem", "\u0275\u0275template", "ItemSearchSingleSelectFilterComponent_ng_container_4_ng_container_1_mat_option_7_Template", "loadMore", "searchCtrl", "autocomplete_r5", "displayFn", "availableItems", "ItemSearchSingleSelectFilterComponent_ng_container_4_ng_container_1_Template", "initialized", "loadingState_r6", "ItemSearchSingleSelectFilterComponent", "value", "appId", "addonId", "itemSearchSelectFilterService", "updateSelection", "constructor", "config", "partnerId", "selectionChange", "EventEmitter", "UntypedFormControl", "ngOnInit", "searchCtrl$", "valueChanges", "pipe", "filter", "term", "map", "searchTerm", "templateState$", "init", "state", "__spreadProps", "__spreadValues", "selectedItems", "event", "newlySelectedItem", "option", "setValue", "emit", "triggerLoadMore", "item", "\u0275\u0275directiveInject", "ItemSearchSelectFilterService", "selectors", "inputs", "outputs", "features", "\u0275\u0275ProvidersFeature", "decls", "vars", "consts", "template", "rf", "ctx", "ItemSearchSingleSelectFilterComponent_ng_container_4_Template", "ItemSearchSingleSelectFilterComponent_ng_template_6_Template", "\u0275\u0275templateRefExtractor", "\u0275\u0275pipeBind1", "filters", "itemType", "_ItemSearchSingleSelectFilterComponent"] }