@lucca-front/ng 16.3.0-rc.3 → 16.3.1-rc.1

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.
Files changed (33) hide show
  1. package/callout/callout.component.d.ts +6 -8
  2. package/date/select/date-select-input.component.d.ts +3 -1
  3. package/esm2022/api/select/input/api-select-input.component.mjs +3 -3
  4. package/esm2022/callout/callout.component.mjs +12 -14
  5. package/esm2022/date/calendar/calendar-input.component.mjs +3 -3
  6. package/esm2022/date/select/date-select-input.component.mjs +10 -4
  7. package/esm2022/department/select/input/department-select-input.component.mjs +3 -3
  8. package/esm2022/establishment/select/input/establishment-select-input.component.mjs +3 -3
  9. package/esm2022/qualification/select/input/qualification-select-input.component.mjs +3 -3
  10. package/esm2022/select/input/select-input.component.mjs +2 -2
  11. package/esm2022/simple-select/input/select-input.component.mjs +3 -3
  12. package/esm2022/user/select/input/user-select-input.component.mjs +3 -3
  13. package/fesm2022/lucca-front-ng-api.mjs +2 -2
  14. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-callout.mjs +11 -13
  16. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-date.mjs +11 -5
  18. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-department.mjs +2 -2
  20. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-establishment.mjs +2 -2
  22. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-qualification.mjs +2 -2
  24. package/fesm2022/lucca-front-ng-qualification.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-select.mjs +2 -2
  26. package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-simple-select.mjs +2 -2
  28. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-user.mjs +2 -2
  30. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  31. package/package.json +21 -21
  32. package/src/components/_picker.scss +2 -0
  33. package/src/definitions/select/_select-input.scss +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-api.mjs","sources":["../../../packages/ng/api/select/feeder/api-feeder.model.ts","../../../packages/ng/api/service/api-service.model.ts","../../../packages/ng/api/service/api-v3.service.ts","../../../packages/ng/api/service/api-v4.service.ts","../../../packages/ng/api/service/api-hybrid.service.ts","../../../packages/ng/api/select/feeder/api-feeder.component.ts","../../../packages/ng/api/select/feeder/api-feeder.module.ts","../../../packages/ng/api/select/searcher/api-searcher.model.ts","../../../packages/ng/api/select/searcher/api-searcher.component.ts","../../../packages/ng/api/select/searcher/api-searcher.component.html","../../../packages/ng/api/select/searcher/api-searcher.module.ts","../../../packages/ng/api/select/input/api-select-input.component.ts","../../../packages/ng/api/select/input/api-select-input.component.html","../../../packages/ng/api/select/input/api-select-input.module.ts","../../../packages/ng/api/select/pager/api-pager.model.ts","../../../packages/ng/api/select/pager/api-pager.component.ts","../../../packages/ng/api/select/pager/api-pager.module.ts","../../../packages/ng/api/select/api-select.module.ts","../../../packages/ng/api/api.module.ts","../../../packages/ng/api/lucca-front-ng-api.ts"],"sourcesContent":["import { ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ILuApiService } from '../../service/index';\r\n\r\nexport type ILuApiOptionFeeder<T extends ILuApiItem = ILuApiItem> = ILuOptionOperator<T>;\r\nexport interface ILuApiFeederService<T extends ILuApiItem = ILuApiItem> {\r\n\tgetAll(): Observable<T[]>;\r\n}\r\n\r\nexport abstract class ALuApiOptionFeeder<T extends ILuApiItem = ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>> implements ILuApiOptionFeeder<T> {\r\n\toutOptions$ = new BehaviorSubject<T[]>([]);\r\n\tprotected _service: S;\r\n\tconstructor(service: S) {\r\n\t\tthis._service = service;\r\n\t}\r\n\tonOpen() {\r\n\t\tthis._service.getAll().subscribe((items) => this.outOptions$.next(items));\r\n\t}\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface ILuApiService<T extends import('../api.model').ILuApiItem = import('../api.model').ILuApiItem> {\r\n\tgetAll(filters?: string[]): Observable<T[]>;\r\n\tgetPaged(page: number, filters?: string[]): Observable<T[]>;\r\n\tsearchAll(clue: string, filters?: string[]): Observable<T[]>;\r\n\tsearchPaged(clue: string, page: number, filters?: string[]): Observable<T[]>;\r\n}\r\n\r\nexport abstract class ALuApiService<T extends import('../api.model').ILuApiItem = import('../api.model').ILuApiItem> implements ILuApiService<T> {\r\n\tabstract getAll(filters?: string[]): Observable<T[]>;\r\n\tabstract getPaged(page: number, filters?: string[]): Observable<T[]>;\r\n\tabstract searchAll(clue: string, filters?: string[]): Observable<T[]>;\r\n\tabstract searchPaged(clue: string, page: number, filters?: string[]): Observable<T[]>;\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ILuApiCollectionResponse, ILuApiItem } from '../api.model';\r\nimport { ALuApiService } from './api-service.model';\r\n\r\nconst MAGIC_PAGE_SIZE = 20;\r\n\r\n@Injectable()\r\nexport class LuApiV3Service<T extends ILuApiItem = ILuApiItem> extends ALuApiService<T> {\r\n\tprotected _api: string;\r\n\tset api(api: string) {\r\n\t\tthis._api = api;\r\n\t}\r\n\tprotected _fields = 'fields=id,name';\r\n\tset fields(fields: string) {\r\n\t\tif (fields) {\r\n\t\t\tthis._fields = `fields=${fields}`;\r\n\t\t}\r\n\t}\r\n\tprotected _filters: string[] = [];\r\n\tset filters(filters: string[]) {\r\n\t\tif (filters) {\r\n\t\t\tthis._filters = filters || [];\r\n\t\t}\r\n\t}\r\n\tprotected _orderBy = 'orderBy=name,asc';\r\n\tset orderBy(orderBy: string) {\r\n\t\tif (orderBy) {\r\n\t\t\tthis._orderBy = `orderBy=${orderBy}`;\r\n\t\t}\r\n\t}\r\n\r\n\tget url() {\r\n\t\treturn `${this._api}?${[...this._filters, this._orderBy, this._fields].filter((f) => !!f).join('&')}`;\r\n\t}\r\n\r\n\tconstructor(protected _http: HttpClient) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tgetAll(filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._get([this.url, ...filters].join('&'));\r\n\t}\r\n\r\n\tgetPaged(page: number, filters: string[] = []): Observable<T[]> {\r\n\t\tconst paging = `paging=${page * MAGIC_PAGE_SIZE},${MAGIC_PAGE_SIZE}`;\r\n\t\tconst url = [this.url, paging, ...filters].join('&');\r\n\t\treturn this._get(url);\r\n\t}\r\n\r\n\tsearchAll(clue: string, filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getAll(filters);\r\n\t\t}\r\n\t\tconst url = [this.url, this._clueFilter(clue), ...filters].join('&');\r\n\t\treturn this._get(url);\r\n\t}\r\n\r\n\tsearchPaged(clue: string, page: number, filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getPaged(page, filters);\r\n\t\t}\r\n\t\tconst paging = `paging=${page * MAGIC_PAGE_SIZE},${MAGIC_PAGE_SIZE}`;\r\n\t\tconst url = [this.url, this._clueFilter(clue), paging, ...filters].join('&');\r\n\t\treturn this._get(url);\r\n\t}\r\n\r\n\tprotected _get(url: string): Observable<T[]> {\r\n\t\treturn this._http.get<ILuApiCollectionResponse<T>>(url).pipe(map((response) => response.data.items));\r\n\t}\r\n\tprotected _clueFilter(clue: string) {\r\n\t\tconst urlSafeClue = encodeURIComponent(clue);\r\n\t\treturn `name=like,${urlSafeClue}`;\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ILuApiItem } from '../api.model';\r\nimport { ALuApiService } from './api-service.model';\r\n\r\n@Injectable()\r\nexport class LuApiV4Service<T extends ILuApiItem = ILuApiItem> extends ALuApiService<T> {\r\n\tprotected _api: string;\r\n\tset api(api: string) {\r\n\t\tthis._api = api;\r\n\t}\r\n\r\n\tprotected _filters: string[] = [];\r\n\tset filters(filters: string[]) {\r\n\t\tthis._filters = filters || [];\r\n\t}\r\n\tget filters(): string[] {\r\n\t\treturn this._filters;\r\n\t}\r\n\r\n\tprotected _sort: string;\r\n\tset sort(sort: string) {\r\n\t\tif (sort) {\r\n\t\t\tthis._sort = `sort=${sort}`;\r\n\t\t}\r\n\t}\r\n\r\n\tconstructor(protected _http: HttpClient) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tgetAll(filters: string[] = []): Observable<T[]> {\r\n\t\tconst query = [...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tgetPaged(page = 0, filters: string[] = []): Observable<T[]> {\r\n\t\tconst query = [`page=${page + 1}`, ...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tsearchAll(clue = '', filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getAll(filters);\r\n\t\t}\r\n\t\tconst urlSafeClues = clue\r\n\t\t\t.split(' ')\r\n\t\t\t.map((c) => encodeURIComponent(c))\r\n\t\t\t.join(',');\r\n\t\tconst query = [`search=${urlSafeClues}`, ...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tsearchPaged(clue = '', page = 0, filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getPaged(page, filters);\r\n\t\t}\r\n\t\tconst urlSafeClues = clue\r\n\t\t\t.split(' ')\r\n\t\t\t.map((c) => encodeURIComponent(c))\r\n\t\t\t.join(',');\r\n\t\tconst query = [`search=${urlSafeClues}`, `page=${page + 1}`, ...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tcount(): Observable<number> {\r\n\t\tconst query = [...this.filters, 'fields.root=count', 'limit=0'].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ count: number }>(url).pipe(map((res) => res.count));\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ILuApiItem } from '../api.model';\r\nimport { ALuApiService } from './api-service.model';\r\nimport { LuApiV3Service } from './api-v3.service';\r\nimport { LuApiV4Service } from './api-v4.service';\r\n\r\n@Injectable()\r\nexport class LuApiHybridService<T extends ILuApiItem = ILuApiItem> extends ALuApiService<T> {\r\n\tprivate _v3Service: LuApiV3Service<T>;\r\n\tprivate _v4Service: LuApiV4Service<T>;\r\n\r\n\tprivate _standard: 'v3' | 'v4' = 'v3';\r\n\tset standard(std: 'v3' | 'v4') {\r\n\t\tthis._standard = std;\r\n\t}\r\n\r\n\t// both\r\n\tset api(api: string) {\r\n\t\tthis._v3Service.api = api;\r\n\t\tthis._v4Service.api = api;\r\n\t}\r\n\tset filters(filters: string[]) {\r\n\t\tthis._v3Service.filters = filters;\r\n\t\tthis._v4Service.filters = filters;\r\n\t}\r\n\r\n\t// api v3 only\r\n\tset fields(fields: string) {\r\n\t\tthis._v3Service.fields = fields;\r\n\t}\r\n\tset orderBy(orderBy: string) {\r\n\t\tthis._v3Service.orderBy = orderBy;\r\n\t}\r\n\r\n\t// api v4 only\r\n\tset sort(sort: string) {\r\n\t\tthis._v4Service.sort = sort;\r\n\t}\r\n\r\n\tprivate get _service(): ALuApiService<T> {\r\n\t\tswitch (this._standard) {\r\n\t\t\tcase 'v4':\r\n\t\t\t\treturn this._v4Service;\r\n\t\t\tcase 'v3':\r\n\t\t\tdefault:\r\n\t\t\t\treturn this._v3Service;\r\n\t\t}\r\n\t}\r\n\r\n\tconstructor(private _http: HttpClient) {\r\n\t\tsuper();\r\n\t\tthis._v3Service = new LuApiV3Service(this._http);\r\n\t\tthis._v4Service = new LuApiV4Service(this._http);\r\n\t}\r\n\r\n\tgetAll(filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.getAll(filters);\r\n\t}\r\n\r\n\tgetPaged(page: number, filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.getPaged(page, filters);\r\n\t}\r\n\r\n\tsearchAll(clue: string, filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.searchAll(clue, filters);\r\n\t}\r\n\r\n\tsearchPaged(clue: string, page: number, filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.searchPaged(clue, page, filters);\r\n\t}\r\n}\r\n","import { ChangeDetectionStrategy, Component, forwardRef, Inject, Input, Optional, Self, SkipSelf } from '@angular/core';\r\nimport { ALuOnOpenSubscriber, ILuOnOpenSubscriber } from '@lucca-front/ng/core';\r\nimport { ALuOptionOperator, ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ALuApiService, LuApiHybridService } from '../../service/index';\r\nimport { ALuApiOptionFeeder } from './api-feeder.model';\r\n@Component({\r\n\tselector: 'lu-api-feeder',\r\n\ttemplate: '',\r\n\tstyleUrls: [],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiFeederComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiFeederComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiFeederComponent<T extends ILuApiItem = ILuApiItem> extends ALuApiOptionFeeder<T, LuApiHybridService<T>> implements ILuOptionOperator<T>, ILuOnOpenSubscriber {\r\n\toverride outOptions$ = new BehaviorSubject<T[]>([]);\r\n\tconstructor(\r\n\t\t@Inject(ALuApiService)\r\n\t\t@Optional()\r\n\t\t@SkipSelf()\r\n\t\thostService: LuApiHybridService<T>,\r\n\t\t@Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>,\r\n\t) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\t@Input() set sort(sort: string) {\r\n\t\tthis._service.sort = sort;\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiFeederComponent } from './api-feeder.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiFeederComponent],\r\n\texports: [LuApiFeederComponent],\r\n})\r\nexport class LuApiFeederModule {}\r\n","import { ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { merge, Observable, of, Subject } from 'rxjs';\r\nimport { catchError, map, scan, share, startWith, switchMap } from 'rxjs/operators';\r\nimport { ILuApiService } from '../../service/index';\r\nimport { ILuApiOptionFeeder } from '../feeder/index';\r\n\r\nexport type ILuApiOptionSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem> = ILuApiOptionFeeder<T>;\r\n\r\nexport abstract class ALuApiOptionSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>>\r\n\timplements ILuApiOptionFeeder<T>, ILuOnOpenSubscriber\r\n{\r\n\toutOptions$ = new Subject<T[]>();\r\n\tloading$: Observable<boolean>;\r\n\tempty$: Observable<boolean>;\r\n\r\n\tprotected _clue$: Observable<string>;\r\n\r\n\tset clue$(clue$: Observable<string>) {\r\n\t\t// this.initObservables(clue$);\r\n\t\tthis._clue$ = clue$;\r\n\t}\r\n\tconstructor(protected _service: S) {}\r\n\tinit() {\r\n\t\tthis.initObservables();\r\n\t}\r\n\tonOpen() {\r\n\t\tthis.resetClue();\r\n\t}\r\n\tonClose() {\r\n\t\tthis.clearOptions();\r\n\t}\r\n\tprotected initObservables() {\r\n\t\t// this._clue$ = clue$.pipe(share());\r\n\t\tconst results$ = this._clue$.pipe(\r\n\t\t\tswitchMap((clue) => this._service.searchAll(clue)),\r\n\t\t\tcatchError(() => of([])),\r\n\t\t\tshare(),\r\n\t\t);\r\n\r\n\t\tresults$.subscribe((items) => this.outOptions$.next(items));\r\n\t\tthis.loading$ = merge(this._clue$.pipe(map(() => true)), results$.pipe(map(() => false)));\r\n\t\tthis.empty$ = results$.pipe(map((o) => o.length === 0));\r\n\t}\r\n\tabstract resetClue();\r\n\tprotected clearOptions() {\r\n\t\tthis.outOptions$.next([]);\r\n\t}\r\n}\r\n\r\nexport type ILuApiOptionPagedSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem> = ILuApiOptionSearcher<T>;\r\n\r\nexport abstract class ALuApiOptionPagedSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>>\r\n\textends ALuApiOptionSearcher<T, S>\r\n\timplements ILuApiOptionPagedSearcher<T>, ILuOnScrollBottomSubscriber\r\n{\r\n\toverride outOptions$ = new Subject<T[]>();\r\n\toverride loading$: Observable<boolean>;\r\n\tprotected _loading = false;\r\n\tprotected _page$ = new Subject<void>();\r\n\tprotected _isLastPage: boolean;\r\n\tprotected _options: T[] = [];\r\n\r\n\tconstructor(service: S) {\r\n\t\tsuper(service);\r\n\t}\r\n\toverride onOpen() {\r\n\t\tthis.resetClue();\r\n\t}\r\n\tonScrollBottom() {\r\n\t\tif (!this._loading && !this._isLastPage) {\r\n\t\t\tthis._page$.next();\r\n\t\t}\r\n\t}\r\n\r\n\tprotected override initObservables() {\r\n\t\tconst pager$ = this._page$.pipe(\r\n\t\t\tscan((acc) => acc + 1, 0),\r\n\t\t\tstartWith(0),\r\n\t\t);\r\n\t\tconst query$ = this._clue$.pipe(\r\n\t\t\tswitchMap((clue) => pager$.pipe(map<number, [number, string]>((page) => [page, clue]))),\r\n\t\t\tshare(),\r\n\t\t);\r\n\r\n\t\tconst results$ = query$.pipe(\r\n\t\t\tswitchMap(([page, clue]) =>\r\n\t\t\t\tthis._service.searchPaged(clue, page).pipe(\r\n\t\t\t\t\tcatchError(() => of([])),\r\n\t\t\t\t\tmap<T[], [T[], number]>((items) => [items, page]),\r\n\t\t\t\t),\r\n\t\t\t),\r\n\t\t\tshare(),\r\n\t\t);\r\n\r\n\t\tresults$.subscribe(([items, page]) => {\r\n\t\t\tif (page === 0) {\r\n\t\t\t\tthis._options = [...items];\r\n\t\t\t} else {\r\n\t\t\t\tthis._options.push(...items);\r\n\t\t\t}\r\n\t\t\tthis._isLastPage = !items.length;\r\n\t\t\tthis.outOptions$.next([...this._options]);\r\n\t\t});\r\n\t\tthis.loading$ = merge(query$.pipe(map(() => true)), results$.pipe(map(() => false)));\r\n\t\tthis.loading$.subscribe((l) => (this._loading = l));\r\n\t\tthis.empty$ = this.outOptions$.pipe(map((o) => o.length === 0));\r\n\t}\r\n\tabstract override resetClue();\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, ElementRef, forwardRef, Inject, Input, OnInit, Optional, Self, SkipSelf, ViewChild } from '@angular/core';\r\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { ALuOnCloseSubscriber, ALuOnOpenSubscriber, ALuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { ALuOptionOperator, LuOptionPlaceholderComponent } from '@lucca-front/ng/option';\r\nimport { Observable } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { ALuApiService, LuApiHybridService } from '../../service/index';\r\nimport { ALuApiOptionPagedSearcher, ALuApiOptionSearcher } from './api-searcher.model';\r\n\r\n@Component({\r\n\tselector: 'lu-api-searcher',\r\n\ttemplateUrl: 'api-searcher.component.html',\r\n\tstyleUrls: ['api-searcher.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [ReactiveFormsModule, CommonModule, LuOptionPlaceholderComponent],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiSearcherComponent<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem> extends ALuApiOptionSearcher<T, LuApiHybridService<T>> implements OnInit {\r\n\t@ViewChild('searchInput', { read: ElementRef, static: true })\r\n\tsearchInput: ElementRef<HTMLElement>;\r\n\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\t@Input() set sort(sort: string) {\r\n\t\tthis._service.sort = sort;\r\n\t}\r\n\t@Input() debounceTime = 250;\r\n\r\n\tclueControl: FormControl;\r\n\tconstructor(\r\n\t\t@Inject(ALuApiService)\r\n\t\t@Optional()\r\n\t\t@SkipSelf()\r\n\t\thostService: LuApiHybridService<T>,\r\n\t\t@Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>,\r\n\t) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.clueControl = new FormControl(undefined);\r\n\t\tthis.clue$ = this.clueControl.valueChanges.pipe(debounceTime(this.debounceTime)) as Observable<string>;\r\n\t\tsuper.init();\r\n\t}\r\n\r\n\toverride onOpen() {\r\n\t\tthis.searchInput.nativeElement.focus();\r\n\t\tsuper.onOpen();\r\n\t}\r\n\tresetClue() {\r\n\t\tthis.clueControl.setValue('');\r\n\t}\r\n}\r\n\r\n@Component({\r\n\tselector: 'lu-api-paged-searcher',\r\n\ttemplateUrl: 'api-searcher.component.html',\r\n\tstyleUrls: ['api-searcher.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [ReactiveFormsModule, CommonModule, LuOptionPlaceholderComponent],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnScrollBottomSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnCloseSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiPagedSearcherComponent<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem>\r\n\textends ALuApiOptionPagedSearcher<T, LuApiHybridService<T>>\r\n\timplements OnInit\r\n{\r\n\t@ViewChild('searchInput', { read: ElementRef, static: true })\r\n\tsearchInput: ElementRef<HTMLElement>;\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\t@Input() set sort(sort: string) {\r\n\t\tthis._service.sort = sort;\r\n\t}\r\n\t@Input() debounceTime = 250;\r\n\r\n\tclueControl: FormControl;\r\n\tconstructor(@Inject(ALuApiService) @Optional() @SkipSelf() hostService: LuApiHybridService<T>, @Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.clueControl = new FormControl(undefined);\r\n\t\tthis.clue$ = this.clueControl.valueChanges.pipe(debounceTime(this.debounceTime)) as Observable<string>;\r\n\t\tsuper.init();\r\n\t}\r\n\r\n\toverride onOpen() {\r\n\t\tthis.searchInput.nativeElement.focus();\r\n\t\tsuper.onOpen();\r\n\t}\r\n\tresetClue() {\r\n\t\tthis.clueControl.reset('');\r\n\t}\r\n}\r\n","<div class=\"textfield mod-search\" [class.is-loading]=\"loading$ | async\">\r\n\t<input #searchInput class=\"textfield-input\" [formControl]=\"clueControl\" />\r\n</div>\r\n<lu-option-placeholder *ngIf=\"(empty$ | async) && (loading$ | async) === false\" (onClear)=\"resetClue()\"></lu-option-placeholder>\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiPagedSearcherComponent, LuApiSearcherComponent } from './api-searcher.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiPagedSearcherComponent, LuApiSearcherComponent],\r\n\texports: [LuApiPagedSearcherComponent, LuApiSearcherComponent],\r\n})\r\nexport class LuApiSearcherModule {}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef, Input, Renderer2, ViewContainerRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { LuInputClearerComponent, LuInputDisplayerDirective } from '@lucca-front/ng/input';\r\nimport { ILuOptionItem, LuForOptionsDirective, LuOptionComparer, LuOptionItemComponent, LuOptionPickerAdvancedComponent } from '@lucca-front/ng/option';\r\nimport { ALuSelectInputComponent } from '@lucca-front/ng/select';\r\nimport { LuApiPagedSearcherComponent } from '../searcher';\r\n\r\n@Component({\r\n\tselector: 'lu-api-select',\r\n\ttemplateUrl: './api-select-input.component.html',\r\n\tstyleUrls: ['./api-select-input.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [CommonModule, LuInputClearerComponent, LuOptionPickerAdvancedComponent, LuApiPagedSearcherComponent, LuOptionItemComponent, LuForOptionsDirective, LuInputDisplayerDirective],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: NG_VALUE_ACCESSOR,\r\n\t\t\tuseExisting: forwardRef(() => LuApiSelectInputComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiSelectInputComponent<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem>\r\n\textends ALuSelectInputComponent<T, LuOptionPickerAdvancedComponent<T, ILuOptionItem<T>>>\r\n\timplements ControlValueAccessor, AfterViewInit\r\n{\r\n\t@Input() standard: 'v3' | 'v4' = 'v3';\r\n\t@Input() api: string;\r\n\t/**\r\n\t * only works with standard=\"v3\"\r\n\t */\r\n\t@Input() fields: string;\r\n\t@Input() filters: string[];\r\n\t/**\r\n\t * only works with standard=\"v3\", otherwise use sort\r\n\t */\r\n\t@Input() orderBy: string;\r\n\t/**\r\n\t * only works with standard=\"v4\", otherwise use orderBy\r\n\t */\r\n\t@Input() sort: string;\r\n\r\n\tbyId: LuOptionComparer<T> = (option1: T, option2: T) => option1 && option2 && option1.id === option2.id;\r\n\tconstructor(\r\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected override _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\r\n\t}\r\n}\r\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container #display></ng-container>\r\n\t</div>\r\n</div>\r\n<div class=\"lu-select-suffix\">\r\n\t<lu-input-clearer></lu-input-clearer>\r\n</div>\r\n<span [class.chip]=\"multiple\" *luDisplayer=\"let option\">{{ option.name }}</span>\r\n<lu-option-picker-advanced [option-comparer]=\"byId\">\r\n\t<header class=\"lu-picker-header\">\r\n\t\t<lu-api-paged-searcher\r\n\t\t\t[standard]=\"standard\"\r\n\t\t\t[api]=\"api\"\r\n\t\t\t[fields]=\"fields\"\r\n\t\t\t[filters]=\"filters\"\r\n\t\t\t[orderBy]=\"orderBy\"\r\n\t\t\t[sort]=\"sort\"\r\n\t\t></lu-api-paged-searcher>\r\n\t</header>\r\n\t<div class=\"lu-picker-content-option\">\r\n\t\t<lu-option *luForOptions=\"let option\" [value]=\"option\">{{ option.name }}</lu-option>\r\n\t</div>\r\n</lu-option-picker-advanced>\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiSelectInputComponent } from './api-select-input.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiSelectInputComponent],\r\n\texports: [LuApiSelectInputComponent],\r\n})\r\nexport class LuApiSelectInputModule {}\r\n","import { ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { merge, Observable, of, Subject } from 'rxjs';\r\nimport { catchError, distinctUntilChanged, map, switchMap, tap } from 'rxjs/operators';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ILuApiService } from '../../service/index';\r\n\r\nenum Strategy {\r\n\tappend,\r\n\treplace,\r\n}\r\nexport type ILuApiOptionPager<T extends ILuApiItem = ILuApiItem> = ILuOptionOperator<T>;\r\nexport interface ILuApiPagerService<T extends ILuApiItem = ILuApiItem> {\r\n\tgetPaged(page: number): Observable<T[]>;\r\n}\r\n\r\nexport abstract class ALuApiOptionPager<T extends ILuApiItem = ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>>\r\n\timplements ILuApiOptionPager<T>, ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber\r\n{\r\n\toutOptions$ = new Subject<T[]>();\r\n\tloading$: Observable<boolean>;\r\n\r\n\tprotected _loading = false;\r\n\tprotected _results$: Observable<{ items: T[]; strategy: Strategy }>;\r\n\tprotected _options: T[] = [];\r\n\tprotected _page$ = new Subject<number>();\r\n\tprotected _page: number;\r\n\tprotected _initialized = false;\r\n\tconstructor(protected _service: S) {}\r\n\tprotected init() {\r\n\t\tthis.initObservables();\r\n\t}\r\n\tonOpen() {\r\n\t\tif (!this._initialized) {\r\n\t\t\tthis._page$.next(0);\r\n\t\t\tthis._initialized = true;\r\n\t\t}\r\n\t}\r\n\t// onClose() {\r\n\t// \tthis._page$.next(0);\r\n\t// }\r\n\tonScrollBottom() {\r\n\t\tif (!this._loading) {\r\n\t\t\tthis._page$.next(this._page + 1);\r\n\t\t}\r\n\t}\r\n\tprotected initObservables() {\r\n\t\tconst _results$: Observable<{ items: T[]; strategy: Strategy }> = this._page$.pipe(\r\n\t\t\tdistinctUntilChanged(),\r\n\t\t\ttap((p) => (this._page = p)),\r\n\t\t\tswitchMap((page) => {\r\n\t\t\t\tif (page === undefined) {\r\n\t\t\t\t\treturn of({ items: [] as T[], strategy: Strategy.replace });\r\n\t\t\t\t}\r\n\t\t\t\treturn this._service.getPaged(page).pipe(\r\n\t\t\t\t\tmap((items) => ({\r\n\t\t\t\t\t\titems: items,\r\n\t\t\t\t\t\tstrategy: page === 0 ? Strategy.replace : Strategy.append,\r\n\t\t\t\t\t})),\r\n\t\t\t\t);\r\n\t\t\t}),\r\n\t\t\tcatchError(() => of({ items: [] as T[], strategy: Strategy.replace })),\r\n\t\t\ttap((results) => {\r\n\t\t\t\tif (results.strategy === Strategy.replace) {\r\n\t\t\t\t\tthis._options = [...results.items];\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._options.push(...results.items);\r\n\t\t\t\t}\r\n\t\t\t\tthis.outOptions$.next([...this._options]);\r\n\t\t\t}),\r\n\t\t);\r\n\r\n\t\tthis.loading$ = merge(this._page$.pipe(map(() => true)), _results$.pipe(map(() => false)));\r\n\t\tthis.loading$.subscribe((l) => (this._loading = l));\r\n\t}\r\n}\r\n","import { ChangeDetectionStrategy, Component, forwardRef, Inject, Input, OnInit, Optional, Self, SkipSelf } from '@angular/core';\r\nimport { ALuOnOpenSubscriber, ALuOnScrollBottomSubscriber, ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { ALuOptionOperator, ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ALuApiService, LuApiHybridService } from '../../service/index';\r\nimport { ALuApiOptionPager } from './api-pager.model';\r\n\r\n@Component({\r\n\tselector: 'lu-api-pager',\r\n\ttemplate: '',\r\n\tstyleUrls: [],\r\n\tstandalone: true,\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagerComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnScrollBottomSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagerComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagerComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiPagerComponent<T extends ILuApiItem = ILuApiItem>\r\n\textends ALuApiOptionPager<T, LuApiHybridService<T>>\r\n\timplements ILuOptionOperator<T>, OnInit, ILuOnScrollBottomSubscriber, ILuOnOpenSubscriber\r\n{\r\n\tconstructor(\r\n\t\t@Inject(ALuApiService)\r\n\t\t@Optional()\r\n\t\t@SkipSelf()\r\n\t\thostService: LuApiHybridService<T>,\r\n\t\t@Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>,\r\n\t) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tsuper.init();\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiPagerComponent } from './api-pager.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiPagerComponent],\r\n\texports: [LuApiPagerComponent],\r\n})\r\nexport class LuApiPagerModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiFeederComponent } from './feeder/index';\r\nimport { LuApiSelectInputComponent } from './input/index';\r\nimport { LuApiPagerComponent } from './pager/index';\r\nimport { LuApiPagedSearcherComponent, LuApiSearcherComponent } from './searcher/index';\r\n\r\n@NgModule({\r\n\timports: [LuApiFeederComponent, LuApiPagedSearcherComponent, LuApiSearcherComponent, LuApiPagerComponent, LuApiSelectInputComponent],\r\n\texports: [LuApiFeederComponent, LuApiPagedSearcherComponent, LuApiSearcherComponent, LuApiPagerComponent, LuApiSelectInputComponent],\r\n})\r\nexport class LuApiSelectModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiSelectModule } from './select/index';\r\n\r\n@NgModule({\r\n\timports: [LuApiSelectModule],\r\n\texports: [LuApiSelectModule],\r\n})\r\nexport class LuApiModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-api.mjs","sources":["../../../packages/ng/api/select/feeder/api-feeder.model.ts","../../../packages/ng/api/service/api-service.model.ts","../../../packages/ng/api/service/api-v3.service.ts","../../../packages/ng/api/service/api-v4.service.ts","../../../packages/ng/api/service/api-hybrid.service.ts","../../../packages/ng/api/select/feeder/api-feeder.component.ts","../../../packages/ng/api/select/feeder/api-feeder.module.ts","../../../packages/ng/api/select/searcher/api-searcher.model.ts","../../../packages/ng/api/select/searcher/api-searcher.component.ts","../../../packages/ng/api/select/searcher/api-searcher.component.html","../../../packages/ng/api/select/searcher/api-searcher.module.ts","../../../packages/ng/api/select/input/api-select-input.component.ts","../../../packages/ng/api/select/input/api-select-input.component.html","../../../packages/ng/api/select/input/api-select-input.module.ts","../../../packages/ng/api/select/pager/api-pager.model.ts","../../../packages/ng/api/select/pager/api-pager.component.ts","../../../packages/ng/api/select/pager/api-pager.module.ts","../../../packages/ng/api/select/api-select.module.ts","../../../packages/ng/api/api.module.ts","../../../packages/ng/api/lucca-front-ng-api.ts"],"sourcesContent":["import { ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ILuApiService } from '../../service/index';\r\n\r\nexport type ILuApiOptionFeeder<T extends ILuApiItem = ILuApiItem> = ILuOptionOperator<T>;\r\nexport interface ILuApiFeederService<T extends ILuApiItem = ILuApiItem> {\r\n\tgetAll(): Observable<T[]>;\r\n}\r\n\r\nexport abstract class ALuApiOptionFeeder<T extends ILuApiItem = ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>> implements ILuApiOptionFeeder<T> {\r\n\toutOptions$ = new BehaviorSubject<T[]>([]);\r\n\tprotected _service: S;\r\n\tconstructor(service: S) {\r\n\t\tthis._service = service;\r\n\t}\r\n\tonOpen() {\r\n\t\tthis._service.getAll().subscribe((items) => this.outOptions$.next(items));\r\n\t}\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface ILuApiService<T extends import('../api.model').ILuApiItem = import('../api.model').ILuApiItem> {\r\n\tgetAll(filters?: string[]): Observable<T[]>;\r\n\tgetPaged(page: number, filters?: string[]): Observable<T[]>;\r\n\tsearchAll(clue: string, filters?: string[]): Observable<T[]>;\r\n\tsearchPaged(clue: string, page: number, filters?: string[]): Observable<T[]>;\r\n}\r\n\r\nexport abstract class ALuApiService<T extends import('../api.model').ILuApiItem = import('../api.model').ILuApiItem> implements ILuApiService<T> {\r\n\tabstract getAll(filters?: string[]): Observable<T[]>;\r\n\tabstract getPaged(page: number, filters?: string[]): Observable<T[]>;\r\n\tabstract searchAll(clue: string, filters?: string[]): Observable<T[]>;\r\n\tabstract searchPaged(clue: string, page: number, filters?: string[]): Observable<T[]>;\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ILuApiCollectionResponse, ILuApiItem } from '../api.model';\r\nimport { ALuApiService } from './api-service.model';\r\n\r\nconst MAGIC_PAGE_SIZE = 20;\r\n\r\n@Injectable()\r\nexport class LuApiV3Service<T extends ILuApiItem = ILuApiItem> extends ALuApiService<T> {\r\n\tprotected _api: string;\r\n\tset api(api: string) {\r\n\t\tthis._api = api;\r\n\t}\r\n\tprotected _fields = 'fields=id,name';\r\n\tset fields(fields: string) {\r\n\t\tif (fields) {\r\n\t\t\tthis._fields = `fields=${fields}`;\r\n\t\t}\r\n\t}\r\n\tprotected _filters: string[] = [];\r\n\tset filters(filters: string[]) {\r\n\t\tif (filters) {\r\n\t\t\tthis._filters = filters || [];\r\n\t\t}\r\n\t}\r\n\tprotected _orderBy = 'orderBy=name,asc';\r\n\tset orderBy(orderBy: string) {\r\n\t\tif (orderBy) {\r\n\t\t\tthis._orderBy = `orderBy=${orderBy}`;\r\n\t\t}\r\n\t}\r\n\r\n\tget url() {\r\n\t\treturn `${this._api}?${[...this._filters, this._orderBy, this._fields].filter((f) => !!f).join('&')}`;\r\n\t}\r\n\r\n\tconstructor(protected _http: HttpClient) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tgetAll(filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._get([this.url, ...filters].join('&'));\r\n\t}\r\n\r\n\tgetPaged(page: number, filters: string[] = []): Observable<T[]> {\r\n\t\tconst paging = `paging=${page * MAGIC_PAGE_SIZE},${MAGIC_PAGE_SIZE}`;\r\n\t\tconst url = [this.url, paging, ...filters].join('&');\r\n\t\treturn this._get(url);\r\n\t}\r\n\r\n\tsearchAll(clue: string, filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getAll(filters);\r\n\t\t}\r\n\t\tconst url = [this.url, this._clueFilter(clue), ...filters].join('&');\r\n\t\treturn this._get(url);\r\n\t}\r\n\r\n\tsearchPaged(clue: string, page: number, filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getPaged(page, filters);\r\n\t\t}\r\n\t\tconst paging = `paging=${page * MAGIC_PAGE_SIZE},${MAGIC_PAGE_SIZE}`;\r\n\t\tconst url = [this.url, this._clueFilter(clue), paging, ...filters].join('&');\r\n\t\treturn this._get(url);\r\n\t}\r\n\r\n\tprotected _get(url: string): Observable<T[]> {\r\n\t\treturn this._http.get<ILuApiCollectionResponse<T>>(url).pipe(map((response) => response.data.items));\r\n\t}\r\n\tprotected _clueFilter(clue: string) {\r\n\t\tconst urlSafeClue = encodeURIComponent(clue);\r\n\t\treturn `name=like,${urlSafeClue}`;\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ILuApiItem } from '../api.model';\r\nimport { ALuApiService } from './api-service.model';\r\n\r\n@Injectable()\r\nexport class LuApiV4Service<T extends ILuApiItem = ILuApiItem> extends ALuApiService<T> {\r\n\tprotected _api: string;\r\n\tset api(api: string) {\r\n\t\tthis._api = api;\r\n\t}\r\n\r\n\tprotected _filters: string[] = [];\r\n\tset filters(filters: string[]) {\r\n\t\tthis._filters = filters || [];\r\n\t}\r\n\tget filters(): string[] {\r\n\t\treturn this._filters;\r\n\t}\r\n\r\n\tprotected _sort: string;\r\n\tset sort(sort: string) {\r\n\t\tif (sort) {\r\n\t\t\tthis._sort = `sort=${sort}`;\r\n\t\t}\r\n\t}\r\n\r\n\tconstructor(protected _http: HttpClient) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tgetAll(filters: string[] = []): Observable<T[]> {\r\n\t\tconst query = [...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tgetPaged(page = 0, filters: string[] = []): Observable<T[]> {\r\n\t\tconst query = [`page=${page + 1}`, ...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tsearchAll(clue = '', filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getAll(filters);\r\n\t\t}\r\n\t\tconst urlSafeClues = clue\r\n\t\t\t.split(' ')\r\n\t\t\t.map((c) => encodeURIComponent(c))\r\n\t\t\t.join(',');\r\n\t\tconst query = [`search=${urlSafeClues}`, ...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tsearchPaged(clue = '', page = 0, filters: string[] = []): Observable<T[]> {\r\n\t\tif (!clue) {\r\n\t\t\treturn this.getPaged(page, filters);\r\n\t\t}\r\n\t\tconst urlSafeClues = clue\r\n\t\t\t.split(' ')\r\n\t\t\t.map((c) => encodeURIComponent(c))\r\n\t\t\t.join(',');\r\n\t\tconst query = [`search=${urlSafeClues}`, `page=${page + 1}`, ...this.filters, ...filters, this._sort].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ items: T[] }>(url).pipe(map((res) => res.items));\r\n\t}\r\n\tcount(): Observable<number> {\r\n\t\tconst query = [...this.filters, 'fields.root=count', 'limit=0'].filter((f) => !!f);\r\n\t\tconst url = [this._api, query.join('&')].join('?');\r\n\t\treturn this._http.get<{ count: number }>(url).pipe(map((res) => res.count));\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ILuApiItem } from '../api.model';\r\nimport { ALuApiService } from './api-service.model';\r\nimport { LuApiV3Service } from './api-v3.service';\r\nimport { LuApiV4Service } from './api-v4.service';\r\n\r\n@Injectable()\r\nexport class LuApiHybridService<T extends ILuApiItem = ILuApiItem> extends ALuApiService<T> {\r\n\tprivate _v3Service: LuApiV3Service<T>;\r\n\tprivate _v4Service: LuApiV4Service<T>;\r\n\r\n\tprivate _standard: 'v3' | 'v4' = 'v3';\r\n\tset standard(std: 'v3' | 'v4') {\r\n\t\tthis._standard = std;\r\n\t}\r\n\r\n\t// both\r\n\tset api(api: string) {\r\n\t\tthis._v3Service.api = api;\r\n\t\tthis._v4Service.api = api;\r\n\t}\r\n\tset filters(filters: string[]) {\r\n\t\tthis._v3Service.filters = filters;\r\n\t\tthis._v4Service.filters = filters;\r\n\t}\r\n\r\n\t// api v3 only\r\n\tset fields(fields: string) {\r\n\t\tthis._v3Service.fields = fields;\r\n\t}\r\n\tset orderBy(orderBy: string) {\r\n\t\tthis._v3Service.orderBy = orderBy;\r\n\t}\r\n\r\n\t// api v4 only\r\n\tset sort(sort: string) {\r\n\t\tthis._v4Service.sort = sort;\r\n\t}\r\n\r\n\tprivate get _service(): ALuApiService<T> {\r\n\t\tswitch (this._standard) {\r\n\t\t\tcase 'v4':\r\n\t\t\t\treturn this._v4Service;\r\n\t\t\tcase 'v3':\r\n\t\t\tdefault:\r\n\t\t\t\treturn this._v3Service;\r\n\t\t}\r\n\t}\r\n\r\n\tconstructor(private _http: HttpClient) {\r\n\t\tsuper();\r\n\t\tthis._v3Service = new LuApiV3Service(this._http);\r\n\t\tthis._v4Service = new LuApiV4Service(this._http);\r\n\t}\r\n\r\n\tgetAll(filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.getAll(filters);\r\n\t}\r\n\r\n\tgetPaged(page: number, filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.getPaged(page, filters);\r\n\t}\r\n\r\n\tsearchAll(clue: string, filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.searchAll(clue, filters);\r\n\t}\r\n\r\n\tsearchPaged(clue: string, page: number, filters: string[] = []): Observable<T[]> {\r\n\t\treturn this._service.searchPaged(clue, page, filters);\r\n\t}\r\n}\r\n","import { ChangeDetectionStrategy, Component, forwardRef, Inject, Input, Optional, Self, SkipSelf } from '@angular/core';\r\nimport { ALuOnOpenSubscriber, ILuOnOpenSubscriber } from '@lucca-front/ng/core';\r\nimport { ALuOptionOperator, ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ALuApiService, LuApiHybridService } from '../../service/index';\r\nimport { ALuApiOptionFeeder } from './api-feeder.model';\r\n@Component({\r\n\tselector: 'lu-api-feeder',\r\n\ttemplate: '',\r\n\tstyleUrls: [],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiFeederComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiFeederComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiFeederComponent<T extends ILuApiItem = ILuApiItem> extends ALuApiOptionFeeder<T, LuApiHybridService<T>> implements ILuOptionOperator<T>, ILuOnOpenSubscriber {\r\n\toverride outOptions$ = new BehaviorSubject<T[]>([]);\r\n\tconstructor(\r\n\t\t@Inject(ALuApiService)\r\n\t\t@Optional()\r\n\t\t@SkipSelf()\r\n\t\thostService: LuApiHybridService<T>,\r\n\t\t@Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>,\r\n\t) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\t@Input() set sort(sort: string) {\r\n\t\tthis._service.sort = sort;\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiFeederComponent } from './api-feeder.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiFeederComponent],\r\n\texports: [LuApiFeederComponent],\r\n})\r\nexport class LuApiFeederModule {}\r\n","import { ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { merge, Observable, of, Subject } from 'rxjs';\r\nimport { catchError, map, scan, share, startWith, switchMap } from 'rxjs/operators';\r\nimport { ILuApiService } from '../../service/index';\r\nimport { ILuApiOptionFeeder } from '../feeder/index';\r\n\r\nexport type ILuApiOptionSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem> = ILuApiOptionFeeder<T>;\r\n\r\nexport abstract class ALuApiOptionSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>>\r\n\timplements ILuApiOptionFeeder<T>, ILuOnOpenSubscriber\r\n{\r\n\toutOptions$ = new Subject<T[]>();\r\n\tloading$: Observable<boolean>;\r\n\tempty$: Observable<boolean>;\r\n\r\n\tprotected _clue$: Observable<string>;\r\n\r\n\tset clue$(clue$: Observable<string>) {\r\n\t\t// this.initObservables(clue$);\r\n\t\tthis._clue$ = clue$;\r\n\t}\r\n\tconstructor(protected _service: S) {}\r\n\tinit() {\r\n\t\tthis.initObservables();\r\n\t}\r\n\tonOpen() {\r\n\t\tthis.resetClue();\r\n\t}\r\n\tonClose() {\r\n\t\tthis.clearOptions();\r\n\t}\r\n\tprotected initObservables() {\r\n\t\t// this._clue$ = clue$.pipe(share());\r\n\t\tconst results$ = this._clue$.pipe(\r\n\t\t\tswitchMap((clue) => this._service.searchAll(clue)),\r\n\t\t\tcatchError(() => of([])),\r\n\t\t\tshare(),\r\n\t\t);\r\n\r\n\t\tresults$.subscribe((items) => this.outOptions$.next(items));\r\n\t\tthis.loading$ = merge(this._clue$.pipe(map(() => true)), results$.pipe(map(() => false)));\r\n\t\tthis.empty$ = results$.pipe(map((o) => o.length === 0));\r\n\t}\r\n\tabstract resetClue();\r\n\tprotected clearOptions() {\r\n\t\tthis.outOptions$.next([]);\r\n\t}\r\n}\r\n\r\nexport type ILuApiOptionPagedSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem> = ILuApiOptionSearcher<T>;\r\n\r\nexport abstract class ALuApiOptionPagedSearcher<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>>\r\n\textends ALuApiOptionSearcher<T, S>\r\n\timplements ILuApiOptionPagedSearcher<T>, ILuOnScrollBottomSubscriber\r\n{\r\n\toverride outOptions$ = new Subject<T[]>();\r\n\toverride loading$: Observable<boolean>;\r\n\tprotected _loading = false;\r\n\tprotected _page$ = new Subject<void>();\r\n\tprotected _isLastPage: boolean;\r\n\tprotected _options: T[] = [];\r\n\r\n\tconstructor(service: S) {\r\n\t\tsuper(service);\r\n\t}\r\n\toverride onOpen() {\r\n\t\tthis.resetClue();\r\n\t}\r\n\tonScrollBottom() {\r\n\t\tif (!this._loading && !this._isLastPage) {\r\n\t\t\tthis._page$.next();\r\n\t\t}\r\n\t}\r\n\r\n\tprotected override initObservables() {\r\n\t\tconst pager$ = this._page$.pipe(\r\n\t\t\tscan((acc) => acc + 1, 0),\r\n\t\t\tstartWith(0),\r\n\t\t);\r\n\t\tconst query$ = this._clue$.pipe(\r\n\t\t\tswitchMap((clue) => pager$.pipe(map<number, [number, string]>((page) => [page, clue]))),\r\n\t\t\tshare(),\r\n\t\t);\r\n\r\n\t\tconst results$ = query$.pipe(\r\n\t\t\tswitchMap(([page, clue]) =>\r\n\t\t\t\tthis._service.searchPaged(clue, page).pipe(\r\n\t\t\t\t\tcatchError(() => of([])),\r\n\t\t\t\t\tmap<T[], [T[], number]>((items) => [items, page]),\r\n\t\t\t\t),\r\n\t\t\t),\r\n\t\t\tshare(),\r\n\t\t);\r\n\r\n\t\tresults$.subscribe(([items, page]) => {\r\n\t\t\tif (page === 0) {\r\n\t\t\t\tthis._options = [...items];\r\n\t\t\t} else {\r\n\t\t\t\tthis._options.push(...items);\r\n\t\t\t}\r\n\t\t\tthis._isLastPage = !items.length;\r\n\t\t\tthis.outOptions$.next([...this._options]);\r\n\t\t});\r\n\t\tthis.loading$ = merge(query$.pipe(map(() => true)), results$.pipe(map(() => false)));\r\n\t\tthis.loading$.subscribe((l) => (this._loading = l));\r\n\t\tthis.empty$ = this.outOptions$.pipe(map((o) => o.length === 0));\r\n\t}\r\n\tabstract override resetClue();\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, ElementRef, forwardRef, Inject, Input, OnInit, Optional, Self, SkipSelf, ViewChild } from '@angular/core';\r\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { ALuOnCloseSubscriber, ALuOnOpenSubscriber, ALuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { ALuOptionOperator, LuOptionPlaceholderComponent } from '@lucca-front/ng/option';\r\nimport { Observable } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { ALuApiService, LuApiHybridService } from '../../service/index';\r\nimport { ALuApiOptionPagedSearcher, ALuApiOptionSearcher } from './api-searcher.model';\r\n\r\n@Component({\r\n\tselector: 'lu-api-searcher',\r\n\ttemplateUrl: 'api-searcher.component.html',\r\n\tstyleUrls: ['api-searcher.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [ReactiveFormsModule, CommonModule, LuOptionPlaceholderComponent],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiSearcherComponent<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem> extends ALuApiOptionSearcher<T, LuApiHybridService<T>> implements OnInit {\r\n\t@ViewChild('searchInput', { read: ElementRef, static: true })\r\n\tsearchInput: ElementRef<HTMLElement>;\r\n\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\t@Input() set sort(sort: string) {\r\n\t\tthis._service.sort = sort;\r\n\t}\r\n\t@Input() debounceTime = 250;\r\n\r\n\tclueControl: FormControl;\r\n\tconstructor(\r\n\t\t@Inject(ALuApiService)\r\n\t\t@Optional()\r\n\t\t@SkipSelf()\r\n\t\thostService: LuApiHybridService<T>,\r\n\t\t@Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>,\r\n\t) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.clueControl = new FormControl(undefined);\r\n\t\tthis.clue$ = this.clueControl.valueChanges.pipe(debounceTime(this.debounceTime)) as Observable<string>;\r\n\t\tsuper.init();\r\n\t}\r\n\r\n\toverride onOpen() {\r\n\t\tthis.searchInput.nativeElement.focus();\r\n\t\tsuper.onOpen();\r\n\t}\r\n\tresetClue() {\r\n\t\tthis.clueControl.setValue('');\r\n\t}\r\n}\r\n\r\n@Component({\r\n\tselector: 'lu-api-paged-searcher',\r\n\ttemplateUrl: 'api-searcher.component.html',\r\n\tstyleUrls: ['api-searcher.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [ReactiveFormsModule, CommonModule, LuOptionPlaceholderComponent],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnScrollBottomSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnCloseSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagedSearcherComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiPagedSearcherComponent<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem>\r\n\textends ALuApiOptionPagedSearcher<T, LuApiHybridService<T>>\r\n\timplements OnInit\r\n{\r\n\t@ViewChild('searchInput', { read: ElementRef, static: true })\r\n\tsearchInput: ElementRef<HTMLElement>;\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\t@Input() set sort(sort: string) {\r\n\t\tthis._service.sort = sort;\r\n\t}\r\n\t@Input() debounceTime = 250;\r\n\r\n\tclueControl: FormControl;\r\n\tconstructor(@Inject(ALuApiService) @Optional() @SkipSelf() hostService: LuApiHybridService<T>, @Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.clueControl = new FormControl(undefined);\r\n\t\tthis.clue$ = this.clueControl.valueChanges.pipe(debounceTime(this.debounceTime)) as Observable<string>;\r\n\t\tsuper.init();\r\n\t}\r\n\r\n\toverride onOpen() {\r\n\t\tthis.searchInput.nativeElement.focus();\r\n\t\tsuper.onOpen();\r\n\t}\r\n\tresetClue() {\r\n\t\tthis.clueControl.reset('');\r\n\t}\r\n}\r\n","<div class=\"textfield mod-search\" [class.is-loading]=\"loading$ | async\">\r\n\t<input #searchInput class=\"textfield-input\" [formControl]=\"clueControl\" />\r\n</div>\r\n<lu-option-placeholder *ngIf=\"(empty$ | async) && (loading$ | async) === false\" (onClear)=\"resetClue()\"></lu-option-placeholder>\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiPagedSearcherComponent, LuApiSearcherComponent } from './api-searcher.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiPagedSearcherComponent, LuApiSearcherComponent],\r\n\texports: [LuApiPagedSearcherComponent, LuApiSearcherComponent],\r\n})\r\nexport class LuApiSearcherModule {}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef, Input, Renderer2, ViewContainerRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { LuInputClearerComponent, LuInputDisplayerDirective } from '@lucca-front/ng/input';\r\nimport { ILuOptionItem, LuForOptionsDirective, LuOptionComparer, LuOptionItemComponent, LuOptionPickerAdvancedComponent } from '@lucca-front/ng/option';\r\nimport { ALuSelectInputComponent } from '@lucca-front/ng/select';\r\nimport { LuApiPagedSearcherComponent } from '../searcher';\r\n\r\n@Component({\r\n\tselector: 'lu-api-select',\r\n\ttemplateUrl: './api-select-input.component.html',\r\n\tstyleUrls: ['./api-select-input.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [CommonModule, LuInputClearerComponent, LuOptionPickerAdvancedComponent, LuApiPagedSearcherComponent, LuOptionItemComponent, LuForOptionsDirective, LuInputDisplayerDirective],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: NG_VALUE_ACCESSOR,\r\n\t\t\tuseExisting: forwardRef(() => LuApiSelectInputComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiSelectInputComponent<T extends import('../../api.model').ILuApiItem = import('../../api.model').ILuApiItem>\r\n\textends ALuSelectInputComponent<T, LuOptionPickerAdvancedComponent<T, ILuOptionItem<T>>>\r\n\timplements ControlValueAccessor, AfterViewInit\r\n{\r\n\t@Input() standard: 'v3' | 'v4' = 'v3';\r\n\t@Input() api: string;\r\n\t/**\r\n\t * only works with standard=\"v3\"\r\n\t */\r\n\t@Input() fields: string;\r\n\t@Input() filters: string[];\r\n\t/**\r\n\t * only works with standard=\"v3\", otherwise use sort\r\n\t */\r\n\t@Input() orderBy: string;\r\n\t/**\r\n\t * only works with standard=\"v4\", otherwise use orderBy\r\n\t */\r\n\t@Input() sort: string;\r\n\r\n\tbyId: LuOptionComparer<T> = (option1: T, option2: T) => option1 && option2 && option1.id === option2.id;\r\n\tconstructor(\r\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected override _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\r\n\t}\r\n}\r\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container #display></ng-container>\r\n\t</div>\r\n</div>\r\n<div class=\"lu-select-suffix\">\r\n\t<lu-input-clearer></lu-input-clearer>\r\n</div>\r\n<span [class.chip]=\"multiple\" *luDisplayer=\"let option\">{{ option.name }}</span>\r\n<lu-option-picker-advanced [option-comparer]=\"byId\">\r\n\t<header class=\"lu-picker-header\">\r\n\t\t<lu-api-paged-searcher\r\n\t\t\t[standard]=\"standard\"\r\n\t\t\t[api]=\"api\"\r\n\t\t\t[fields]=\"fields\"\r\n\t\t\t[filters]=\"filters\"\r\n\t\t\t[orderBy]=\"orderBy\"\r\n\t\t\t[sort]=\"sort\"\r\n\t\t></lu-api-paged-searcher>\r\n\t</header>\r\n\t<div class=\"lu-picker-content-option\">\r\n\t\t<lu-option *luForOptions=\"let option\" [value]=\"option\">{{ option.name }}</lu-option>\r\n\t</div>\r\n</lu-option-picker-advanced>\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiSelectInputComponent } from './api-select-input.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiSelectInputComponent],\r\n\texports: [LuApiSelectInputComponent],\r\n})\r\nexport class LuApiSelectInputModule {}\r\n","import { ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { merge, Observable, of, Subject } from 'rxjs';\r\nimport { catchError, distinctUntilChanged, map, switchMap, tap } from 'rxjs/operators';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ILuApiService } from '../../service/index';\r\n\r\nenum Strategy {\r\n\tappend,\r\n\treplace,\r\n}\r\nexport type ILuApiOptionPager<T extends ILuApiItem = ILuApiItem> = ILuOptionOperator<T>;\r\nexport interface ILuApiPagerService<T extends ILuApiItem = ILuApiItem> {\r\n\tgetPaged(page: number): Observable<T[]>;\r\n}\r\n\r\nexport abstract class ALuApiOptionPager<T extends ILuApiItem = ILuApiItem, S extends ILuApiService<T> = ILuApiService<T>>\r\n\timplements ILuApiOptionPager<T>, ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber\r\n{\r\n\toutOptions$ = new Subject<T[]>();\r\n\tloading$: Observable<boolean>;\r\n\r\n\tprotected _loading = false;\r\n\tprotected _results$: Observable<{ items: T[]; strategy: Strategy }>;\r\n\tprotected _options: T[] = [];\r\n\tprotected _page$ = new Subject<number>();\r\n\tprotected _page: number;\r\n\tprotected _initialized = false;\r\n\tconstructor(protected _service: S) {}\r\n\tprotected init() {\r\n\t\tthis.initObservables();\r\n\t}\r\n\tonOpen() {\r\n\t\tif (!this._initialized) {\r\n\t\t\tthis._page$.next(0);\r\n\t\t\tthis._initialized = true;\r\n\t\t}\r\n\t}\r\n\t// onClose() {\r\n\t// \tthis._page$.next(0);\r\n\t// }\r\n\tonScrollBottom() {\r\n\t\tif (!this._loading) {\r\n\t\t\tthis._page$.next(this._page + 1);\r\n\t\t}\r\n\t}\r\n\tprotected initObservables() {\r\n\t\tconst _results$: Observable<{ items: T[]; strategy: Strategy }> = this._page$.pipe(\r\n\t\t\tdistinctUntilChanged(),\r\n\t\t\ttap((p) => (this._page = p)),\r\n\t\t\tswitchMap((page) => {\r\n\t\t\t\tif (page === undefined) {\r\n\t\t\t\t\treturn of({ items: [] as T[], strategy: Strategy.replace });\r\n\t\t\t\t}\r\n\t\t\t\treturn this._service.getPaged(page).pipe(\r\n\t\t\t\t\tmap((items) => ({\r\n\t\t\t\t\t\titems: items,\r\n\t\t\t\t\t\tstrategy: page === 0 ? Strategy.replace : Strategy.append,\r\n\t\t\t\t\t})),\r\n\t\t\t\t);\r\n\t\t\t}),\r\n\t\t\tcatchError(() => of({ items: [] as T[], strategy: Strategy.replace })),\r\n\t\t\ttap((results) => {\r\n\t\t\t\tif (results.strategy === Strategy.replace) {\r\n\t\t\t\t\tthis._options = [...results.items];\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._options.push(...results.items);\r\n\t\t\t\t}\r\n\t\t\t\tthis.outOptions$.next([...this._options]);\r\n\t\t\t}),\r\n\t\t);\r\n\r\n\t\tthis.loading$ = merge(this._page$.pipe(map(() => true)), _results$.pipe(map(() => false)));\r\n\t\tthis.loading$.subscribe((l) => (this._loading = l));\r\n\t}\r\n}\r\n","import { ChangeDetectionStrategy, Component, forwardRef, Inject, Input, OnInit, Optional, Self, SkipSelf } from '@angular/core';\r\nimport { ALuOnOpenSubscriber, ALuOnScrollBottomSubscriber, ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\r\nimport { ALuOptionOperator, ILuOptionOperator } from '@lucca-front/ng/option';\r\nimport { ILuApiItem } from '../../api.model';\r\nimport { ALuApiService, LuApiHybridService } from '../../service/index';\r\nimport { ALuApiOptionPager } from './api-pager.model';\r\n\r\n@Component({\r\n\tselector: 'lu-api-pager',\r\n\ttemplate: '',\r\n\tstyleUrls: [],\r\n\tstandalone: true,\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: ALuOptionOperator,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagerComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuApiService,\r\n\t\t\tuseClass: LuApiHybridService,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnScrollBottomSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagerComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: ALuOnOpenSubscriber,\r\n\t\t\tuseExisting: forwardRef(() => LuApiPagerComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuApiPagerComponent<T extends ILuApiItem = ILuApiItem>\r\n\textends ALuApiOptionPager<T, LuApiHybridService<T>>\r\n\timplements ILuOptionOperator<T>, OnInit, ILuOnScrollBottomSubscriber, ILuOnOpenSubscriber\r\n{\r\n\tconstructor(\r\n\t\t@Inject(ALuApiService)\r\n\t\t@Optional()\r\n\t\t@SkipSelf()\r\n\t\thostService: LuApiHybridService<T>,\r\n\t\t@Inject(ALuApiService) @Self() selfService: LuApiHybridService<T>,\r\n\t) {\r\n\t\tsuper(hostService || selfService);\r\n\t}\r\n\r\n\t@Input() set standard(standard: 'v3' | 'v4') {\r\n\t\tthis._service.standard = standard;\r\n\t}\r\n\t@Input() set api(api: string) {\r\n\t\tthis._service.api = api;\r\n\t}\r\n\t@Input() set fields(fields: string) {\r\n\t\tthis._service.fields = fields;\r\n\t}\r\n\t@Input() set filters(filters: string[]) {\r\n\t\tthis._service.filters = filters;\r\n\t}\r\n\t@Input() set orderBy(orderBy: string) {\r\n\t\tthis._service.orderBy = orderBy;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tsuper.init();\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiPagerComponent } from './api-pager.component';\r\n\r\n@NgModule({\r\n\timports: [LuApiPagerComponent],\r\n\texports: [LuApiPagerComponent],\r\n})\r\nexport class LuApiPagerModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiFeederComponent } from './feeder/index';\r\nimport { LuApiSelectInputComponent } from './input/index';\r\nimport { LuApiPagerComponent } from './pager/index';\r\nimport { LuApiPagedSearcherComponent, LuApiSearcherComponent } from './searcher/index';\r\n\r\n@NgModule({\r\n\timports: [LuApiFeederComponent, LuApiPagedSearcherComponent, LuApiSearcherComponent, LuApiPagerComponent, LuApiSelectInputComponent],\r\n\texports: [LuApiFeederComponent, LuApiPagedSearcherComponent, LuApiSearcherComponent, LuApiPagerComponent, LuApiSelectInputComponent],\r\n})\r\nexport class LuApiSelectModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuApiSelectModule } from './select/index';\r\n\r\n@NgModule({\r\n\timports: [LuApiSelectModule],\r\n\texports: [LuApiSelectModule],\r\n})\r\nexport class LuApiModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, EventEmitter, Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
2
+ import { InjectionToken, EventEmitter, booleanAttribute, Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { getIntl } from '@lucca-front/ng/core';
@@ -24,26 +24,21 @@ class CalloutComponent {
24
24
  this.palette = 'none';
25
25
  this.size = 'M';
26
26
  this.removable = false;
27
- this.hidden = new EventEmitter();
27
+ this.removed = false;
28
+ this.removedChange = new EventEmitter();
28
29
  this.intl = getIntl(LU_CALLOUT_TRANSLATIONS);
29
30
  }
30
- /**
31
- * Emits the hidden event for the consumer to hide the callout.
32
- */
33
- hide() {
34
- this.hidden.emit();
35
- }
36
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CalloutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: CalloutComponent, isStandalone: true, selector: "lu-callout", inputs: { title: "title", palette: "palette", size: "size", removable: "removable", icon: "icon", tiny: "tiny" }, outputs: { hidden: "hidden" }, ngImport: i0, template: "<div class=\"callout palette-{{palette}} mod-{{size}}\" [class.mod-tiny]=\"tiny\">\r\n\t<div class=\"callout-icon\" *ngIf=\"icon\">\r\n\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-{{icon}}\"></span>\r\n\t</div>\r\n\t<div class=\"callout-content\">\r\n\t\t<strong class=\"callout-content-title\" *ngIf=\"title\">{{title}}</strong>\r\n\t\t<div class=\"callout-content-description\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t</div>\r\n\t<button *ngIf=\"removable\" type=\"button\" class=\"callout-kill\" (click)=\"hide()\">\r\n\t\t<span class=\"u-mask\">{{ intl.close }}</span>\r\n\t</button>\r\n</div>\r\n", styles: [".callout{align-items:flex-start;border-radius:var(--commons-borderRadius-M);background-color:var(--palettes-50, var(--palettes-grey-50));color:var(--palettes-grey-800);display:flex;border-color:var(--palettes-100, var(--palettes-grey-100));border-style:solid;border-width:var(--commons-divider-width);gap:.75rem;padding:var(--spacings-XS) .75rem;position:relative}.callout a,.callout .link{color:var(--palettes-grey-800)}.callout a:hover,.callout .link:hover{color:var(--palettes-grey-700)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--spacings-XXS)}.callout-content-title{font-weight:600}.callout-icon{color:var(--palettes-700, var(--palettes-grey-700))}.callout-icon .lucca-icon{font-size:var(--sizes-M-lineHeight)}.callout-kill{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;color:currentColor;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;width:auto}.callout-kill:focus-visible{outline:2px solid var(--palettes-primary-700);outline-offset:2px;border-radius:var(--commons-borderRadius-M)}.callout-kill:before{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;font-size:var(--sizes-S-lineHeight)}@supports (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"/\"\"}}@supports not (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"}}.callout.mod-S{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);gap:.75rem}.callout.mod-S .callout-icon{line-height:var(--sizes-S-lineHeight)}.callout.mod-S .callout-icon .lucca-icon{font-size:var(--sizes-S-lineHeight)}.callout.mod-tiny{display:inline-flex;gap:.375rem;padding:var(--spacings-XS)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: CalloutComponent, isStandalone: true, selector: "lu-callout", inputs: { heading: "heading", palette: "palette", size: "size", removable: "removable", icon: "icon", tiny: "tiny", removed: ["removed", "removed", booleanAttribute] }, outputs: { removedChange: "removedChange" }, ngImport: i0, template: "<div class=\"callout palette-{{palette}} mod-{{size}}\" [class.mod-tiny]=\"tiny\" *ngIf=\"!removed\">\r\n\t<div class=\"callout-icon\" *ngIf=\"icon\">\r\n\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-{{icon}}\"></span>\r\n\t</div>\r\n\t<div class=\"callout-content\">\r\n\t\t<strong class=\"callout-content-title\" *ngIf=\"heading\">{{heading}}</strong>\r\n\t\t<div class=\"callout-content-description\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t</div>\r\n\t<button *ngIf=\"removable\" type=\"button\" class=\"callout-kill\" (click)=\"removed = true; removedChange.emit(true)\">\r\n\t\t<span class=\"u-mask\">{{ intl.close }}</span>\r\n\t</button>\r\n</div>\r\n", styles: [".callout{align-items:flex-start;border-radius:var(--commons-borderRadius-M);background-color:var(--palettes-50, var(--palettes-grey-50));color:var(--palettes-grey-800);display:flex;border-color:var(--palettes-100, var(--palettes-grey-100));border-style:solid;border-width:var(--commons-divider-width);gap:.75rem;padding:var(--spacings-XS) .75rem;position:relative}.callout a,.callout .link{color:var(--palettes-grey-800)}.callout a:hover,.callout .link:hover{color:var(--palettes-grey-700)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--spacings-XXS)}.callout-content-title{font-weight:600}.callout-icon{color:var(--palettes-700, var(--palettes-grey-700))}.callout-icon .lucca-icon{font-size:var(--sizes-M-lineHeight)}.callout-kill{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;color:currentColor;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;width:auto}.callout-kill:focus-visible{outline:2px solid var(--palettes-primary-700);outline-offset:2px;border-radius:var(--commons-borderRadius-M)}.callout-kill:before{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;font-size:var(--sizes-S-lineHeight)}@supports (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"/\"\"}}@supports not (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"}}.callout.mod-S{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);gap:.75rem}.callout.mod-S .callout-icon{line-height:var(--sizes-S-lineHeight)}.callout.mod-S .callout-icon .lucca-icon{font-size:var(--sizes-S-lineHeight)}.callout.mod-tiny{display:inline-flex;gap:.375rem;padding:var(--spacings-XS)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
38
33
  }
39
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CalloutComponent, decorators: [{
40
35
  type: Component,
41
- args: [{ selector: 'lu-callout', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"callout palette-{{palette}} mod-{{size}}\" [class.mod-tiny]=\"tiny\">\r\n\t<div class=\"callout-icon\" *ngIf=\"icon\">\r\n\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-{{icon}}\"></span>\r\n\t</div>\r\n\t<div class=\"callout-content\">\r\n\t\t<strong class=\"callout-content-title\" *ngIf=\"title\">{{title}}</strong>\r\n\t\t<div class=\"callout-content-description\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t</div>\r\n\t<button *ngIf=\"removable\" type=\"button\" class=\"callout-kill\" (click)=\"hide()\">\r\n\t\t<span class=\"u-mask\">{{ intl.close }}</span>\r\n\t</button>\r\n</div>\r\n", styles: [".callout{align-items:flex-start;border-radius:var(--commons-borderRadius-M);background-color:var(--palettes-50, var(--palettes-grey-50));color:var(--palettes-grey-800);display:flex;border-color:var(--palettes-100, var(--palettes-grey-100));border-style:solid;border-width:var(--commons-divider-width);gap:.75rem;padding:var(--spacings-XS) .75rem;position:relative}.callout a,.callout .link{color:var(--palettes-grey-800)}.callout a:hover,.callout .link:hover{color:var(--palettes-grey-700)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--spacings-XXS)}.callout-content-title{font-weight:600}.callout-icon{color:var(--palettes-700, var(--palettes-grey-700))}.callout-icon .lucca-icon{font-size:var(--sizes-M-lineHeight)}.callout-kill{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;color:currentColor;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;width:auto}.callout-kill:focus-visible{outline:2px solid var(--palettes-primary-700);outline-offset:2px;border-radius:var(--commons-borderRadius-M)}.callout-kill:before{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;font-size:var(--sizes-S-lineHeight)}@supports (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"/\"\"}}@supports not (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"}}.callout.mod-S{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);gap:.75rem}.callout.mod-S .callout-icon{line-height:var(--sizes-S-lineHeight)}.callout.mod-S .callout-icon .lucca-icon{font-size:var(--sizes-S-lineHeight)}.callout.mod-tiny{display:inline-flex;gap:.375rem;padding:var(--spacings-XS)}\n"] }]
36
+ args: [{ selector: 'lu-callout', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"callout palette-{{palette}} mod-{{size}}\" [class.mod-tiny]=\"tiny\" *ngIf=\"!removed\">\r\n\t<div class=\"callout-icon\" *ngIf=\"icon\">\r\n\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-{{icon}}\"></span>\r\n\t</div>\r\n\t<div class=\"callout-content\">\r\n\t\t<strong class=\"callout-content-title\" *ngIf=\"heading\">{{heading}}</strong>\r\n\t\t<div class=\"callout-content-description\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t</div>\r\n\t<button *ngIf=\"removable\" type=\"button\" class=\"callout-kill\" (click)=\"removed = true; removedChange.emit(true)\">\r\n\t\t<span class=\"u-mask\">{{ intl.close }}</span>\r\n\t</button>\r\n</div>\r\n", styles: [".callout{align-items:flex-start;border-radius:var(--commons-borderRadius-M);background-color:var(--palettes-50, var(--palettes-grey-50));color:var(--palettes-grey-800);display:flex;border-color:var(--palettes-100, var(--palettes-grey-100));border-style:solid;border-width:var(--commons-divider-width);gap:.75rem;padding:var(--spacings-XS) .75rem;position:relative}.callout a,.callout .link{color:var(--palettes-grey-800)}.callout a:hover,.callout .link:hover{color:var(--palettes-grey-700)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--spacings-XXS)}.callout-content-title{font-weight:600}.callout-icon{color:var(--palettes-700, var(--palettes-grey-700))}.callout-icon .lucca-icon{font-size:var(--sizes-M-lineHeight)}.callout-kill{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;color:currentColor;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;width:auto}.callout-kill:focus-visible{outline:2px solid var(--palettes-primary-700);outline-offset:2px;border-radius:var(--commons-borderRadius-M)}.callout-kill:before{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;font-size:var(--sizes-S-lineHeight)}@supports (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"/\"\"}}@supports not (content: \"*\"/\"\"){.callout-kill:before{content:\"\\e9bf\"}}.callout.mod-S{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);gap:.75rem}.callout.mod-S .callout-icon{line-height:var(--sizes-S-lineHeight)}.callout.mod-S .callout-icon .lucca-icon{font-size:var(--sizes-S-lineHeight)}.callout.mod-tiny{display:inline-flex;gap:.375rem;padding:var(--spacings-XS)}\n"] }]
42
37
  }], propDecorators: {
43
38
  /**
44
39
  * The title of the callout
45
40
  */
46
- title: [{
41
+ heading: [{
47
42
  type: Input
48
43
  }],
49
44
  /**
@@ -86,10 +81,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImpor
86
81
  type: Input
87
82
  }],
88
83
  /**
89
- * Emits void when the callout's close button is clicked.
84
+ * Is the callout removed? Works with two way binding too.
90
85
  *
91
86
  */
92
- hidden: [{
87
+ removed: [{
88
+ type: Input,
89
+ args: [{ transform: booleanAttribute }]
90
+ }], removedChange: [{
93
91
  type: Output
94
92
  }] } });
95
93
 
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-callout.mjs","sources":["../../../packages/ng/callout/callout.translate.ts","../../../packages/ng/callout/callout.component.ts","../../../packages/ng/callout/callout.component.html","../../../packages/ng/callout/lucca-front-ng-callout.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { ILuTranslation } from '@lucca-front/ng/core';\r\n\r\nexport const LU_CALLOUT_TRANSLATIONS = new InjectionToken('LuCalloutTranslations', {\r\n\tfactory: () => luCalloutTranslations,\r\n});\r\n\r\nexport interface LuCalloutLabel {\r\n\tclose: string;\r\n}\r\n\r\nexport const luCalloutTranslations: ILuTranslation<LuCalloutLabel> = {\r\n\ten: {\r\n\t\tclose: 'Close',\r\n\t},\r\n\tfr: {\r\n\t\tclose: 'Fermer',\r\n\t},\r\n\tes: {\r\n\t\tclose: 'Cerrar',\r\n\t},\r\n};\r\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { getIntl, Palette } from '@lucca-front/ng/core';\r\nimport { LU_CALLOUT_TRANSLATIONS } from './callout.translate';\r\n\r\n@Component({\r\n\tselector: 'lu-callout',\r\n\tstandalone: true,\r\n\timports: [CommonModule],\r\n\ttemplateUrl: './callout.component.html',\r\n\tstyleUrls: ['./callout.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class CalloutComponent {\r\n\t@Input()\r\n\t/**\r\n\t * The title of the callout\r\n\t */\r\n\ttitle: string;\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Which palette should be used for the entire callout.\r\n\t * Defaults to none (inherits parent palette)\r\n\t */\r\n\tpalette: Palette = 'none';\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Which size should the callout be? Defaults to medium\r\n\t */\r\n\tsize: 'M' | 'S' = 'M';\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Should we display the remove icon?\r\n\t *\r\n\t * IMPORTANT: the callout won't hide itself, you're responsible for removing\r\n\t * it using *ngIf as you might want to store the information that it has been\r\n\t * hidden. Hook on the `hidden` event emitter for that.\r\n\t */\r\n\tremovable = false;\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Which icon should we display in the callout if any?\r\n\t * Defaults to no icon.\r\n\t */\r\n\ticon: 'info' | 'success' | 'warning' | 'error' | 'help' | string;\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Should we use tiny mode?\r\n\t * WARNING: tiny mode should only be used without a title, there's no runtime\r\n\t * check for this for performance reasons but make sure to never have both title\r\n\t * and tiny.\r\n\t */\r\n\ttiny: boolean;\r\n\r\n\t@Output()\r\n\t/**\r\n\t * Emits void when the callout's close button is clicked.\r\n\t *\r\n\t */\r\n\thidden: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n\tpublic intl = getIntl(LU_CALLOUT_TRANSLATIONS);\r\n\r\n\t/**\r\n\t * Emits the hidden event for the consumer to hide the callout.\r\n\t */\r\n\thide(): void {\r\n\t\tthis.hidden.emit();\r\n\t}\r\n}\r\n","<div class=\"callout palette-{{palette}} mod-{{size}}\" [class.mod-tiny]=\"tiny\">\r\n\t<div class=\"callout-icon\" *ngIf=\"icon\">\r\n\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-{{icon}}\"></span>\r\n\t</div>\r\n\t<div class=\"callout-content\">\r\n\t\t<strong class=\"callout-content-title\" *ngIf=\"title\">{{title}}</strong>\r\n\t\t<div class=\"callout-content-description\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t</div>\r\n\t<button *ngIf=\"removable\" type=\"button\" class=\"callout-kill\" (click)=\"hide()\">\r\n\t\t<span class=\"u-mask\">{{ intl.close }}</span>\r\n\t</button>\r\n</div>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAGa,uBAAuB,GAAG,IAAI,cAAc,CAAC,uBAAuB,EAAE;AAClF,IAAA,OAAO,EAAE,MAAM,qBAAqB;AACpC,CAAA,EAAE;AAMU,MAAA,qBAAqB,GAAmC;AACpE,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,OAAO;AACd,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;;;ACfF,MAQa,gBAAgB,CAAA;AAR7B,IAAA,WAAA,GAAA;QAoBC,IAAO,CAAA,OAAA,GAAY,MAAM,CAAC;QAM1B,IAAI,CAAA,IAAA,GAAc,GAAG,CAAC;QAUtB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AAuBlB,QAAA,IAAA,CAAA,MAAM,GAAuB,IAAI,YAAY,EAAQ,CAAC;AAE/C,QAAA,IAAA,CAAA,IAAI,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAQ/C,KAAA;AANA;;AAEG;IACH,IAAI,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;KACnB;8GA5DW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECb7B,onBAcA,EAAA,MAAA,EAAA,CAAA,+uDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDNW,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAKV,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;+BACC,YAAY,EAAA,UAAA,EACV,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,eAAA,EAGN,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,onBAAA,EAAA,MAAA,EAAA,CAAA,+uDAAA,CAAA,EAAA,CAAA;;AAI/C;;AAEG;QACH,KAAK,EAAA,CAAA;sBAJJ,KAAK;;AAON;;;AAGG;QACH,OAAO,EAAA,CAAA;sBALN,KAAK;;AAQN;;AAEG;QACH,IAAI,EAAA,CAAA;sBAJH,KAAK;;AAON;;;;;;AAMG;QACH,SAAS,EAAA,CAAA;sBARR,KAAK;;AAWN;;;AAGG;QACH,IAAI,EAAA,CAAA;sBALH,KAAK;;AAQN;;;;;AAKG;QACH,IAAI,EAAA,CAAA;sBAPH,KAAK;;AAUN;;;AAGG;QACH,MAAM,EAAA,CAAA;sBALL,MAAM;;;AE3DR;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-callout.mjs","sources":["../../../packages/ng/callout/callout.translate.ts","../../../packages/ng/callout/callout.component.ts","../../../packages/ng/callout/callout.component.html","../../../packages/ng/callout/lucca-front-ng-callout.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { ILuTranslation } from '@lucca-front/ng/core';\r\n\r\nexport const LU_CALLOUT_TRANSLATIONS = new InjectionToken('LuCalloutTranslations', {\r\n\tfactory: () => luCalloutTranslations,\r\n});\r\n\r\nexport interface LuCalloutLabel {\r\n\tclose: string;\r\n}\r\n\r\nexport const luCalloutTranslations: ILuTranslation<LuCalloutLabel> = {\r\n\ten: {\r\n\t\tclose: 'Close',\r\n\t},\r\n\tfr: {\r\n\t\tclose: 'Fermer',\r\n\t},\r\n\tes: {\r\n\t\tclose: 'Cerrar',\r\n\t},\r\n};\r\n","import { booleanAttribute, ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { getIntl, Palette } from '@lucca-front/ng/core';\r\nimport { LU_CALLOUT_TRANSLATIONS } from './callout.translate';\r\n\r\n@Component({\r\n\tselector: 'lu-callout',\r\n\tstandalone: true,\r\n\timports: [CommonModule],\r\n\ttemplateUrl: './callout.component.html',\r\n\tstyleUrls: ['./callout.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class CalloutComponent {\r\n\t@Input()\r\n\t/**\r\n\t * The title of the callout\r\n\t */\r\n\theading: string;\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Which palette should be used for the entire callout.\r\n\t * Defaults to none (inherits parent palette)\r\n\t */\r\n\tpalette: Palette = 'none';\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Which size should the callout be? Defaults to medium\r\n\t */\r\n\tsize: 'M' | 'S' = 'M';\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Should we display the remove icon?\r\n\t *\r\n\t * IMPORTANT: the callout won't hide itself, you're responsible for removing\r\n\t * it using *ngIf as you might want to store the information that it has been\r\n\t * hidden. Hook on the `hidden` event emitter for that.\r\n\t */\r\n\tremovable = false;\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Which icon should we display in the callout if any?\r\n\t * Defaults to no icon.\r\n\t */\r\n\ticon: 'info' | 'success' | 'warning' | 'error' | 'help' | string;\r\n\r\n\t@Input()\r\n\t/**\r\n\t * Should we use tiny mode?\r\n\t * WARNING: tiny mode should only be used without a title, there's no runtime\r\n\t * check for this for performance reasons but make sure to never have both title\r\n\t * and tiny.\r\n\t */\r\n\ttiny: boolean;\r\n\r\n\t@Input({ transform: booleanAttribute })\r\n\t/**\r\n\t * Is the callout removed? Works with two way binding too.\r\n\t *\r\n\t */\r\n\tremoved = false;\r\n\r\n\t@Output()\r\n\tremovedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n\r\n\tpublic intl = getIntl(LU_CALLOUT_TRANSLATIONS);\r\n}\r\n","<div class=\"callout palette-{{palette}} mod-{{size}}\" [class.mod-tiny]=\"tiny\" *ngIf=\"!removed\">\r\n\t<div class=\"callout-icon\" *ngIf=\"icon\">\r\n\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-{{icon}}\"></span>\r\n\t</div>\r\n\t<div class=\"callout-content\">\r\n\t\t<strong class=\"callout-content-title\" *ngIf=\"heading\">{{heading}}</strong>\r\n\t\t<div class=\"callout-content-description\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\t</div>\r\n\t<button *ngIf=\"removable\" type=\"button\" class=\"callout-kill\" (click)=\"removed = true; removedChange.emit(true)\">\r\n\t\t<span class=\"u-mask\">{{ intl.close }}</span>\r\n\t</button>\r\n</div>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAGa,uBAAuB,GAAG,IAAI,cAAc,CAAC,uBAAuB,EAAE;AAClF,IAAA,OAAO,EAAE,MAAM,qBAAqB;AACpC,CAAA,EAAE;AAMU,MAAA,qBAAqB,GAAmC;AACpE,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,OAAO;AACd,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;;;ACfF,MAQa,gBAAgB,CAAA;AAR7B,IAAA,WAAA,GAAA;QAoBC,IAAO,CAAA,OAAA,GAAY,MAAM,CAAC;QAM1B,IAAI,CAAA,IAAA,GAAc,GAAG,CAAC;QAUtB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAuBlB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAGhB,QAAA,IAAA,CAAA,aAAa,GAA0B,IAAI,YAAY,EAAW,CAAC;AAE5D,QAAA,IAAA,CAAA,IAAI,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAC/C,KAAA;8GAzDY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EA8CR,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,gBAAgB,CC3DrC,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,6qBAcA,syDDNW,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAKV,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;+BACC,YAAY,EAAA,UAAA,EACV,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,eAAA,EAGN,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,6qBAAA,EAAA,MAAA,EAAA,CAAA,+uDAAA,CAAA,EAAA,CAAA;;AAI/C;;AAEG;QACH,OAAO,EAAA,CAAA;sBAJN,KAAK;;AAON;;;AAGG;QACH,OAAO,EAAA,CAAA;sBALN,KAAK;;AAQN;;AAEG;QACH,IAAI,EAAA,CAAA;sBAJH,KAAK;;AAON;;;;;;AAMG;QACH,SAAS,EAAA,CAAA;sBARR,KAAK;;AAWN;;;AAGG;QACH,IAAI,EAAA,CAAA;sBALH,KAAK;;AAQN;;;;;AAKG;QACH,IAAI,EAAA,CAAA;sBAPH,KAAK;;AAUN;;;AAGG;QACH,OAAO,EAAA,CAAA;sBALN,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA;gBAQtC,aAAa,EAAA,CAAA;sBADZ,MAAM;;;AElER;;AAEG;;;;"}