@lucca-front/ng 17.2.0 → 17.2.2

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 (100) hide show
  1. package/button/button.component.d.ts +1 -2
  2. package/callout/callout-feedback-list/callout-feedback-list.component.d.ts +1 -2
  3. package/core/public-api.d.ts +1 -1
  4. package/core/tools/class.d.ts +11 -0
  5. package/core-select/api/api-v3.directive.d.ts +25 -0
  6. package/core-select/api/api-v4.directive.d.ts +22 -0
  7. package/core-select/api/api.directive.d.ts +31 -0
  8. package/core-select/api/index.d.ts +5 -0
  9. package/core-select/api/public-api.d.ts +3 -0
  10. package/core-select/input/select-input.component.d.ts +3 -3
  11. package/core-select/option/option.component.d.ts +1 -0
  12. package/esm2022/button/button.component.mjs +7 -8
  13. package/esm2022/callout/callout-feedback-list/callout-feedback-list.component.mjs +6 -7
  14. package/esm2022/core/public-api.mjs +2 -2
  15. package/esm2022/core/tools/class.mjs +75 -0
  16. package/esm2022/core-select/api/api-v3.directive.mjs +62 -0
  17. package/esm2022/core-select/api/api-v4.directive.mjs +56 -0
  18. package/esm2022/core-select/api/api.directive.mjs +46 -0
  19. package/esm2022/core-select/api/lucca-front-ng-core-select-api.mjs +5 -0
  20. package/esm2022/core-select/api/public-api.mjs +4 -0
  21. package/esm2022/core-select/input/select-input.component.mjs +13 -12
  22. package/esm2022/core-select/option/option.component.mjs +5 -4
  23. package/esm2022/empty-state/empty-state-page/empty-state-page.component.mjs +3 -3
  24. package/esm2022/empty-state/empty-state-section/empty-state-section.component.mjs +3 -3
  25. package/esm2022/establishment/select/establishment-select.token.mjs +4 -0
  26. package/esm2022/establishment/select/input/establishment-select-input.component.mjs +13 -16
  27. package/esm2022/establishment/select/legal-unit-selector/legal-unit-selector.directive.mjs +9 -10
  28. package/esm2022/establishment/select/searcher/establishment-searcher.component.mjs +9 -10
  29. package/esm2022/establishment/select/select-all/establishment-select-all.component.mjs +9 -10
  30. package/esm2022/form-field/form-field.component.mjs +11 -10
  31. package/esm2022/icon/icon.component.mjs +3 -3
  32. package/esm2022/inline-message/inline-message.component.mjs +7 -8
  33. package/esm2022/multi-select/displayer/default-displayer.component.mjs +4 -2
  34. package/esm2022/multi-select/input/panel-ref.factory.mjs +6 -6
  35. package/esm2022/multi-select/input/select-input.component.mjs +3 -10
  36. package/esm2022/multi-select/panel/panel.component.mjs +18 -18
  37. package/esm2022/multi-select/select.model.mjs +2 -2
  38. package/esm2022/numeric-badge/numeric-badge.component.mjs +7 -8
  39. package/esm2022/option/item/option-item.component.mjs +3 -3
  40. package/esm2022/option/item/tree-option-item.component.mjs +3 -3
  41. package/esm2022/simple-select/api/api-v3.directive.mjs +6 -62
  42. package/esm2022/simple-select/api/api-v4.directive.mjs +6 -56
  43. package/esm2022/simple-select/api/api.directive.mjs +6 -40
  44. package/esm2022/simple-select/input/panel-ref.factory.mjs +7 -7
  45. package/esm2022/simple-select/input/select-input.component.mjs +2 -9
  46. package/esm2022/simple-select/panel/option-selected.pipe.mjs +17 -0
  47. package/esm2022/simple-select/panel/panel.component.mjs +21 -20
  48. package/esm2022/simple-select/select.model.mjs +2 -2
  49. package/establishment/select/establishment-select.token.d.ts +4 -0
  50. package/establishment/select/input/establishment-select-input.component.d.ts +2 -2
  51. package/establishment/select/legal-unit-selector/legal-unit-selector.directive.d.ts +2 -2
  52. package/establishment/select/searcher/establishment-searcher.component.d.ts +2 -2
  53. package/establishment/select/select-all/establishment-select-all.component.d.ts +2 -2
  54. package/fesm2022/lucca-front-ng-button.mjs +6 -7
  55. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  56. package/fesm2022/lucca-front-ng-callout.mjs +5 -6
  57. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  58. package/fesm2022/lucca-front-ng-core-select-api.mjs +162 -0
  59. package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -0
  60. package/fesm2022/lucca-front-ng-core-select.mjs +16 -14
  61. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  62. package/fesm2022/lucca-front-ng-core.mjs +72 -22
  63. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  64. package/fesm2022/lucca-front-ng-empty-state.mjs +4 -4
  65. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  66. package/fesm2022/lucca-front-ng-establishment.mjs +32 -39
  67. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  68. package/fesm2022/lucca-front-ng-form-field.mjs +10 -9
  69. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  70. package/fesm2022/lucca-front-ng-icon.mjs +2 -2
  71. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  72. package/fesm2022/lucca-front-ng-inline-message.mjs +6 -7
  73. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  74. package/fesm2022/lucca-front-ng-multi-select.mjs +26 -31
  75. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  76. package/fesm2022/lucca-front-ng-numeric-badge.mjs +6 -7
  77. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  78. package/fesm2022/lucca-front-ng-option.mjs +4 -4
  79. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  80. package/fesm2022/lucca-front-ng-simple-select-api.mjs +13 -146
  81. package/fesm2022/lucca-front-ng-simple-select-api.mjs.map +1 -1
  82. package/fesm2022/lucca-front-ng-simple-select.mjs +40 -32
  83. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  84. package/form-field/form-field.component.d.ts +1 -2
  85. package/inline-message/inline-message.component.d.ts +1 -2
  86. package/multi-select/input/panel-ref.factory.d.ts +2 -2
  87. package/multi-select/panel/panel.component.d.ts +5 -5
  88. package/multi-select/select.model.d.ts +3 -12
  89. package/numeric-badge/numeric-badge.component.d.ts +1 -2
  90. package/package.json +26 -20
  91. package/simple-select/api/api-v3.directive.d.ts +5 -25
  92. package/simple-select/api/api-v4.directive.d.ts +5 -22
  93. package/simple-select/api/api.directive.d.ts +5 -32
  94. package/simple-select/input/panel-ref.factory.d.ts +2 -2
  95. package/simple-select/panel/option-selected.pipe.d.ts +7 -0
  96. package/simple-select/panel/panel.component.d.ts +5 -5
  97. package/simple-select/select.model.d.ts +3 -12
  98. package/src/definitions/option/_option-item.scss +1 -0
  99. package/core/tools/ng-clazz.directive.d.ts +0 -9
  100. package/esm2022/core/tools/ng-clazz.directive.mjs +0 -26
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-establishment.mjs","sources":["../../../packages/ng/establishment/select/for-legal-units/for-legal-units.directive.ts","../../../packages/ng/establishment/select/for-legal-units/for-legal-units.module.ts","../../../packages/ng/establishment/service/establishment-service.model.ts","../../../packages/ng/establishment/service/establishment.service.ts","../../../packages/ng/establishment/service/legal-unit-service.model.ts","../../../packages/ng/establishment/service/legal-unit.service.ts","../../../packages/ng/establishment/select/legal-unit-selector/legal-unit-selector.directive.ts","../../../packages/ng/establishment/select/legal-unit-selector/legal-unit-selector.module.ts","../../../packages/ng/establishment/select/searcher/establishment-searcher.component.ts","../../../packages/ng/establishment/select/searcher/establishment-searcher.component.html","../../../packages/ng/establishment/select/searcher/establishment-searcher.module.ts","../../../packages/ng/establishment/select/select-all/establishment-select-all.component.ts","../../../packages/ng/establishment/select/select-all/establishment-select-all.component.html","../../../packages/ng/establishment/select/select-all/establishment-select-all.translate.ts","../../../packages/ng/establishment/select/select-all/establishment-select-all.module.ts","../../../packages/ng/establishment/select/input/establishment-select-input.translate.ts","../../../packages/ng/establishment/select/input/establishment-select-input.component.ts","../../../packages/ng/establishment/select/input/establishment-select-input.component.html","../../../packages/ng/establishment/select/input/establishment-select-input.module.ts","../../../packages/ng/establishment/select/establishment-select.module.ts","../../../packages/ng/establishment/establishment.module.ts","../../../packages/ng/establishment/lucca-front-ng-establishment.ts"],"sourcesContent":["import { ChangeDetectorRef, Directive, forwardRef, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { ILuGroup } from '@lucca-front/ng/core';\nimport { ALuOptionOperator, LuForGroupContext, LuForGroupsDirective } from '@lucca-front/ng/option';\nimport { ILuEstablishment, ILuLegalUnit } from '../../establishment.model';\n\n@Directive({\n\tselector: '[luForLegalUnits]',\n\tstandalone: true,\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionOperator,\n\t\t\tuseExisting: forwardRef(() => LuForLegalUnitsDirective),\n\t\t\tmulti: true,\n\t\t},\n\t],\n})\nexport class LuForLegalUnitsDirective extends LuForGroupsDirective<ILuEstablishment, ILuLegalUnit> {\n\tpublic constructor(\n\t\tprotected override _vcr: ViewContainerRef,\n\t\tprotected override _cdr: ChangeDetectorRef,\n\t\tprotected override _templateRef: TemplateRef<LuForGroupContext<ILuGroup<ILuEstablishment, ILuLegalUnit>>>,\n\t) {\n\t\tsuper(_vcr, _cdr, _templateRef);\n\t}\n\n\tprotected override groupBy(items: ILuEstablishment[]): ILuGroup<ILuEstablishment, ILuLegalUnit>[] {\n\t\tconst groups: ILuGroup<ILuEstablishment, ILuLegalUnit>[] = [];\n\t\titems.forEach((item) => {\n\t\t\tconst legalUnit = item?.legalUnit;\n\t\t\tlet group = groups.find((g) => g.key.id === legalUnit.id);\n\t\t\tif (!group) {\n\t\t\t\tgroup = { key: legalUnit, items: [] };\n\t\t\t\tgroups.push(group);\n\t\t\t}\n\t\t\tgroup.items.push(item);\n\t\t});\n\t\treturn groups;\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuForLegalUnitsDirective } from './for-legal-units.directive';\n\n@NgModule({\n\timports: [LuForLegalUnitsDirective],\n\texports: [LuForLegalUnitsDirective],\n})\nexport class LuForLegalUnitsModule {}\n","import { ILuApiService, ALuApiService } from '@lucca-front/ng/api';\nimport { ILuEstablishment } from '../establishment.model';\n\nexport type ILuEstablishmentService<E extends ILuEstablishment = ILuEstablishment> = ILuApiService<E>;\n\nexport abstract class ALuEstablishmentService<E extends ILuEstablishment = ILuEstablishment> extends ALuApiService<E> implements ILuEstablishmentService<E> {}\n","import { Injectable } from '@angular/core';\nimport { ILuEstablishment } from '../establishment.model';\nimport { HttpClient } from '@angular/common/http';\nimport { LuApiV4Service } from '@lucca-front/ng/api';\n\n@Injectable()\nexport class LuEstablishmentService extends LuApiV4Service<ILuEstablishment> {\n\tprotected override _api = `/organization/structure/api/establishments`;\n\n\tprotected _appInstanceId: number = null;\n\tset appInstanceId(id: number) {\n\t\tthis._appInstanceId = id;\n\t}\n\tprotected _operations: number[] = [];\n\tset operations(ops: number[]) {\n\t\tthis._operations = ops || [];\n\t}\n\toverride get filters(): string[] {\n\t\tconst isScopeFiltered = this._appInstanceId && this._operations.length;\n\n\t\tif (isScopeFiltered) {\n\t\t\tconst appIdFilter = `appInstanceId=${this._appInstanceId}`;\n\t\t\tconst operationFilter = `operations=${this._operations.join(',')}`;\n\n\t\t\treturn [...this._filters, appIdFilter, operationFilter];\n\t\t}\n\n\t\treturn this._filters;\n\t}\n\toverride set filters(filters: string[]) {\n\t\tthis._filters = filters || [];\n\t}\n\n\tconstructor(protected override _http: HttpClient) {\n\t\tsuper(_http);\n\t}\n}\n","import { ALuApiService, ILuApiService } from '@lucca-front/ng/api';\nimport { ILuLegalUnit } from '../establishment.model';\n\nexport type ILuLegalUnitService<E extends ILuLegalUnit = ILuLegalUnit> = ILuApiService<E>;\n\nexport abstract class ALuLegalUnitService<E extends ILuLegalUnit = ILuLegalUnit> extends ALuApiService<E> implements ILuLegalUnitService<E> {}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { LuApiV4Service } from '@lucca-front/ng/api';\nimport { ILuLegalUnit } from '../establishment.model';\n\n@Injectable()\nexport class LuLegalUnitService extends LuApiV4Service<ILuLegalUnit> {\n\tprotected override _api = `/organization/structure/api/legal-units`;\n\n\tprotected _appInstanceId: number = null;\n\tset appInstanceId(id: number) {\n\t\tthis._appInstanceId = id;\n\t}\n\tprotected _operations: number[] = [];\n\tset operations(ops: number[]) {\n\t\tthis._operations = ops || [];\n\t}\n\toverride get filters(): string[] {\n\t\tconst isScopeFiltered = this._appInstanceId && this._operations.length;\n\n\t\tif (isScopeFiltered) {\n\t\t\tconst appIdFilter = `appInstanceId=${this._appInstanceId}`;\n\t\t\tconst operationFilter = `operations=${this._operations.join(',')}`;\n\n\t\t\treturn [...this._filters, appIdFilter, operationFilter];\n\t\t}\n\n\t\treturn this._filters;\n\t}\n\toverride set filters(filters: string[]) {\n\t\tthis._filters = filters || [];\n\t}\n\n\tconstructor(protected override _http: HttpClient) {\n\t\tsuper(_http);\n\t}\n}\n","import { Directive, forwardRef, HostListener, Inject, Input, OnDestroy, Optional, Self, SkipSelf } from '@angular/core';\nimport { ALuOptionSelector, ILuOptionSelector } from '@lucca-front/ng/option';\nimport { Subject, Subscription } from 'rxjs';\nimport { ILuEstablishment, ILuLegalUnit } from '../../establishment.model';\nimport { ALuEstablishmentService, LuEstablishmentService } from '../../service/index';\n\n@Directive({\n\tselector: '[luLegalUnitSelector]',\n\tstandalone: true,\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionSelector,\n\t\t\tuseExisting: forwardRef(() => LuLegalUnitSelectorDirective),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuEstablishmentService,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t],\n})\nexport class LuLegalUnitSelectorDirective implements ILuOptionSelector<ILuEstablishment>, OnDestroy {\n\tmultiple = true;\n\tonSelectValue = new Subject<ILuEstablishment[]>();\n\tprivate _values: ILuEstablishment[];\n\tprivate _service: LuEstablishmentService;\n\tprivate _subs = new Subscription();\n\n\t@Input('luLegalUnitSelector') legalUnit: ILuLegalUnit;\n\t@Input('luLegalUnitSelectorFilters') set filters(filters: string[]) {\n\t\tthis._service.filters = filters;\n\t}\n\t@Input('luLegalUnitSelectorAppInstanceId') set appInstanceId(appId: number) {\n\t\tthis._service.appInstanceId = appId;\n\t}\n\t@Input('luLegalUnitSelectorOperations') set operations(ops: number[]) {\n\t\tthis._service.operations = ops;\n\t}\n\tconstructor(\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\t@SkipSelf()\n\t\thostService: LuEstablishmentService,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Self()\n\t\tselfService: LuEstablishmentService,\n\t) {\n\t\tthis._service = hostService || selfService;\n\t}\n\n\t@HostListener('click')\n\tonClick(): void {\n\t\tconst sub = this._service.getAll([`legalUnitId=${this.legalUnit.id}`]).subscribe((establishments) => {\n\t\t\tif (this.shouldAdd(establishments)) {\n\t\t\t\tconst selectedEstablishmentIds = new Set<number>((this._values ?? []).map((ets) => ets.id));\n\t\t\t\tthis.onSelectValue.next(Array.from([...(this._values ?? []), ...establishments.filter((ets) => !selectedEstablishmentIds.has(ets.id))]));\n\t\t\t} else {\n\t\t\t\tconst establishmentIds = new Set<number>(establishments.map((ets) => ets.id));\n\t\t\t\tthis.onSelectValue.next((this._values ?? []).filter((ets) => !establishmentIds.has(ets.id)));\n\t\t\t}\n\t\t});\n\t\tthis._subs.add(sub);\n\t}\n\n\tsetValue(values: ILuEstablishment[]): void {\n\t\tthis._values = values;\n\t}\n\n\tngOnDestroy() {\n\t\tthis._subs.unsubscribe();\n\t}\n\n\tprivate shouldAdd(establishments: ILuEstablishment[]): boolean {\n\t\tconst selectedCount = (this._values ?? []).filter((ets) => ets.legalUnitId === this.legalUnit.id).length;\n\t\treturn establishments.length > selectedCount;\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuLegalUnitSelectorDirective } from './legal-unit-selector.directive';\n\n@NgModule({\n\timports: [LuLegalUnitSelectorDirective],\n\texports: [LuLegalUnitSelectorDirective],\n})\nexport class LuLegalUnitSelectorModule {}\n","/* eslint-disable max-len */\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, forwardRef, HostBinding, Inject, Input, Optional, Output, Self, SkipSelf, ViewChild } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { ALuOnCloseSubscriber, ALuOnOpenSubscriber, ALuOnScrollBottomSubscriber, ILuOnCloseSubscriber, ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\nimport { ALuOptionOperator, ILuOptionOperator, LuOptionPlaceholderComponent } from '@lucca-front/ng/option';\nimport { Observable, of, Subject } from 'rxjs';\nimport { catchError, debounceTime, map, scan, share, startWith, switchMap, takeWhile, tap } from 'rxjs/operators';\nimport { ILuEstablishment } from '../../establishment.model';\nimport { ALuEstablishmentService, LuEstablishmentService } from '../../service/index';\n\n@Component({\n\tselector: 'lu-establishment-searcher',\n\ttemplateUrl: 'establishment-searcher.component.html',\n\tstyleUrls: ['establishment-searcher.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [ReactiveFormsModule, CommonModule, LuOptionPlaceholderComponent],\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionOperator,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOnOpenSubscriber,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOnCloseSubscriber,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOnScrollBottomSubscriber,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuEstablishmentService,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t],\n})\nexport class LuEstablishmentSearcherComponent implements ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber, ILuOnCloseSubscriber, ILuOptionOperator<ILuEstablishment> {\n\t@Input() set filters(filters: string[]) {\n\t\tthis._service.filters = filters;\n\t}\n\t@Input() set appInstanceId(appId: number) {\n\t\tthis._service.appInstanceId = appId;\n\t}\n\t@Input() set operations(ops: number[]) {\n\t\tthis._service.operations = ops;\n\t}\n\t@Input() set sort(sort: string) {\n\t\tthis._service.sort = sort;\n\t}\n\n\tprivate _service: LuEstablishmentService;\n\n\t@HostBinding('class.position-fixed') fixed = true;\n\t@ViewChild('searchInput', { read: ElementRef, static: true })\n\tsearchInput: ElementRef<HTMLElement>;\n\n\t@Output()\n\tisSearching = new EventEmitter<boolean>();\n\tprivate _isSearching = false;\n\n\tclueControl = new FormControl<string>('');\n\n\tloading = false;\n\n\tprivate _nextPage$ = new Subject<void>();\n\tprivate _page$: Observable<number> = this._nextPage$.pipe(\n\t\tscan((acc) => acc + 1, 0),\n\t\tstartWith(0),\n\t);\n\tprivate _resetOutOptions = new Subject<void>();\n\n\toutOptions$ = this._resetOutOptions.pipe(\n\t\tstartWith(undefined),\n\t\tswitchMap(() =>\n\t\t\tthis.clueControl.valueChanges.pipe(\n\t\t\t\tdebounceTime(100),\n\t\t\t\tswitchMap((clue) =>\n\t\t\t\t\tthis._page$.pipe(\n\t\t\t\t\t\ttap(() => (this.loading = true)),\n\t\t\t\t\t\ttap(() => {\n\t\t\t\t\t\t\t// FIXME refactor, add some spec anywhere\n\t\t\t\t\t\t\tconst isSearching = clue != null && clue !== '';\n\t\t\t\t\t\t\tif (this._isSearching !== isSearching) {\n\t\t\t\t\t\t\t\tthis._isSearching = isSearching;\n\t\t\t\t\t\t\t\tthis.isSearching.emit(this._isSearching);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tswitchMap((page) => this._service.searchPaged(clue, page).pipe(catchError(() => of([] as ILuEstablishment[])))),\n\t\t\t\t\t\ttakeWhile((loadedItems) => !!loadedItems.length),\n\t\t\t\t\t\tscan((acc, next) => [...acc, ...next]),\n\t\t\t\t\t),\n\t\t\t\t),\n\t\t\t\ttap(() => (this.loading = false)),\n\t\t\t),\n\t\t),\n\t\tshare(),\n\t);\n\n\tdisplayPlaceholder$ = this.outOptions$.pipe(map((o) => o?.length === 0 && this._isSearching));\n\n\tconstructor(\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\t@SkipSelf()\n\t\thostService: LuEstablishmentService,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Self()\n\t\tselfService: LuEstablishmentService,\n\t) {\n\t\tthis._service = hostService || selfService;\n\t}\n\n\tonOpen() {\n\t\tthis.searchInput.nativeElement.focus();\n\t\tthis.reset();\n\t}\n\n\tonScrollBottom() {\n\t\tif (!this.loading) {\n\t\t\tthis._nextPage$.next();\n\t\t}\n\t}\n\n\tonClose() {\n\t\tthis._resetOutOptions.next();\n\t}\n\n\treset() {\n\t\tthis.clueControl.reset();\n\t}\n}\n","<form>\n\t<div class=\"textfield mod-search\" [class.is-loading]=\"loading\">\n\t\t<input #searchInput class=\"textfield-input\" [formControl]=\"clueControl\" />\n\t</div>\n</form>\n\n<lu-option-placeholder *ngIf=\"displayPlaceholder$ | async\" (onClear)=\"reset()\"></lu-option-placeholder>\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSearcherComponent } from './establishment-searcher.component';\n\n@NgModule({\n\timports: [LuEstablishmentSearcherComponent],\n\texports: [LuEstablishmentSearcherComponent],\n})\nexport class LuEstablishmentSearcherModule {}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, Inject, Input, OnDestroy, Optional, Self, SkipSelf } from '@angular/core';\nimport { ALuOptionOperator, ALuOptionSelector, LuOptionSelectAllComponent } from '@lucca-front/ng/option';\nimport { Subscription } from 'rxjs';\nimport { ILuEstablishment } from '../../establishment.model';\nimport { ALuEstablishmentService, LuEstablishmentService } from '../../service/index';\n\n@Component({\n\tselector: 'lu-establishment-select-all',\n\ttemplateUrl: './establishment-select-all.component.html',\n\tstyleUrls: ['establishment-select-all.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionOperator,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSelectAllComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOptionSelector,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSelectAllComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuEstablishmentService,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t],\n})\nexport class LuEstablishmentSelectAllComponent extends LuOptionSelectAllComponent<ILuEstablishment> implements OnDestroy {\n\t@Input() set filters(filters: string[]) {\n\t\tthis._service.filters = filters;\n\t}\n\t@Input() set appInstanceId(appInstanceId: number) {\n\t\tthis._service.appInstanceId = appInstanceId;\n\t}\n\t@Input() set operations(operations: number[]) {\n\t\tthis._service.operations = operations;\n\t}\n\n\tloading = false;\n\tprivate _service: LuEstablishmentService;\n\tprivate _subs = new Subscription();\n\n\tconstructor(\n\t\tprivate readonly _changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\t@SkipSelf()\n\t\thostService: LuEstablishmentService,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Self()\n\t\tselfService: LuEstablishmentService,\n\t) {\n\t\tsuper();\n\t\tthis._service = hostService || selfService;\n\t}\n\n\toverride selectAll() {\n\t\tthis.loading = true;\n\t\tconst sub = this._service.getAll().subscribe({\n\t\t\tnext: (establishments) => {\n\t\t\t\tthis.onSelectValue.next([...establishments]);\n\t\t\t},\n\t\t\tcomplete: () => {\n\t\t\t\tthis.loading = false;\n\t\t\t\tthis._changeDetectorRef.detectChanges();\n\t\t\t},\n\t\t});\n\n\t\tthis._subs.add(sub);\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis._subs.unsubscribe();\n\t}\n}\n","<button type=\"button\" (click)=\"selectAll()\" [disabled]=\"loading\" class=\"link selectAll-button\">{{ intl.select }}</button>\n<button type=\"button\" (click)=\"deselectAll()\" [disabled]=\"loading\" class=\"link selectAll-button u-marginLeftXS\">{{ intl.deselect }}</button>\n","import { ILuTranslation } from '@lucca-front/ng/core';\nimport { ILuOptionSelectAllLabel } from '@lucca-front/ng/option';\n\nexport const luEstablishmentSelectAllTranslations: ILuTranslation<ILuOptionSelectAllLabel> = {\n\ten: {\n\t\tselect: 'Select all',\n\t\tdeselect: 'Deselect all',\n\t},\n\tfr: {\n\t\tselect: 'Tout sélectionner',\n\t\tdeselect: 'Tout déselectionner',\n\t},\n\tde: {\n\t\tselect: 'Alle auswählen',\n\t\tdeselect: 'Alle abwählen',\n\t},\n\tpt: {\n\t\tselect: 'Selecionar tudo',\n\t\tdeselect: 'Desselecionar tudo',\n\t},\n\tes: {\n\t\tselect: 'Seleccionar todo',\n\t\tdeselect: 'Desmarcar todo',\n\t},\n};\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSelectAllComponent } from './establishment-select-all.component';\n\n@NgModule({\n\timports: [LuEstablishmentSelectAllComponent],\n\texports: [LuEstablishmentSelectAllComponent],\n})\nexport class LuEstablishmentSelectAllModule {}\n","import { InjectionToken } from '@angular/core';\nimport { ILuTranslation } from '@lucca-front/ng/core';\n\nexport const LU_ESTABLISHMENT_SELECT_INPUT_TRANSLATIONS = new InjectionToken('LuEstablishmentSelectTranslations', {\n\tfactory: () => luEstablishmentSelectInputTranslations,\n});\n\nexport interface ILuEstablishmentSelectInputLabel {\n\testablishments: string;\n}\n\nexport const luEstablishmentSelectInputTranslations: ILuTranslation<ILuEstablishmentSelectInputLabel> = {\n\ten: {\n\t\testablishments: 'establishments',\n\t},\n\tfr: {\n\t\testablishments: 'établissements',\n\t},\n\tes: {\n\t\testablishments: 'establecimiento',\n\t},\n};\n","import { Overlay, OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport {\n\tAfterViewInit,\n\tChangeDetectionStrategy,\n\tChangeDetectorRef,\n\tComponent,\n\tElementRef,\n\tforwardRef,\n\tInject,\n\tInput,\n\tOnInit,\n\tOptional,\n\tRenderer2,\n\tSelf,\n\tSkipSelf,\n\tViewContainerRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { LuInputClearerComponent, LuInputDisplayerDirective } from '@lucca-front/ng/input';\nimport { ILuOptionPickerPanel, LuOptionComparer, LuOptionItemComponent, LuOptionPickerAdvancedComponent } from '@lucca-front/ng/option';\nimport { ILuInputWithPicker } from '@lucca-front/ng/picker';\nimport { ALuSelectInputComponent } from '@lucca-front/ng/select';\nimport { combineLatest } from 'rxjs';\nimport { ILuEstablishment } from '../../establishment.model';\nimport { ALuEstablishmentService, ALuLegalUnitService, LuEstablishmentService, LuLegalUnitService } from '../../service/index';\nimport { LuForLegalUnitsDirective } from '../for-legal-units';\nimport { LuLegalUnitSelectorDirective } from '../legal-unit-selector';\nimport { LuEstablishmentSearcherComponent } from '../searcher';\nimport { LuEstablishmentSelectAllComponent } from '../select-all';\nimport { LU_ESTABLISHMENT_SELECT_INPUT_TRANSLATIONS } from './establishment-select-input.translate';\n\n@Component({\n\tselector: 'lu-establishment-select',\n\ttemplateUrl: './establishment-select-input.component.html',\n\tstyleUrls: ['./establishment-select-input.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tCommonModule,\n\t\tOverlayModule,\n\t\tLuInputClearerComponent,\n\t\tLuOptionPickerAdvancedComponent,\n\t\tLuEstablishmentSearcherComponent,\n\t\tLuEstablishmentSelectAllComponent,\n\t\tLuLegalUnitSelectorDirective,\n\t\tLuOptionItemComponent,\n\t\tLuForLegalUnitsDirective,\n\t\tLuInputDisplayerDirective,\n\t],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSelectInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuEstablishmentService,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuLegalUnitService,\n\t\t\tuseClass: LuLegalUnitService,\n\t\t},\n\t],\n})\nexport class LuEstablishmentSelectInputComponent<\n\t\tD extends import('../../establishment.model').ILuEstablishment = import('../../establishment.model').ILuEstablishment,\n\t\tP extends ILuOptionPickerPanel<D> = ILuOptionPickerPanel<D>,\n\t>\n\textends ALuSelectInputComponent<D, P>\n\timplements ControlValueAccessor, ILuInputWithPicker<D>, OnInit, AfterViewInit\n{\n\tbyId: LuOptionComparer<D> = (option1: D, option2: D) => option1 && option2 && option1.id === option2.id;\n\n\t@Input() filters: string[];\n\t@Input() appInstanceId: number;\n\t@Input() operations: number[];\n\n\tprivate _establishmentService: LuEstablishmentService;\n\tprivate _legalUnitService: LuLegalUnitService;\n\n\tisSearching = false;\n\tgroupByLu = true;\n\n\tget sort(): string {\n\t\treturn this.isSearching ? 'name' : 'legalunit.name,name';\n\t}\n\n\tpublic intl = getIntl(LU_ESTABLISHMENT_SELECT_INPUT_TRANSLATIONS);\n\n\tconstructor(\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\n\t\tprotected override _overlay: Overlay,\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\n\t\tprotected override _viewContainerRef: ViewContainerRef,\n\t\tprotected override _renderer: Renderer2,\n\t\t@Inject(ALuLegalUnitService)\n\t\t@Optional()\n\t\t@SkipSelf()\n\t\thostLuService: LuLegalUnitService,\n\t\t@Inject(ALuLegalUnitService) @Self() selfLuService: LuLegalUnitService,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\t@SkipSelf()\n\t\thostEstablishmentService: LuEstablishmentService,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Self()\n\t\tselfEstablishmentService: LuEstablishmentService,\n\t) {\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\n\t\tthis._establishmentService = hostEstablishmentService || selfEstablishmentService;\n\t\tthis._legalUnitService = hostLuService || selfLuService;\n\t}\n\n\tngOnInit() {\n\t\tthis._subs.add(\n\t\t\tcombineLatest([this._legalUnitService.count(), this._establishmentService.count()]).subscribe(([luCount, establishmentCount]) => {\n\t\t\t\tthis.groupByLu = luCount > 1 && establishmentCount > 1 && luCount !== establishmentCount;\n\t\t\t}),\n\t\t);\n\t}\n\n\tonIsSearchingChanged(isSearching: boolean) {\n\t\tthis.isSearching = isSearching;\n\t\tthis._changeDetectorRef.detectChanges();\n\t}\n\n\ttrackById(idx: number, item: ILuEstablishment): number {\n\t\treturn item.id;\n\t}\n}\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper\">\n\t\t<ng-container #display></ng-container>\n\t</div>\n</div>\n<div class=\"lu-select-suffix\">\n\t<lu-input-clearer></lu-input-clearer>\n</div>\n\n<ng-template luDisplayer [luDisplayerMultiple]=\"true\" let-values>\n\t<span *ngIf=\"multiple && values?.length > 1; else singleView\"\n\t\t><span class=\"numericBadge\">{{ values.length }}</span> {{ intl.establishments }}</span\n\t>\n\t<ng-template #singleView>{{ (values[0] || values).name }}</ng-template>\n</ng-template>\n\n<lu-option-picker-advanced [option-comparer]=\"byId\">\n\t<header class=\"lu-picker-header\">\n\t\t<lu-establishment-searcher\n\t\t\t[filters]=\"filters\"\n\t\t\t[appInstanceId]=\"appInstanceId\"\n\t\t\t[operations]=\"operations\"\n\t\t\t[sort]=\"sort\"\n\t\t\t(isSearching)=\"onIsSearchingChanged($event)\"\n\t\t></lu-establishment-searcher>\n\t\t<lu-establishment-select-all\n\t\t\t*ngIf=\"multiple\"\n\t\t\tclass=\"u-displayBlock\"\n\t\t\t[class.u-displayNone]=\"isSearching\"\n\t\t\t[filters]=\"filters\"\n\t\t\t[appInstanceId]=\"appInstanceId\"\n\t\t\t[operations]=\"operations\"\n\t\t></lu-establishment-select-all>\n\t</header>\n\n\t<ng-template luForLegalUnits let-group>\n\t\t<div class=\"optionGroup\">\n\t\t\t<ng-container *ngIf=\"groupByLu && !isSearching\">\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t*ngIf=\"multiple; else singleViewGroup\"\n\t\t\t\t\tclass=\"optionGroupName button mod-text mod-block\"\n\t\t\t\t\t[luLegalUnitSelector]=\"group.key\"\n\t\t\t\t\t[luLegalUnitSelectorFilters]=\"filters\"\n\t\t\t\t\t[luLegalUnitSelectorAppInstanceId]=\"appInstanceId\"\n\t\t\t\t\t[luLegalUnitSelectorOperations]=\"operations\"\n\t\t\t\t>\n\t\t\t\t\t{{ group.key.name }}\n\t\t\t\t</button>\n\t\t\t\t<ng-template #singleViewGroup>\n\t\t\t\t\t<h5 class=\"optionGroupName mod-readonly u-margin0\">{{ group.key.name }}</h5>\n\t\t\t\t</ng-template>\n\t\t\t</ng-container>\n\n\t\t\t<div class=\"lu-picker-content-option\">\n\t\t\t\t<lu-option *ngFor=\"let establishment of group.items; trackBy: trackById\" [value]=\"establishment\" class=\"establishmentOption\">\n\t\t\t\t\t<ng-container *ngIf=\"isSearching; else emptySearch\">\n\t\t\t\t\t\t<span class=\"u-displayBlock\">{{ establishment.name }}</span>\n\t\t\t\t\t\t<span *ngIf=\"groupByLu\" class=\"u-displayBlock u-textLight u-textS\">{{ group.key.name }}</span>\n\t\t\t\t\t</ng-container>\n\t\t\t\t\t<ng-template #emptySearch>\n\t\t\t\t\t\t<span>{{ establishment.name }}</span>\n\t\t\t\t\t</ng-template>\n\t\t\t\t</lu-option>\n\t\t\t</div>\n\t\t</div>\n\t</ng-template>\n</lu-option-picker-advanced>\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSelectInputComponent } from './establishment-select-input.component';\n\n@NgModule({\n\timports: [LuEstablishmentSelectInputComponent],\n\texports: [LuEstablishmentSelectInputComponent],\n})\nexport class LuEstablishmentSelectInputModule {}\n","import { NgModule } from '@angular/core';\nimport { LuForLegalUnitsDirective } from './for-legal-units/index';\nimport { LuEstablishmentSelectInputComponent } from './input';\nimport { LuLegalUnitSelectorDirective } from './legal-unit-selector/index';\nimport { LuEstablishmentSearcherComponent } from './searcher';\nimport { LuEstablishmentSelectAllComponent } from './select-all/index';\n\n@NgModule({\n\timports: [LuEstablishmentSelectInputComponent, LuEstablishmentSearcherComponent, LuForLegalUnitsDirective, LuLegalUnitSelectorDirective, LuEstablishmentSelectAllComponent],\n\texports: [LuEstablishmentSelectInputComponent, LuEstablishmentSearcherComponent, LuForLegalUnitsDirective, LuLegalUnitSelectorDirective, LuEstablishmentSelectAllComponent],\n})\nexport class LuEstablishmentSelectModule {}\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSelectModule } from './select/index';\n\n@NgModule({\n\timports: [LuEstablishmentSelectModule],\n\texports: [LuEstablishmentSelectModule],\n})\nexport class LuEstablishmentModule {}\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-establishment.mjs","sources":["../../../packages/ng/establishment/select/for-legal-units/for-legal-units.directive.ts","../../../packages/ng/establishment/select/for-legal-units/for-legal-units.module.ts","../../../packages/ng/establishment/service/establishment-service.model.ts","../../../packages/ng/establishment/service/establishment.service.ts","../../../packages/ng/establishment/service/legal-unit-service.model.ts","../../../packages/ng/establishment/service/legal-unit.service.ts","../../../packages/ng/establishment/select/establishment-select.token.ts","../../../packages/ng/establishment/select/legal-unit-selector/legal-unit-selector.directive.ts","../../../packages/ng/establishment/select/legal-unit-selector/legal-unit-selector.module.ts","../../../packages/ng/establishment/select/searcher/establishment-searcher.component.ts","../../../packages/ng/establishment/select/searcher/establishment-searcher.component.html","../../../packages/ng/establishment/select/searcher/establishment-searcher.module.ts","../../../packages/ng/establishment/select/select-all/establishment-select-all.component.ts","../../../packages/ng/establishment/select/select-all/establishment-select-all.component.html","../../../packages/ng/establishment/select/select-all/establishment-select-all.translate.ts","../../../packages/ng/establishment/select/select-all/establishment-select-all.module.ts","../../../packages/ng/establishment/select/input/establishment-select-input.translate.ts","../../../packages/ng/establishment/select/input/establishment-select-input.component.ts","../../../packages/ng/establishment/select/input/establishment-select-input.component.html","../../../packages/ng/establishment/select/input/establishment-select-input.module.ts","../../../packages/ng/establishment/select/establishment-select.module.ts","../../../packages/ng/establishment/establishment.module.ts","../../../packages/ng/establishment/lucca-front-ng-establishment.ts"],"sourcesContent":["import { ChangeDetectorRef, Directive, forwardRef, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { ILuGroup } from '@lucca-front/ng/core';\nimport { ALuOptionOperator, LuForGroupContext, LuForGroupsDirective } from '@lucca-front/ng/option';\nimport { ILuEstablishment, ILuLegalUnit } from '../../establishment.model';\n\n@Directive({\n\tselector: '[luForLegalUnits]',\n\tstandalone: true,\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionOperator,\n\t\t\tuseExisting: forwardRef(() => LuForLegalUnitsDirective),\n\t\t\tmulti: true,\n\t\t},\n\t],\n})\nexport class LuForLegalUnitsDirective extends LuForGroupsDirective<ILuEstablishment, ILuLegalUnit> {\n\tpublic constructor(\n\t\tprotected override _vcr: ViewContainerRef,\n\t\tprotected override _cdr: ChangeDetectorRef,\n\t\tprotected override _templateRef: TemplateRef<LuForGroupContext<ILuGroup<ILuEstablishment, ILuLegalUnit>>>,\n\t) {\n\t\tsuper(_vcr, _cdr, _templateRef);\n\t}\n\n\tprotected override groupBy(items: ILuEstablishment[]): ILuGroup<ILuEstablishment, ILuLegalUnit>[] {\n\t\tconst groups: ILuGroup<ILuEstablishment, ILuLegalUnit>[] = [];\n\t\titems.forEach((item) => {\n\t\t\tconst legalUnit = item?.legalUnit;\n\t\t\tlet group = groups.find((g) => g.key.id === legalUnit.id);\n\t\t\tif (!group) {\n\t\t\t\tgroup = { key: legalUnit, items: [] };\n\t\t\t\tgroups.push(group);\n\t\t\t}\n\t\t\tgroup.items.push(item);\n\t\t});\n\t\treturn groups;\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuForLegalUnitsDirective } from './for-legal-units.directive';\n\n@NgModule({\n\timports: [LuForLegalUnitsDirective],\n\texports: [LuForLegalUnitsDirective],\n})\nexport class LuForLegalUnitsModule {}\n","import { ILuApiService, ALuApiService } from '@lucca-front/ng/api';\nimport { ILuEstablishment } from '../establishment.model';\n\nexport type ILuEstablishmentService<E extends ILuEstablishment = ILuEstablishment> = ILuApiService<E>;\n\nexport abstract class ALuEstablishmentService<E extends ILuEstablishment = ILuEstablishment> extends ALuApiService<E> implements ILuEstablishmentService<E> {}\n","import { Injectable } from '@angular/core';\nimport { ILuEstablishment } from '../establishment.model';\nimport { HttpClient } from '@angular/common/http';\nimport { LuApiV4Service } from '@lucca-front/ng/api';\n\n@Injectable()\nexport class LuEstablishmentService extends LuApiV4Service<ILuEstablishment> {\n\tprotected override _api = `/organization/structure/api/establishments`;\n\n\tprotected _appInstanceId: number = null;\n\tset appInstanceId(id: number) {\n\t\tthis._appInstanceId = id;\n\t}\n\tprotected _operations: number[] = [];\n\tset operations(ops: number[]) {\n\t\tthis._operations = ops || [];\n\t}\n\toverride get filters(): string[] {\n\t\tconst isScopeFiltered = this._appInstanceId && this._operations.length;\n\n\t\tif (isScopeFiltered) {\n\t\t\tconst appIdFilter = `appInstanceId=${this._appInstanceId}`;\n\t\t\tconst operationFilter = `operations=${this._operations.join(',')}`;\n\n\t\t\treturn [...this._filters, appIdFilter, operationFilter];\n\t\t}\n\n\t\treturn this._filters;\n\t}\n\toverride set filters(filters: string[]) {\n\t\tthis._filters = filters || [];\n\t}\n\n\tconstructor(protected override _http: HttpClient) {\n\t\tsuper(_http);\n\t}\n}\n","import { ALuApiService, ILuApiService } from '@lucca-front/ng/api';\nimport { ILuLegalUnit } from '../establishment.model';\n\nexport type ILuLegalUnitService<E extends ILuLegalUnit = ILuLegalUnit> = ILuApiService<E>;\n\nexport abstract class ALuLegalUnitService<E extends ILuLegalUnit = ILuLegalUnit> extends ALuApiService<E> implements ILuLegalUnitService<E> {}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { LuApiV4Service } from '@lucca-front/ng/api';\nimport { ILuLegalUnit } from '../establishment.model';\n\n@Injectable()\nexport class LuLegalUnitService extends LuApiV4Service<ILuLegalUnit> {\n\tprotected override _api = `/organization/structure/api/legal-units`;\n\n\tprotected _appInstanceId: number = null;\n\tset appInstanceId(id: number) {\n\t\tthis._appInstanceId = id;\n\t}\n\tprotected _operations: number[] = [];\n\tset operations(ops: number[]) {\n\t\tthis._operations = ops || [];\n\t}\n\toverride get filters(): string[] {\n\t\tconst isScopeFiltered = this._appInstanceId && this._operations.length;\n\n\t\tif (isScopeFiltered) {\n\t\t\tconst appIdFilter = `appInstanceId=${this._appInstanceId}`;\n\t\t\tconst operationFilter = `operations=${this._operations.join(',')}`;\n\n\t\t\treturn [...this._filters, appIdFilter, operationFilter];\n\t\t}\n\n\t\treturn this._filters;\n\t}\n\toverride set filters(filters: string[]) {\n\t\tthis._filters = filters || [];\n\t}\n\n\tconstructor(protected override _http: HttpClient) {\n\t\tsuper(_http);\n\t}\n}\n","import { InjectionToken } from '@angular/core';\nimport { ILuEstablishmentService, ILuLegalUnitService } from '../service';\n\nexport const DEFAULT_ESTABLISHMENT_SERVICE = new InjectionToken<ILuEstablishmentService>('Default establishment service');\nexport const DEFAULT_LEGAL_UNIT_SERVICE = new InjectionToken<ILuLegalUnitService>('Default legal unit service');\n","import { Directive, forwardRef, HostListener, Inject, Input, OnDestroy, Optional, Self } from '@angular/core';\nimport { ALuOptionSelector, ILuOptionSelector } from '@lucca-front/ng/option';\nimport { Subject, Subscription } from 'rxjs';\nimport { ILuEstablishment, ILuLegalUnit } from '../../establishment.model';\nimport { ALuEstablishmentService, LuEstablishmentService } from '../../service/index';\nimport { DEFAULT_ESTABLISHMENT_SERVICE } from '../establishment-select.token';\n\n@Directive({\n\tselector: '[luLegalUnitSelector]',\n\tstandalone: true,\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionSelector,\n\t\t\tuseExisting: forwardRef(() => LuLegalUnitSelectorDirective),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: DEFAULT_ESTABLISHMENT_SERVICE,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t],\n})\nexport class LuLegalUnitSelectorDirective implements ILuOptionSelector<ILuEstablishment>, OnDestroy {\n\tmultiple = true;\n\tonSelectValue = new Subject<ILuEstablishment[]>();\n\tprivate _values: ILuEstablishment[];\n\tprivate _service: LuEstablishmentService;\n\tprivate _subs = new Subscription();\n\n\t@Input('luLegalUnitSelector') legalUnit: ILuLegalUnit;\n\t@Input('luLegalUnitSelectorFilters') set filters(filters: string[]) {\n\t\tthis._service.filters = filters;\n\t}\n\t@Input('luLegalUnitSelectorAppInstanceId') set appInstanceId(appId: number) {\n\t\tthis._service.appInstanceId = appId;\n\t}\n\t@Input('luLegalUnitSelectorOperations') set operations(ops: number[]) {\n\t\tthis._service.operations = ops;\n\t}\n\tconstructor(\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\tcustomService: LuEstablishmentService,\n\t\t@Inject(DEFAULT_ESTABLISHMENT_SERVICE)\n\t\t@Self()\n\t\tdefaultService: LuEstablishmentService,\n\t) {\n\t\tthis._service = customService || defaultService;\n\t}\n\n\t@HostListener('click')\n\tonClick(): void {\n\t\tconst sub = this._service.getAll([`legalUnitId=${this.legalUnit.id}`]).subscribe((establishments) => {\n\t\t\tif (this.shouldAdd(establishments)) {\n\t\t\t\tconst selectedEstablishmentIds = new Set<number>((this._values ?? []).map((ets) => ets.id));\n\t\t\t\tthis.onSelectValue.next(Array.from([...(this._values ?? []), ...establishments.filter((ets) => !selectedEstablishmentIds.has(ets.id))]));\n\t\t\t} else {\n\t\t\t\tconst establishmentIds = new Set<number>(establishments.map((ets) => ets.id));\n\t\t\t\tthis.onSelectValue.next((this._values ?? []).filter((ets) => !establishmentIds.has(ets.id)));\n\t\t\t}\n\t\t});\n\t\tthis._subs.add(sub);\n\t}\n\n\tsetValue(values: ILuEstablishment[]): void {\n\t\tthis._values = values;\n\t}\n\n\tngOnDestroy() {\n\t\tthis._subs.unsubscribe();\n\t}\n\n\tprivate shouldAdd(establishments: ILuEstablishment[]): boolean {\n\t\tconst selectedCount = (this._values ?? []).filter((ets) => ets.legalUnitId === this.legalUnit.id).length;\n\t\treturn establishments.length > selectedCount;\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { LuLegalUnitSelectorDirective } from './legal-unit-selector.directive';\n\n@NgModule({\n\timports: [LuLegalUnitSelectorDirective],\n\texports: [LuLegalUnitSelectorDirective],\n})\nexport class LuLegalUnitSelectorModule {}\n","/* eslint-disable max-len */\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, forwardRef, HostBinding, Inject, Input, Optional, Output, Self, ViewChild } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { ALuOnCloseSubscriber, ALuOnOpenSubscriber, ALuOnScrollBottomSubscriber, ILuOnCloseSubscriber, ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber } from '@lucca-front/ng/core';\nimport { ALuOptionOperator, ILuOptionOperator, LuOptionPlaceholderComponent } from '@lucca-front/ng/option';\nimport { Observable, of, Subject } from 'rxjs';\nimport { catchError, debounceTime, map, scan, share, startWith, switchMap, takeWhile, tap } from 'rxjs/operators';\nimport { ILuEstablishment } from '../../establishment.model';\nimport { ALuEstablishmentService, LuEstablishmentService } from '../../service/index';\nimport { DEFAULT_ESTABLISHMENT_SERVICE } from '../establishment-select.token';\n\n@Component({\n\tselector: 'lu-establishment-searcher',\n\ttemplateUrl: 'establishment-searcher.component.html',\n\tstyleUrls: ['establishment-searcher.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [ReactiveFormsModule, CommonModule, LuOptionPlaceholderComponent],\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionOperator,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOnOpenSubscriber,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOnCloseSubscriber,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOnScrollBottomSubscriber,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSearcherComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: DEFAULT_ESTABLISHMENT_SERVICE,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t],\n})\nexport class LuEstablishmentSearcherComponent implements ILuOnOpenSubscriber, ILuOnScrollBottomSubscriber, ILuOnCloseSubscriber, ILuOptionOperator<ILuEstablishment> {\n\t@Input() set filters(filters: string[]) {\n\t\tthis._service.filters = filters;\n\t}\n\t@Input() set appInstanceId(appId: number) {\n\t\tthis._service.appInstanceId = appId;\n\t}\n\t@Input() set operations(ops: number[]) {\n\t\tthis._service.operations = ops;\n\t}\n\t@Input() set sort(sort: string) {\n\t\tthis._service.sort = sort;\n\t}\n\n\tprivate _service: LuEstablishmentService;\n\n\t@HostBinding('class.position-fixed') fixed = true;\n\t@ViewChild('searchInput', { read: ElementRef, static: true })\n\tsearchInput: ElementRef<HTMLElement>;\n\n\t@Output()\n\tisSearching = new EventEmitter<boolean>();\n\tprivate _isSearching = false;\n\n\tclueControl = new FormControl<string>('');\n\n\tloading = false;\n\n\tprivate _nextPage$ = new Subject<void>();\n\tprivate _page$: Observable<number> = this._nextPage$.pipe(\n\t\tscan((acc) => acc + 1, 0),\n\t\tstartWith(0),\n\t);\n\tprivate _resetOutOptions = new Subject<void>();\n\n\toutOptions$ = this._resetOutOptions.pipe(\n\t\tstartWith(undefined),\n\t\tswitchMap(() =>\n\t\t\tthis.clueControl.valueChanges.pipe(\n\t\t\t\tdebounceTime(100),\n\t\t\t\tswitchMap((clue) =>\n\t\t\t\t\tthis._page$.pipe(\n\t\t\t\t\t\ttap(() => (this.loading = true)),\n\t\t\t\t\t\ttap(() => {\n\t\t\t\t\t\t\t// FIXME refactor, add some spec anywhere\n\t\t\t\t\t\t\tconst isSearching = clue != null && clue !== '';\n\t\t\t\t\t\t\tif (this._isSearching !== isSearching) {\n\t\t\t\t\t\t\t\tthis._isSearching = isSearching;\n\t\t\t\t\t\t\t\tthis.isSearching.emit(this._isSearching);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tswitchMap((page) => this._service.searchPaged(clue, page).pipe(catchError(() => of([] as ILuEstablishment[])))),\n\t\t\t\t\t\ttakeWhile((loadedItems) => !!loadedItems.length),\n\t\t\t\t\t\tscan((acc, next) => [...acc, ...next]),\n\t\t\t\t\t),\n\t\t\t\t),\n\t\t\t\ttap(() => (this.loading = false)),\n\t\t\t),\n\t\t),\n\t\tshare(),\n\t);\n\n\tdisplayPlaceholder$ = this.outOptions$.pipe(map((o) => o?.length === 0 && this._isSearching));\n\n\tconstructor(\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\tcustomService: LuEstablishmentService,\n\t\t@Inject(DEFAULT_ESTABLISHMENT_SERVICE)\n\t\t@Self()\n\t\tdefaultService: LuEstablishmentService,\n\t) {\n\t\tthis._service = customService || defaultService;\n\t}\n\n\tonOpen() {\n\t\tthis.searchInput.nativeElement.focus();\n\t\tthis.reset();\n\t}\n\n\tonScrollBottom() {\n\t\tif (!this.loading) {\n\t\t\tthis._nextPage$.next();\n\t\t}\n\t}\n\n\tonClose() {\n\t\tthis._resetOutOptions.next();\n\t}\n\n\treset() {\n\t\tthis.clueControl.reset();\n\t}\n}\n","<form>\n\t<div class=\"textfield mod-search\" [class.is-loading]=\"loading\">\n\t\t<input #searchInput class=\"textfield-input\" [formControl]=\"clueControl\" />\n\t</div>\n</form>\n\n<lu-option-placeholder *ngIf=\"displayPlaceholder$ | async\" (onClear)=\"reset()\"></lu-option-placeholder>\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSearcherComponent } from './establishment-searcher.component';\n\n@NgModule({\n\timports: [LuEstablishmentSearcherComponent],\n\texports: [LuEstablishmentSearcherComponent],\n})\nexport class LuEstablishmentSearcherModule {}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, Inject, Input, OnDestroy, Optional, Self } from '@angular/core';\nimport { ALuOptionOperator, ALuOptionSelector, LuOptionSelectAllComponent } from '@lucca-front/ng/option';\nimport { Subscription } from 'rxjs';\nimport { ILuEstablishment } from '../../establishment.model';\nimport { ALuEstablishmentService, LuEstablishmentService } from '../../service/index';\nimport { DEFAULT_ESTABLISHMENT_SERVICE } from '../establishment-select.token';\n\n@Component({\n\tselector: 'lu-establishment-select-all',\n\ttemplateUrl: './establishment-select-all.component.html',\n\tstyleUrls: ['establishment-select-all.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\tproviders: [\n\t\t{\n\t\t\tprovide: ALuOptionOperator,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSelectAllComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: ALuOptionSelector,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSelectAllComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: DEFAULT_ESTABLISHMENT_SERVICE,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t],\n})\nexport class LuEstablishmentSelectAllComponent extends LuOptionSelectAllComponent<ILuEstablishment> implements OnDestroy {\n\t@Input() set filters(filters: string[]) {\n\t\tthis._service.filters = filters;\n\t}\n\t@Input() set appInstanceId(appInstanceId: number) {\n\t\tthis._service.appInstanceId = appInstanceId;\n\t}\n\t@Input() set operations(operations: number[]) {\n\t\tthis._service.operations = operations;\n\t}\n\n\tloading = false;\n\tprivate _service: LuEstablishmentService;\n\tprivate _subs = new Subscription();\n\n\tconstructor(\n\t\tprivate readonly _changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\tcustomService: LuEstablishmentService,\n\t\t@Inject(DEFAULT_ESTABLISHMENT_SERVICE)\n\t\t@Self()\n\t\tdefaultService: LuEstablishmentService,\n\t) {\n\t\tsuper();\n\t\tthis._service = customService || defaultService;\n\t}\n\n\toverride selectAll() {\n\t\tthis.loading = true;\n\t\tconst sub = this._service.getAll().subscribe({\n\t\t\tnext: (establishments) => {\n\t\t\t\tthis.onSelectValue.next([...establishments]);\n\t\t\t},\n\t\t\tcomplete: () => {\n\t\t\t\tthis.loading = false;\n\t\t\t\tthis._changeDetectorRef.detectChanges();\n\t\t\t},\n\t\t});\n\n\t\tthis._subs.add(sub);\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis._subs.unsubscribe();\n\t}\n}\n","<button type=\"button\" (click)=\"selectAll()\" [disabled]=\"loading\" class=\"link selectAll-button\">{{ intl.select }}</button>\n<button type=\"button\" (click)=\"deselectAll()\" [disabled]=\"loading\" class=\"link selectAll-button u-marginLeftXS\">{{ intl.deselect }}</button>\n","import { ILuTranslation } from '@lucca-front/ng/core';\nimport { ILuOptionSelectAllLabel } from '@lucca-front/ng/option';\n\nexport const luEstablishmentSelectAllTranslations: ILuTranslation<ILuOptionSelectAllLabel> = {\n\ten: {\n\t\tselect: 'Select all',\n\t\tdeselect: 'Deselect all',\n\t},\n\tfr: {\n\t\tselect: 'Tout sélectionner',\n\t\tdeselect: 'Tout déselectionner',\n\t},\n\tde: {\n\t\tselect: 'Alle auswählen',\n\t\tdeselect: 'Alle abwählen',\n\t},\n\tpt: {\n\t\tselect: 'Selecionar tudo',\n\t\tdeselect: 'Desselecionar tudo',\n\t},\n\tes: {\n\t\tselect: 'Seleccionar todo',\n\t\tdeselect: 'Desmarcar todo',\n\t},\n};\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSelectAllComponent } from './establishment-select-all.component';\n\n@NgModule({\n\timports: [LuEstablishmentSelectAllComponent],\n\texports: [LuEstablishmentSelectAllComponent],\n})\nexport class LuEstablishmentSelectAllModule {}\n","import { InjectionToken } from '@angular/core';\nimport { ILuTranslation } from '@lucca-front/ng/core';\n\nexport const LU_ESTABLISHMENT_SELECT_INPUT_TRANSLATIONS = new InjectionToken('LuEstablishmentSelectTranslations', {\n\tfactory: () => luEstablishmentSelectInputTranslations,\n});\n\nexport interface ILuEstablishmentSelectInputLabel {\n\testablishments: string;\n}\n\nexport const luEstablishmentSelectInputTranslations: ILuTranslation<ILuEstablishmentSelectInputLabel> = {\n\ten: {\n\t\testablishments: 'establishments',\n\t},\n\tfr: {\n\t\testablishments: 'établissements',\n\t},\n\tes: {\n\t\testablishments: 'establecimiento',\n\t},\n};\n","import { Overlay, OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Inject, Input, OnInit, Optional, Renderer2, Self, ViewContainerRef, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { LuInputClearerComponent, LuInputDisplayerDirective } from '@lucca-front/ng/input';\nimport { ILuOptionPickerPanel, LuOptionComparer, LuOptionItemComponent, LuOptionPickerAdvancedComponent } from '@lucca-front/ng/option';\nimport { ILuInputWithPicker } from '@lucca-front/ng/picker';\nimport { ALuSelectInputComponent } from '@lucca-front/ng/select';\nimport { combineLatest } from 'rxjs';\nimport { ILuEstablishment } from '../../establishment.model';\nimport { ALuEstablishmentService, ALuLegalUnitService, LuEstablishmentService, LuLegalUnitService } from '../../service/index';\nimport { DEFAULT_ESTABLISHMENT_SERVICE, DEFAULT_LEGAL_UNIT_SERVICE } from '../establishment-select.token';\nimport { LuForLegalUnitsDirective } from '../for-legal-units';\nimport { LuLegalUnitSelectorDirective } from '../legal-unit-selector';\nimport { LuEstablishmentSearcherComponent } from '../searcher';\nimport { LuEstablishmentSelectAllComponent } from '../select-all';\nimport { LU_ESTABLISHMENT_SELECT_INPUT_TRANSLATIONS } from './establishment-select-input.translate';\n\n@Component({\n\tselector: 'lu-establishment-select',\n\ttemplateUrl: './establishment-select-input.component.html',\n\tstyleUrls: ['./establishment-select-input.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tCommonModule,\n\t\tOverlayModule,\n\t\tLuInputClearerComponent,\n\t\tLuOptionPickerAdvancedComponent,\n\t\tLuEstablishmentSearcherComponent,\n\t\tLuEstablishmentSelectAllComponent,\n\t\tLuLegalUnitSelectorDirective,\n\t\tLuOptionItemComponent,\n\t\tLuForLegalUnitsDirective,\n\t\tLuInputDisplayerDirective,\n\t],\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => LuEstablishmentSelectInputComponent),\n\t\t\tmulti: true,\n\t\t},\n\t\t{\n\t\t\tprovide: DEFAULT_ESTABLISHMENT_SERVICE,\n\t\t\tuseClass: LuEstablishmentService,\n\t\t},\n\t\t{\n\t\t\tprovide: DEFAULT_LEGAL_UNIT_SERVICE,\n\t\t\tuseClass: LuLegalUnitService,\n\t\t},\n\t],\n})\nexport class LuEstablishmentSelectInputComponent<\n\t\tD extends import('../../establishment.model').ILuEstablishment = import('../../establishment.model').ILuEstablishment,\n\t\tP extends ILuOptionPickerPanel<D> = ILuOptionPickerPanel<D>,\n\t>\n\textends ALuSelectInputComponent<D, P>\n\timplements ControlValueAccessor, ILuInputWithPicker<D>, OnInit, AfterViewInit\n{\n\tbyId: LuOptionComparer<D> = (option1: D, option2: D) => option1 && option2 && option1.id === option2.id;\n\n\t@Input() filters: string[];\n\t@Input() appInstanceId: number;\n\t@Input() operations: number[];\n\n\tprivate _establishmentService: LuEstablishmentService;\n\tprivate _legalUnitService: LuLegalUnitService;\n\n\tisSearching = false;\n\tgroupByLu = true;\n\n\tget sort(): string {\n\t\treturn this.isSearching ? 'name' : 'legalunit.name,name';\n\t}\n\n\tpublic intl = getIntl(LU_ESTABLISHMENT_SELECT_INPUT_TRANSLATIONS);\n\n\tconstructor(\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\n\t\tprotected override _overlay: Overlay,\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\n\t\tprotected override _viewContainerRef: ViewContainerRef,\n\t\tprotected override _renderer: Renderer2,\n\t\t@Inject(ALuLegalUnitService)\n\t\t@Optional()\n\t\tcustomLuService: LuLegalUnitService,\n\t\t@Inject(DEFAULT_LEGAL_UNIT_SERVICE) @Self() defaultLuService: LuLegalUnitService,\n\t\t@Inject(ALuEstablishmentService)\n\t\t@Optional()\n\t\tcustomEstablishmentService: LuEstablishmentService,\n\t\t@Inject(DEFAULT_ESTABLISHMENT_SERVICE)\n\t\t@Self()\n\t\tdefaultEstablishmentService: LuEstablishmentService,\n\t) {\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\n\t\tthis._establishmentService = customEstablishmentService || defaultEstablishmentService;\n\t\tthis._legalUnitService = customLuService || defaultLuService;\n\t}\n\n\tngOnInit() {\n\t\tthis._subs.add(\n\t\t\tcombineLatest([this._legalUnitService.count(), this._establishmentService.count()]).subscribe(([luCount, establishmentCount]) => {\n\t\t\t\tthis.groupByLu = luCount > 1 && establishmentCount > 1 && luCount !== establishmentCount;\n\t\t\t}),\n\t\t);\n\t}\n\n\tonIsSearchingChanged(isSearching: boolean) {\n\t\tthis.isSearching = isSearching;\n\t\tthis._changeDetectorRef.detectChanges();\n\t}\n\n\ttrackById(idx: number, item: ILuEstablishment): number {\n\t\treturn item.id;\n\t}\n}\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper\">\n\t\t<ng-container #display></ng-container>\n\t</div>\n</div>\n<div class=\"lu-select-suffix\">\n\t<lu-input-clearer></lu-input-clearer>\n</div>\n\n<ng-template luDisplayer [luDisplayerMultiple]=\"true\" let-values>\n\t<span *ngIf=\"multiple && values?.length > 1; else singleView\"\n\t\t><span class=\"numericBadge\">{{ values.length }}</span> {{ intl.establishments }}</span\n\t>\n\t<ng-template #singleView>{{ (values[0] || values).name }}</ng-template>\n</ng-template>\n\n<lu-option-picker-advanced [option-comparer]=\"byId\">\n\t<header class=\"lu-picker-header\">\n\t\t<lu-establishment-searcher\n\t\t\t[filters]=\"filters\"\n\t\t\t[appInstanceId]=\"appInstanceId\"\n\t\t\t[operations]=\"operations\"\n\t\t\t[sort]=\"sort\"\n\t\t\t(isSearching)=\"onIsSearchingChanged($event)\"\n\t\t></lu-establishment-searcher>\n\t\t<lu-establishment-select-all\n\t\t\t*ngIf=\"multiple\"\n\t\t\tclass=\"u-displayBlock\"\n\t\t\t[class.u-displayNone]=\"isSearching\"\n\t\t\t[filters]=\"filters\"\n\t\t\t[appInstanceId]=\"appInstanceId\"\n\t\t\t[operations]=\"operations\"\n\t\t></lu-establishment-select-all>\n\t</header>\n\n\t<ng-template luForLegalUnits let-group>\n\t\t<div class=\"optionGroup\">\n\t\t\t<ng-container *ngIf=\"groupByLu && !isSearching\">\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t*ngIf=\"multiple; else singleViewGroup\"\n\t\t\t\t\tclass=\"optionGroupName button mod-text mod-block\"\n\t\t\t\t\t[luLegalUnitSelector]=\"group.key\"\n\t\t\t\t\t[luLegalUnitSelectorFilters]=\"filters\"\n\t\t\t\t\t[luLegalUnitSelectorAppInstanceId]=\"appInstanceId\"\n\t\t\t\t\t[luLegalUnitSelectorOperations]=\"operations\"\n\t\t\t\t>\n\t\t\t\t\t{{ group.key.name }}\n\t\t\t\t</button>\n\t\t\t\t<ng-template #singleViewGroup>\n\t\t\t\t\t<h5 class=\"optionGroupName mod-readonly u-margin0\">{{ group.key.name }}</h5>\n\t\t\t\t</ng-template>\n\t\t\t</ng-container>\n\n\t\t\t<div class=\"lu-picker-content-option\">\n\t\t\t\t<lu-option *ngFor=\"let establishment of group.items; trackBy: trackById\" [value]=\"establishment\" class=\"establishmentOption\">\n\t\t\t\t\t<ng-container *ngIf=\"isSearching; else emptySearch\">\n\t\t\t\t\t\t<span class=\"u-displayBlock\">{{ establishment.name }}</span>\n\t\t\t\t\t\t<span *ngIf=\"groupByLu\" class=\"u-displayBlock u-textLight u-textS\">{{ group.key.name }}</span>\n\t\t\t\t\t</ng-container>\n\t\t\t\t\t<ng-template #emptySearch>\n\t\t\t\t\t\t<span>{{ establishment.name }}</span>\n\t\t\t\t\t</ng-template>\n\t\t\t\t</lu-option>\n\t\t\t</div>\n\t\t</div>\n\t</ng-template>\n</lu-option-picker-advanced>\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSelectInputComponent } from './establishment-select-input.component';\n\n@NgModule({\n\timports: [LuEstablishmentSelectInputComponent],\n\texports: [LuEstablishmentSelectInputComponent],\n})\nexport class LuEstablishmentSelectInputModule {}\n","import { NgModule } from '@angular/core';\nimport { LuForLegalUnitsDirective } from './for-legal-units/index';\nimport { LuEstablishmentSelectInputComponent } from './input';\nimport { LuLegalUnitSelectorDirective } from './legal-unit-selector/index';\nimport { LuEstablishmentSearcherComponent } from './searcher';\nimport { LuEstablishmentSelectAllComponent } from './select-all/index';\n\n@NgModule({\n\timports: [LuEstablishmentSelectInputComponent, LuEstablishmentSearcherComponent, LuForLegalUnitsDirective, LuLegalUnitSelectorDirective, LuEstablishmentSelectAllComponent],\n\texports: [LuEstablishmentSelectInputComponent, LuEstablishmentSearcherComponent, LuForLegalUnitsDirective, LuLegalUnitSelectorDirective, LuEstablishmentSelectAllComponent],\n})\nexport class LuEstablishmentSelectModule {}\n","import { NgModule } from '@angular/core';\nimport { LuEstablishmentSelectModule } from './select/index';\n\n@NgModule({\n\timports: [LuEstablishmentSelectModule],\n\texports: [LuEstablishmentSelectModule],\n})\nexport class LuEstablishmentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
@@ -3,10 +3,9 @@ import { InjectionToken, inject, booleanAttribute, forwardRef, Component, ViewEn
3
3
  import { NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet } from '@angular/common';
4
4
  import { BehaviorSubject } from 'rxjs';
5
5
  import { InlineMessageComponent } from '@lucca-front/ng/inline-message';
6
- import * as i2 from '@lucca-front/ng/tooltip';
6
+ import * as i1 from '@lucca-front/ng/tooltip';
7
7
  import { LuTooltipModule } from '@lucca-front/ng/tooltip';
8
- import * as i1 from '@lucca-front/ng/core';
9
- import { NgClazz } from '@lucca-front/ng/core';
8
+ import { LuClass } from '@lucca-front/ng/core';
10
9
  import { RequiredValidator, Validators, NgControl, NG_VALIDATORS, ReactiveFormsModule } from '@angular/forms';
11
10
  import { IconComponent } from '@lucca-front/ng/icon';
12
11
 
@@ -15,7 +14,7 @@ const FORM_FIELD_INSTANCE = new InjectionToken('FORM_FIELD_INSTANCE');
15
14
  let nextId = 0;
16
15
  class FormFieldComponent {
17
16
  constructor() {
18
- this.#ngClass = inject(NgClazz);
17
+ this.#luClass = inject(LuClass);
19
18
  this.clazz = 'form-field';
20
19
  this.hiddenLabel = false;
21
20
  this.required = false;
@@ -24,7 +23,7 @@ class FormFieldComponent {
24
23
  this.ready$ = new BehaviorSubject(false);
25
24
  this.#ariaLabelledBy = [];
26
25
  }
27
- #ngClass;
26
+ #luClass;
28
27
  #control;
29
28
  #requiredValidator;
30
29
  set validators(validators) {
@@ -64,10 +63,10 @@ class FormFieldComponent {
64
63
  }
65
64
  #nativeInputRef;
66
65
  ngOnChanges() {
67
- this.#ngClass.ngClass = {
66
+ this.#luClass.setState({
68
67
  [`mod-${this.size}`]: true,
69
68
  [`mod-checkable`]: this.layout === 'checkable',
70
- };
69
+ });
71
70
  if (this.#nativeInputRef) {
72
71
  this.updateAria();
73
72
  }
@@ -109,15 +108,17 @@ class FormFieldComponent {
109
108
  }
110
109
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: FormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
111
110
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.2", type: FormFieldComponent, isStandalone: true, selector: "lu-form-field", inputs: { label: "label", hiddenLabel: ["hiddenLabel", "hiddenLabel", booleanAttribute], tooltip: "tooltip", inlineMessage: "inlineMessage", inlineMessageState: "inlineMessageState", size: "size", layout: "layout" }, host: { properties: { "class": "this.clazz" } }, providers: [
111
+ LuClass,
112
112
  {
113
113
  provide: FORM_FIELD_INSTANCE,
114
114
  useExisting: forwardRef(() => FormFieldComponent),
115
115
  },
116
- ], queries: [{ propertyName: "control", first: true, predicate: NgControl, descendants: true }, { propertyName: "validators", predicate: NG_VALIDATORS }], usesOnChanges: true, hostDirectives: [{ directive: i1.NgClazz }], ngImport: i0, template: "<label\n\tclass=\"formLabel\"\n\t[class.is-error]=\"invalid\"\n\tid=\"{{id}}-label\"\n\tfor=\"{{id}}\"\n\t[class.u-mask]=\"hiddenLabel\"\n\tattr.aria-hidden=\"{{hiddenLabel}}\"\n>\n\t{{label}}<sup class=\"formLabel-required\" aria-hidden=\"true\" *ngIf=\"required\">*</sup>\n\t<lu-icon icon=\"helpOutline\" alt=\"\" *ngIf=\"tooltip\" [luTooltip]=\"tooltip\" [color]=\"invalid ? 'error' : 'inherit'\"></lu-icon>\n</label>\n<ng-content></ng-content>\n<lu-inline-message\n\tid=\"{{id}}-message\"\n\t*ngIf=\"inlineMessage\"\n\t[label]=\"inlineMessage\"\n\t[state]=\"invalid ? 'error' : inlineMessageState\"\n></lu-inline-message>\n", styles: [".textField{--component-textField-lineHeight: var(--size-M-lightHeight);--component-textField-fontSize: var(--size-M-fontSize);--component-textField-placeholder: var(--palettes-grey-400);--component-textField-background: var(--colors-white-color);--component-textField-border: var(--palettes-grey-300);--component-textField-color: var(--palettes-grey-800);--component-textField-prefix-color: var(--palettes-grey-600);--component-textField-padding: var(--spacings-XS);--component-textField-affix-padding: var(--component-textField-padding);display:flex;align-items:stretch;border-radius:var(--commons-borderRadius-M);background-color:var(--component-textField-background)}.textField:has(.textField-input-value:focus-visible){outline:2px solid var(--palettes-primary-700);outline-offset:3px}.textField-input{display:flex;align-items:center;width:100%;box-shadow:0 0 0 1px var(--component-textField-border);border-radius:var(--commons-borderRadius-M);background-color:var(--component-textField-background);position:relative}.textField-input:hover{--component-textField-border: var(--palettes-grey-400)}.textField-input:has(.textField-input-affix-icon){--component-textField-affix-padding: 2.5rem}.textField-input:has(.textField-input-affix-clear){--component-textField-affix-padding: 2rem}.textField-input:has(.textField-input-affix-clear):has(.textField-input-affix-icon){--component-textField-affix-padding: 4rem}.textField-input-value{border:0;outline:0;line-height:var(--component-textField-lineHeight);font-size:var(--component-textField-fontSize);width:100%;padding:var(--component-textField-padding) var(--component-textField-affix-padding) var(--component-textField-padding) var(--component-textField-padding);background-color:transparent;color:var(--component-textField-color)}.textField-input-value::placeholder{color:var(--component-textField-placeholder)}.textField-input-affix{display:inline-flex;align-items:center;gap:var(--spacings-XS);position:absolute;right:var(--spacings-XS);pointer-events:none}.textField-input-affix-icon{--icon-size: 1.5rem;color:var(--palettes-grey-600);pointer-events:none}.textField-input-affix-clear{pointer-events:auto}.textField-input-affix-passwordToggle{pointer-events:auto;width:1.75rem;height:1.75rem}.textField-prefix{display:flex;padding:0 var(--component-textField-padding);align-items:center;color:var(--component-textField-prefix-color);line-height:var(--component-textField-lineHeight);font-size:var(--component-textField-fontSize);box-shadow:0 0 0 1px var(--component-textField-border);border-top-left-radius:var(--commons-borderRadius-M);border-bottom-left-radius:var(--commons-borderRadius-M)}.textField-prefix~.textField-input{border-top-left-radius:0;border-bottom-left-radius:0}.textField-suffix{display:flex;padding:0 var(--component-textField-padding);align-items:center;color:var(--component-textField-prefix-color);line-height:var(--component-textField-lineHeight);font-size:var(--component-textField-fontSize);box-shadow:0 0 0 1px var(--component-textField-border);border-top-right-radius:var(--commons-borderRadius-M);border-bottom-right-radius:var(--commons-borderRadius-M);order:1}.textField-suffix~.textField-input{border-top-right-radius:0;border-bottom-right-radius:0}.textField.mod-S{--component-textField-fontSize: var(--sizes-S-fontSize);--component-textField-lineHeight: var(--sizes-S-lineHeight);--component-textField-padding: .375rem}.textField.mod-S .textField-input-affix-clear{--components-clear-size: .75rem;--icon-size: .75rem}.textField.mod-S .textField-input-affix-icon{--icon-size: 1.25rem}.textField.mod-XS{--component-textField-fontSize: var(--sizes-XS-fontSize);--component-textField-lineHeight: var(--sizes-XS-lineHeight);--component-textField-padding: var(--spacings-XXS)}.textField.mod-XS .textField-prefix,.textField.mod-XS .textField-suffix,.textField.mod-XS .textField-input-affix-icon{--icon-size: 1rem}.textField.mod-XS .textField-input-affix-clear{--components-clear-size: .75rem;--icon-size: .75rem}.textField.is-invalid,.textField:has(.textField-input-value[aria-invalid=true]){--component-textField-border: var(--palettes-error-400);--component-textField-background: var(--palettes-error-50);--component-textField-placeholder: var(--palettes-error-400)}.textField.is-invalid .textField-input:hover,.textField:has(.textField-input-value[aria-invalid=true]) .textField-input:hover{--component-textField-border: var(--palettes-error-600)}.textField.is-disabled,.textField:has(.textField-input-value:disabled){--component-textField-border: var(--palettes-grey-300);--component-textField-background: var(--palettes-grey-100);--component-textField-color: var(--palettes-grey-600)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: InlineMessageComponent, selector: "lu-inline-message", inputs: ["label", "state", "size"] }, { kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i2.LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipPosition", "luTooltipWhenEllipsis"], outputs: ["luTooltipOnOpen", "luTooltipOnClose"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color"] }], encapsulation: i0.ViewEncapsulation.None }); }
116
+ ], queries: [{ propertyName: "control", first: true, predicate: NgControl, descendants: true }, { propertyName: "validators", predicate: NG_VALIDATORS }], usesOnChanges: true, ngImport: i0, template: "<label\n\tclass=\"formLabel\"\n\t[class.is-error]=\"invalid\"\n\tid=\"{{id}}-label\"\n\tfor=\"{{id}}\"\n\t[class.u-mask]=\"hiddenLabel\"\n\tattr.aria-hidden=\"{{hiddenLabel}}\"\n>\n\t{{label}}<sup class=\"formLabel-required\" aria-hidden=\"true\" *ngIf=\"required\">*</sup>\n\t<lu-icon icon=\"helpOutline\" alt=\"\" *ngIf=\"tooltip\" [luTooltip]=\"tooltip\" [color]=\"invalid ? 'error' : 'inherit'\"></lu-icon>\n</label>\n<ng-content></ng-content>\n<lu-inline-message\n\tid=\"{{id}}-message\"\n\t*ngIf=\"inlineMessage\"\n\t[label]=\"inlineMessage\"\n\t[state]=\"invalid ? 'error' : inlineMessageState\"\n></lu-inline-message>\n", styles: [".textField{--component-textField-lineHeight: var(--size-M-lightHeight);--component-textField-fontSize: var(--size-M-fontSize);--component-textField-placeholder: var(--palettes-grey-400);--component-textField-background: var(--colors-white-color);--component-textField-border: var(--palettes-grey-300);--component-textField-color: var(--palettes-grey-800);--component-textField-prefix-color: var(--palettes-grey-600);--component-textField-padding: var(--spacings-XS);--component-textField-affix-padding: var(--component-textField-padding);display:flex;align-items:stretch;border-radius:var(--commons-borderRadius-M);background-color:var(--component-textField-background)}.textField:has(.textField-input-value:focus-visible){outline:2px solid var(--palettes-primary-700);outline-offset:3px}.textField-input{display:flex;align-items:center;width:100%;box-shadow:0 0 0 1px var(--component-textField-border);border-radius:var(--commons-borderRadius-M);background-color:var(--component-textField-background);position:relative}.textField-input:hover{--component-textField-border: var(--palettes-grey-400)}.textField-input:has(.textField-input-affix-icon){--component-textField-affix-padding: 2.5rem}.textField-input:has(.textField-input-affix-clear){--component-textField-affix-padding: 2rem}.textField-input:has(.textField-input-affix-clear):has(.textField-input-affix-icon){--component-textField-affix-padding: 4rem}.textField-input-value{border:0;outline:0;line-height:var(--component-textField-lineHeight);font-size:var(--component-textField-fontSize);width:100%;padding:var(--component-textField-padding) var(--component-textField-affix-padding) var(--component-textField-padding) var(--component-textField-padding);background-color:transparent;color:var(--component-textField-color)}.textField-input-value::placeholder{color:var(--component-textField-placeholder)}.textField-input-affix{display:inline-flex;align-items:center;gap:var(--spacings-XS);position:absolute;right:var(--spacings-XS);pointer-events:none}.textField-input-affix-icon{--icon-size: 1.5rem;color:var(--palettes-grey-600);pointer-events:none}.textField-input-affix-clear{pointer-events:auto}.textField-input-affix-passwordToggle{pointer-events:auto;width:1.75rem;height:1.75rem}.textField-prefix{display:flex;padding:0 var(--component-textField-padding);align-items:center;color:var(--component-textField-prefix-color);line-height:var(--component-textField-lineHeight);font-size:var(--component-textField-fontSize);box-shadow:0 0 0 1px var(--component-textField-border);border-top-left-radius:var(--commons-borderRadius-M);border-bottom-left-radius:var(--commons-borderRadius-M)}.textField-prefix~.textField-input{border-top-left-radius:0;border-bottom-left-radius:0}.textField-suffix{display:flex;padding:0 var(--component-textField-padding);align-items:center;color:var(--component-textField-prefix-color);line-height:var(--component-textField-lineHeight);font-size:var(--component-textField-fontSize);box-shadow:0 0 0 1px var(--component-textField-border);border-top-right-radius:var(--commons-borderRadius-M);border-bottom-right-radius:var(--commons-borderRadius-M);order:1}.textField-suffix~.textField-input{border-top-right-radius:0;border-bottom-right-radius:0}.textField.mod-S{--component-textField-fontSize: var(--sizes-S-fontSize);--component-textField-lineHeight: var(--sizes-S-lineHeight);--component-textField-padding: .375rem}.textField.mod-S .textField-input-affix-clear{--components-clear-size: .75rem;--icon-size: .75rem}.textField.mod-S .textField-input-affix-icon{--icon-size: 1.25rem}.textField.mod-XS{--component-textField-fontSize: var(--sizes-XS-fontSize);--component-textField-lineHeight: var(--sizes-XS-lineHeight);--component-textField-padding: var(--spacings-XXS)}.textField.mod-XS .textField-prefix,.textField.mod-XS .textField-suffix,.textField.mod-XS .textField-input-affix-icon{--icon-size: 1rem}.textField.mod-XS .textField-input-affix-clear{--components-clear-size: .75rem;--icon-size: .75rem}.textField.is-invalid,.textField:has(.textField-input-value[aria-invalid=true]){--component-textField-border: var(--palettes-error-400);--component-textField-background: var(--palettes-error-50);--component-textField-placeholder: var(--palettes-error-400)}.textField.is-invalid .textField-input:hover,.textField:has(.textField-input-value[aria-invalid=true]) .textField-input:hover{--component-textField-border: var(--palettes-error-600)}.textField.is-disabled,.textField:has(.textField-input-value:disabled){--component-textField-border: var(--palettes-grey-300);--component-textField-background: var(--palettes-grey-100);--component-textField-color: var(--palettes-grey-600)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: InlineMessageComponent, selector: "lu-inline-message", inputs: ["label", "state", "size"] }, { kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipPosition", "luTooltipWhenEllipsis"], outputs: ["luTooltipOnOpen", "luTooltipOnClose"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color"] }], encapsulation: i0.ViewEncapsulation.None }); }
117
117
  }
118
118
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: FormFieldComponent, decorators: [{
119
119
  type: Component,
120
- args: [{ selector: 'lu-form-field', standalone: true, imports: [NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet, InlineMessageComponent, LuTooltipModule, ReactiveFormsModule, IconComponent], hostDirectives: [NgClazz], providers: [
120
+ args: [{ selector: 'lu-form-field', standalone: true, imports: [NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet, InlineMessageComponent, LuTooltipModule, ReactiveFormsModule, IconComponent], providers: [
121
+ LuClass,
121
122
  {
122
123
  provide: FORM_FIELD_INSTANCE,
123
124
  useExisting: forwardRef(() => FormFieldComponent),
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-form-field.mjs","sources":["../../../packages/ng/form-field/form-field.token.ts","../../../packages/ng/form-field/form-field.component.ts","../../../packages/ng/form-field/form-field.component.html","../../../packages/ng/form-field/input.directive.ts","../../../packages/ng/form-field/lucca-front-ng-form-field.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { FormFieldComponent } from './form-field.component';\n\nexport const FORM_FIELD_INSTANCE = new InjectionToken<FormFieldComponent>('FORM_FIELD_INSTANCE');\n","import { booleanAttribute, Component, ContentChild, ContentChildren, DoCheck, forwardRef, HostBinding, inject, Input, OnChanges, OnDestroy, QueryList, ViewEncapsulation } from '@angular/core';\nimport { NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet } from '@angular/common';\nimport { InputDirective } from './input.directive';\nimport { FormFieldSize } from './form-field-size';\nimport { BehaviorSubject } from 'rxjs';\nimport { InlineMessageComponent, InlineMessageState } from '@lucca-front/ng/inline-message';\nimport { SafeHtml } from '@angular/platform-browser';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { NgClazz } from '@lucca-front/ng/core';\nimport { NG_VALIDATORS, NgControl, ReactiveFormsModule, RequiredValidator, Validator, Validators } from '@angular/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-form-field',\n\tstandalone: true,\n\timports: [NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet, InlineMessageComponent, LuTooltipModule, ReactiveFormsModule, IconComponent],\n\ttemplateUrl: './form-field.component.html',\n\tstyleUrls: ['./form-field.component.scss'],\n\thostDirectives: [NgClazz],\n\tproviders: [\n\t\t{\n\t\t\tprovide: FORM_FIELD_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => FormFieldComponent),\n\t\t},\n\t],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class FormFieldComponent implements OnChanges, OnDestroy, DoCheck {\n\t#ngClass = inject(NgClazz);\n\n\t#control: NgControl;\n\n\t#requiredValidator: RequiredValidator | undefined;\n\n\t@ContentChildren(NG_VALIDATORS)\n\tpublic set validators(validators: QueryList<Validator | undefined>) {\n\t\tthis.#requiredValidator = validators.toArray()?.find((v): v is RequiredValidator => v instanceof RequiredValidator);\n\t}\n\n\t@ContentChild(NgControl)\n\tpublic set control(control: NgControl) {\n\t\tif (control === undefined) {\n\t\t\t// This might be because the child input is initialized with a ngIf, just ignore this case\n\t\t\treturn;\n\t\t}\n\t\tthis.#control = control;\n\t}\n\n\t@HostBinding('class')\n\tclazz = 'form-field';\n\n\t@Input({\n\t\trequired: true,\n\t})\n\tlabel: string;\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\thiddenLabel = false;\n\n\t@Input()\n\ttooltip: string | SafeHtml;\n\n\trequired = false;\n\n\tinvalid = false;\n\n\t@Input()\n\tinlineMessage: string;\n\n\t/**\n\t * State of the inline message, will be ignored if form state is invalid\n\t */\n\t@Input()\n\tinlineMessageState: InlineMessageState;\n\n\t@Input()\n\tsize: FormFieldSize;\n\n\t@Input()\n\tlayout: 'default' | 'checkable' = 'default';\n\n\tprivate _input: InputDirective;\n\n\tpublic set input(input: InputDirective) {\n\t\tthis._input = input;\n\t\tthis.prepareInput();\n\t}\n\n\tpublic get input(): InputDirective {\n\t\treturn this._input;\n\t}\n\n\tid: string;\n\n\tready$ = new BehaviorSubject<boolean>(false);\n\n\tpublic get ready(): boolean {\n\t\treturn this.ready$.value;\n\t}\n\n\t#ariaLabelledBy: string[] = [];\n\n\taddLabelledBy(id: string, prepend = false): void {\n\t\tif (prepend) {\n\t\t\tthis.#ariaLabelledBy = [id, ...this.#ariaLabelledBy];\n\t\t} else {\n\t\t\tthis.#ariaLabelledBy = [...this.#ariaLabelledBy, id];\n\t\t}\n\t\tif (this.#nativeInputRef) {\n\t\t\tthis.#nativeInputRef.setAttribute('aria-labelledby', this.#ariaLabelledBy.join(' '));\n\t\t}\n\t}\n\n\tremoveLabelledBy(id: string): void {\n\t\tthis.#ariaLabelledBy = this.#ariaLabelledBy.filter((labelledBy) => labelledBy === id);\n\t}\n\n\t#nativeInputRef: HTMLElement;\n\n\tngOnChanges(): void {\n\t\tthis.#ngClass.ngClass = {\n\t\t\t[`mod-${this.size}`]: true,\n\t\t\t[`mod-checkable`]: this.layout === 'checkable',\n\t\t};\n\t\tif (this.#nativeInputRef) {\n\t\t\tthis.updateAria();\n\t\t}\n\t}\n\n\tprepareInput(): void {\n\t\tif (!this.input) {\n\t\t\tthrow new Error('Missing input for form field, make sure to set `luInput` to your input inside lu-form-field');\n\t\t}\n\t\tthis.#nativeInputRef = this.input.host.nativeElement;\n\t\tthis.id = `${this.#nativeInputRef.tagName.toLowerCase()}-${++nextId}`;\n\t\tthis.#nativeInputRef.id = this.id;\n\t\tthis.updateAria();\n\t\tthis.ready$.next(true);\n\t}\n\n\tprivate updateAria(): void {\n\t\tthis.#nativeInputRef.ariaInvalid = this.invalid.toString();\n\t\tthis.#nativeInputRef.ariaRequired = this.required.toString();\n\t\tthis.#nativeInputRef.setAttribute('aria-describedby', `${this.id}-message`);\n\t\tthis.addLabelledBy(`${this.id}-label`);\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.ready$.complete();\n\t}\n\n\tngDoCheck(): void {\n\t\tif (this.#control) {\n\t\t\t// invalid management\n\t\t\tconst previousInvalid = this.invalid;\n\t\t\tthis.invalid = this.#control.invalid && this.#control.touched;\n\n\t\t\t// required management\n\t\t\tconst previousRequired = this.required;\n\t\t\tthis.required = this.#requiredValidator\n\t\t\t\t? booleanAttribute(this.#requiredValidator.required)\n\t\t\t\t: this.#control.control.hasValidator(Validators.required) || this.#control.control.hasValidator(Validators.requiredTrue);\n\n\t\t\t// If stuff changed, update aria attributes\n\t\t\tif (this.invalid !== previousInvalid || this.required !== previousRequired) {\n\t\t\t\tthis.updateAria();\n\t\t\t}\n\t\t}\n\t}\n}\n","<label\n\tclass=\"formLabel\"\n\t[class.is-error]=\"invalid\"\n\tid=\"{{id}}-label\"\n\tfor=\"{{id}}\"\n\t[class.u-mask]=\"hiddenLabel\"\n\tattr.aria-hidden=\"{{hiddenLabel}}\"\n>\n\t{{label}}<sup class=\"formLabel-required\" aria-hidden=\"true\" *ngIf=\"required\">*</sup>\n\t<lu-icon icon=\"helpOutline\" alt=\"\" *ngIf=\"tooltip\" [luTooltip]=\"tooltip\" [color]=\"invalid ? 'error' : 'inherit'\"></lu-icon>\n</label>\n<ng-content></ng-content>\n<lu-inline-message\n\tid=\"{{id}}-message\"\n\t*ngIf=\"inlineMessage\"\n\t[label]=\"inlineMessage\"\n\t[state]=\"invalid ? 'error' : inlineMessageState\"\n></lu-inline-message>\n","import { Directive, ElementRef, inject, OnInit } from '@angular/core';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\n\n@Directive({\n\tselector: '[luInput]',\n\tstandalone: true,\n})\nexport class InputDirective implements OnInit {\n\tpublic readonly host = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tpublic readonly formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\tngOnInit(): void {\n\t\t// If the field is used as standalone, we won't have the ref provided so it'll crash\n\t\tif (this.formFieldRef) {\n\t\t\tthis.formFieldRef.input = this;\n\t\t}\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-form-field.mjs","sources":["../../../packages/ng/form-field/form-field.token.ts","../../../packages/ng/form-field/form-field.component.ts","../../../packages/ng/form-field/form-field.component.html","../../../packages/ng/form-field/input.directive.ts","../../../packages/ng/form-field/lucca-front-ng-form-field.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { FormFieldComponent } from './form-field.component';\n\nexport const FORM_FIELD_INSTANCE = new InjectionToken<FormFieldComponent>('FORM_FIELD_INSTANCE');\n","import { booleanAttribute, Component, ContentChild, ContentChildren, DoCheck, forwardRef, HostBinding, inject, Input, OnChanges, OnDestroy, QueryList, ViewEncapsulation } from '@angular/core';\nimport { NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet } from '@angular/common';\nimport { InputDirective } from './input.directive';\nimport { FormFieldSize } from './form-field-size';\nimport { BehaviorSubject } from 'rxjs';\nimport { InlineMessageComponent, InlineMessageState } from '@lucca-front/ng/inline-message';\nimport { SafeHtml } from '@angular/platform-browser';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { LuClass } from '@lucca-front/ng/core';\nimport { NG_VALIDATORS, NgControl, ReactiveFormsModule, RequiredValidator, Validator, Validators } from '@angular/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-form-field',\n\tstandalone: true,\n\timports: [NgIf, NgSwitch, NgSwitchCase, NgTemplateOutlet, InlineMessageComponent, LuTooltipModule, ReactiveFormsModule, IconComponent],\n\ttemplateUrl: './form-field.component.html',\n\tstyleUrls: ['./form-field.component.scss'],\n\tproviders: [\n\t\tLuClass,\n\t\t{\n\t\t\tprovide: FORM_FIELD_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => FormFieldComponent),\n\t\t},\n\t],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class FormFieldComponent implements OnChanges, OnDestroy, DoCheck {\n\t#luClass = inject(LuClass);\n\n\t#control: NgControl;\n\n\t#requiredValidator: RequiredValidator | undefined;\n\n\t@ContentChildren(NG_VALIDATORS)\n\tpublic set validators(validators: QueryList<Validator | undefined>) {\n\t\tthis.#requiredValidator = validators.toArray()?.find((v): v is RequiredValidator => v instanceof RequiredValidator);\n\t}\n\n\t@ContentChild(NgControl)\n\tpublic set control(control: NgControl) {\n\t\tif (control === undefined) {\n\t\t\t// This might be because the child input is initialized with a ngIf, just ignore this case\n\t\t\treturn;\n\t\t}\n\t\tthis.#control = control;\n\t}\n\n\t@HostBinding('class')\n\tclazz = 'form-field';\n\n\t@Input({\n\t\trequired: true,\n\t})\n\tlabel: string;\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\thiddenLabel = false;\n\n\t@Input()\n\ttooltip: string | SafeHtml;\n\n\trequired = false;\n\n\tinvalid = false;\n\n\t@Input()\n\tinlineMessage: string;\n\n\t/**\n\t * State of the inline message, will be ignored if form state is invalid\n\t */\n\t@Input()\n\tinlineMessageState: InlineMessageState;\n\n\t@Input()\n\tsize: FormFieldSize;\n\n\t@Input()\n\tlayout: 'default' | 'checkable' = 'default';\n\n\tprivate _input: InputDirective;\n\n\tpublic set input(input: InputDirective) {\n\t\tthis._input = input;\n\t\tthis.prepareInput();\n\t}\n\n\tpublic get input(): InputDirective {\n\t\treturn this._input;\n\t}\n\n\tid: string;\n\n\tready$ = new BehaviorSubject<boolean>(false);\n\n\tpublic get ready(): boolean {\n\t\treturn this.ready$.value;\n\t}\n\n\t#ariaLabelledBy: string[] = [];\n\n\taddLabelledBy(id: string, prepend = false): void {\n\t\tif (prepend) {\n\t\t\tthis.#ariaLabelledBy = [id, ...this.#ariaLabelledBy];\n\t\t} else {\n\t\t\tthis.#ariaLabelledBy = [...this.#ariaLabelledBy, id];\n\t\t}\n\t\tif (this.#nativeInputRef) {\n\t\t\tthis.#nativeInputRef.setAttribute('aria-labelledby', this.#ariaLabelledBy.join(' '));\n\t\t}\n\t}\n\n\tremoveLabelledBy(id: string): void {\n\t\tthis.#ariaLabelledBy = this.#ariaLabelledBy.filter((labelledBy) => labelledBy === id);\n\t}\n\n\t#nativeInputRef: HTMLElement;\n\n\tngOnChanges(): void {\n\t\tthis.#luClass.setState({\n\t\t\t[`mod-${this.size}`]: true,\n\t\t\t[`mod-checkable`]: this.layout === 'checkable',\n\t\t});\n\t\tif (this.#nativeInputRef) {\n\t\t\tthis.updateAria();\n\t\t}\n\t}\n\n\tprepareInput(): void {\n\t\tif (!this.input) {\n\t\t\tthrow new Error('Missing input for form field, make sure to set `luInput` to your input inside lu-form-field');\n\t\t}\n\t\tthis.#nativeInputRef = this.input.host.nativeElement;\n\t\tthis.id = `${this.#nativeInputRef.tagName.toLowerCase()}-${++nextId}`;\n\t\tthis.#nativeInputRef.id = this.id;\n\t\tthis.updateAria();\n\t\tthis.ready$.next(true);\n\t}\n\n\tprivate updateAria(): void {\n\t\tthis.#nativeInputRef.ariaInvalid = this.invalid.toString();\n\t\tthis.#nativeInputRef.ariaRequired = this.required.toString();\n\t\tthis.#nativeInputRef.setAttribute('aria-describedby', `${this.id}-message`);\n\t\tthis.addLabelledBy(`${this.id}-label`);\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.ready$.complete();\n\t}\n\n\tngDoCheck(): void {\n\t\tif (this.#control) {\n\t\t\t// invalid management\n\t\t\tconst previousInvalid = this.invalid;\n\t\t\tthis.invalid = this.#control.invalid && this.#control.touched;\n\n\t\t\t// required management\n\t\t\tconst previousRequired = this.required;\n\t\t\tthis.required = this.#requiredValidator\n\t\t\t\t? booleanAttribute(this.#requiredValidator.required)\n\t\t\t\t: this.#control.control.hasValidator(Validators.required) || this.#control.control.hasValidator(Validators.requiredTrue);\n\n\t\t\t// If stuff changed, update aria attributes\n\t\t\tif (this.invalid !== previousInvalid || this.required !== previousRequired) {\n\t\t\t\tthis.updateAria();\n\t\t\t}\n\t\t}\n\t}\n}\n","<label\n\tclass=\"formLabel\"\n\t[class.is-error]=\"invalid\"\n\tid=\"{{id}}-label\"\n\tfor=\"{{id}}\"\n\t[class.u-mask]=\"hiddenLabel\"\n\tattr.aria-hidden=\"{{hiddenLabel}}\"\n>\n\t{{label}}<sup class=\"formLabel-required\" aria-hidden=\"true\" *ngIf=\"required\">*</sup>\n\t<lu-icon icon=\"helpOutline\" alt=\"\" *ngIf=\"tooltip\" [luTooltip]=\"tooltip\" [color]=\"invalid ? 'error' : 'inherit'\"></lu-icon>\n</label>\n<ng-content></ng-content>\n<lu-inline-message\n\tid=\"{{id}}-message\"\n\t*ngIf=\"inlineMessage\"\n\t[label]=\"inlineMessage\"\n\t[state]=\"invalid ? 'error' : inlineMessageState\"\n></lu-inline-message>\n","import { Directive, ElementRef, inject, OnInit } from '@angular/core';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\n\n@Directive({\n\tselector: '[luInput]',\n\tstandalone: true,\n})\nexport class InputDirective implements OnInit {\n\tpublic readonly host = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tpublic readonly formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\tngOnInit(): void {\n\t\t// If the field is used as standalone, we won't have the ref provided so it'll crash\n\t\tif (this.formFieldRef) {\n\t\t\tthis.formFieldRef.input = this;\n\t\t}\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}